/* - REPERES DEVELOPPEMENT */
body.logged-in:before {
    --nb-c: var(--wp--custom--columns);
    --p: var(--wp--preset--spacing--20);
    --g: var(--wp--preset--spacing--20);
    --c: calc((100% - (var(--nb-c) - 1) * var(--g)) / var(--nb-c));

    /* content: ''; */
    position: fixed;
    top: 0;
    left: var(--p);
    height: 100%;
    width: calc(100% - 2 * var(--p));
    background-image:
        repeating-linear-gradient(90deg,
            red 0 calc(var(--c)),
            transparent calc(var(--c)) calc(var(--c) + var(--g)));
    background-size: 100%;
    opacity: 10%;
    z-index: 9;
    pointer-events: none;
}

/* - GLOBAL - */
[data-wpr-lazyrender] {
    content-visibility: unset !important;
}

*:not(canvas) {
    position: relative;
    max-width: 100%;
    box-sizing: border-box;
}

#wpadminbar * {
    position: unset;
    max-width: unset;
}

html,
body {
    overflow-x: hidden;
}

html {
    scroll-padding-top: calc(var(--wp--custom--header--height, 0px) + var(--wp--preset--spacing--20, 20px)) !important;
    scroll-behavior: smooth !important;
}

figure>img {
    width: 100%;
    min-height: 100%;
    object-fit: cover;
}

figure.has-custom-border img {
    border-style: solid;
}

a.wp-block-button__link {
    word-break: auto-phrase;
}

figure[class*='icon'],
div:has(> figure[class*='icon']:only-child) {
    min-width: fit-content;
    user-select: none;
}

figure[class*='icon']:has(a) {
    pointer-events: auto !important;
}

figure>a {
    width: 100%;
}

.wp-block-cover img {
    user-select: none;
}

a:not(.wp-element-button)[href^="tel:"],
a:not(.wp-element-button)[href^="mailto:"],
a:not(.wp-element-button)[href*="maps.app.goo.gl"],
a:not(.wp-element-button)[href*="facebook"],
a:not(.wp-element-button)[href*="linkedin"],
a:not(.wp-element-button)[href*="instagram"] {
    text-decoration: none;
    color: unset;
}

p a {
    color: unset;
}

a:not(.wp-element-button)[href^="tel:"]:hover,
a:not(.wp-element-button)[href^="mailto:"]:hover,
a:not(.wp-element-button)[href*="maps.app.goo.gl"]:hover,
a:not(.wp-element-button)[href*="facebook"]:hover,
a:not(.wp-element-button)[href*="linkedin"]:hover,
a:not(.wp-element-button)[href*="instagram"]:hover,
.logo:hover {
    opacity: .5;
}

.overflow-hidden {
    overflow: hidden;
}

p:not(.is-style-number):empty {
    display: none;
}

.wp-block-list {
    list-style: disc;
    padding-inline-start: 1em;
}

p strong {
    font-weight: 700;
}

summary {
    list-style-type: none !important;
}

details summary::-webkit-details-marker,
details summary::marker {
    display: none;
    content: "";
}

hr {
    width: 100%;
}

/* - HEADER - */
body.logged-in:has(#wpadminbar) header {
    margin-top: 32px;
}

body:not(:has(.is-style-hero)){
    margin-top: var(--wp--custom--header--height);
}

header {
    position: fixed !important;
    width: 100%;
    top: 0;
    z-index: 999;
    transition: 300ms;
}

header>div:first-of-type {
    min-height: var(--wp--custom--header--height)
}

header .has-light-background-color:has(svg){
    margin-bottom: -12px;
    transition: 300ms;
}

header .has-light-background-color:has(svg):has(a:hover){
    margin-bottom: -18px;
}

header .logo,
header .logo a:hover{
    opacity: 1 !important;
}

header nav li:not([class*='button-']) a.wp-block-navigation-item__content{
    padding-left: 24px;
    transition: 300ms;
}

header nav li.responsive{
    display: none !important;
}

header nav li:not([class*='button-']) a.wp-block-navigation-item__content:hover,
header nav li:not([class*='button-']).current-menu-item a.wp-block-navigation-item__content{
    color: var(--wp--preset--color--primary) !important;
}

header nav li:not([class*='button-']) a.wp-block-navigation-item__content:before{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 20px;
    background: currentColor;
    --menu-bubbles: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+PHBhdGggZD0iTTExIDkuNUE1LjUgNS41IDAgMSAxLS4wMDEgOS40OTkgNS41IDUuNSAwIDAgMSAxMSA5LjVtNS43NjQuNWEzIDMgMCAxIDAgMCA2IDMgMyAwIDAgMCAwLTZtMi4xMTgtNi41YTMuNSAzLjUgMCAxIDAtNyAwIDMuNSAzLjUgMCAwIDAgNyAwIi8+PC9zdmc+');
    -webkit-mask-image: var(--menu-bubbles);
    mask-image: var(--menu-bubbles);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    opacity: 0;
    transition: inherit;
}

