@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/GothamMedium-Italic.woff2') format('woff2'), url('css/fonts/gotham/GothamMedium-Italic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-Black.woff2') format('woff2'), url('css/fonts/gotham/Gotham-Black.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-BoldItalic.woff2') format('woff2'), url('css/fonts/gotham/Gotham-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-Bold.woff2') format('woff2'), url('css/fonts/gotham/Gotham-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-Book.woff2') format('woff2'), url('css/fonts/gotham/Gotham-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-BookItalic.woff2') format('woff2'), url('css/fonts/gotham/Gotham-BookItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-Light.woff2') format('woff2'), url('css/fonts/gotham/Gotham-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Gotham';
    src: url('css/fonts/gotham/Gotham-Medium.woff2') format('woff2'), url('css/fonts/gotham/Gotham-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}



html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    /*margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;*/
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
    font-family: 'Gotham', sans-serif;
    overflow-x: hidden
}

section {
    position: relative;
}


    section.no-padding {
        padding: 0
    }

    section.grad-op-bg {
        position: relative
    }

        section.grad-op-bg::after {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgb(255, 255, 255);
            background: -webkit-gradient(linear, left top, left bottom, color-stop(46%, rgba(255, 255, 255, 0.5032387955182073)), to(rgba(234, 41, 124, 0.500437675070028)));
            background: -o-linear-gradient(top, rgba(255, 255, 255, 0.5032387955182073) 46%, rgba(234, 41, 124, 0.500437675070028) 100%);
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.5032387955182073) 46%, rgba(234, 41, 124, 0.500437675070028) 100%);
            pointer-events: none;
            z-index: -1
        }


    section.half-bg {
        background-repeat: no-repeat;
        background-position: right;
        background-size: 48% 100%;
    }

ol,
ul {
    /*list-style: none;*/
}

blockquote,
q {
    /*quotes: none;*/
}

    blockquote:before,
    blockquote:after,
    q:before,
    q:after {
        /*content: '';
        content: none;*/
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

h1.big-title {
    font-size: 90px;
    font-style: normal;
    font-weight: 700;
    line-height: 100px;
    margin-left: -7px;
    margin-top: 20px;
    margin-bottom: 69px;
    padding-right: 10px;
}

#toolbar-administration, #toolbar-administration * {
    z-index: 9999999 !important;
}


/* Pages */

#main {
    overflow-x: hidden
}

.no-gap {
    padding: 0 !important
}


/* Header */

#header {
    display: block;
    position: fixed;
    z-index: 1040;
    width: 100%;
}

.header-top-bar {
    display: block;
    width: 100%;
    text-align: right;
    background: #fff;
    border-bottom: 1px solid #dcdcdc;
}

.header-top-bar-wrapper {
    width: 90%;
    display: block;
    padding: 8px 0;
    margin: 0 auto
}

.header-self {
    display: block;
    width: 100%;
    float: left;
    position: relative;
    padding: 0;
    transition: all .4s ease;
}

    .mystick .header-self,
    .header-self:has(.menu-item:hover) {
        background-color: #fff;
        border-bottom: 1px solid #dcdcdc;
    }

        .header-self:has(.menu-item:hover) .site-logo-dark {
            display: none;
        }

        .header-self:has(.menu-item:hover) .site-logo-light {
            display: block;
        }

        .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > a,
        .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > span {
            display: block;
            color: #2e343a;
        }

            .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > a.is-active,
            .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > a:hover,
            .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > span.is-active,
            .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > span:hover {
                color: #ea297c;
            }

        .mystick .header-self ul.menu.main-menu li.menu-item > a,
        .header-self ul.menu.main-menu li.menu-item:hover > a,
        .mystick .header-self ul.menu.main-menu li.menu-item > span,
        .header-self ul.menu.main-menu li.menu-item:hover > span {
            display: block;
            color: #2e343a;
        }

        .mystick .header-self ul.menu.main-menu li a.is-active,
        .mystick .header-self ul.menu.main-menu li a:hover,
        .mystick .header-self ul.menu.main-menu li span.is-active,
        .mystick .header-self ul.menu.main-menu li span:hover {
            color: #ea297c;
        }

        .mystick .header-self .site-logo-dark {
            display: none;
        }

        .mystick .header-self .site-logo-light {
            display: block;
        }

.header-socials,
.header-lang-switcher {
    display: inline-block;
}

    .header-socials ul li {
        display: inline-block;
        margin: 0 5px;
        font-size: 20px;
    }

        .header-socials ul li a {
            text-decoration: none;
            color: #000;
            opacity: 0.5;
            transition: all .8s ease;
        }

            .header-socials ul li a:hover {
                opacity: 1;
            }

.header-lang-switcher {
    font-size: 20px;
    color: #fff;
    display: inline-block;
    position: relative;
}

    .header-lang-switcher span {
        display: inline-block;
        position: absolute;
        bottom: 0;
        left: 0;
        transition: all .3s ease;
    }

    .header-lang-switcher:hover span.lang-inactive {
        opacity: 1;
        visibility: visible;
    }

    .header-lang-switcher span.lang-active {
        position: static;
    }

    .header-lang-switcher span.lang-inactive {
        opacity: 0;
        visibility: hidden;
        transform: translateY(150%);
    }

.langue-switcher-ctn .btn {
    text-transform: uppercase;
    font-size: 15px;
    color: #EA297C;
    text-decoration: none;
    box-shadow: none;
    background-color: transparent;
    border: none;
    padding: 0;
}

    .langue-switcher-ctn .btn:focus,
    .langue-switcher-ctn .btn:hover {
        box-shadow: none;
        background-color: transparent;
        border: none;
    }

.langue-switcher-ctn .dropdown-menu {
    min-width: initial !important;
}

.langue-switcher-ctn .dropdown-item {
    text-transform: uppercase;
    font-size: 15px;
    /*font-family: 'GothamMedium';*/
    color: #3E0C5A;
    text-decoration: none;
}

    .langue-switcher-ctn .dropdown-item:active {
        color: #fff !important;
        background-color: #EA297C;
    }

    .langue-switcher-ctn .dropdown-item:hover {
        color: #EA297C;
    }

.header-socials {
    margin-right: 20px;
}

.header-wrapper {
    display: block;
    width: 90%;
    margin: 0 auto;
    overflow: hidden;
}

ul.menu.main-menu li a,
ul.menu.main-menu li span {
    text-decoration: none;
    color: #fff;
    transition: all .2s ease;
    cursor: pointer;
    line-height: 73px;
}

    ul.menu.main-menu li a.is-active,
    ul.menu.main-menu li a:hover,
    ul.menu.main-menu li span.is-active,
    ul.menu.main-menu li span:hover {
        color: #ea297c;
    }

.site-header.sub-open ul.menu.main-menu li a.is-active,
.site-header.sub-open ul.menu.main-menu li a:hover,
.site-header.stick ul.menu.main-menu li a.is-active,
.site-header.stick ul.menu.main-menu li a:hover {
    color: #d86883;
}