header nav li:not([class*='button-']) a.wp-block-navigation-item__content:hover:before,
header nav li:not([class*='button-']).current-menu-item a.wp-block-navigation-item__content:before{
    opacity: 1;
}

header nav li[class*='button-'] a.wp-block-navigation-item__content{
    border-radius: 360px !important;
    border: solid 1px var(--wp--preset--color--light) !important;
    font-family: var(--wp--preset--font-family--tertiary) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.5em !important;
    transition: 300ms !important;
}

header nav li.button-shop a.wp-block-navigation-item__content{
    padding: 12px 24px 12px 50px !important;
}

header nav li.button-shop a.wp-block-navigation-item__content:hover{
    background-color: #E5EAEE !important;
    color: var(--wp--preset--color--dark) !important;
    border-color: transparent !important;
}

header nav li.button-shop a.wp-block-navigation-item__content:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 4px;
    transform: translateY(-50%);
    height: 36px;
    width: 36px;
    background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNiAzNiI+PHBhdGggZD0iTTE4LjIxNyAxQTE3LjIxNSAxNy4yMTUgMCAwIDAgMi4zMTEgMTEuNjI5YTE3LjIyIDE3LjIyIDAgMCAwIDMuNzMyIDE4Ljc2NCAxNy4yMTUgMTcuMjE1IDAgMCAwIDE4Ljc2NCAzLjczMiAxNy4yMiAxNy4yMiAwIDAgMCAxMC42MjktMTUuOTA3QTE3LjIzNiAxNy4yMzYgMCAwIDAgMTguMjE4IDFaIiBzdHlsZT0iZmlsbDojZmZmIi8+PHBhdGggZD0iTTI2LjgxMyAxMy41NzRhLjgyLjgyIDAgMCAwLS42MzMtLjNIMTMuMzUybC0uMjcxLTEuNzYxYS44Mi44MiAwIDAgMC0uNTUtLjY1NWwtMi40NTQtLjgxOGEuODE4LjgxOCAwIDEgMC0uNTE2IDEuNTU0bDEuOTguNjU5IDEuMjM0IDguMDI0YTMuMyAzLjMgMCAwIDAgMy4yNzcgMi44MTJoNi40NDdhMy4zMyAzLjMzIDAgMCAwIDMuMjUyLTIuNjY1bDEuMjMxLTYuMTdhLjgxLjgxIDAgMCAwLS4xNy0uNjgyWk0xNS45NTQgMjhhMi4wNDYgMi4wNDYgMCAxIDAtLjAwMS00LjA5MUEyLjA0NiAyLjA0NiAwIDAgMCAxNS45NTQgMjhtNi41NDUgMGEyLjA0NSAyLjA0NSAwIDEgMCAwLTQuMDkgMi4wNDUgMi4wNDUgMCAwIDAgMCA0LjA5IiBzdHlsZT0iZmlsbDojMDAzMjU3Ii8+PC9zdmc+');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: inherit;
    z-index: 1;
}

header nav li.button-contact a.wp-block-navigation-item__content{
    padding: 12px 50px 12px 24px !important;
    background-color: var(--wp--preset--color--primary) !important;
    color: var(--wp--preset--color--dark) !important;
}

header nav li.button-contact a.wp-block-navigation-item__content:hover{
    padding: 12px 24px 12px 50px !important;
    background-color: var(--wp--preset--color--accent-hover) !important;
    color: var(--wp--preset--color--light) !important;
}

header nav li.button-contact a.wp-block-navigation-item__content:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
    height: 36px;
    width: 36px;
    background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNiAzNiI+PHBhdGggZD0iTTE4IC43ODNBMTcuMjE1IDE3LjIxNSAwIDAgMCAyLjA5NCAxMS40MTJhMTcuMjIgMTcuMjIgMCAwIDAgMy43MzIgMTguNzY0IDE3LjIxNSAxNy4yMTUgMCAwIDAgMTguNzY0IDMuNzMyIDE3LjIyIDE3LjIyIDAgMCAwIDEwLjYyOS0xNS45MDdBMTcuMjM2IDE3LjIzNiAwIDAgMCAxOC4wMDEuNzgzeiIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Im0yNy4yNSAxNi41MDQtNi4zNjQtNi4yMjJhMS44NCAxLjg0IDAgMCAwLTEuMjc5LS40OTljLS40NzcuMDA0LS45MzMuMTkxLTEuMjcuNTIxcy0uNTI4Ljc3NS0uNTMyIDEuMjQyYTEuNzYgMS43NiAwIDAgMCAuNTEgMS4yNTFsMy4yNiAzLjE4OEg5LjZjLS40ODIgMC0uOTQ1LjE4Ny0xLjI4Ni41MjEtLjM0MS4zMzMtLjUzMy43ODYtLjUzMyAxLjI1N3MuMTkyLjkyNC41MzMgMS4yNTdhMS44NCAxLjg0IDAgMCAwIDEuMjg2LjUyMWgxMS45NzVsLTMuMjYgMy4xODhhMS43NyAxLjc3IDAgMCAwLS41NTUgMS4yNjMgMS43NiAxLjc2IDAgMCAwIC41MzIgMS4yNzNjLjE3MS4xNjcuMzc0LjI5OS41OTcuMzg4YTEuODYgMS44NiAwIDAgMCAxLjQwNi0uMDEyYy4yMjItLjA5My40MjItLjIyOS41OS0uMzk4bDYuMzY0LTYuMjIyYy4zNDEtLjMzMy41MzItLjc4NS41MzItMS4yNTdzLS4xOTEtLjkyNC0uNTMyLTEuMjU3eiIgc3R5bGU9ImZpbGw6IzAwMzI1NyIvPjwvc3ZnPg==');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: inherit;
    z-index: 1;
}

header nav li.button-contact a.wp-block-navigation-item__content:hover:before {
    right: calc(100% - 4px - 36px);
}

header .open-menu-button{
    padding: unset !important;
    border: unset !important;
    background: unset !important;
    border-radius: unset !important;
    width: 64px;
    color: unset !important;
    fill: var(--wp--preset--color--primary);
    cursor: pointer;
    display: none;
}

header .open-menu-button:hover{
    fill: var(--wp--preset--color--light);
}

header .open-menu-button:not(.open) #close,
header .open-menu-button.open #menu{
    display: none;
}

/* - BODY AND SPECIFIC - */
.wp-element-button.outline:hover,
.wp-block-button.is-style-outline .wp-element-button:hover{
    background-color: #B2C1CD !important;
    color: var(--wp--preset--color--dark) !important;
    border-color: var(--wp--preset--color--dark) !important;
}

.wp-block-cover:has(a) .has-background-gradient,
a > .wp-block-cover .has-background-gradient {
    transition: 300ms;
    background-size: 100% !important;
    background-position: bottom left !important;
}

.wp-block-cover:has(a):hover .has-background-gradient,
a:hover > .wp-block-cover .has-background-gradient {
    background-size: 400% !important;
    opacity: 1 !important;
}
div:has(>.netdev-realisation){
    row-gap: var(--wp--preset--spacing--30) !important;
}

.netdev-realisation{
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
}

/* - FOOTER - */
footer nav a.wp-block-navigation-item__content {
    padding-left: 24px;
    transition: 300ms;
}

footer nav a.wp-block-navigation-item__content:hover,
footer nav li.current-menu-item a.wp-block-navigation-item__content{
    color: var(--wp--preset--color--primary) !important;
}

footer nav a.wp-block-navigation-item__content:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 20px;
    background: currentColor;
    --menu-bubbles: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+PHBhdGggZD0iTTExIDkuNUE1LjUgNS41IDAgMSAxLS4wMDEgOS40OTkgNS41IDUuNSAwIDAgMSAxMSA5LjVtNS43NjQuNWEzIDMgMCAxIDAgMCA2IDMgMyAwIDAgMCAwLTZtMi4xMTgtNi41YTMuNSAzLjUgMCAxIDAtNyAwIDMuNSAzLjUgMCAwIDAgNyAwIi8+PC9zdmc+');
    -webkit-mask-image: var(--menu-bubbles);
    mask-image: var(--menu-bubbles);
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain;
    opacity: 0;
    transition: inherit;
}

footer nav a.wp-block-navigation-item__content:hover:before,
footer nav li.current-menu-item a.wp-block-navigation-item__content:before {
    opacity: 1;
}

.netdev-footer{
    margin-right: var(--wp--preset--spacing--05);
    margin-left: var(--wp--preset--spacing--05);
}

/* - SWIPER - */
[class*='swiper-button-']:has(img, svg),
[class*='swiper-button-'] :is(img, svg){
    border-radius: 360px;
}

.swiper.spa .swiper-slide{
    width: auto;
    transition: 300ms;
    overflow: hidden;
    height: auto;
    padding-right: 20px !important;
    max-width: unset !important;
}

.swiper.spa .single-spa{
    width: 420px !important;
    max-width: unset !important;
    display: grid;
    grid-template-columns: 380px 310px;
    gap: var(--wp--preset--spacing--30);
    padding: var(--wp--preset--spacing--20);
    border: solid 2px var(--wp--preset--color--dark);
    border-radius: 36px;
    min-height: 100%;
    cursor: pointer;
    transition: 300ms;
    overflow: hidden;
}