.site-header.sub-open ul.menu.main-menu > li:hover > a {
    border-bottom: 4px solid #EA297C;
}

ul.menu.main-menu li.menu-item:last-child {
    padding-right: 0;
}

ul.menu.main-menu li.menu-item.cta a {
    padding: 12px 24px;
    background: #fff;
    color: #EA297C;
    border-radius: 35px;
    line-height: 1.2;
}

.site-header.stick .header-top-bar {
    display: none;
}

.site-header.stick {
    background: #fff;
    padding: 25px 0;
    position: fixed !important;
    top: 0;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    box-shadow: 0px 0px 5px 0px rgb(0 0 0 / 30%);
    -webkit-box-shadow: 0px 0px 5px 0px rgb(0 0 0 / 30%);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.30);
}

    .site-header.sub-open .site-logo-dark,
    .site-header.stick .site-logo-dark {
        display: none;
    }

    .site-header.sub-open .site-logo-light,
    .site-header.stick .site-logo-light {
        display: block;
    }



    .site-header.sub-open ul.menu.main-menu li a,
    .site-header.stick ul.menu.main-menu li a,
    .site-header.sub-open ul.menu.main-menu li span,
    .site-header.stick ul.menu.main-menu li span {
        color: #464a44;
    }

        .site-header.sub-open ul.menu.main-menu li a:hover,
        .site-header.stick ul.menu.main-menu li a:hover,
        .site-header.sub-open ul.menu.main-menu li span:hover,
        .site-header.stick ul.menu.main-menu li span:hover {
            color: #ea297c;
        }

    .site-header.sub-open ul.menu.main-menu li.menu-item.cta a,
    .site-header.stick ul.menu.main-menu li.menu-item.cta a {
        background: #ef51a4;
        background: -webkit-gradient(linear, left top, right top, from(#ef51a4), to(#ea297c));
        background: -o-linear-gradient(left, #ef51a4 0%, #ea297c 100%);
        background: linear-gradient(90deg, #ef51a4 0%, #ea297c 100%);
        color: #fff
    }

.site-branding {
    display: block;
    float: left;
    transition: all .2s ease;
    line-height: 73px;
}

.site-logo-light {
    display: none
}

.site-navigation {
    display: block;
    float: right;
}

.menu-toggle {
    display: none;
}

ul.menu.main-menu {
    padding: 0;
    margin: 0;
}

    ul.menu.main-menu li.menu-item {
        position: static;
        display: inline-block;
        padding: 0 20px;
        font-size: 16px;
        font-weight: 600;
        line-height: 32px;
    }

.site-header::after {
    content: "";
    display: block;
    position: absolute;
    background: #e6e6e6;
    width: 100%;
    height: 0px;
    top: 0;
    z-index: -5;
    -webkit-transition: height .4s ease;
    -o-transition: height .4s ease;
    transition: height .4s ease;
}

.site-header.sub-open::after {
    height: 500px
}

.site-header.stick.sub-open::after {
    height: 400px
}


.site-header .header-self::after {
    content: "";
    display: block;
    position: absolute;
    background: #fff;
    z-index: -1;
    width: 100%;
    height: 100%;
    padding: 40px 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.19);
    -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.19);
    -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.19);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease
}

.site-header.sub-open .header-self::after {
    opacity: 1;
    visibility: visible
}

.site-header.sub-open .header-socials ul,
.site-header .header-socials ul {
    margin: 0;
    padding: 0;
}

    .site-header.sub-open .header-socials ul li a {
        color: #2E343A;
    }

.site-header.sub-open .header-lang-switcher {
    color: #EA297C;
}

.sub-menu-wrapper {
    position: absolute;
    height: auto;
    top: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    padding-top: 74px;
    z-index: -1;
}

.menu-item.has-children:hover .sub-menu-wrapper {
    opacity: 1;
    visibility: visible;
}

.sub-menu-title {
    display: block;
    width: auto;
    padding-left: 40px;
}

ul.sub-menu {
    display: block;
    float: left;
    width: auto;
    padding: 0;
    background-color: #fff;
    border: 0;
    box-shadow: 0 3px 45px rgba(0,0,0,.09);
    -webkit-box-shadow: 0 3px 45px rgba(0,0,0,.09);
    -moz-box-shadow: 0 3px 45px rgba(0,0,0,.09);
    min-width: 200px;
    text-align: left;
    border-radius: 2px;
}

ul.menu .sub-menu li {
    display: block;
    margin: 0;
    padding: 0;
}

    ul.menu .sub-menu li a {
        font-size: 13px;
        font-weight: 400;
        color: #2e343a;
        padding: 12px 20px 10px 8px;
        line-height: 1.2;
        display: block;
        white-space: nowrap;
        clear: both;
    }

/* Footer */

#footer {
    background-image: url(images/footer_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 50px 0 0 0;
    overflow: hidden;
    background-position: center;
}

.footer-socials ul li {
    display: inline-block;
    font-size: 20px;
    margin: 0 10px;
}

    .footer-socials ul li a {
        color: #fff;
        text-decoration: none;
    }

.footer-socials {
    display: block;
    float: right;
}

    .footer-socials ul li:last-child {
        margin-right: 0;
    }

.container.footer-top .row:first-child {
    margin-bottom: 35px;
}

.footer-list,
.footer-list a {
    color: #fff;
    text-decoration: none;
}

    .footer-list ul {
        padding: 0;
        margin: 0;
    }

        .footer-list ul li {
            display: block;
            font-size: 16px;
            line-height: 25px;
        }

.footer-list {
    position: relative;
    padding-right: 30px;
    overflow: hidden;
    height: 100%;
}

    .footer-list::after {
        content: "";
        display: block;
        width: 1px;
        height: 100px;
        background: #fff;
        opacity: .22;
        display: block;
        position: absolute;
        right: 30px;
        top: 50%;
        transform: translateY(-50%);
    }


    .footer-list .footer-list-title {
        font-size: 18px;
        line-height: 1.2;
        margin-bottom: 15px;
    }

.losts-row .col:last-child .footer-list::after {
    display: none;
}

.footer-bottom-bar {
    display: block;
    float: left;
    width: 100%;
    background: #EA297C;
    margin-top: 100px
}

.footer-bottom-bar {
    padding: 10px 0;
}

.footer-menu {
    display: block;
    float: right;
}

    .footer-menu ul {
        margin: 0;
        padding: 0;
    }

        .footer-menu ul li {
            display: inline-block;
            font-size: 16px;
            line-height: 16px;
            margin: 0 15px;
        }

            .footer-menu ul li:last-child {
                margin-right: 0;
            }

            .footer-menu ul li a {
                text-decoration: none;
                color: #fff;
                font-weight: normal;
            }

.copyright-text {
    font-size: 16px;
    color: #fff;
    font-weight: normal;
}

/* Shortcodes */

/* Main Slider */

.main-slider .tp-bullets.dione {
    display: none !important;
}

.main-slider {
    width: 100%;
    height: 100vh;
    display: block;
}

    .main-slider .swiper-container {
        width: 100%;
        height: 100%;
    }

    .main-slider .swiper-slide .slide-image {
        width: 100%;
        height: 100%;
        position: relative
    }

    .main-slider .swiper-slide img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }

.main-slider-nav {
    position: absolute;
    bottom: 0;
    z-index: 12;
}

.main-slider .slide-content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 80%;
    z-index: 1
}

    .main-slider .slide-content .slide-sub-title {
        text-align: center;
        background: #ef51a4;
        background: -webkit-gradient(linear, left top, right top, from(#ef51a4), to(#ea297c));
        background: -o-linear-gradient(left, #ef51a4 0%, #ea297c 100%);
        background: linear-gradient(90deg, #ef51a4 0%, #ea297c 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        display: block;
        overflow: hidden;
    }

    .main-slider .slide-content .slide-title {
        text-align: center;
    }

        .main-slider .slide-content .slide-title h1 {
            color: #fff;
        }

.main-slider .swiper-slide .slide-image::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #000;
    opacity: .6;
}

.main-slider-nav {
    text-align: center;
    margin-bottom: 35px
}

.main-slider span.swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    background: #fff;
}

.tp-caption.rev-btn.tp-resizeme.btn-border-slide {
    border-width: 1px !important;
}

    .tp-caption.rev-btn.tp-resizeme.btn-border-slide:hover {
        border-color: transparent !important;
        background: #ea297c !important;
        background: -o-linear-gradient(90deg, #ea297c 80%, #ef51a4 100%) !important;
        background: linear-gradient(90deg, #ea297c 80%, #ef51a4 100%) !important;
    }

.evoluciona-hero-slider {
}

    .evoluciona-hero-slider .hero-item-title {
        background: none !important;
        -webkit-text-fill-color: inherit !important;
        color: #009CAB !important;
    }

    .evoluciona-hero-slider .hero-item-btn {
        background: #009CAB !important;
        transition: background-color 0.3s ease !important;
        box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    }

        .evoluciona-hero-slider .hero-item-btn:hover {
            background: #028e9c !important;
        }

.intelciatech-hero-slider .tp-bullets.dione {
    display: block !important;
}

.intelciatech-hero-slider {
}

    .intelciatech-hero-slider .hero-item-title {
        background: none !important;
        -webkit-text-fill-color: inherit !important;
        color: #ffffff !important;
    }

    .intelciatech-hero-slider .hero-item-btn {
        background: linear-gradient(to top, #1B174B 0%, #5A1D91 100%) !important;
        background-size: 200% 200% !important;
        color: #FFFFFF !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        letter-spacing: 0.5px !important;
        line-height: 1 !important;
        padding: 12px 29px !important;
        border-radius: 5px !important; 
        transition: all 0.3s ease !important;
        box-shadow: 0 5px 15px rgba(67, 53, 219, 0.2) !important;
        border: none;
    }
        .intelciatech-hero-slider .hero-item-btn:hover {
            transform: translateY(-2px) !important;
            box-shadow: 0 10px 25px rgba(90, 29, 145, 0.4) !important;
            background: linear-gradient(to bottom, #1B174B 0%, #5A1D91 100%) !important;
        }

.intelciatech-hero-slider .dione .tp-bullet {
    opacity: 1;
    width: 93px;
    height: 70px;
    padding: 1px;
    margin: 0px;
    background: #242424;
    background-color: #242424;
    box-sizing: border-box;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    border-radius: 3px;    

}

/* 1. LE CONTENEUR (La fenêtre fixe) */

.intelciatech-hero-slider .dione .tp-bullet-title {
    opacity: 1;
    background: transparent;
    bottom: 85px;
    width: 91px;
    padding: 10px 0px;
    text-align: center;
    font-size: 13px;
    white-space: normal;
}

.intelciatech-hero-slider .dione .tp-bullet-title:after{
    content: none;
}

.intelciatech-hero-slider .dione .tp-bullet-img-wrap {
    display: block;
    width: 91px;
    height: 68px;
    border-radius: 3px;
    overflow: hidden; /* C'est la clé : coupe tout ce qui dépasse */
    position: relative;
    /* On met l'ombre portée ici pour qu'elle reste fixe par-dessus l'image qui bouge */
    box-shadow: inset 0px 0px 20px 0px #000000;
    z-index: 1;
}

/* 2. L'IMAGE (Le contenu qui bouge) */
/* Elle remplit le conteneur et c'est elle qui va zoomer */
.intelciatech-hero-slider .dione .tp-bullet-image {
    display: block;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center center;
    /* Transition douce pour le zoom */
    transition: transform 0.4s ease-out;
    position: relative;
    z-index: 0;
}

/* 3. LE MASQUE DE COULEUR (L'overlay) */
/* Il se place par-dessus l'image */
.intelciatech-hero-slider .dione .tp-bullet-image::after {
    content: "";
    position: absolute;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    
    /* Votre dégradé violet avec transparence */
    background: linear-gradient(to right, rgba(70, 57, 150, 0.3) 0%, rgba(170, 33, 142, 0.3) 100%);
    
    opacity: 0; /* Invisible par défaut */
    transition: opacity 0.4s ease;
    pointer-events: none;
}

/* 4. L'ANIMATION (Au survol ou sélection) */
/* On cible le wrapper parent (.tp-bullet) pour déclencher l'effet sur les enfants */

/* Action A : Zoom de l'image */
.intelciatech-hero-slider .dione .tp-bullet:hover .tp-bullet-image,
.intelciatech-hero-slider .dione .tp-bullet.selected .tp-bullet-image {
    transform: scale(1.1); /* Zoom de 10% */
}

/* Action B : Apparition du masque coloré */
.intelciatech-hero-slider .dione .tp-bullet:hover .tp-bullet-image::after,
.intelciatech-hero-slider .dione .tp-bullet.selected .tp-bullet-image::after {
    opacity: 1;
}


.ms_title_char {
    overflow: hidden;
}

    .ms_title_char span {
        display: block;
        transform: translateX(100px);
        transition: transform 1s ease .3s;
    }

.swiper-slide-active .ms_title_char span {
    transform: translateX(0);
}

/* Heading */

.i-heading {
    display: block;
    float: left;
    width: 100%;
    margin-bottom: 35px;
    z-index: 5;
    text-transform: uppercase;
}

    .i-heading h1 {
        font-size: 40px;
        line-height: 42px;
        font-weight: 700;
        letter-spacing: -0.06em;
    }

.heading_line {
    overflow: hidden;
}

    .heading_line span {
        display: block;
    }

span.bg-text {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 162px;
    font-weight: 700;
    color: transparent;
    -webkit-text-stroke: 1px #2E343A;
    z-index: -1;
    -webkit-transform: translate(-10%, 0);
    -ms-transform: translate(-10%, 0);
    transform: translate(-10%, 0);
    opacity: .12;
    pointer-events: none;
    text-transform: uppercase;
    line-height: 0.9;
}

.white-bg-title span.bg-text {
    -webkit-text-stroke: 1px #ffffff;
}

.i-heading span.gradient-color {
    background: #ef51a4;
    background: -webkit-gradient(linear, left top, right top, from(#ea297c), to(#ef51a4));
    background: -o-linear-gradient(left, #ea297c 0%, #ef51a4 100%);
    background: linear-gradient(90deg, #ea297c 0%, #ef51a4 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


/* Single Image */

.i-single-image {
    width: 100%;
    height: 100%;
    display: block;
    position: relative
}

.single-image-icon {
    position: absolute;
    right: 0;
    bottom: 0;
    transform: translateX(50%);
}

.i-single-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

/* Text Wrapper */

.text-wrapper p {
    line-height: 1.4;
    margin-bottom: 16px;
    font-size: 17px;
}

.i-text-wrapper {
    display: block;
    margin-bottom: 35px
}

    .i-text-wrapper.align-center {
        text-align: center
    }


    .i-text-wrapper.align-right {
        text-align: right
    }

/* Button */

.i-button {
    display: inline-block;
}

    .i-button.back-light a {
        background: #fff;
        border: 1px solid #4A3283;
        color: #4A3283;
    }

    .i-button.back-transparent a {
        background: transparent;
        color: #fff
    }

    .i-button a {
        font-size: 14px;
        text-decoration: none;
        background: #ef51a4;
        background: -o-linear-gradient(273deg, #ef51a4 0%, #ea297c 100%);
        background: linear-gradient(177deg, #ef51a4 0%, #ea297c 100%);
        display: block;
        transition: all .3s ease;
        text-decoration: none;
        padding: 12px 24px;
        border-radius: 35px;
        color: #ffffff;
        margin-right: 15px;
        font-weight: 600;
        line-height: 1.2;
    }

        .i-button a i {
            display: inline-block;
            -webkit-transition: -webkit-transform .3s ease;
            transition: -webkit-transform .3s ease;
            -o-transition: transform .3s ease;
            transition: transform .3s ease;
            transition: transform .3s ease, -webkit-transform .3s ease
        }

        .i-button a:hover {
            color: #fff;
            background: #ea297c;
            background: -o-linear-gradient(349deg, #ea297c 0%, #ef51a4 100%);
            background: linear-gradient(101deg, #ea297c 0%, #ef51a4 100%);
        }


            .i-button a:hover i {
                -webkit-transform: translateX(5px);
                -ms-transform: translateX(5px);
                transform: translateX(5px)
            }

/* Empty Space */

.i-empty-space {
    display: block;
    float: left;
    clear: both;
    width: 100%;
}

/* Who We Are*/
.section-who-we-are {
}


/* Solutions Slider */


.solutions-slider {
    display: block;
    width: 100%;
}

    .solutions-slider .swiper-wrapper {
        /*align-items: center;*/
    }

    .solutions-slider .swiper-slide {
        width: 65%;
    }

.solution-content {
    display: block;
    float: left;
    width: 70%;
    background: #ea297c;
    /*background: -o-linear-gradient(297deg, #ef51a4 5%, #ea297c 100%);
    background: linear-gradient(297deg, #ef51a4 5%, #ea297c 100%);*/
    padding: 50px 50px 30px 50px;
    color: #fff;
    margin-top: 35px;
    position: relative;
    z-index: -1;
    padding-right: calc(10% + 35px);
    transition: all .4s ease
}

.solution-plus-button {
    position: absolute;
    right: 15px;
    bottom: 70px;
    color: #EA297C;
    padding: 10px;
    background: #fff;
    font-size: 20px;
    line-height: 20px;
    font-weight: bolder;
    border-radius: 5px;
    transition: all .4s ease;
    cursor: pointer
}

.solution-content:hover {
    /*padding-bottom: 55px*/
}

    .solution-content:hover .solution-plus-button {
        /*bottom: 15px*/
    }

.solution-image {
    width: 40%;
    position: absolute;
    top: 0;
    right: 0;
    height: calc(100% - 35px);
}

    .solution-image img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }

.solution-title {
    display: block;
    margin-bottom: 10px;
}

    .solution-title h3 {
        font-weight: 500;
        text-transform: uppercase;
    }

.solution-logo {
    display: block;
}

    .solution-logo img {
        max-width: 180px;
        margin-bottom: 15px;
    }

.solution-description {
    display: block;
    margin-bottom: 35px;
}

.solution-list {
    display: block;
}

h5.solution-list-title {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 15px;
}

.solution-list ul {
    margin: 0;
    padding: 0;
}

    .solution-list ul li {
        display: block;
        margin-bottom: 12px;
        border-bottom: 1px solid rgba(255, 255, 255, .3);
        padding-bottom: 13px;
    }

        .solution-list ul li:last-child {
            border: none;
            margin-bottom: 0;
            padding-bottom: 0;
        }


.solutions-nav {
    position: relative;
    display: block;
    padding-bottom: 15px;
    margin-bottom: 30px;
    z-index: 5;
}

.swiper-container.solutions-slider-container {
    position: relative;
}

.solutions-nav ul {
    margin: 0;
    padding: 0;
}

    .solutions-nav ul li {
        display: table-cell;
        padding: 0 20px;
        font-size: 18px;
        font-weight: 500;
        position: relative;
        cursor: pointer;
    }

.solutions-nav::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #2E343A;
    opacity: .07;
    bottom: 0;
}

.solutions-nav ul li::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -15px;
    width: 0%;
    height: 5px;
    background: #ef51a4;
    background: -webkit-gradient(linear, left top, right top, from(#ef51a4), to(#ea297c));
    background: -o-linear-gradient(left, #ef51a4 0%, #ea297c 100%);
    background: linear-gradient(90deg, #ef51a4 0%, #ea297c 100%);
    left: 0;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.solutions-nav ul li.active::after {
    width: 100%;
}


/* Industries Slider */

.industries-slider {
    overflow: hidden;
}

    .industries-slider .swiper-slide:before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: inherit;
        -webkit-filter: grayscale(0.1);
        -moz-filter: grayscale(10%);
        -ms-filter: grayscale(10%);
        -o-filter: grayscale(10%);
        filter: grayscale(10%);
    }

    .industries-slider .swiper-slide {
        height: auto;
        /*background-image: url(images/insutries_content_bg.jpg);
        background-position: right center;
        background-repeat: no-repeat;
        background-size: cover;*/
        background: #f8f8f8;
    }

        .industries-slider .swiper-slide .indstry-card-slide {
            position: relative;
            height: 100%;
            transition: all 800ms cubic-bezier(0.19, 1, 0.22, 1);
            background: #ea297c;
            background: linear-gradient(153deg, rgba(78, 4, 40, 0.38) 54%, rgba(132, 0, 57, 1) 100%);
        }

            .industries-slider .swiper-slide .indstry-card-slide:hover {
                background: linear-gradient(153deg, rgba(78, 4, 40, 0.38) 20%, rgba(132, 0, 57, 1) 100%);
                transform: scale(0.9);
            }

        .industries-slider .swiper-slide .slide-image {
            height: 200px;
        }

            .industries-slider .swiper-slide .slide-image img {
                width: 100%;
                height: 100%;
                display: block;
                object-fit: cover;
            }

        .industries-slider .swiper-slide .slide-content {
            padding: 40px;
        }

    .industries-slider .swiper-pagination-bullet-active {
        background-color: #EB297C;
    }

.indstry-title h4 {
    font-size: 22px;
    letter-spacing: 0.02em;
    line-height: 32px;
    text-align: left;
    color: #ffffff;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.industry-text p {
    font-weight: normal;
    font-size: 15px;
    line-height: 20px;
}

.industry-button a {
    text-decoration: none;
    color: #4A3283;
    font-weight: 500;
    display: block;
    overflow: hidden;
}

    .industry-button a i {
        display: inline-block;
        -webkit-transition: -webkit-transform .3s ease;
        transition: -webkit-transform .3s ease;
        -o-transition: transform .3s ease;
        transition: transform .3s ease;
        transition: transform .3s ease, -webkit-transform .3s ease
    }

    .industry-button a:hover i {
        -webkit-transform: translateX(5px);
        -ms-transform: translateX(5px);
        transform: translateX(5px)
    }

.industry-text {
    display: block;
    color: #ffffff;
}

.industry-button {
    margin-top: 30px;
}

.industries-nav {
    display: none;
    width: 100%;
    float: left;
    text-align: center;
    margin-bottom: 100px;
    position: relative
}

    .industries-nav::after {
        content: "";
        display: block;
        position: absolute;
        bottom: -30px;
        width: 100%;
        height: 50px;
        -webkit-transform: translateY(100%);
        -ms-transform: translateY(100%);
        transform: translateY(100%);
        background: rgb(255, 255, 255);
        background: -webkit-gradient(linear, left bottom, left top, from(rgba(255, 255, 255, 0)), to(rgba(116, 116, 116, .2)));
        background: -o-linear-gradient(bottom, rgba(255, 255, 255, 0) 0%, rgba(116, 116, 116, .2) 100%);
        background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(116, 116, 116, .2) 100%);
    }

    .industries-nav ul li {
        display: inline-block;
        padding: 0 30px;
        font-size: 20px;
        font-weight: 500;
        position: relative;
        cursor: pointer
    }

        .industries-nav ul li::after {
            content: "";
            display: block;
            position: absolute;
            bottom: -30px;
            left: 0;
            background: #EA297C;
            width: 0%;
            height: 5px;
        }

        .industries-nav ul li.active::after {
            width: 100%;
        }

.swiper-container.industries-slider-container {
    /*width: 80%;*/
}

/* Video Map */
.video-map {
    /*max-width: 800px;
    margin: auto;*/
    overflow: hidden;
}

    .video-map .video-js .vjs-big-play-button {
        width: 70px;
        height: 70px;
        border-radius: 50px;
        line-height: 67px;
        color: #ea297c;
        border: none;
        background-color: #fff;
        font-size: 40px;
        margin-left: -35px;
        margin-top: -35px;
    }
/* Interactive Map */
.interactive-map {
    display: block;
    width: 100%;
    height: 100%;
    position: relative
}

.map-image {
    width: 100%;
}

    .map-image img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
    }

.marker-wrap {
    opacity: 0;
    visibility: hidden;
    display: none;
    background-image: url(images/map-marker-bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 25px;
    /* pointer-events: none; */
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    position: relative;
    z-index: 2;
}

    .marker-wrap.visible {
        opacity: 1;
        visibility: visible;
        display: block;
    }

.interactive-map .marker {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 20%;
    /* pointer-events: none; */
    color: #fff;
}

    .interactive-map .marker .marker-title {
        margin-bottom: 20px;
        display: block;
    }

    .interactive-map .marker .marker-content {
        margin-bottom: 20px;
        display: block;
    }

        .interactive-map .marker .marker-content p {
            line-height: 1.2;
            font-size: 16px;
            padding: 0;
            margin: 0;
        }

    .interactive-map .marker .site-video-container .site-video-item {
        margin-bottom: 5px;
    }

        .interactive-map .marker .site-video-container .site-video-item a {
            font-size: 14px;
            line-height: 20px;
            text-transform: uppercase;
        }

            .interactive-map .marker .site-video-container .site-video-item a span {
                font-size: 14px;
                line-height: 20px;
            }

            .interactive-map .marker .site-video-container .site-video-item a:hover span {
                text-decoration: underline;
            }

        .interactive-map .marker .site-video-container .site-video-item i {
            margin-right: 8px;
            font-size: 24px;
        }

.marker .dot {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 12px;
    height: 12px;
    background: #00B6C2;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    pointer-events: all;
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    cursor: pointer
}



    .marker.hovered .dot,
    .marker .dot:hover {
        width: 25px;
        height: 25px;
        background: #EA297C
    }

/* Number Counter */

.number-counter {
    display: block;
    position: relative;
    text-align: center;
    padding: 25px 0;
    background: rgba(255, 255, 255, .4);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    white-space: nowrap
}

.nc-number,
.nc-before,
.nc-after {
    font-size: 50px;
    display: inline-block;
    margin-top: 30px;
    font-weight: 800;
    color: #fff
}

.nc-text {
    display: block;
    margin-top: 20px;
    font-weight: 600;
}


/*Awards*/

.awards {
    display: block;
    width: 100%;
    /*margin-bottom: 50px;*/
    text-align: center
}

.awards-bottom,
.awards-top {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-bottom: 35px
}


.award {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    width: 300px;
    background: #fff;
    margin: 0 15px;
    box-shadow: 0px 3px 30px rgba(0, 0, 0, 0.16);
    -webkit-box-shadow: 0px 3px 30px rgba(0, 0, 0, 0.16);
    -moz-box-shadow: 0px 3px 30px rgba(0, 0, 0, 0.16);
}

    .award img {
        max-width: 35%;
        max-height: 75%;
        -o-object-fit: contain;
        object-fit: contain;
    }

    .award a {
        display: inline-block;
        vertical-align: middle;
        padding: 25px 40px;
        width: 100%;
        height: 100%;
    }

.cta-awards {
    text-align: center;
    margin: 20px 0;
}

    .cta-awards .i-button.back-light a {
        margin: 8px;
    }


/* Posts Slider */
.posts-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    height: auto;
    overflow: hidden;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 10px;
}

    .posts-slider .swiper-slide {
        /*width: 35%;*/
        /*box-shadow: 0px 1px 18px rgba(0, 0, 0, 0.16);
        -webkit-box-shadow: 0px 1px 18px rgba(0, 0, 0, 0.16);
        -moz-box-shadow: 0px 1px 18px rgba(0, 0, 0, 0.16);*/
        margin-bottom: 20px;
    }

        .posts-slider .swiper-slide:hover {
            box-shadow: 0px 1px 18px rgba(0, 0, 0, 0.16);
            -webkit-box-shadow: 0px 1px 18px rgba(0, 0, 0, 0.16);
            -moz-box-shadow: 0px 1px 18px rgba(0, 0, 0, 0.16);
        }

        .posts-slider .swiper-slide a {
            text-decoration: none;
            color: unset;
            display: block;
            width: 100%;
        }

    .posts-slider .post-image {
        position: relative;
        width: 100%;
        height: 200px;
    }

        .posts-slider .post-image img {
            width: 100%;
            height: 100%;
            -o-object-fit: cover;
            object-fit: cover;
            display: block;
        }

    .posts-slider .post-content {
        display: block;
        padding: 25px;
        background: #fff;
        overflow: hidden;
    }

    .posts-slider .post-meta,
    .posts-slider .post-title,
    .posts-slider .post-summary {
        display: block;
        float: left;
        width: 100%;
    }

        .posts-slider .post-summary p {
            font-size: 15px;
            line-height: 1.4;
            color: #2E343A;
        }

    .posts-slider .post-cat {
        display: block;
        font-size: 12px;
        font-weight: 500;
        color: #ffffff;
        padding: 10px 15px;
        background: #ea297c;
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .posts-slider .post-meta {
        margin-bottom: 10px;
    }


        .posts-slider .post-meta .post-date {
            font-weight: 500;
            font-size: 12px;
            letter-spacing: 0.02em;
            color: #ea297c;
        }

    .posts-slider .post-title h2 {
        font-size: 14px;
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: initial;
        color: #4A3283;
    }

    .posts-slider .post-title {
        margin-bottom: 12px;
        height: 65px;
    }


.swiper-container.posts-slider-container {
    display: block;
    overflow: hidden;
    /*padding-right: 100px;*/
}



.cat-select {
    display: block;
    width: 250px;
    position: relative;
    margin: 0 auto 15px auto
}

    .cat-select select {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        outline: 0;
        border: 1px solid #fff;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(255, 255, 255, .4);
        border-radius: 35px;
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        color: #4A3283;
        font-weight: 800;
        width: 100%;
        padding: 15px 20px;
    }

/* Remove IE arrow */
select::-ms-expand {
    display: none;
}

.cat-select::after {
    content: '\ea5b';
    position: absolute;
    top: 50%;
    right: 15px;
    font-family: 'IcoFont';
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #4A3283;
}

.slider-arrows > div {
    display: inline-block;
    padding: 12px;
    background: #EA297C;
    border-radius: 50%;
    cursor: pointer;
}


.posts-slider-acts {
    display: block;
}

    .posts-slider-acts .i-button {
        margin: 0 auto;
        float: none;
        white-space: nowrap
    }

        .posts-slider-acts .i-button a {
            margin-right: 0;
            background: #fff;
            color: #EA297C;
        }

.slider-arrows > div i {
    line-height: 1em;
    font-size: 25px;
    color: #fff;
}

.slider-arrows > div.slide-prev {
    margin-right: 10px;
}

.slider-arrows {
    display: block;
    overflow: hidden;
    text-align: right;
    margin-bottom: 10px;
}

/* Floating button contact*/
.float-contact {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px;
    border-radius: 50px;
    text-align: center;
    box-shadow: 0px 0px 17px #fff;
    z-index: 1;
    color: #fff;
    background: #ef51a4;
    background: -webkit-gradient(linear, left top, right top, from(#ef51a4), to(#ea297c));
    background: -o-linear-gradient(left, #ef51a4 0%, #ea297c 100%);
    background: linear-gradient(90deg, #ef51a4 0%, #ea297c 100%);
    transition: 0.3s;
}

    .float-contact:hover {
        color: #edced9;
    }

    .float-contact i {
        font-size: 25px;
        line-height: 60px;
    }



/* Responsive */
@media only screen and (max-width: 1176px) {

    .industries-nav ul li {
        padding: 0 20px;
        margin-bottom: 20px;
    }

        .industries-nav ul li::after {
            display: none;
        }

        .industries-nav ul li.active {
            color: #EA297C;
        }


    .industries-slider .swiper-slide .slide-image {
        width: 100%;
    }

    .industries-slider .swiper-slide .slide-content {
    }



    .solution-image {
        height: 70%
    }

    .nc-number,
    .nc-before,
    .nc-after {
        font-size: 40px;
    }

    .posts-slider .swiper-slide {
        /*width: 50%*/
    }

    section {
        background-position: bottom
    }


    body {
        overflow-x: hidden
    }

    .site-navigation {
        position: fixed;
        top: 101.75px;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        background-image: linear-gradient(322deg, #ef51a4 0%, #ea297c 100%);
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all .3s ease;
        -o-transition: all .3s ease;
        transition: all .3s ease;
        overflow-y: auto;
    }

        .site-navigation.show {
            opacity: 1;
            visibility: visible;
        }

    ul.menu.main-menu {
        display: block;
        padding: 20px 0;
        width: 90%;
        margin: auto;
    }

        ul.menu.main-menu li.menu-item {
            position: relative;
            display: block;
            font-size: 22px;
            line-height: 1.2;
            padding: 0 0 0 25px;
            margin: 0;
            overflow: hidden;
            text-align: left;
        }

        ul.menu.main-menu li a,
        ul.menu.main-menu li span {
            display: block;
            font-size: 16px;
            font-weight: 500;
            line-height: 1.2;
            margin: 0;
            padding: 14px 0;
            border-bottom: 1px solid rgba(255,255,255,.18);
        }

            ul.menu.main-menu li a.is-active,
            ul.menu.main-menu li a:hover,
            ul.menu.main-menu li span.is-active,
            ul.menu.main-menu li span:hover {
                color: #ff9fc8 !important;
            }

        ul.menu.main-menu li.menu-item.cta a {
            display: inline-block;
            white-space: nowrap;
            padding: 10px 20px;
            font-size: 17px;
            line-height: 1;
        }

    .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > a,
    .header-self:has(.menu-item:hover) ul.menu.main-menu li.menu-item > span {
        display: block;
        color: #ffffff;
    }

    .mystick .header-self ul.menu.main-menu li.menu-item > a,
    .header-self ul.menu.main-menu li.menu-item:hover > a,
    .mystick .header-self ul.menu.main-menu li.menu-item > span,
    .header-self ul.menu.main-menu li.menu-item:hover > span {
        display: block;
        color: #ffffff;
    }

    .sub-menu-wrapper {
        position: initial;
        display: none;
        opacity: 1;
        visibility: visible;
        padding-top: 0;
        z-index: 1;
    }

        .sub-menu-wrapper .sub-menu {
            display: block;
            float: none;
            width: auto;
            padding: 0 0 0 30px;
            background-color: transparent;
            border: 0;
            box-shadow: none;
            -webkit-box-shadow: none;
            -moz-box-shadow: none;
            min-width: auto;
            text-align: left;
            border-radius: 0;
        }

        .sub-menu-wrapper .sub-menu {
            display: block;
            float: none;
            width: auto;
            padding: 0;
            background-color: transparent;
            border: 0;
            box-shadow: none;
            -webkit-box-shadow: none;
            -moz-box-shadow: none;
            min-width: auto;
            text-align: left;
            border-radius: 0;
        }

    ul.menu .sub-menu li a {
        padding-left: 22px;
        color: #ffffff;
    }


    .menu-item.has-children .mnu-nv0::before {
        content: "\f067";
        border: none;
        color: #ffffff;
        display: inline-block;
        font: normal normal normal 14px/1 FontAwesome;
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-size: 21px;
        position: absolute;
        right: 0;
        top: 15px;
        transition: transform .3s ease;
        width: initial;
        height: initial;
    }

    .menu-item.has-children.open .mnu-nv0::before {
        content: "\f068";
    }

    .menu-item::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 6px;
        width: 2px;
        z-index: 1;
        background-color: #fff;
    }

    .menu-item.first::before {
        top: 24px;
    }

    .menu-item.last::before {
        height: 24px;
    }

    .menu-item::after {
        content: '';
        display: block;
        position: absolute;
        top: 16px;
        left: 0;
        height: 14px;
        width: 14px;
        border: 1px solid #fff;
        border-radius: 50%;
        background-color: #e03188;
        z-index: 99;
        padding: 0;
        margin: 0;
    }

    .header-self {
        background-color: #fff;
        border-bottom: 1px solid #dcdcdc;
    }

    .header-wrapper {
        padding: 12px 0;
    }

    .site-branding {
        line-height: normal;
    }

    #nav-icon3 {
        width: 50px;
        height: 37px;
    }

        #nav-icon1 span,
        #nav-icon3 span,
        #nav-icon4 span {
            background: #ea297c;
        }

        #nav-icon1.open span,
        #nav-icon3.open span,
        #nav-icon4.open span {
            /* background: #ffffff; */
        }

    .header-self .site-logo-dark {
        display: none;
    }

    .header-self .site-logo-light {
        display: block;
    }

        .header-self .site-logo-light img {
            height: 28px;
            margin-top: 5px;
        }

    .menu-toggle {
        display: block;
        float: right;
        z-index: 2;
    }

    .header-top-bar-wrapper {
        /* margin-bottom: 15px;
        padding: 25px 0 */
    }

    .header-socials {
        display: block;
        float: left;
    }

        .header-socials ul li:first-child {
            margin-left: 0;
        }


    section.half-bg {
        background-size: cover;
    }

    .awards {
        margin-bottom: 0
    }
}

/****************Contact générique***********/
.formulaire.generique-contact-block {
    padding-top: 0;
    padding-bottom: 0;
}

    .formulaire.generique-contact-block .formulaire-big-content {
        background-color: rgba(132, 22, 97, 0.59);
        padding-top: 60px;
        padding-bottom: 60px;
    }

.generique-contact-block .head-formulaire {
    overflow: hidden;
    margin-bottom: 30px;
}

    .generique-contact-block .head-formulaire p {
        font-weight: normal;
        font-size: 18px;
        line-height: 24px;
        text-align: left;
        color: #ffffff;
        margin-bottom: 35px;
    }

.formulaire.generique-contact-block h2 {
    font-size: 40px;
    line-height: 50px;
    font-weight: 700;
    letter-spacing: -0.06em;
    text-align: left;
    color: #ffffff;
    text-transform: uppercase;
    margin: 0;
}

.formulaire.generique-contact-block h3 {
    color: #ffffff;
    font-size: 40px;
    line-height: 50px;
    font-weight: 700;
    letter-spacing: -0.06em;
    text-transform: uppercase;
    margin-bottom: 30px;
}

    .formulaire.generique-contact-block h3 span {
        /* background: #ef51a4;
    background: -webkit-gradient(linear, left top, right top, from(#ef51a4), to(#ea297c));
    background: -o-linear-gradient(left, #ef51a4 0%, #ea297c 100%);
    background: linear-gradient(90deg, #ef51a4 0%, #ea297c 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; */
    }

.generique-contact-block .select-top {
    float: left;
    border-radius: 25px;
    background-image: url(images/bg-select.png);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: 95% center;
    background-color: #f5f5f5 !important;
    border: 1px solid #9cb1c6 !important;
    font-weight: 500;
}

.generique-contact-block .head-formulaire .form-group {
    max-width: 460px;
    margin: auto;
}

.formulaire.generique-contact-block .label-jesuis {
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.02em;
    line-height: 36px;
    color: #8e2675;
    text-transform: uppercase;
    display: block;
    margin-left: 25px;
}

.formulaire.generique-contact-block h4 {
    font-family: Gotham;
    font-weight: bold;
    font-size: 16px;
    letter-spacing: 0.02em;
    line-height: 1.4;
    color: #8e2675;
    text-transform: uppercase;
    margin-right: 20px;
    display: inline-block;
    margin-left: 20px;
}

.formulaire.generique-contact-block .iti {
    display: block;
}

.formulaire.generique-contact-block .iti__selected-flag {
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    padding-left: 25px;
}

.formulaire.generique-contact-block .iti--allow-dropdown input,
.formulaire.generique-contact-block .iti--allow-dropdown input[type=tel],
.formulaire.generique-contact-block .iti--allow-dropdown input[type=text],
.formulaire.generique-contact-block .iti--separate-dial-code input,
.formulaire.generique-contact-block .iti--separate-dial-code input[type=tel],
.formulaire.generique-contact-block .iti--separate-dial-code input[type=text] {
    padding-right: 6px !important;
    padding-left: 52px !important;
    margin-left: 0 !important;
}

.formulaire.generique-contact-block .radio-label-cust {
    font-size: 1rem;
    font-weight: 500;
    color: #212529;
    margin-top: 7px;
    margin-bottom: 7px;
}

.generique-contact-block form label.error {
    font-size: 12px;
    color: red;
    padding-left: 20px;
    margin-top: 6px;
}

.generique-contact-block form .form-check label.error {
    margin-left: 10px;
    padding-left: 0;
}

.generique-contact-block form input[type="text"],
.generique-contact-block form input[type="email"],
.generique-contact-block form input[type="password"],
.generique-contact-block form input[type="tel"],
.generique-contact-block form select,
.generique-contact-block form textarea {
    font-family: Gotham;
    background-color: #f5f5f5 !important;
    border: 1px solid #9cb1c6 !important;
    border-radius: 25px;
    padding: 14px 20px !important;
    line-height: inherit !important;
    font-weight: 500;
}

.generique-contact-block .form-control::placeholder {
    font-style: inherit;
    font-size: 16px;
    letter-spacing: 0.02em;
    text-align: left;
    color: #2e343a;
}

.generique-contact-block .content-formulaire {
    padding: 20px;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.84);
    box-shadow: 0px 2px 55px 0px rgba(0, 0, 0, 0.25);
}

    .generique-contact-block .content-formulaire .form-row {
        /*margin-bottom: 20px;*/
    }

.generique-contact-block .row-form-section {
    margin-top: 25px;
}

.generique-contact-block .row-label {
    /*width: 100%;*/
    overflow: hidden;
    /*margin-bottom: 5px !important;
    padding-top: 15px !important;*/
}

    .generique-contact-block .row-label span {
        font-family: Gotham;
        font-size: 14px;
        letter-spacing: 0.02em;
        text-align: center;
        color: #999a9b;
        float: right;
    }

.generique-contact-block textarea {
    border-radius: 12px !important;
    font-weight: 500 !important;
}

.generique-contact-block .form-check-input {
    background: #f5f5f5;
    border: 1px solid #9cb1c6;
}

.formulaire.generique-contact-block .form-check-label {
    font-family: Gotham;
    font-weight: 500;
    font-size: 15px;
    color: #2e343a;
    text-transform: none;
    line-height: 24px;
    margin-left: 10px;
}

    .formulaire.generique-contact-block .form-check-label a {
        text-decoration: underline;
        color: #8e2675;
    }

.generique-contact-block .form-check-input:checked[type=checkbox] {
    background-image: url(images/bg-check.png);
    background-color: #FFF;
    background-repeat: no-repeat;
    background-position: center;
    border: 1px solid #9cb1c6;
}

.formulaire.generique-contact-block .form-check .description {
    font-weight: 500;
    font-size: 13px;
    color: #8b8b8b;
    text-transform: none;
    line-height: 13px;
    margin-left: 10px;
}

.generique-contact-block .row-check {
    margin-left: 0px;
    margin-top: 40px;
}

.formulaire.generique-contact-block input[type="submit"] {
    background: linear-gradient(177deg, #ef51a4 0%, #ea297c 100%) !important;
    display: inline-block;
    text-decoration: none;
    padding: 6px 18px;
    border-radius: 35px;
    font-family: Gotham;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.02em;
    text-align: left;
    color: #fff !important;
    width: 180px;
    opacity: 0.9;
    margin-top: 15px;
    border: 0px;
    cursor: pointer;
    margin: auto;
    line-height: 1.75em;
    text-align: center;
}

.formulaire.generique-contact-block .form-group-submit {
    width: 206px;
    margin: auto;
    position: relative;
    margin-top: 20px;
}

.formulaire.generique-contact-block .i-button-icon {
    position: absolute;
    right: 26px;
    color: #FFF;
    font-size: 18px;
    top: 4px;
}


/* Tablets */
@media only screen and (max-width: 950px) {
    .i-button {
        margin-bottom: 15px;
    }

    .number-counter {
        margin-bottom: 15px
    }


    .solution-image {
        position: static;
        width: 100%;
        height: 400px;
    }

        .solution-image img {
            display: block;
        }

    .solution-content {
        margin-top: 0;
        width: 100%;
    }

    .solutions-slider .swiper-slide {
        width: 70%;
    }

    .solutions-nav {
        position: static;
        display: block;
    }

    .posts-slider .swiper-slide {
        /*width: 70%;*/
    }

    .swiper-container.posts-slider-container {
        /*padding-left: 60px;*/
    }
}


/* Phones */
@media only screen and (max-width: 650px) {

    section {
        padding: 35px 0
    }

    .solution-plus-button {
        position: static;
        display: block;
        float: left;
    }

    .marker .dot {
        width: 5px;
        height: 5px;
    }

    .section-who-we-are {
        background-image: none !important;
    }


    .solutions-slider .swiper-slide {
        width: 100%;
    }

    h1.big-title {
        font-size: 40px;
        line-height: 50px;
    }

    .slide-sub-title h2 {
        font-size: 20px;
    }


    section.half-bg {
        background-size: cover;
        background-repeat: no-repeat;
    }

    .i-button {
        margin-bottom: 20px
    }

    .solutions-slider .swiper-slide {
        width: 100%;
    }

    .solution-image {
        display: none;
        position: static;
        width: 100%;
        height: 400px;
    }

    .solution-content {
        width: 100%;
        margin-top: 0;
    }

    .solutions-nav {
        position: static;
        display: none;
    }

        .solutions-nav ul li {
            padding: 0 15px;
        }

        .solutions-nav ul {
            text-align: center;
        }

    span.bg-text {
        font-size: 100px;
        -webkit-transform: translate(0%, -50%);
        -ms-transform: translate(0%, -50%);
        transform: translate(0%, -50%);
    }

    .swiper-container.industries-slider-container {
        /*width: 100%;*/
    }

    .industries-slider .swiper-slide {
        /*width: 90%;*/
    }



    h1 {
        font-size: 35px;
        line-height: 50px
    }

    .interactive-map .marker {
        max-width: 60%;
    }

    .i-button {
        float: none !important;
    }

    .number-counter {
        margin-bottom: 15px;
    }

    .posts-slider {
        display: block;
    }

    .posts-slider-acts {
        width: 100%;
        margin-bottom: 35px;
    }

    .swiper-container.posts-slider-container {
        width: 100%;
    }

    .posts-slider .swiper-slide {
        /*width: 100%;*/
    }

    .row.lists-row .col {
        margin-bottom: 35px;
        text-align: center;
    }

    .footer-list::after {
        display: none;
    }

    .footer-bottom-bar {
        margin-top: 0;
    }

    .row.footer-top-row {
        text-align: center;
    }

    .footer-socials {
        display: inline-block;
        float: none;
        margin-top: 35px;
    }

        .footer-socials ul {
            padding: 0;
        }

            .footer-socials ul li:last-child {
                margin-right: 10px;
            }

    #block-footerbigmenu {
        display: none;
    }

    .copyright-text {
        text-align: center;
        margin-bottom: 35px;
    }

    .footer-menu ul li {
        display: block;
        text-align: center;
        margin-bottom: 15px;
    }

    .footer-menu {
        float: none;
    }


    /* .sub-menu {
        display: none
    } */

    .swiper-container.posts-slider-container {
        padding-left: 0
    }

    .hide-mobile {
        display: none
    }
    /* 
    .sub-menu-wrapper {
        position: static;
        background: #fff;
        transform: none !important;
        padding: 0;
        width: 100%;
        margin-top: 20px;
        max-height: 0;
        margin-top: 0;
        overflow: hidden;
        transition: all .7s ease;
        background: none !important
    }

    .site-header.sub-open .sub-menu-wrapper {
        margin-top: 20px;
        max-height: 500px
    }

    .sub-menu-image {
        display: none;
    }

    .sub-menu-title {
        display: none;
    }

    ul.sub-menu {
        column-count: 1;
        padding: 0;
        width: 100%;
    }

    ul.menu .sub-menu li {
        font-size: 18px;
        line-height: 25px;
    }

    .site-header.sub-open ul.menu.main-menu li a {
        color: #fff;
    } */
}