.swiper.spa .single-spa:hover{
    background-color: #E8E7E7;
}

.swiper.spa .single-spa.open{
    width: 770px !important;
}

.swiper.spa .single-spa > div:first-child,
.swiper.spa .single-spa > div:nth-child(2){
    display: flex;
    flex-direction: column;
    gap: var(--wp--preset--spacing--20);
}

.swiper.spa .single-spa > div:first-child img{
    aspect-ratio: 380/321 !important;
    object-fit: contain !important;
    height: auto;
}

.swiper.spa .single-spa>div:first-child > p:nth-of-type(2){
    padding-right: 64px;
}

.swiper.spa .single-spa > div:first-child > p:nth-of-type(2):after{
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NiA0NiI+PHBhdGggZD0iTTQ2IDIyLjk5NmMwIDEyLjY5LTEwLjMyIDIzLTIzIDIzcy0yMy0xMC4zMS0yMy0yMyAxMC4zMi0yMyAyMy0yMyAyMyAxMC4zMiAyMyAyMyIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik0yMyAuOTk2Yy0xMi4xMyAwLTIyIDkuODctMjIgMjJzOS44NyAyMiAyMiAyMiAyMi05Ljg2IDIyLTIyLTkuODctMjItMjItMjJtMTIuNzMgMzQuNzNjLTMuMjYgMy4yNi03Ljc2IDUuMjctMTIuNzMgNS4yN3MtOS40Ny0yLjAxLTEyLjczLTUuMjdTNSAyNy45NzYgNSAyMi45OTZzMi4wMi05LjQ3IDUuMjctMTIuNzNjMy4yNi0zLjI1IDcuNzYtNS4yNyAxMi43My01LjI3IDkuOTQgMCAxOCA4LjA2IDE4IDE4IDAgNC45OC0yLjAyIDkuNDgtNS4yNyAxMi43MyIgc3R5bGU9ImZpbGw6IzM5YTlkYyIvPjxwYXRoIGQ9Ik0zMS4yNDIgMjEuMjQyaC02LjQ4NHYtNi40ODRhMS43NTggMS43NTggMCAxIDAtMy41MTYgMHY2LjQ4NGgtNi40ODRhMS43NTggMS43NTggMCAxIDAgMCAzLjUxNmg2LjQ4NHY2LjQ4NGExLjc1OCAxLjc1OCAwIDEgMCAzLjUxNiAwdi02LjQ4NGg2LjQ4NGExLjc1OCAxLjc1OCAwIDEgMCAwLTMuNTE2IiBzdHlsZT0iZmlsbDojMDAzMjU3Ii8+PC9zdmc+');
}

.swiper.spa .single-spa.open > div:first-child > p:nth-of-type(2):after{
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NiA0NiI+PHBhdGggZD0iTTQ2IDIyLjk5NmMwIDEyLjY5LTEwLjMyIDIzLTIzIDIzcy0yMy0xMC4zMS0yMy0yMyAxMC4zMi0yMyAyMy0yMyAyMyAxMC4zMiAyMyAyMyIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik0yMyAuOTk2Yy0xMi4xMyAwLTIyIDkuODctMjIgMjJzOS44NyAyMiAyMiAyMiAyMi05Ljg2IDIyLTIyLTkuODctMjItMjItMjJtMTIuNzMgMzQuNzNjLTMuMjYgMy4yNi03Ljc2IDUuMjctMTIuNzMgNS4yN3MtOS40Ny0yLjAxLTEyLjczLTUuMjdTNSAyNy45NzYgNSAyMi45OTZzMi4wMi05LjQ3IDUuMjctMTIuNzNjMy4yNi0zLjI1IDcuNzYtNS4yNyAxMi43My01LjI3IDkuOTQgMCAxOCA4LjA2IDE4IDE4IDAgNC45OC0yLjAyIDkuNDgtNS4yNyAxMi43MyIgc3R5bGU9ImZpbGw6IzM5YTlkYyIvPjxwYXRoIGQ9Ik0xNC41IDIxaDE3YTIgMiAwIDEgMSAwIDRoLTE3YTIgMiAwIDEgMSAwLTQiIHN0eWxlPSJmaWxsOiMwMDMyNTciLz48L3N2Zz4=');
}

.swiper.spa .single-spa > div:nth-child(2){
    justify-content: center;
    padding: var(--wp--preset--spacing--20);
}

.netdev-flip-box.color img{
 height: auto;
}

.netdev-flip-box.color .netdev-flip-box-back img{
    object-fit: contain !important;
}

.swiper.pictures-cta-background{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.swiper.pictures-cta-background .swiper-slide{
    height: auto;
}

.swiper.pictures-cta-background :is(figure, img){
    min-height: 100% !important;
    aspect-ratio: 1 !important;
    border-radius: 36px !important;
}

.swiper.pictures-realisations{
    border-radius: 36px !important;
}

.swiper.pictures-realisations img{
    aspect-ratio: 3/2 !important;
}

.swiper.pictures-realisations .swiper-pagination{
    --swiper-pagination-bottom: 0;
    --swiper-pagination-bullet-horizontal-gap: 0;
    --swiper-pagination-bullet-size: 16px;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-pagination-bullet-inactive-color: transparent;
    --swiper-pagination-color: var(--wp--preset--color--light);

    display: flex;
    padding: var(--wp--preset--spacing--25) var(--wp--preset--spacing--20);
    gap: 12px;
}

.swiper.pictures-realisations .swiper-pagination-bullet{
    border: solid 1px var(--wp--preset--color--light);
}

/* - WP FORMS - */

.wpforms-container * {
    font-family: var(--wp--preset--font-family--primary) !important;
    font-weight: 400 !important;
}

.wpforms-container {
    padding: unset !important;
    margin: unset !important;
}

.wpforms-field {
    padding-top: unset !important;
    padding-bottom: 20px !important;
}

.wpforms-field-label {
    font-weight: 400 !important;
}

.wpforms-required-label {
    /* display: none; */
    color: unset !important;
}

.wpforms-field-checkbox li {
    align-items: center !important;
}

.wpforms-submit {
    height: unset !important;
    font-family: var(--wp--preset--font-family--tertiary) !important;
    font-size: var(--wp--preset--font-size--button, inherit) !important;
    font-weight: 700 !important;
    line-height: 1.5em !important;
    padding: 12px 50px 12px 24px !important;
    transition: 300ms !important;
    transition-timing-function: ease-out !important;
}

.wpforms-submit:hover {
    background: var(--wp--preset--color--dark) !important;
    color: var(--wp--preset--color--light) !important;
    border-color: currentColor !important;
    opacity: 1 !important;
    padding: 12px 24px 12px 50px !important;
}

.wpforms-submit:before{
    content: '';
    position: absolute;
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
    height: 36px;
    width: 36px;
    background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNiAzNiI+PHBhdGggZD0iTTE4IC43ODNBMTcuMjE1IDE3LjIxNSAwIDAgMCAyLjA5NCAxMS40MTJhMTcuMjIgMTcuMjIgMCAwIDAgMy43MzIgMTguNzY0IDE3LjIxNSAxNy4yMTUgMCAwIDAgMTguNzY0IDMuNzMyIDE3LjIyIDE3LjIyIDAgMCAwIDEwLjYyOS0xNS45MDdBMTcuMjM2IDE3LjIzNiAwIDAgMCAxOC4wMDEuNzgzeiIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Im0yNy4yNSAxNi41MDQtNi4zNjQtNi4yMjJhMS44NCAxLjg0IDAgMCAwLTEuMjc5LS40OTljLS40NzcuMDA0LS45MzMuMTkxLTEuMjcuNTIxcy0uNTI4Ljc3NS0uNTMyIDEuMjQyYTEuNzYgMS43NiAwIDAgMCAuNTEgMS4yNTFsMy4yNiAzLjE4OEg5LjZjLS40ODIgMC0uOTQ1LjE4Ny0xLjI4Ni41MjEtLjM0MS4zMzMtLjUzMy43ODYtLjUzMyAxLjI1N3MuMTkyLjkyNC41MzMgMS4yNTdhMS44NCAxLjg0IDAgMCAwIDEuMjg2LjUyMWgxMS45NzVsLTMuMjYgMy4xODhhMS43NyAxLjc3IDAgMCAwLS41NTUgMS4yNjMgMS43NiAxLjc2IDAgMCAwIC41MzIgMS4yNzNjLjE3MS4xNjcuMzc0LjI5OS41OTcuMzg4YTEuODYgMS44NiAwIDAgMCAxLjQwNi0uMDEyYy4yMjItLjA5My40MjItLjIyOS41OS0uMzk4bDYuMzY0LTYuMjIyYy4zNDEtLjMzMy41MzItLjc4NS41MzItMS4yNTdzLS4xOTEtLjkyNC0uNTMyLTEuMjU3eiIgc3R5bGU9ImZpbGw6IzAwMzI1NyIvPjwvc3ZnPg==');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: inherit;
}

.wpforms-submit:hover:before {
    right: calc(100% - 4px - 36px);
}

.wpforms-uploader {
    padding: 10px 16px !important;
    border-style: solid !important;
}

.wpforms-uploader .modern-title {
    color: inherit !important;
}

.wpforms-uploader,
.dz-message {
    align-items: flex-start !important;
    gap: 5px;
}

.iti__dropdown-content {
    max-width: unset !important;
}

.iti__dropdown-content * {
    color: var(--wp--preset--color--dark, black) !important;
}

.dz-message svg {
    display: none;
}

.dz-message .modern-title,
.dz-message .modern-hint {
    text-align: left;
}

.ui-timepicker-wrapper * {
    color: black !important;
}

.flatpickr-monthDropdown-months {
    text-transform: capitalize;
}

/* - MENTIONS LEGALES - */
.netdev-mentions-legales {
    word-break: break-word;
}

.netdev-mentions-legales h2 {
    margin-top: var(--wp--preset--spacing--20);
    margin-bottom: var(--wp--preset--spacing--20);
}

.netdev-mentions-legales a {
    color: var(--wp--preset--color--accent, var(--wp--preset--color--primary)) !important;
    text-decoration: underline;
}

.netdev-mentions-legales a:hover {
    opacity: 0.5;
}

/* - POPUPS - */
:is(html, body):has(:is(.popup, .form-popup).open){
    overflow: hidden;
}

:is(.popup, .form-popup) {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    align-content: center;
    z-index: 9999;
}

:is(.popup, .form-popup):not(.open) {
    display: none;
}

:is(.popup, .form-popup) .wp-block-button .wp-element-button:before{
    transform: translateY(-50%) rotate(180deg);
}

/* - RESPONSIVE - */
@media screen and (max-width: 1511px) {

    /* BIGGER TABLET > GLOBAL */
    :root{
        --wp--preset--font-size--h-1: 60px;
        --wp--preset--font-size--h-2: 40px;
        --wp--preset--font-size--h-3: 24px;
        --wp--preset--font-size--icon: 20px;
        --wp--preset--font-size--surtitle: 40px;
        --wp--preset--spacing--60: 80px;
    }

    .bigger-tablet-column {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .bigger-tablet-column.reverse {
        flex-direction: column-reverse !important;
    }

    .bigger-tablet-column>* {
        flex-basis: unset !important;
    }

    /* BIGGER TABLET > HEADER */
    header .has-dark-background-color{
        padding-left: var(--wp--preset--spacing--25) !important;
        padding-right: var(--wp--preset--spacing--25) !important;
    }

    /* BIGGER TABLET > BODY AND SPECIFIC */
    .bigger-tablet-1fr-600px {
        display: grid !important;
        grid-template-columns: 1fr 600px;
    }

    .bigger-tablet-1fr-500px {
        display: grid !important;
        grid-template-columns: 1fr 500px;
    }

    :is(.bigger-tablet-1fr-600px, .bigger-tablet-1fr-500px) > .is-style-fill{
        width: 100% !important;
    }

    /* BIGGER TABLET > SWIPER */

    /* BIGGER TABLET > FOOTER */
}

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

    /* TABLET > GLOBAL */
    :root{
        --wp--custom--header--height: calc(95px + var(--wp--preset--spacing--05));
        --wp--preset--font-size--h-1: 48px;
        --wp--preset--spacing--50: 60px;
        --wp--preset--spacing--60: 60px;
    }

    .tablet-column {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .tablet-column.reverse {
        flex-direction: column-reverse !important;
    }

    .tablet-column>* {
        flex-basis: unset !important;
    }

    .tablet-unset-max-width,
    .tablet-unset-max-width>*,
    .tablet-unset-max-width .wp-block-cover__inner-container>div {
        max-width: unset !important;
        flex-basis: unset !important;
        width: 100% !important;
    }

    .tablet-unset-padding-inline {
        padding-right: unset !important;
        padding-left: unset !important;
    }

    .tablet-unset-gap {
        gap: unset !important;
    }

    .tablet-text-align-center,
    .tablet-text-align-center * {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .tablet-2-columns {
        grid-template-columns: repeat(2, 1fr);
    }

    .tablet-unset-grid-column {
        grid-column: span 1;
    }

    .tablet-unset-grid-row {
        grid-row: span 1;
    }

    .tablet-hide{
        display: none !important;
    }

    /* TABLET > HEADER */
    header .has-dark-background-color{
        padding-left: var(--wp--preset--spacing--40) !important;
        padding-right: var(--wp--preset--spacing--40) !important;
    }

    header .has-light-background-color:has(svg) {
        margin-bottom: -6px;
        transition: 300ms;
    }
    
    header .has-light-background-color:has(svg):has(a:hover) {
        margin-bottom: -12px;
    }

    header .logo :is(a, svg){
        --icon-width: 79px;
    }

    header .open-menu-button{
        display: block;
    }

    header nav.menu-burger{
        position: fixed;
        top: calc(var(--wp--custom--header--height) + var(--wp-admin--admin-bar--height, 0px) + var(--wp--preset--spacing--20));
        right: var(--wp--preset--spacing--40);
        background-color: #1C6296;
        padding: var(--wp--preset--spacing--25);
        border: solid 2px var(--wp--preset--color--light);
        border-radius: 24px;
        text-align: right;
    }

    header nav.menu-burger:not(.open){
        display: none;
    }

    header ul.menu-burger{
        flex-direction: column;
        align-items: flex-end;
    }

    header nav li.responsive{
        display: flex !important;
    }

    /* TABLET > BODY AND SPECIFIC */
    .wp-block-cover:has(a):has(.has-background-gradient){
        padding-right: var(--wp--preset--spacing--30) !important;
    }

    .tablet-415px-1fr{
        grid-template-columns: 415px 1fr;
    }

    /* TABLET > FOOTER */
    footer .has-dark-background-color{
        grid-template-columns: 190px 265fr 310fr;
        padding-top: 80px !important;
        padding-bottom: 80px !important;
    }

    footer .logo :is(a, svg){
        --icon-width: 165px;
    }

    /* TABLET > SWIPER */

}

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

    /* SMALLER TABLET > GLOBAL */
    :root{
        --wp--custom--header--height: calc(80px + var(--wp--preset--spacing--05));
        --wp--preset--spacing--60: 40px;
        --wp--preset--spacing--80: 50px;
    }

    .smaller-tablet-column {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .smaller-tablet-column.reverse {
        flex-direction: column-reverse !important;
    }

    .smaller-tablet-column>* {
        flex-basis: unset !important;
    }

    .smaller-tablet-unset-max-width,
    .smaller-tablet-unset-max-width>*,
    .smaller-tablet-unset-max-width .wp-block-cover__inner-container>div {
        max-width: unset !important;
        flex-basis: unset !important;
        width: 100% !important;
    }

    .smaller-tablet-unset-padding-right,
    .smaller-tablet-unset-padding-inline {
        padding-right: unset !important;
    }

    .smaller-tablet-unset-padding-left,
    .smaller-tablet-unset-padding-inline {
        padding-left: unset !important;
    }

    .smaller-tablet-unset-padding-vertical {
        padding-top: unset !important;
        padding-bottom: unset !important;
    }

    .smaller-tablet-reset-padding-vertical {
        padding-top: var(--wp--preset--spacing--20) !important;
        padding-bottom: var(--wp--preset--spacing--20) !important;
    }

    .smaller-tablet-reset-gap {
        gap: var(--wp--preset--spacing--20) !important;
    }

    .smaller-tablet-reset-padding-inline {
        padding-left: var(--wp--preset--spacing--60) !important;
        padding-right: var(--wp--preset--spacing--60) !important;
    }

    .smaller-tablet-hide {
        display: none !important;
    }

    .smaller-tablet-full-width {
        width: 100% !important;
        max-width: unset !important;
    }

    .smaller-tablet-text-align-center,
    .smaller-tablet-text-align-center * {
        text-align: center !important;
    }

    .smaller-tablet-bigger-gap {
        gap: 40px !important;
    }

    .smaller-tablet-bigger-padding-vertical {
        padding-top: var(--wp--preset--spacing--70) !important;
        padding-bottom: var(--wp--preset--spacing--70) !important;
    }

    /* SMALLER TABLET > HEADER */
    header .logo :is(a, svg){
        --icon-width: 68px;
    }

    header .open-menu-button{
        width: 42px;
    }

    /* SMALLER TABLET > BODY AND SPECIFIC */
    h1, h2{
		word-break: auto-phrase;
        hyphens: auto;
    }

    .wpgmza_map {
        max-height: 300px !important;
    }

    .netdev-block-icon.icon-79{
        --icon-width: 24px !important
    }

    /* SMALLER TABLET > SWIPER */
    .swiper.spa .single-spa {
        --extended-width: calc(100vw - 2 * var(--wp--preset--spacing--80));

        width: 420px !important;
        grid-template-columns: 380px calc(var(--extended-width) - 380px - 3 * var(--wp--preset--spacing--20));
        gap: var(--wp--preset--spacing--20);
    }
    
    .swiper.spa .single-spa.open {
        width: var(--extended-width) !important;
    }

    .swiper.spa .single-spa > div:first-child{
        justify-content: center;
    }
    
    .swiper.spa .single-spa > div:nth-child(2){
        padding: unset !important;
    }

    /* SMALLER TABLET > FOOTER */
    footer .has-dark-background-color{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding-top: var(--wp--preset--spacing--30) !important;
        padding-bottom: var(--wp--preset--spacing--30) !important;
        gap: 40px !important;
    }

    footer .has-dark-background-color > :first-child{
        grid-column: span 2;
    }

}

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

    /* BIGGER MOBILE > GLOBAL */
    :root{
        --wp--preset--spacing--60: 32px;
        --wp--preset--spacing--80: 45px;
    }

    .bigger-mobile-column {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .bigger-mobile-column.reverse {
        flex-direction: column-reverse !important;
    }

    .bigger-mobile-column>* {
        flex-basis: unset !important;
    }

    .bigger-mobile-unset-max-width,
    .bigger-mobile-unset-max-width>*,
    .bigger-mobile-unset-max-width .wp-block-cover__inner-container>div {
        max-width: unset !important;
        flex-basis: unset !important;
        width: 100% !important;
    }

    .bigger-mobile-gap-20{
        gap: var(--wp--preset--spacing--20) !important;
    }

    /* BIGGER MOBILE > HEADER */
    header .has-dark-background-color{
        padding-left: var(--wp--preset--spacing--25) !important;
        padding-right: var(--wp--preset--spacing--25) !important;
    }

    header .logo :is(a, svg){
        --icon-width: 65px;
    }

    header nav.menu-burger{
        right: var(--wp--preset--spacing--25) !important;
    }

    /* BIGGER MOBILE > BODY AND SPECIFIC */
    .page-id-13 .is-style-counter img{
        max-width: 350px !important;
    }

    /* BIGGER MOBILE > SWIPER */
    .swiper.spa .swiper-slide{
        height: fit-content;
    }

    .swiper.spa .single-spa {
        --extended-width: 420px;
        max-width: calc(100vw - 2 * var(--wp--preset--spacing--80)) !important;
        grid-template-columns: minmax(0, 1fr);
        padding-bottom: unset !important;
    }

    .swiper.spa .single-spa div:nth-child(2){
        max-height: 0px;
        overflow: hidden;
        transition: 300ms;
        justify-content: flex-start;
    }

    .swiper.spa .single-spa.open div:nth-child(2){
        max-height: 500px;
        padding-bottom: var(--wp--preset--spacing--20) !important;
    }

    /* BIGGER MOBILE > FOOTER */
    footer .has-dark-background-color{
        grid-template-columns: minmax(0, 1fr);
    }

    footer .has-dark-background-color > *{
        grid-column: unset !important;
    }
}

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

    /* MOBILE > GLOBAL */
    :root{
        --wp--preset--spacing--05: 6px;
        --wp--preset--spacing--80: 25px;
        --wp--preset--font-size--menu-item: 22px;
    }

    .mobile-column {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .mobile-column.reverse {
        flex-direction: column-reverse !important;
    }

    .mobile-column>* {
        flex-basis: unset !important;
    }

    .mobile-reset-padding-inline{
        padding-left: var(--wp--preset--spacing--20) !important;
        padding-right: var(--wp--preset--spacing--20) !important;
    }
	
    .mobile-unset-padding-inline{
        padding-left: unset !important;
        padding-right: unset !important;
    }

    .mobile-reset-padding-vertical{
        padding-top: var(--wp--preset--spacing--20) !important;
        padding-bottom: var(--wp--preset--spacing--20) !important;
    }
	
	.mobile-gap-25{
		gap: var(--wp--preset--spacing--25) !important;
	}

    /* MOBILE > HEADER */
    header .has-dark-background-color{
        padding-left: var(--wp--preset--spacing--20) !important;
        padding-right: var(--wp--preset--spacing--20) !important;
    }

    header .logo :is(a, svg){
        --icon-width: 71px;
    }

    header nav.menu-burger{
        right: 4px !important;
        width: calc(100% - 8px);
        top: var(--wp--custom--header--height);
        z-index: -1;
        height: calc(100dvh - var(--wp--custom--header--height) - 4px);
        border-radius: 0 0 18px 18px;
		gap: var(--wp--preset--spacing--25);
    }

    /* MOBILE > BODY AND SPECIFIC */

    /* MOBILE > SWIPER */

    /* MOBILE > FOOTER */
    footer .has-dark-background-color{
        padding-left: var(--wp--preset--spacing--20) !important;
        padding-right: var(--wp--preset--spacing--20) !important;
    }
}

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

    /* SMALLER MOBILE > GLOBAL */
    .smaller-mobile-column {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .smaller-mobile-column.reverse {
        flex-direction: column-reverse !important;
    }

    .smaller-mobile-column>* {
        flex-basis: unset !important;
    }

    /* SMALLER MOBILE > HEADER */

    /* SMALLER MOBILE > BODY AND SPECIFIC */

    /* SMALLER MOBILE > SWIPER */

    /* SMALLER MOBILE > FOOTER */
}