/*!****************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./assets/frontend/sass/app.scss ***!
  \****************************************************************************************************************************************************/
@charset "UTF-8";
/*
|
| FEATURES
|----------------
|
*/
/*
|
| UTILS
|----------------
|
*/
/*
|
| MIXINS
|----------------
|
*/
/*
    Name of the next breakpoint, or null for the last breakpoint.

    >> breakpoint-next(sm)
        md
    >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        md
    >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
        md
*/
/*
    Minimum breakpoint width. Null for the smallest (first) breakpoint.

    >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        576px
*/
/*
    Maximum breakpoint width. Null for the largest (last) breakpoint.
    The maximum value is calculated as the minimum of the next one less 0.02px to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.
    See https://www.w3.org/TR/mediaqueries-4/#mq-min-max
    Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.
    See https://bugs.webkit.org/show_bug.cgi?id=178261

    >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        767.98px
*/
/*
    Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.
    Useful for making responsive utilities.

    >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        ""  (Returns a blank string)

    >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
        "-sm"
*/
/*
    Media of at least the minimum breakpoint width. No query for the smallest breakpoint.
    Makes the @content apply to the given breakpoint and wider.
*/
/*
    Media of at most the maximum breakpoint width. No query for the largest breakpoint.
    Makes the @content apply to the given breakpoint and narrower.
*/
/*
    Media that spans multiple breakpoint widths.
    Makes the @content apply between the min and max breakpoints
*/
/*
    Media between the breakpoint's minimum and maximum widths.
    No minimum for the smallest breakpoint, and no maximum for the largest one.
    Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.
*/
/*
|
| Titles
|-----------------------
|
*/
/*
|
| MAPS
|----------------
|
*/
/*
|-------------
| Breakpoints media queries creation 
|-------------
| - How to use: add lines to create more breakpoints
|
*/
/*
|-------------------------------
| Container classes creation
|-------------------------------
| Variables used to generate container classes
| - Generated classes: .container / .container-fluid
|
*/
/*
|-------------------------------
| Grid gutters creation
|-------------------------------
| Variables used to generate grid gutter classes
| - Generated classes: .g-{size}
| - Exemple: .g-md
|
*/
/*
|-------------------------------
| Margins & Paddings classes creation
|-------------------------------
| Variables used to generate padding & margin classes
| - Generated classes: .m{direction}-{size} & .p{direction}-{size}
| - Exemple: .mt-md & .pt-md
|
*/
/*
|-------------
| Color classes creation 
|-------------
| - How to use: add lines to create more "color classes" 
| - Generated classes: .bg-{color} & .c-{color}
| - Exemple: .bg-black & .c-black
|
*/
/*
|-------------------------------
| Font family classes creation
|-------------------------------
| How to use: add lines to create more "font family classes" 
| - Generated classes: .ff-{family}
| - Exemple: .ff-default
|
*/
/*
|----------------------------------------------
| Font size classes creation
|----------------------------------------------
| Variables used to generate font size classes (including responsive)
| - Generated classes: .fs-{name}
| - Exemple: .fs-md
|
| Syntax :
|   '{name}': (
|       'default': {size},
|       'screens': (
|           'xl': {size},
|           'lg': {size},
|           'md': {size},
|           'sm': {size},
|       )
|   )
|
*/
/*
|-------------------------------
| Font weight classes creation
|-------------------------------
| How to use: add lines to create more "font weight classes"
| - Generated classes: .fw-{weight}
| - Exemple: .fw-400
|
*/
/*
|-------------------------------
| Text align classes creation
|-------------------------------
| Variables used to generate text-align classes
| - Generated classes: .ta-{alignment}
| - Exemple: .ta-center
|
*/
/*
|-------------------------------
| Title sizes classes creation
|-------------------------------
| Variables used to generate title classes (including responsive)
| - Generated classes: .{class}
| - Exemple: .title-xl
|
*/
/*
|
| CORE
|----------------
|
*/
/*
|---------------------------------------------------------------
| Helpers
|---------------------------------------------------------------
| Define helper classes
|
|
*/
/*
|
| TEXT TRANSFORMS
|----------------
|
*/
/*
|---------------------------------------------------------------
| CLASS GENERATOR
|---------------------------------------------------------------
| Mixins calls to generate classes
|
|
*/
/*
|
| CONTAINERS
|----------------
|
*/
.container {
  width: calc(100% - 2 * var(--container-gutter, 0.75rem));
  max-width: var(--container-width, none);
  margin-inline: auto;
}
.container--fluid {
  --container-width: 100%;
}
.container--sm {
  --container-width: 48rem;
}

/*
|
| GRID
|----------------
|
*/
.row,
[class^=row-],
[class*=" row-"] {
  --gx: 1.5rem;
  --gy: 1.5rem;
  --tgx: max(0px, calc((var(--cc) - 1) * var(--gx)));
  display: flex;
  flex-wrap: wrap;
  gap: var(--gy) var(--gx);
}

.row {
  --cc: 12;
}

.row-24 {
  --cc: 24;
}

.col,
[class^=col-],
[class*=" col-"] {
  --cw: calc((100% - var(--tgx)) / var(--cc) * var(--cs) + (var(--cs) - 1) * var(--gx));
  width: var(--cw, 100%);
  flex: 0 0 var(--cw, 100%);
}

[class^=offset-],
[class*=" offset-"] {
  margin-left: calc((100% - var(--tgx)) / var(--cc) * var(--co) + var(--co) * var(--gx));
}

.col {
  --cs: var(--cc);
}

.col-auto {
  --cw: auto;
}

.order-first {
  order: -1;
}

.order-last {
  order: 999;
}

.order-0 {
  order: 0;
}

.offset-0 {
  --co: 0;
}

.col-1 {
  --cs: 1;
}

.order-1 {
  order: 1;
}

.offset-1 {
  --co: 1;
}

.col-2 {
  --cs: 2;
}

.order-2 {
  order: 2;
}

.offset-2 {
  --co: 2;
}

.col-3 {
  --cs: 3;
}

.order-3 {
  order: 3;
}

.offset-3 {
  --co: 3;
}

.col-4 {
  --cs: 4;
}

.order-4 {
  order: 4;
}

.offset-4 {
  --co: 4;
}

.col-5 {
  --cs: 5;
}

.order-5 {
  order: 5;
}

.offset-5 {
  --co: 5;
}

.col-6 {
  --cs: 6;
}

.order-6 {
  order: 6;
}

.offset-6 {
  --co: 6;
}

.col-7 {
  --cs: 7;
}

.order-7 {
  order: 7;
}

.offset-7 {
  --co: 7;
}

.col-8 {
  --cs: 8;
}

.order-8 {
  order: 8;
}

.offset-8 {
  --co: 8;
}

.col-9 {
  --cs: 9;
}

.order-9 {
  order: 9;
}

.offset-9 {
  --co: 9;
}

.col-10 {
  --cs: 10;
}

.order-10 {
  order: 10;
}

.offset-10 {
  --co: 10;
}

.col-11 {
  --cs: 11;
}

.order-11 {
  order: 11;
}

.offset-11 {
  --co: 11;
}

.col-12 {
  --cs: 12;
}

.order-12 {
  order: 12;
}

.offset-12 {
  --co: 12;
}

.col-13 {
  --cs: 13;
}

.order-13 {
  order: 13;
}

.offset-13 {
  --co: 13;
}

.col-14 {
  --cs: 14;
}

.order-14 {
  order: 14;
}

.offset-14 {
  --co: 14;
}

.col-15 {
  --cs: 15;
}

.order-15 {
  order: 15;
}

.offset-15 {
  --co: 15;
}

.col-16 {
  --cs: 16;
}

.order-16 {
  order: 16;
}

.offset-16 {
  --co: 16;
}

.col-17 {
  --cs: 17;
}

.order-17 {
  order: 17;
}

.offset-17 {
  --co: 17;
}

.col-18 {
  --cs: 18;
}

.order-18 {
  order: 18;
}

.offset-18 {
  --co: 18;
}

.col-19 {
  --cs: 19;
}

.order-19 {
  order: 19;
}

.offset-19 {
  --co: 19;
}

.col-20 {
  --cs: 20;
}

.order-20 {
  order: 20;
}

.offset-20 {
  --co: 20;
}

.col-21 {
  --cs: 21;
}

.order-21 {
  order: 21;
}

.offset-21 {
  --co: 21;
}

.col-22 {
  --cs: 22;
}

.order-22 {
  order: 22;
}

.offset-22 {
  --co: 22;
}

.col-23 {
  --cs: 23;
}

.order-23 {
  order: 23;
}

.offset-23 {
  --co: 23;
}

.col-24 {
  --cs: 24;
}

.order-24 {
  order: 24;
}

@media (min-width: 36rem) {
  .col-sm {
    --cs: var(--cc);
  }
  .col-sm-auto {
    --cw: auto;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 999;
  }
  .order-sm-0 {
    order: 0;
  }
  .offset-sm-0 {
    --co: 0;
  }
  .col-sm-1 {
    --cs: 1;
  }
  .order-sm-1 {
    order: 1;
  }
  .offset-sm-1 {
    --co: 1;
  }
  .col-sm-2 {
    --cs: 2;
  }
  .order-sm-2 {
    order: 2;
  }
  .offset-sm-2 {
    --co: 2;
  }
  .col-sm-3 {
    --cs: 3;
  }
  .order-sm-3 {
    order: 3;
  }
  .offset-sm-3 {
    --co: 3;
  }
  .col-sm-4 {
    --cs: 4;
  }
  .order-sm-4 {
    order: 4;
  }
  .offset-sm-4 {
    --co: 4;
  }
  .col-sm-5 {
    --cs: 5;
  }
  .order-sm-5 {
    order: 5;
  }
  .offset-sm-5 {
    --co: 5;
  }
  .col-sm-6 {
    --cs: 6;
  }
  .order-sm-6 {
    order: 6;
  }
  .offset-sm-6 {
    --co: 6;
  }
  .col-sm-7 {
    --cs: 7;
  }
  .order-sm-7 {
    order: 7;
  }
  .offset-sm-7 {
    --co: 7;
  }
  .col-sm-8 {
    --cs: 8;
  }
  .order-sm-8 {
    order: 8;
  }
  .offset-sm-8 {
    --co: 8;
  }
  .col-sm-9 {
    --cs: 9;
  }
  .order-sm-9 {
    order: 9;
  }
  .offset-sm-9 {
    --co: 9;
  }
  .col-sm-10 {
    --cs: 10;
  }
  .order-sm-10 {
    order: 10;
  }
  .offset-sm-10 {
    --co: 10;
  }
  .col-sm-11 {
    --cs: 11;
  }
  .order-sm-11 {
    order: 11;
  }
  .offset-sm-11 {
    --co: 11;
  }
  .col-sm-12 {
    --cs: 12;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-12 {
    --co: 12;
  }
  .col-sm-13 {
    --cs: 13;
  }
  .order-sm-13 {
    order: 13;
  }
  .offset-sm-13 {
    --co: 13;
  }
  .col-sm-14 {
    --cs: 14;
  }
  .order-sm-14 {
    order: 14;
  }
  .offset-sm-14 {
    --co: 14;
  }
  .col-sm-15 {
    --cs: 15;
  }
  .order-sm-15 {
    order: 15;
  }
  .offset-sm-15 {
    --co: 15;
  }
  .col-sm-16 {
    --cs: 16;
  }
  .order-sm-16 {
    order: 16;
  }
  .offset-sm-16 {
    --co: 16;
  }
  .col-sm-17 {
    --cs: 17;
  }
  .order-sm-17 {
    order: 17;
  }
  .offset-sm-17 {
    --co: 17;
  }
  .col-sm-18 {
    --cs: 18;
  }
  .order-sm-18 {
    order: 18;
  }
  .offset-sm-18 {
    --co: 18;
  }
  .col-sm-19 {
    --cs: 19;
  }
  .order-sm-19 {
    order: 19;
  }
  .offset-sm-19 {
    --co: 19;
  }
  .col-sm-20 {
    --cs: 20;
  }
  .order-sm-20 {
    order: 20;
  }
  .offset-sm-20 {
    --co: 20;
  }
  .col-sm-21 {
    --cs: 21;
  }
  .order-sm-21 {
    order: 21;
  }
  .offset-sm-21 {
    --co: 21;
  }
  .col-sm-22 {
    --cs: 22;
  }
  .order-sm-22 {
    order: 22;
  }
  .offset-sm-22 {
    --co: 22;
  }
  .col-sm-23 {
    --cs: 23;
  }
  .order-sm-23 {
    order: 23;
  }
  .offset-sm-23 {
    --co: 23;
  }
  .col-sm-24 {
    --cs: 24;
  }
  .order-sm-24 {
    order: 24;
  }
}
@media (min-width: 48rem) {
  .col-md {
    --cs: var(--cc);
  }
  .col-md-auto {
    --cw: auto;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 999;
  }
  .order-md-0 {
    order: 0;
  }
  .offset-md-0 {
    --co: 0;
  }
  .col-md-1 {
    --cs: 1;
  }
  .order-md-1 {
    order: 1;
  }
  .offset-md-1 {
    --co: 1;
  }
  .col-md-2 {
    --cs: 2;
  }
  .order-md-2 {
    order: 2;
  }
  .offset-md-2 {
    --co: 2;
  }
  .col-md-3 {
    --cs: 3;
  }
  .order-md-3 {
    order: 3;
  }
  .offset-md-3 {
    --co: 3;
  }
  .col-md-4 {
    --cs: 4;
  }
  .order-md-4 {
    order: 4;
  }
  .offset-md-4 {
    --co: 4;
  }
  .col-md-5 {
    --cs: 5;
  }
  .order-md-5 {
    order: 5;
  }
  .offset-md-5 {
    --co: 5;
  }
  .col-md-6 {
    --cs: 6;
  }
  .order-md-6 {
    order: 6;
  }
  .offset-md-6 {
    --co: 6;
  }
  .col-md-7 {
    --cs: 7;
  }
  .order-md-7 {
    order: 7;
  }
  .offset-md-7 {
    --co: 7;
  }
  .col-md-8 {
    --cs: 8;
  }
  .order-md-8 {
    order: 8;
  }
  .offset-md-8 {
    --co: 8;
  }
  .col-md-9 {
    --cs: 9;
  }
  .order-md-9 {
    order: 9;
  }
  .offset-md-9 {
    --co: 9;
  }
  .col-md-10 {
    --cs: 10;
  }
  .order-md-10 {
    order: 10;
  }
  .offset-md-10 {
    --co: 10;
  }
  .col-md-11 {
    --cs: 11;
  }
  .order-md-11 {
    order: 11;
  }
  .offset-md-11 {
    --co: 11;
  }
  .col-md-12 {
    --cs: 12;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-12 {
    --co: 12;
  }
  .col-md-13 {
    --cs: 13;
  }
  .order-md-13 {
    order: 13;
  }
  .offset-md-13 {
    --co: 13;
  }
  .col-md-14 {
    --cs: 14;
  }
  .order-md-14 {
    order: 14;
  }
  .offset-md-14 {
    --co: 14;
  }
  .col-md-15 {
    --cs: 15;
  }
  .order-md-15 {
    order: 15;
  }
  .offset-md-15 {
    --co: 15;
  }
  .col-md-16 {
    --cs: 16;
  }
  .order-md-16 {
    order: 16;
  }
  .offset-md-16 {
    --co: 16;
  }
  .col-md-17 {
    --cs: 17;
  }
  .order-md-17 {
    order: 17;
  }
  .offset-md-17 {
    --co: 17;
  }
  .col-md-18 {
    --cs: 18;
  }
  .order-md-18 {
    order: 18;
  }
  .offset-md-18 {
    --co: 18;
  }
  .col-md-19 {
    --cs: 19;
  }
  .order-md-19 {
    order: 19;
  }
  .offset-md-19 {
    --co: 19;
  }
  .col-md-20 {
    --cs: 20;
  }
  .order-md-20 {
    order: 20;
  }
  .offset-md-20 {
    --co: 20;
  }
  .col-md-21 {
    --cs: 21;
  }
  .order-md-21 {
    order: 21;
  }
  .offset-md-21 {
    --co: 21;
  }
  .col-md-22 {
    --cs: 22;
  }
  .order-md-22 {
    order: 22;
  }
  .offset-md-22 {
    --co: 22;
  }
  .col-md-23 {
    --cs: 23;
  }
  .order-md-23 {
    order: 23;
  }
  .offset-md-23 {
    --co: 23;
  }
  .col-md-24 {
    --cs: 24;
  }
  .order-md-24 {
    order: 24;
  }
}
@media (min-width: 64rem) {
  .col-lg {
    --cs: var(--cc);
  }
  .col-lg-auto {
    --cw: auto;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 999;
  }
  .order-lg-0 {
    order: 0;
  }
  .offset-lg-0 {
    --co: 0;
  }
  .col-lg-1 {
    --cs: 1;
  }
  .order-lg-1 {
    order: 1;
  }
  .offset-lg-1 {
    --co: 1;
  }
  .col-lg-2 {
    --cs: 2;
  }
  .order-lg-2 {
    order: 2;
  }
  .offset-lg-2 {
    --co: 2;
  }
  .col-lg-3 {
    --cs: 3;
  }
  .order-lg-3 {
    order: 3;
  }
  .offset-lg-3 {
    --co: 3;
  }
  .col-lg-4 {
    --cs: 4;
  }
  .order-lg-4 {
    order: 4;
  }
  .offset-lg-4 {
    --co: 4;
  }
  .col-lg-5 {
    --cs: 5;
  }
  .order-lg-5 {
    order: 5;
  }
  .offset-lg-5 {
    --co: 5;
  }
  .col-lg-6 {
    --cs: 6;
  }
  .order-lg-6 {
    order: 6;
  }
  .offset-lg-6 {
    --co: 6;
  }
  .col-lg-7 {
    --cs: 7;
  }
  .order-lg-7 {
    order: 7;
  }
  .offset-lg-7 {
    --co: 7;
  }
  .col-lg-8 {
    --cs: 8;
  }
  .order-lg-8 {
    order: 8;
  }
  .offset-lg-8 {
    --co: 8;
  }
  .col-lg-9 {
    --cs: 9;
  }
  .order-lg-9 {
    order: 9;
  }
  .offset-lg-9 {
    --co: 9;
  }
  .col-lg-10 {
    --cs: 10;
  }
  .order-lg-10 {
    order: 10;
  }
  .offset-lg-10 {
    --co: 10;
  }
  .col-lg-11 {
    --cs: 11;
  }
  .order-lg-11 {
    order: 11;
  }
  .offset-lg-11 {
    --co: 11;
  }
  .col-lg-12 {
    --cs: 12;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-12 {
    --co: 12;
  }
  .col-lg-13 {
    --cs: 13;
  }
  .order-lg-13 {
    order: 13;
  }
  .offset-lg-13 {
    --co: 13;
  }
  .col-lg-14 {
    --cs: 14;
  }
  .order-lg-14 {
    order: 14;
  }
  .offset-lg-14 {
    --co: 14;
  }
  .col-lg-15 {
    --cs: 15;
  }
  .order-lg-15 {
    order: 15;
  }
  .offset-lg-15 {
    --co: 15;
  }
  .col-lg-16 {
    --cs: 16;
  }
  .order-lg-16 {
    order: 16;
  }
  .offset-lg-16 {
    --co: 16;
  }
  .col-lg-17 {
    --cs: 17;
  }
  .order-lg-17 {
    order: 17;
  }
  .offset-lg-17 {
    --co: 17;
  }
  .col-lg-18 {
    --cs: 18;
  }
  .order-lg-18 {
    order: 18;
  }
  .offset-lg-18 {
    --co: 18;
  }
  .col-lg-19 {
    --cs: 19;
  }
  .order-lg-19 {
    order: 19;
  }
  .offset-lg-19 {
    --co: 19;
  }
  .col-lg-20 {
    --cs: 20;
  }
  .order-lg-20 {
    order: 20;
  }
  .offset-lg-20 {
    --co: 20;
  }
  .col-lg-21 {
    --cs: 21;
  }
  .order-lg-21 {
    order: 21;
  }
  .offset-lg-21 {
    --co: 21;
  }
  .col-lg-22 {
    --cs: 22;
  }
  .order-lg-22 {
    order: 22;
  }
  .offset-lg-22 {
    --co: 22;
  }
  .col-lg-23 {
    --cs: 23;
  }
  .order-lg-23 {
    order: 23;
  }
  .offset-lg-23 {
    --co: 23;
  }
  .col-lg-24 {
    --cs: 24;
  }
  .order-lg-24 {
    order: 24;
  }
}
@media (min-width: 79rem) {
  .col-xl {
    --cs: var(--cc);
  }
  .col-xl-auto {
    --cw: auto;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 999;
  }
  .order-xl-0 {
    order: 0;
  }
  .offset-xl-0 {
    --co: 0;
  }
  .col-xl-1 {
    --cs: 1;
  }
  .order-xl-1 {
    order: 1;
  }
  .offset-xl-1 {
    --co: 1;
  }
  .col-xl-2 {
    --cs: 2;
  }
  .order-xl-2 {
    order: 2;
  }
  .offset-xl-2 {
    --co: 2;
  }
  .col-xl-3 {
    --cs: 3;
  }
  .order-xl-3 {
    order: 3;
  }
  .offset-xl-3 {
    --co: 3;
  }
  .col-xl-4 {
    --cs: 4;
  }
  .order-xl-4 {
    order: 4;
  }
  .offset-xl-4 {
    --co: 4;
  }
  .col-xl-5 {
    --cs: 5;
  }
  .order-xl-5 {
    order: 5;
  }
  .offset-xl-5 {
    --co: 5;
  }
  .col-xl-6 {
    --cs: 6;
  }
  .order-xl-6 {
    order: 6;
  }
  .offset-xl-6 {
    --co: 6;
  }
  .col-xl-7 {
    --cs: 7;
  }
  .order-xl-7 {
    order: 7;
  }
  .offset-xl-7 {
    --co: 7;
  }
  .col-xl-8 {
    --cs: 8;
  }
  .order-xl-8 {
    order: 8;
  }
  .offset-xl-8 {
    --co: 8;
  }
  .col-xl-9 {
    --cs: 9;
  }
  .order-xl-9 {
    order: 9;
  }
  .offset-xl-9 {
    --co: 9;
  }
  .col-xl-10 {
    --cs: 10;
  }
  .order-xl-10 {
    order: 10;
  }
  .offset-xl-10 {
    --co: 10;
  }
  .col-xl-11 {
    --cs: 11;
  }
  .order-xl-11 {
    order: 11;
  }
  .offset-xl-11 {
    --co: 11;
  }
  .col-xl-12 {
    --cs: 12;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-12 {
    --co: 12;
  }
  .col-xl-13 {
    --cs: 13;
  }
  .order-xl-13 {
    order: 13;
  }
  .offset-xl-13 {
    --co: 13;
  }
  .col-xl-14 {
    --cs: 14;
  }
  .order-xl-14 {
    order: 14;
  }
  .offset-xl-14 {
    --co: 14;
  }
  .col-xl-15 {
    --cs: 15;
  }
  .order-xl-15 {
    order: 15;
  }
  .offset-xl-15 {
    --co: 15;
  }
  .col-xl-16 {
    --cs: 16;
  }
  .order-xl-16 {
    order: 16;
  }
  .offset-xl-16 {
    --co: 16;
  }
  .col-xl-17 {
    --cs: 17;
  }
  .order-xl-17 {
    order: 17;
  }
  .offset-xl-17 {
    --co: 17;
  }
  .col-xl-18 {
    --cs: 18;
  }
  .order-xl-18 {
    order: 18;
  }
  .offset-xl-18 {
    --co: 18;
  }
  .col-xl-19 {
    --cs: 19;
  }
  .order-xl-19 {
    order: 19;
  }
  .offset-xl-19 {
    --co: 19;
  }
  .col-xl-20 {
    --cs: 20;
  }
  .order-xl-20 {
    order: 20;
  }
  .offset-xl-20 {
    --co: 20;
  }
  .col-xl-21 {
    --cs: 21;
  }
  .order-xl-21 {
    order: 21;
  }
  .offset-xl-21 {
    --co: 21;
  }
  .col-xl-22 {
    --cs: 22;
  }
  .order-xl-22 {
    order: 22;
  }
  .offset-xl-22 {
    --co: 22;
  }
  .col-xl-23 {
    --cs: 23;
  }
  .order-xl-23 {
    order: 23;
  }
  .offset-xl-23 {
    --co: 23;
  }
  .col-xl-24 {
    --cs: 24;
  }
  .order-xl-24 {
    order: 24;
  }
}
@media (min-width: 90rem) {
  .col-xxl {
    --cs: var(--cc);
  }
  .col-xxl-auto {
    --cw: auto;
  }
  .order-xxl-first {
    order: -1;
  }
  .order-xxl-last {
    order: 999;
  }
  .order-xxl-0 {
    order: 0;
  }
  .offset-xxl-0 {
    --co: 0;
  }
  .col-xxl-1 {
    --cs: 1;
  }
  .order-xxl-1 {
    order: 1;
  }
  .offset-xxl-1 {
    --co: 1;
  }
  .col-xxl-2 {
    --cs: 2;
  }
  .order-xxl-2 {
    order: 2;
  }
  .offset-xxl-2 {
    --co: 2;
  }
  .col-xxl-3 {
    --cs: 3;
  }
  .order-xxl-3 {
    order: 3;
  }
  .offset-xxl-3 {
    --co: 3;
  }
  .col-xxl-4 {
    --cs: 4;
  }
  .order-xxl-4 {
    order: 4;
  }
  .offset-xxl-4 {
    --co: 4;
  }
  .col-xxl-5 {
    --cs: 5;
  }
  .order-xxl-5 {
    order: 5;
  }
  .offset-xxl-5 {
    --co: 5;
  }
  .col-xxl-6 {
    --cs: 6;
  }
  .order-xxl-6 {
    order: 6;
  }
  .offset-xxl-6 {
    --co: 6;
  }
  .col-xxl-7 {
    --cs: 7;
  }
  .order-xxl-7 {
    order: 7;
  }
  .offset-xxl-7 {
    --co: 7;
  }
  .col-xxl-8 {
    --cs: 8;
  }
  .order-xxl-8 {
    order: 8;
  }
  .offset-xxl-8 {
    --co: 8;
  }
  .col-xxl-9 {
    --cs: 9;
  }
  .order-xxl-9 {
    order: 9;
  }
  .offset-xxl-9 {
    --co: 9;
  }
  .col-xxl-10 {
    --cs: 10;
  }
  .order-xxl-10 {
    order: 10;
  }
  .offset-xxl-10 {
    --co: 10;
  }
  .col-xxl-11 {
    --cs: 11;
  }
  .order-xxl-11 {
    order: 11;
  }
  .offset-xxl-11 {
    --co: 11;
  }
  .col-xxl-12 {
    --cs: 12;
  }
  .order-xxl-12 {
    order: 12;
  }
  .offset-xxl-12 {
    --co: 12;
  }
  .col-xxl-13 {
    --cs: 13;
  }
  .order-xxl-13 {
    order: 13;
  }
  .offset-xxl-13 {
    --co: 13;
  }
  .col-xxl-14 {
    --cs: 14;
  }
  .order-xxl-14 {
    order: 14;
  }
  .offset-xxl-14 {
    --co: 14;
  }
  .col-xxl-15 {
    --cs: 15;
  }
  .order-xxl-15 {
    order: 15;
  }
  .offset-xxl-15 {
    --co: 15;
  }
  .col-xxl-16 {
    --cs: 16;
  }
  .order-xxl-16 {
    order: 16;
  }
  .offset-xxl-16 {
    --co: 16;
  }
  .col-xxl-17 {
    --cs: 17;
  }
  .order-xxl-17 {
    order: 17;
  }
  .offset-xxl-17 {
    --co: 17;
  }
  .col-xxl-18 {
    --cs: 18;
  }
  .order-xxl-18 {
    order: 18;
  }
  .offset-xxl-18 {
    --co: 18;
  }
  .col-xxl-19 {
    --cs: 19;
  }
  .order-xxl-19 {
    order: 19;
  }
  .offset-xxl-19 {
    --co: 19;
  }
  .col-xxl-20 {
    --cs: 20;
  }
  .order-xxl-20 {
    order: 20;
  }
  .offset-xxl-20 {
    --co: 20;
  }
  .col-xxl-21 {
    --cs: 21;
  }
  .order-xxl-21 {
    order: 21;
  }
  .offset-xxl-21 {
    --co: 21;
  }
  .col-xxl-22 {
    --cs: 22;
  }
  .order-xxl-22 {
    order: 22;
  }
  .offset-xxl-22 {
    --co: 22;
  }
  .col-xxl-23 {
    --cs: 23;
  }
  .order-xxl-23 {
    order: 23;
  }
  .offset-xxl-23 {
    --co: 23;
  }
  .col-xxl-24 {
    --cs: 24;
  }
  .order-xxl-24 {
    order: 24;
  }
}
.g-0 {
  --gx: 0px;
  --gy: 0px;
}

.gy-0 {
  --gy: 0px;
}

.gx-0 {
  --gx: 0px;
}

.g-xs {
  --gx: 0.5rem;
  --gy: 0.5rem;
}

.gy-xs {
  --gy: 0.5rem;
}

.gx-xs {
  --gx: 0.5rem;
}

.g-sm {
  --gx: 1rem;
  --gy: 1rem;
}

.gy-sm {
  --gy: 1rem;
}

.gx-sm {
  --gx: 1rem;
}

.g-md {
  --gx: 2rem;
  --gy: 2rem;
}

.gy-md {
  --gy: 2rem;
}

.gx-md {
  --gx: 2rem;
}

.g-lg {
  --gx: 4rem;
  --gy: 4rem;
}

.gy-lg {
  --gy: 4rem;
}

.gx-lg {
  --gx: 4rem;
}

.g-xl {
  --gx: 5rem;
  --gy: 5rem;
}

.gy-xl {
  --gy: 5rem;
}

.gx-xl {
  --gx: 5rem;
}

.g-xxl {
  --gx: 7.5rem;
  --gy: 7.5rem;
}

.gy-xxl {
  --gy: 7.5rem;
}

.gx-xxl {
  --gx: 7.5rem;
}

@media (max-width: 89.98rem) {
  .xxl-down-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .xxl-down-gy-0 {
    --gy: 0px;
  }
  .xxl-down-gx-0 {
    --gx: 0px;
  }
  .xxl-down-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .xxl-down-gy-xs {
    --gy: 0.5rem;
  }
  .xxl-down-gx-xs {
    --gx: 0.5rem;
  }
  .xxl-down-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .xxl-down-gy-sm {
    --gy: 1rem;
  }
  .xxl-down-gx-sm {
    --gx: 1rem;
  }
  .xxl-down-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .xxl-down-gy-md {
    --gy: 2rem;
  }
  .xxl-down-gx-md {
    --gx: 2rem;
  }
  .xxl-down-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .xxl-down-gy-lg {
    --gy: 4rem;
  }
  .xxl-down-gx-lg {
    --gx: 4rem;
  }
  .xxl-down-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .xxl-down-gy-xl {
    --gy: 5rem;
  }
  .xxl-down-gx-xl {
    --gx: 5rem;
  }
  .xxl-down-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .xxl-down-gy-xxl {
    --gy: 7.5rem;
  }
  .xxl-down-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (max-width: 78.98rem) {
  .xl-down-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .xl-down-gy-0 {
    --gy: 0px;
  }
  .xl-down-gx-0 {
    --gx: 0px;
  }
  .xl-down-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .xl-down-gy-xs {
    --gy: 0.5rem;
  }
  .xl-down-gx-xs {
    --gx: 0.5rem;
  }
  .xl-down-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .xl-down-gy-sm {
    --gy: 1rem;
  }
  .xl-down-gx-sm {
    --gx: 1rem;
  }
  .xl-down-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .xl-down-gy-md {
    --gy: 2rem;
  }
  .xl-down-gx-md {
    --gx: 2rem;
  }
  .xl-down-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .xl-down-gy-lg {
    --gy: 4rem;
  }
  .xl-down-gx-lg {
    --gx: 4rem;
  }
  .xl-down-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .xl-down-gy-xl {
    --gy: 5rem;
  }
  .xl-down-gx-xl {
    --gx: 5rem;
  }
  .xl-down-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .xl-down-gy-xxl {
    --gy: 7.5rem;
  }
  .xl-down-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (max-width: 63.98rem) {
  .lg-down-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .lg-down-gy-0 {
    --gy: 0px;
  }
  .lg-down-gx-0 {
    --gx: 0px;
  }
  .lg-down-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .lg-down-gy-xs {
    --gy: 0.5rem;
  }
  .lg-down-gx-xs {
    --gx: 0.5rem;
  }
  .lg-down-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .lg-down-gy-sm {
    --gy: 1rem;
  }
  .lg-down-gx-sm {
    --gx: 1rem;
  }
  .lg-down-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .lg-down-gy-md {
    --gy: 2rem;
  }
  .lg-down-gx-md {
    --gx: 2rem;
  }
  .lg-down-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .lg-down-gy-lg {
    --gy: 4rem;
  }
  .lg-down-gx-lg {
    --gx: 4rem;
  }
  .lg-down-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .lg-down-gy-xl {
    --gy: 5rem;
  }
  .lg-down-gx-xl {
    --gx: 5rem;
  }
  .lg-down-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .lg-down-gy-xxl {
    --gy: 7.5rem;
  }
  .lg-down-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (max-width: 47.98rem) {
  .md-down-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .md-down-gy-0 {
    --gy: 0px;
  }
  .md-down-gx-0 {
    --gx: 0px;
  }
  .md-down-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .md-down-gy-xs {
    --gy: 0.5rem;
  }
  .md-down-gx-xs {
    --gx: 0.5rem;
  }
  .md-down-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .md-down-gy-sm {
    --gy: 1rem;
  }
  .md-down-gx-sm {
    --gx: 1rem;
  }
  .md-down-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .md-down-gy-md {
    --gy: 2rem;
  }
  .md-down-gx-md {
    --gx: 2rem;
  }
  .md-down-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .md-down-gy-lg {
    --gy: 4rem;
  }
  .md-down-gx-lg {
    --gx: 4rem;
  }
  .md-down-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .md-down-gy-xl {
    --gy: 5rem;
  }
  .md-down-gx-xl {
    --gx: 5rem;
  }
  .md-down-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .md-down-gy-xxl {
    --gy: 7.5rem;
  }
  .md-down-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (max-width: 35.98rem) {
  .sm-down-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .sm-down-gy-0 {
    --gy: 0px;
  }
  .sm-down-gx-0 {
    --gx: 0px;
  }
  .sm-down-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .sm-down-gy-xs {
    --gy: 0.5rem;
  }
  .sm-down-gx-xs {
    --gx: 0.5rem;
  }
  .sm-down-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .sm-down-gy-sm {
    --gy: 1rem;
  }
  .sm-down-gx-sm {
    --gx: 1rem;
  }
  .sm-down-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .sm-down-gy-md {
    --gy: 2rem;
  }
  .sm-down-gx-md {
    --gx: 2rem;
  }
  .sm-down-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .sm-down-gy-lg {
    --gy: 4rem;
  }
  .sm-down-gx-lg {
    --gx: 4rem;
  }
  .sm-down-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .sm-down-gy-xl {
    --gy: 5rem;
  }
  .sm-down-gx-xl {
    --gx: 5rem;
  }
  .sm-down-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .sm-down-gy-xxl {
    --gy: 7.5rem;
  }
  .sm-down-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (min-width: 36rem) {
  .sm-up-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .sm-up-gy-0 {
    --gy: 0px;
  }
  .sm-up-gx-0 {
    --gx: 0px;
  }
  .sm-up-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .sm-up-gy-xs {
    --gy: 0.5rem;
  }
  .sm-up-gx-xs {
    --gx: 0.5rem;
  }
  .sm-up-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .sm-up-gy-sm {
    --gy: 1rem;
  }
  .sm-up-gx-sm {
    --gx: 1rem;
  }
  .sm-up-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .sm-up-gy-md {
    --gy: 2rem;
  }
  .sm-up-gx-md {
    --gx: 2rem;
  }
  .sm-up-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .sm-up-gy-lg {
    --gy: 4rem;
  }
  .sm-up-gx-lg {
    --gx: 4rem;
  }
  .sm-up-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .sm-up-gy-xl {
    --gy: 5rem;
  }
  .sm-up-gx-xl {
    --gx: 5rem;
  }
  .sm-up-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .sm-up-gy-xxl {
    --gy: 7.5rem;
  }
  .sm-up-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (min-width: 48rem) {
  .md-up-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .md-up-gy-0 {
    --gy: 0px;
  }
  .md-up-gx-0 {
    --gx: 0px;
  }
  .md-up-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .md-up-gy-xs {
    --gy: 0.5rem;
  }
  .md-up-gx-xs {
    --gx: 0.5rem;
  }
  .md-up-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .md-up-gy-sm {
    --gy: 1rem;
  }
  .md-up-gx-sm {
    --gx: 1rem;
  }
  .md-up-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .md-up-gy-md {
    --gy: 2rem;
  }
  .md-up-gx-md {
    --gx: 2rem;
  }
  .md-up-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .md-up-gy-lg {
    --gy: 4rem;
  }
  .md-up-gx-lg {
    --gx: 4rem;
  }
  .md-up-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .md-up-gy-xl {
    --gy: 5rem;
  }
  .md-up-gx-xl {
    --gx: 5rem;
  }
  .md-up-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .md-up-gy-xxl {
    --gy: 7.5rem;
  }
  .md-up-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (min-width: 64rem) {
  .lg-up-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .lg-up-gy-0 {
    --gy: 0px;
  }
  .lg-up-gx-0 {
    --gx: 0px;
  }
  .lg-up-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .lg-up-gy-xs {
    --gy: 0.5rem;
  }
  .lg-up-gx-xs {
    --gx: 0.5rem;
  }
  .lg-up-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .lg-up-gy-sm {
    --gy: 1rem;
  }
  .lg-up-gx-sm {
    --gx: 1rem;
  }
  .lg-up-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .lg-up-gy-md {
    --gy: 2rem;
  }
  .lg-up-gx-md {
    --gx: 2rem;
  }
  .lg-up-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .lg-up-gy-lg {
    --gy: 4rem;
  }
  .lg-up-gx-lg {
    --gx: 4rem;
  }
  .lg-up-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .lg-up-gy-xl {
    --gy: 5rem;
  }
  .lg-up-gx-xl {
    --gx: 5rem;
  }
  .lg-up-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .lg-up-gy-xxl {
    --gy: 7.5rem;
  }
  .lg-up-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (min-width: 79rem) {
  .xl-up-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .xl-up-gy-0 {
    --gy: 0px;
  }
  .xl-up-gx-0 {
    --gx: 0px;
  }
  .xl-up-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .xl-up-gy-xs {
    --gy: 0.5rem;
  }
  .xl-up-gx-xs {
    --gx: 0.5rem;
  }
  .xl-up-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .xl-up-gy-sm {
    --gy: 1rem;
  }
  .xl-up-gx-sm {
    --gx: 1rem;
  }
  .xl-up-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .xl-up-gy-md {
    --gy: 2rem;
  }
  .xl-up-gx-md {
    --gx: 2rem;
  }
  .xl-up-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .xl-up-gy-lg {
    --gy: 4rem;
  }
  .xl-up-gx-lg {
    --gx: 4rem;
  }
  .xl-up-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .xl-up-gy-xl {
    --gy: 5rem;
  }
  .xl-up-gx-xl {
    --gx: 5rem;
  }
  .xl-up-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .xl-up-gy-xxl {
    --gy: 7.5rem;
  }
  .xl-up-gx-xxl {
    --gx: 7.5rem;
  }
}
@media (min-width: 90rem) {
  .xxl-up-g-0 {
    --gx: 0px;
    --gy: 0px;
  }
  .xxl-up-gy-0 {
    --gy: 0px;
  }
  .xxl-up-gx-0 {
    --gx: 0px;
  }
  .xxl-up-g-xs {
    --gx: 0.5rem;
    --gy: 0.5rem;
  }
  .xxl-up-gy-xs {
    --gy: 0.5rem;
  }
  .xxl-up-gx-xs {
    --gx: 0.5rem;
  }
  .xxl-up-g-sm {
    --gx: 1rem;
    --gy: 1rem;
  }
  .xxl-up-gy-sm {
    --gy: 1rem;
  }
  .xxl-up-gx-sm {
    --gx: 1rem;
  }
  .xxl-up-g-md {
    --gx: 2rem;
    --gy: 2rem;
  }
  .xxl-up-gy-md {
    --gy: 2rem;
  }
  .xxl-up-gx-md {
    --gx: 2rem;
  }
  .xxl-up-g-lg {
    --gx: 4rem;
    --gy: 4rem;
  }
  .xxl-up-gy-lg {
    --gy: 4rem;
  }
  .xxl-up-gx-lg {
    --gx: 4rem;
  }
  .xxl-up-g-xl {
    --gx: 5rem;
    --gy: 5rem;
  }
  .xxl-up-gy-xl {
    --gy: 5rem;
  }
  .xxl-up-gx-xl {
    --gx: 5rem;
  }
  .xxl-up-g-xxl {
    --gx: 7.5rem;
    --gy: 7.5rem;
  }
  .xxl-up-gy-xxl {
    --gy: 7.5rem;
  }
  .xxl-up-gx-xxl {
    --gx: 7.5rem;
  }
}
/*
|
| MARGINS & PADDINGS
|----------------
|
*/
.m-0 {
  margin: 0;
}

.mt-0 {
  margin-top: 0;
}

.mb-0 {
  margin-bottom: 0;
}

.my-0 {
  margin-block: 0;
}

.ml-0 {
  margin-left: 0;
}

.mr-0 {
  margin-right: 0;
}

.mx-0 {
  margin-inline: 0;
}

.p-0 {
  padding: 0;
}

.pt-0 {
  padding-top: 0;
}

.pb-0 {
  padding-bottom: 0;
}

.py-0 {
  padding-block: 0;
}

.pl-0 {
  padding-left: 0;
}

.pr-0 {
  padding-right: 0;
}

.px-0 {
  padding-inline: 0;
}

.m-xs {
  margin: 0.5rem;
}

.mt-xs {
  margin-top: 0.5rem;
}

.mb-xs {
  margin-bottom: 0.5rem;
}

.my-xs {
  margin-block: 0.5rem;
}

.ml-xs {
  margin-left: 0.5rem;
}

.mr-xs {
  margin-right: 0.5rem;
}

.mx-xs {
  margin-inline: 0.5rem;
}

.p-xs {
  padding: 0.5rem;
}

.pt-xs {
  padding-top: 0.5rem;
}

.pb-xs {
  padding-bottom: 0.5rem;
}

.py-xs {
  padding-block: 0.5rem;
}

.pl-xs {
  padding-left: 0.5rem;
}

.pr-xs {
  padding-right: 0.5rem;
}

.px-xs {
  padding-inline: 0.5rem;
}

.m-sm {
  margin: 1rem;
}

.mt-sm {
  margin-top: 1rem;
}

.mb-sm {
  margin-bottom: 1rem;
}

.my-sm {
  margin-block: 1rem;
}

.ml-sm {
  margin-left: 1rem;
}

.mr-sm {
  margin-right: 1rem;
}

.mx-sm {
  margin-inline: 1rem;
}

.p-sm {
  padding: 1rem;
}

.pt-sm {
  padding-top: 1rem;
}

.pb-sm {
  padding-bottom: 1rem;
}

.py-sm {
  padding-block: 1rem;
}

.pl-sm {
  padding-left: 1rem;
}

.pr-sm {
  padding-right: 1rem;
}

.px-sm {
  padding-inline: 1rem;
}

.m-md {
  margin: 2rem;
}

.mt-md {
  margin-top: 2rem;
}

.mb-md {
  margin-bottom: 2rem;
}

.my-md {
  margin-block: 2rem;
}

.ml-md {
  margin-left: 2rem;
}

.mr-md {
  margin-right: 2rem;
}

.mx-md {
  margin-inline: 2rem;
}

.p-md {
  padding: 2rem;
}

.pt-md {
  padding-top: 2rem;
}

.pb-md {
  padding-bottom: 2rem;
}

.py-md {
  padding-block: 2rem;
}

.pl-md {
  padding-left: 2rem;
}

.pr-md {
  padding-right: 2rem;
}

.px-md {
  padding-inline: 2rem;
}

.m-lg {
  margin: 4rem;
}

.mt-lg {
  margin-top: 4rem;
}

.mb-lg {
  margin-bottom: 4rem;
}

.my-lg {
  margin-block: 4rem;
}

.ml-lg {
  margin-left: 4rem;
}

.mr-lg {
  margin-right: 4rem;
}

.mx-lg {
  margin-inline: 4rem;
}

.p-lg {
  padding: 4rem;
}

.pt-lg {
  padding-top: 4rem;
}

.pb-lg {
  padding-bottom: 4rem;
}

.py-lg {
  padding-block: 4rem;
}

.pl-lg {
  padding-left: 4rem;
}

.pr-lg {
  padding-right: 4rem;
}

.px-lg {
  padding-inline: 4rem;
}

.m-xl {
  margin: 5rem;
}

.mt-xl {
  margin-top: 5rem;
}

.mb-xl {
  margin-bottom: 5rem;
}

.my-xl {
  margin-block: 5rem;
}

.ml-xl {
  margin-left: 5rem;
}

.mr-xl {
  margin-right: 5rem;
}

.mx-xl {
  margin-inline: 5rem;
}

.p-xl {
  padding: 5rem;
}

.pt-xl {
  padding-top: 5rem;
}

.pb-xl {
  padding-bottom: 5rem;
}

.py-xl {
  padding-block: 5rem;
}

.pl-xl {
  padding-left: 5rem;
}

.pr-xl {
  padding-right: 5rem;
}

.px-xl {
  padding-inline: 5rem;
}

.m-xxl {
  margin: 7.5rem;
}

.mt-xxl {
  margin-top: 7.5rem;
}

.mb-xxl {
  margin-bottom: 7.5rem;
}

.my-xxl {
  margin-block: 7.5rem;
}

.ml-xxl {
  margin-left: 7.5rem;
}

.mr-xxl {
  margin-right: 7.5rem;
}

.mx-xxl {
  margin-inline: 7.5rem;
}

.p-xxl {
  padding: 7.5rem;
}

.pt-xxl {
  padding-top: 7.5rem;
}

.pb-xxl {
  padding-bottom: 7.5rem;
}

.py-xxl {
  padding-block: 7.5rem;
}

.pl-xxl {
  padding-left: 7.5rem;
}

.pr-xxl {
  padding-right: 7.5rem;
}

.px-xxl {
  padding-inline: 7.5rem;
}

.m-fluid {
  margin: var(--side-margin);
}

.mt-fluid {
  margin-top: var(--side-margin);
}

.mb-fluid {
  margin-bottom: var(--side-margin);
}

.my-fluid {
  margin-block: var(--side-margin);
}

.ml-fluid {
  margin-left: var(--side-margin);
}

.mr-fluid {
  margin-right: var(--side-margin);
}

.mx-fluid {
  margin-inline: var(--side-margin);
}

.p-fluid {
  padding: var(--side-margin);
}

.pt-fluid {
  padding-top: var(--side-margin);
}

.pb-fluid {
  padding-bottom: var(--side-margin);
}

.py-fluid {
  padding-block: var(--side-margin);
}

.pl-fluid {
  padding-left: var(--side-margin);
}

.pr-fluid {
  padding-right: var(--side-margin);
}

.px-fluid {
  padding-inline: var(--side-margin);
}

@media (max-width: 89.98rem) {
  .xxl-down-m-0 {
    margin: 0;
  }
  .xxl-down-mt-0 {
    margin-top: 0;
  }
  .xxl-down-mb-0 {
    margin-bottom: 0;
  }
  .xxl-down-my-0 {
    margin-block: 0;
  }
  .xxl-down-ml-0 {
    margin-left: 0;
  }
  .xxl-down-mr-0 {
    margin-right: 0;
  }
  .xxl-down-mx-0 {
    margin-inline: 0;
  }
  .xxl-down-p-0 {
    padding: 0;
  }
  .xxl-down-pt-0 {
    padding-top: 0;
  }
  .xxl-down-pb-0 {
    padding-bottom: 0;
  }
  .xxl-down-py-0 {
    padding-block: 0;
  }
  .xxl-down-pl-0 {
    padding-left: 0;
  }
  .xxl-down-pr-0 {
    padding-right: 0;
  }
  .xxl-down-px-0 {
    padding-inline: 0;
  }
  .xxl-down-m-xs {
    margin: 0.5rem;
  }
  .xxl-down-mt-xs {
    margin-top: 0.5rem;
  }
  .xxl-down-mb-xs {
    margin-bottom: 0.5rem;
  }
  .xxl-down-my-xs {
    margin-block: 0.5rem;
  }
  .xxl-down-ml-xs {
    margin-left: 0.5rem;
  }
  .xxl-down-mr-xs {
    margin-right: 0.5rem;
  }
  .xxl-down-mx-xs {
    margin-inline: 0.5rem;
  }
  .xxl-down-p-xs {
    padding: 0.5rem;
  }
  .xxl-down-pt-xs {
    padding-top: 0.5rem;
  }
  .xxl-down-pb-xs {
    padding-bottom: 0.5rem;
  }
  .xxl-down-py-xs {
    padding-block: 0.5rem;
  }
  .xxl-down-pl-xs {
    padding-left: 0.5rem;
  }
  .xxl-down-pr-xs {
    padding-right: 0.5rem;
  }
  .xxl-down-px-xs {
    padding-inline: 0.5rem;
  }
  .xxl-down-m-sm {
    margin: 1rem;
  }
  .xxl-down-mt-sm {
    margin-top: 1rem;
  }
  .xxl-down-mb-sm {
    margin-bottom: 1rem;
  }
  .xxl-down-my-sm {
    margin-block: 1rem;
  }
  .xxl-down-ml-sm {
    margin-left: 1rem;
  }
  .xxl-down-mr-sm {
    margin-right: 1rem;
  }
  .xxl-down-mx-sm {
    margin-inline: 1rem;
  }
  .xxl-down-p-sm {
    padding: 1rem;
  }
  .xxl-down-pt-sm {
    padding-top: 1rem;
  }
  .xxl-down-pb-sm {
    padding-bottom: 1rem;
  }
  .xxl-down-py-sm {
    padding-block: 1rem;
  }
  .xxl-down-pl-sm {
    padding-left: 1rem;
  }
  .xxl-down-pr-sm {
    padding-right: 1rem;
  }
  .xxl-down-px-sm {
    padding-inline: 1rem;
  }
  .xxl-down-m-md {
    margin: 2rem;
  }
  .xxl-down-mt-md {
    margin-top: 2rem;
  }
  .xxl-down-mb-md {
    margin-bottom: 2rem;
  }
  .xxl-down-my-md {
    margin-block: 2rem;
  }
  .xxl-down-ml-md {
    margin-left: 2rem;
  }
  .xxl-down-mr-md {
    margin-right: 2rem;
  }
  .xxl-down-mx-md {
    margin-inline: 2rem;
  }
  .xxl-down-p-md {
    padding: 2rem;
  }
  .xxl-down-pt-md {
    padding-top: 2rem;
  }
  .xxl-down-pb-md {
    padding-bottom: 2rem;
  }
  .xxl-down-py-md {
    padding-block: 2rem;
  }
  .xxl-down-pl-md {
    padding-left: 2rem;
  }
  .xxl-down-pr-md {
    padding-right: 2rem;
  }
  .xxl-down-px-md {
    padding-inline: 2rem;
  }
  .xxl-down-m-lg {
    margin: 4rem;
  }
  .xxl-down-mt-lg {
    margin-top: 4rem;
  }
  .xxl-down-mb-lg {
    margin-bottom: 4rem;
  }
  .xxl-down-my-lg {
    margin-block: 4rem;
  }
  .xxl-down-ml-lg {
    margin-left: 4rem;
  }
  .xxl-down-mr-lg {
    margin-right: 4rem;
  }
  .xxl-down-mx-lg {
    margin-inline: 4rem;
  }
  .xxl-down-p-lg {
    padding: 4rem;
  }
  .xxl-down-pt-lg {
    padding-top: 4rem;
  }
  .xxl-down-pb-lg {
    padding-bottom: 4rem;
  }
  .xxl-down-py-lg {
    padding-block: 4rem;
  }
  .xxl-down-pl-lg {
    padding-left: 4rem;
  }
  .xxl-down-pr-lg {
    padding-right: 4rem;
  }
  .xxl-down-px-lg {
    padding-inline: 4rem;
  }
  .xxl-down-m-xl {
    margin: 5rem;
  }
  .xxl-down-mt-xl {
    margin-top: 5rem;
  }
  .xxl-down-mb-xl {
    margin-bottom: 5rem;
  }
  .xxl-down-my-xl {
    margin-block: 5rem;
  }
  .xxl-down-ml-xl {
    margin-left: 5rem;
  }
  .xxl-down-mr-xl {
    margin-right: 5rem;
  }
  .xxl-down-mx-xl {
    margin-inline: 5rem;
  }
  .xxl-down-p-xl {
    padding: 5rem;
  }
  .xxl-down-pt-xl {
    padding-top: 5rem;
  }
  .xxl-down-pb-xl {
    padding-bottom: 5rem;
  }
  .xxl-down-py-xl {
    padding-block: 5rem;
  }
  .xxl-down-pl-xl {
    padding-left: 5rem;
  }
  .xxl-down-pr-xl {
    padding-right: 5rem;
  }
  .xxl-down-px-xl {
    padding-inline: 5rem;
  }
  .xxl-down-m-xxl {
    margin: 7.5rem;
  }
  .xxl-down-mt-xxl {
    margin-top: 7.5rem;
  }
  .xxl-down-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .xxl-down-my-xxl {
    margin-block: 7.5rem;
  }
  .xxl-down-ml-xxl {
    margin-left: 7.5rem;
  }
  .xxl-down-mr-xxl {
    margin-right: 7.5rem;
  }
  .xxl-down-mx-xxl {
    margin-inline: 7.5rem;
  }
  .xxl-down-p-xxl {
    padding: 7.5rem;
  }
  .xxl-down-pt-xxl {
    padding-top: 7.5rem;
  }
  .xxl-down-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .xxl-down-py-xxl {
    padding-block: 7.5rem;
  }
  .xxl-down-pl-xxl {
    padding-left: 7.5rem;
  }
  .xxl-down-pr-xxl {
    padding-right: 7.5rem;
  }
  .xxl-down-px-xxl {
    padding-inline: 7.5rem;
  }
  .xxl-down-m-fluid {
    margin: var(--side-margin);
  }
  .xxl-down-mt-fluid {
    margin-top: var(--side-margin);
  }
  .xxl-down-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .xxl-down-my-fluid {
    margin-block: var(--side-margin);
  }
  .xxl-down-ml-fluid {
    margin-left: var(--side-margin);
  }
  .xxl-down-mr-fluid {
    margin-right: var(--side-margin);
  }
  .xxl-down-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .xxl-down-p-fluid {
    padding: var(--side-margin);
  }
  .xxl-down-pt-fluid {
    padding-top: var(--side-margin);
  }
  .xxl-down-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .xxl-down-py-fluid {
    padding-block: var(--side-margin);
  }
  .xxl-down-pl-fluid {
    padding-left: var(--side-margin);
  }
  .xxl-down-pr-fluid {
    padding-right: var(--side-margin);
  }
  .xxl-down-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (max-width: 78.98rem) {
  .xl-down-m-0 {
    margin: 0;
  }
  .xl-down-mt-0 {
    margin-top: 0;
  }
  .xl-down-mb-0 {
    margin-bottom: 0;
  }
  .xl-down-my-0 {
    margin-block: 0;
  }
  .xl-down-ml-0 {
    margin-left: 0;
  }
  .xl-down-mr-0 {
    margin-right: 0;
  }
  .xl-down-mx-0 {
    margin-inline: 0;
  }
  .xl-down-p-0 {
    padding: 0;
  }
  .xl-down-pt-0 {
    padding-top: 0;
  }
  .xl-down-pb-0 {
    padding-bottom: 0;
  }
  .xl-down-py-0 {
    padding-block: 0;
  }
  .xl-down-pl-0 {
    padding-left: 0;
  }
  .xl-down-pr-0 {
    padding-right: 0;
  }
  .xl-down-px-0 {
    padding-inline: 0;
  }
  .xl-down-m-xs {
    margin: 0.5rem;
  }
  .xl-down-mt-xs {
    margin-top: 0.5rem;
  }
  .xl-down-mb-xs {
    margin-bottom: 0.5rem;
  }
  .xl-down-my-xs {
    margin-block: 0.5rem;
  }
  .xl-down-ml-xs {
    margin-left: 0.5rem;
  }
  .xl-down-mr-xs {
    margin-right: 0.5rem;
  }
  .xl-down-mx-xs {
    margin-inline: 0.5rem;
  }
  .xl-down-p-xs {
    padding: 0.5rem;
  }
  .xl-down-pt-xs {
    padding-top: 0.5rem;
  }
  .xl-down-pb-xs {
    padding-bottom: 0.5rem;
  }
  .xl-down-py-xs {
    padding-block: 0.5rem;
  }
  .xl-down-pl-xs {
    padding-left: 0.5rem;
  }
  .xl-down-pr-xs {
    padding-right: 0.5rem;
  }
  .xl-down-px-xs {
    padding-inline: 0.5rem;
  }
  .xl-down-m-sm {
    margin: 1rem;
  }
  .xl-down-mt-sm {
    margin-top: 1rem;
  }
  .xl-down-mb-sm {
    margin-bottom: 1rem;
  }
  .xl-down-my-sm {
    margin-block: 1rem;
  }
  .xl-down-ml-sm {
    margin-left: 1rem;
  }
  .xl-down-mr-sm {
    margin-right: 1rem;
  }
  .xl-down-mx-sm {
    margin-inline: 1rem;
  }
  .xl-down-p-sm {
    padding: 1rem;
  }
  .xl-down-pt-sm {
    padding-top: 1rem;
  }
  .xl-down-pb-sm {
    padding-bottom: 1rem;
  }
  .xl-down-py-sm {
    padding-block: 1rem;
  }
  .xl-down-pl-sm {
    padding-left: 1rem;
  }
  .xl-down-pr-sm {
    padding-right: 1rem;
  }
  .xl-down-px-sm {
    padding-inline: 1rem;
  }
  .xl-down-m-md {
    margin: 2rem;
  }
  .xl-down-mt-md {
    margin-top: 2rem;
  }
  .xl-down-mb-md {
    margin-bottom: 2rem;
  }
  .xl-down-my-md {
    margin-block: 2rem;
  }
  .xl-down-ml-md {
    margin-left: 2rem;
  }
  .xl-down-mr-md {
    margin-right: 2rem;
  }
  .xl-down-mx-md {
    margin-inline: 2rem;
  }
  .xl-down-p-md {
    padding: 2rem;
  }
  .xl-down-pt-md {
    padding-top: 2rem;
  }
  .xl-down-pb-md {
    padding-bottom: 2rem;
  }
  .xl-down-py-md {
    padding-block: 2rem;
  }
  .xl-down-pl-md {
    padding-left: 2rem;
  }
  .xl-down-pr-md {
    padding-right: 2rem;
  }
  .xl-down-px-md {
    padding-inline: 2rem;
  }
  .xl-down-m-lg {
    margin: 4rem;
  }
  .xl-down-mt-lg {
    margin-top: 4rem;
  }
  .xl-down-mb-lg {
    margin-bottom: 4rem;
  }
  .xl-down-my-lg {
    margin-block: 4rem;
  }
  .xl-down-ml-lg {
    margin-left: 4rem;
  }
  .xl-down-mr-lg {
    margin-right: 4rem;
  }
  .xl-down-mx-lg {
    margin-inline: 4rem;
  }
  .xl-down-p-lg {
    padding: 4rem;
  }
  .xl-down-pt-lg {
    padding-top: 4rem;
  }
  .xl-down-pb-lg {
    padding-bottom: 4rem;
  }
  .xl-down-py-lg {
    padding-block: 4rem;
  }
  .xl-down-pl-lg {
    padding-left: 4rem;
  }
  .xl-down-pr-lg {
    padding-right: 4rem;
  }
  .xl-down-px-lg {
    padding-inline: 4rem;
  }
  .xl-down-m-xl {
    margin: 5rem;
  }
  .xl-down-mt-xl {
    margin-top: 5rem;
  }
  .xl-down-mb-xl {
    margin-bottom: 5rem;
  }
  .xl-down-my-xl {
    margin-block: 5rem;
  }
  .xl-down-ml-xl {
    margin-left: 5rem;
  }
  .xl-down-mr-xl {
    margin-right: 5rem;
  }
  .xl-down-mx-xl {
    margin-inline: 5rem;
  }
  .xl-down-p-xl {
    padding: 5rem;
  }
  .xl-down-pt-xl {
    padding-top: 5rem;
  }
  .xl-down-pb-xl {
    padding-bottom: 5rem;
  }
  .xl-down-py-xl {
    padding-block: 5rem;
  }
  .xl-down-pl-xl {
    padding-left: 5rem;
  }
  .xl-down-pr-xl {
    padding-right: 5rem;
  }
  .xl-down-px-xl {
    padding-inline: 5rem;
  }
  .xl-down-m-xxl {
    margin: 7.5rem;
  }
  .xl-down-mt-xxl {
    margin-top: 7.5rem;
  }
  .xl-down-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .xl-down-my-xxl {
    margin-block: 7.5rem;
  }
  .xl-down-ml-xxl {
    margin-left: 7.5rem;
  }
  .xl-down-mr-xxl {
    margin-right: 7.5rem;
  }
  .xl-down-mx-xxl {
    margin-inline: 7.5rem;
  }
  .xl-down-p-xxl {
    padding: 7.5rem;
  }
  .xl-down-pt-xxl {
    padding-top: 7.5rem;
  }
  .xl-down-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .xl-down-py-xxl {
    padding-block: 7.5rem;
  }
  .xl-down-pl-xxl {
    padding-left: 7.5rem;
  }
  .xl-down-pr-xxl {
    padding-right: 7.5rem;
  }
  .xl-down-px-xxl {
    padding-inline: 7.5rem;
  }
  .xl-down-m-fluid {
    margin: var(--side-margin);
  }
  .xl-down-mt-fluid {
    margin-top: var(--side-margin);
  }
  .xl-down-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .xl-down-my-fluid {
    margin-block: var(--side-margin);
  }
  .xl-down-ml-fluid {
    margin-left: var(--side-margin);
  }
  .xl-down-mr-fluid {
    margin-right: var(--side-margin);
  }
  .xl-down-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .xl-down-p-fluid {
    padding: var(--side-margin);
  }
  .xl-down-pt-fluid {
    padding-top: var(--side-margin);
  }
  .xl-down-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .xl-down-py-fluid {
    padding-block: var(--side-margin);
  }
  .xl-down-pl-fluid {
    padding-left: var(--side-margin);
  }
  .xl-down-pr-fluid {
    padding-right: var(--side-margin);
  }
  .xl-down-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (max-width: 63.98rem) {
  .lg-down-m-0 {
    margin: 0;
  }
  .lg-down-mt-0 {
    margin-top: 0;
  }
  .lg-down-mb-0 {
    margin-bottom: 0;
  }
  .lg-down-my-0 {
    margin-block: 0;
  }
  .lg-down-ml-0 {
    margin-left: 0;
  }
  .lg-down-mr-0 {
    margin-right: 0;
  }
  .lg-down-mx-0 {
    margin-inline: 0;
  }
  .lg-down-p-0 {
    padding: 0;
  }
  .lg-down-pt-0 {
    padding-top: 0;
  }
  .lg-down-pb-0 {
    padding-bottom: 0;
  }
  .lg-down-py-0 {
    padding-block: 0;
  }
  .lg-down-pl-0 {
    padding-left: 0;
  }
  .lg-down-pr-0 {
    padding-right: 0;
  }
  .lg-down-px-0 {
    padding-inline: 0;
  }
  .lg-down-m-xs {
    margin: 0.5rem;
  }
  .lg-down-mt-xs {
    margin-top: 0.5rem;
  }
  .lg-down-mb-xs {
    margin-bottom: 0.5rem;
  }
  .lg-down-my-xs {
    margin-block: 0.5rem;
  }
  .lg-down-ml-xs {
    margin-left: 0.5rem;
  }
  .lg-down-mr-xs {
    margin-right: 0.5rem;
  }
  .lg-down-mx-xs {
    margin-inline: 0.5rem;
  }
  .lg-down-p-xs {
    padding: 0.5rem;
  }
  .lg-down-pt-xs {
    padding-top: 0.5rem;
  }
  .lg-down-pb-xs {
    padding-bottom: 0.5rem;
  }
  .lg-down-py-xs {
    padding-block: 0.5rem;
  }
  .lg-down-pl-xs {
    padding-left: 0.5rem;
  }
  .lg-down-pr-xs {
    padding-right: 0.5rem;
  }
  .lg-down-px-xs {
    padding-inline: 0.5rem;
  }
  .lg-down-m-sm {
    margin: 1rem;
  }
  .lg-down-mt-sm {
    margin-top: 1rem;
  }
  .lg-down-mb-sm {
    margin-bottom: 1rem;
  }
  .lg-down-my-sm {
    margin-block: 1rem;
  }
  .lg-down-ml-sm {
    margin-left: 1rem;
  }
  .lg-down-mr-sm {
    margin-right: 1rem;
  }
  .lg-down-mx-sm {
    margin-inline: 1rem;
  }
  .lg-down-p-sm {
    padding: 1rem;
  }
  .lg-down-pt-sm {
    padding-top: 1rem;
  }
  .lg-down-pb-sm {
    padding-bottom: 1rem;
  }
  .lg-down-py-sm {
    padding-block: 1rem;
  }
  .lg-down-pl-sm {
    padding-left: 1rem;
  }
  .lg-down-pr-sm {
    padding-right: 1rem;
  }
  .lg-down-px-sm {
    padding-inline: 1rem;
  }
  .lg-down-m-md {
    margin: 2rem;
  }
  .lg-down-mt-md {
    margin-top: 2rem;
  }
  .lg-down-mb-md {
    margin-bottom: 2rem;
  }
  .lg-down-my-md {
    margin-block: 2rem;
  }
  .lg-down-ml-md {
    margin-left: 2rem;
  }
  .lg-down-mr-md {
    margin-right: 2rem;
  }
  .lg-down-mx-md {
    margin-inline: 2rem;
  }
  .lg-down-p-md {
    padding: 2rem;
  }
  .lg-down-pt-md {
    padding-top: 2rem;
  }
  .lg-down-pb-md {
    padding-bottom: 2rem;
  }
  .lg-down-py-md {
    padding-block: 2rem;
  }
  .lg-down-pl-md {
    padding-left: 2rem;
  }
  .lg-down-pr-md {
    padding-right: 2rem;
  }
  .lg-down-px-md {
    padding-inline: 2rem;
  }
  .lg-down-m-lg {
    margin: 4rem;
  }
  .lg-down-mt-lg {
    margin-top: 4rem;
  }
  .lg-down-mb-lg {
    margin-bottom: 4rem;
  }
  .lg-down-my-lg {
    margin-block: 4rem;
  }
  .lg-down-ml-lg {
    margin-left: 4rem;
  }
  .lg-down-mr-lg {
    margin-right: 4rem;
  }
  .lg-down-mx-lg {
    margin-inline: 4rem;
  }
  .lg-down-p-lg {
    padding: 4rem;
  }
  .lg-down-pt-lg {
    padding-top: 4rem;
  }
  .lg-down-pb-lg {
    padding-bottom: 4rem;
  }
  .lg-down-py-lg {
    padding-block: 4rem;
  }
  .lg-down-pl-lg {
    padding-left: 4rem;
  }
  .lg-down-pr-lg {
    padding-right: 4rem;
  }
  .lg-down-px-lg {
    padding-inline: 4rem;
  }
  .lg-down-m-xl {
    margin: 5rem;
  }
  .lg-down-mt-xl {
    margin-top: 5rem;
  }
  .lg-down-mb-xl {
    margin-bottom: 5rem;
  }
  .lg-down-my-xl {
    margin-block: 5rem;
  }
  .lg-down-ml-xl {
    margin-left: 5rem;
  }
  .lg-down-mr-xl {
    margin-right: 5rem;
  }
  .lg-down-mx-xl {
    margin-inline: 5rem;
  }
  .lg-down-p-xl {
    padding: 5rem;
  }
  .lg-down-pt-xl {
    padding-top: 5rem;
  }
  .lg-down-pb-xl {
    padding-bottom: 5rem;
  }
  .lg-down-py-xl {
    padding-block: 5rem;
  }
  .lg-down-pl-xl {
    padding-left: 5rem;
  }
  .lg-down-pr-xl {
    padding-right: 5rem;
  }
  .lg-down-px-xl {
    padding-inline: 5rem;
  }
  .lg-down-m-xxl {
    margin: 7.5rem;
  }
  .lg-down-mt-xxl {
    margin-top: 7.5rem;
  }
  .lg-down-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .lg-down-my-xxl {
    margin-block: 7.5rem;
  }
  .lg-down-ml-xxl {
    margin-left: 7.5rem;
  }
  .lg-down-mr-xxl {
    margin-right: 7.5rem;
  }
  .lg-down-mx-xxl {
    margin-inline: 7.5rem;
  }
  .lg-down-p-xxl {
    padding: 7.5rem;
  }
  .lg-down-pt-xxl {
    padding-top: 7.5rem;
  }
  .lg-down-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .lg-down-py-xxl {
    padding-block: 7.5rem;
  }
  .lg-down-pl-xxl {
    padding-left: 7.5rem;
  }
  .lg-down-pr-xxl {
    padding-right: 7.5rem;
  }
  .lg-down-px-xxl {
    padding-inline: 7.5rem;
  }
  .lg-down-m-fluid {
    margin: var(--side-margin);
  }
  .lg-down-mt-fluid {
    margin-top: var(--side-margin);
  }
  .lg-down-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .lg-down-my-fluid {
    margin-block: var(--side-margin);
  }
  .lg-down-ml-fluid {
    margin-left: var(--side-margin);
  }
  .lg-down-mr-fluid {
    margin-right: var(--side-margin);
  }
  .lg-down-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .lg-down-p-fluid {
    padding: var(--side-margin);
  }
  .lg-down-pt-fluid {
    padding-top: var(--side-margin);
  }
  .lg-down-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .lg-down-py-fluid {
    padding-block: var(--side-margin);
  }
  .lg-down-pl-fluid {
    padding-left: var(--side-margin);
  }
  .lg-down-pr-fluid {
    padding-right: var(--side-margin);
  }
  .lg-down-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (max-width: 47.98rem) {
  .md-down-m-0 {
    margin: 0;
  }
  .md-down-mt-0 {
    margin-top: 0;
  }
  .md-down-mb-0 {
    margin-bottom: 0;
  }
  .md-down-my-0 {
    margin-block: 0;
  }
  .md-down-ml-0 {
    margin-left: 0;
  }
  .md-down-mr-0 {
    margin-right: 0;
  }
  .md-down-mx-0 {
    margin-inline: 0;
  }
  .md-down-p-0 {
    padding: 0;
  }
  .md-down-pt-0 {
    padding-top: 0;
  }
  .md-down-pb-0 {
    padding-bottom: 0;
  }
  .md-down-py-0 {
    padding-block: 0;
  }
  .md-down-pl-0 {
    padding-left: 0;
  }
  .md-down-pr-0 {
    padding-right: 0;
  }
  .md-down-px-0 {
    padding-inline: 0;
  }
  .md-down-m-xs {
    margin: 0.5rem;
  }
  .md-down-mt-xs {
    margin-top: 0.5rem;
  }
  .md-down-mb-xs {
    margin-bottom: 0.5rem;
  }
  .md-down-my-xs {
    margin-block: 0.5rem;
  }
  .md-down-ml-xs {
    margin-left: 0.5rem;
  }
  .md-down-mr-xs {
    margin-right: 0.5rem;
  }
  .md-down-mx-xs {
    margin-inline: 0.5rem;
  }
  .md-down-p-xs {
    padding: 0.5rem;
  }
  .md-down-pt-xs {
    padding-top: 0.5rem;
  }
  .md-down-pb-xs {
    padding-bottom: 0.5rem;
  }
  .md-down-py-xs {
    padding-block: 0.5rem;
  }
  .md-down-pl-xs {
    padding-left: 0.5rem;
  }
  .md-down-pr-xs {
    padding-right: 0.5rem;
  }
  .md-down-px-xs {
    padding-inline: 0.5rem;
  }
  .md-down-m-sm {
    margin: 1rem;
  }
  .md-down-mt-sm {
    margin-top: 1rem;
  }
  .md-down-mb-sm {
    margin-bottom: 1rem;
  }
  .md-down-my-sm {
    margin-block: 1rem;
  }
  .md-down-ml-sm {
    margin-left: 1rem;
  }
  .md-down-mr-sm {
    margin-right: 1rem;
  }
  .md-down-mx-sm {
    margin-inline: 1rem;
  }
  .md-down-p-sm {
    padding: 1rem;
  }
  .md-down-pt-sm {
    padding-top: 1rem;
  }
  .md-down-pb-sm {
    padding-bottom: 1rem;
  }
  .md-down-py-sm {
    padding-block: 1rem;
  }
  .md-down-pl-sm {
    padding-left: 1rem;
  }
  .md-down-pr-sm {
    padding-right: 1rem;
  }
  .md-down-px-sm {
    padding-inline: 1rem;
  }
  .md-down-m-md {
    margin: 2rem;
  }
  .md-down-mt-md {
    margin-top: 2rem;
  }
  .md-down-mb-md {
    margin-bottom: 2rem;
  }
  .md-down-my-md {
    margin-block: 2rem;
  }
  .md-down-ml-md {
    margin-left: 2rem;
  }
  .md-down-mr-md {
    margin-right: 2rem;
  }
  .md-down-mx-md {
    margin-inline: 2rem;
  }
  .md-down-p-md {
    padding: 2rem;
  }
  .md-down-pt-md {
    padding-top: 2rem;
  }
  .md-down-pb-md {
    padding-bottom: 2rem;
  }
  .md-down-py-md {
    padding-block: 2rem;
  }
  .md-down-pl-md {
    padding-left: 2rem;
  }
  .md-down-pr-md {
    padding-right: 2rem;
  }
  .md-down-px-md {
    padding-inline: 2rem;
  }
  .md-down-m-lg {
    margin: 4rem;
  }
  .md-down-mt-lg {
    margin-top: 4rem;
  }
  .md-down-mb-lg {
    margin-bottom: 4rem;
  }
  .md-down-my-lg {
    margin-block: 4rem;
  }
  .md-down-ml-lg {
    margin-left: 4rem;
  }
  .md-down-mr-lg {
    margin-right: 4rem;
  }
  .md-down-mx-lg {
    margin-inline: 4rem;
  }
  .md-down-p-lg {
    padding: 4rem;
  }
  .md-down-pt-lg {
    padding-top: 4rem;
  }
  .md-down-pb-lg {
    padding-bottom: 4rem;
  }
  .md-down-py-lg {
    padding-block: 4rem;
  }
  .md-down-pl-lg {
    padding-left: 4rem;
  }
  .md-down-pr-lg {
    padding-right: 4rem;
  }
  .md-down-px-lg {
    padding-inline: 4rem;
  }
  .md-down-m-xl {
    margin: 5rem;
  }
  .md-down-mt-xl {
    margin-top: 5rem;
  }
  .md-down-mb-xl {
    margin-bottom: 5rem;
  }
  .md-down-my-xl {
    margin-block: 5rem;
  }
  .md-down-ml-xl {
    margin-left: 5rem;
  }
  .md-down-mr-xl {
    margin-right: 5rem;
  }
  .md-down-mx-xl {
    margin-inline: 5rem;
  }
  .md-down-p-xl {
    padding: 5rem;
  }
  .md-down-pt-xl {
    padding-top: 5rem;
  }
  .md-down-pb-xl {
    padding-bottom: 5rem;
  }
  .md-down-py-xl {
    padding-block: 5rem;
  }
  .md-down-pl-xl {
    padding-left: 5rem;
  }
  .md-down-pr-xl {
    padding-right: 5rem;
  }
  .md-down-px-xl {
    padding-inline: 5rem;
  }
  .md-down-m-xxl {
    margin: 7.5rem;
  }
  .md-down-mt-xxl {
    margin-top: 7.5rem;
  }
  .md-down-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .md-down-my-xxl {
    margin-block: 7.5rem;
  }
  .md-down-ml-xxl {
    margin-left: 7.5rem;
  }
  .md-down-mr-xxl {
    margin-right: 7.5rem;
  }
  .md-down-mx-xxl {
    margin-inline: 7.5rem;
  }
  .md-down-p-xxl {
    padding: 7.5rem;
  }
  .md-down-pt-xxl {
    padding-top: 7.5rem;
  }
  .md-down-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .md-down-py-xxl {
    padding-block: 7.5rem;
  }
  .md-down-pl-xxl {
    padding-left: 7.5rem;
  }
  .md-down-pr-xxl {
    padding-right: 7.5rem;
  }
  .md-down-px-xxl {
    padding-inline: 7.5rem;
  }
  .md-down-m-fluid {
    margin: var(--side-margin);
  }
  .md-down-mt-fluid {
    margin-top: var(--side-margin);
  }
  .md-down-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .md-down-my-fluid {
    margin-block: var(--side-margin);
  }
  .md-down-ml-fluid {
    margin-left: var(--side-margin);
  }
  .md-down-mr-fluid {
    margin-right: var(--side-margin);
  }
  .md-down-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .md-down-p-fluid {
    padding: var(--side-margin);
  }
  .md-down-pt-fluid {
    padding-top: var(--side-margin);
  }
  .md-down-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .md-down-py-fluid {
    padding-block: var(--side-margin);
  }
  .md-down-pl-fluid {
    padding-left: var(--side-margin);
  }
  .md-down-pr-fluid {
    padding-right: var(--side-margin);
  }
  .md-down-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (max-width: 35.98rem) {
  .sm-down-m-0 {
    margin: 0;
  }
  .sm-down-mt-0 {
    margin-top: 0;
  }
  .sm-down-mb-0 {
    margin-bottom: 0;
  }
  .sm-down-my-0 {
    margin-block: 0;
  }
  .sm-down-ml-0 {
    margin-left: 0;
  }
  .sm-down-mr-0 {
    margin-right: 0;
  }
  .sm-down-mx-0 {
    margin-inline: 0;
  }
  .sm-down-p-0 {
    padding: 0;
  }
  .sm-down-pt-0 {
    padding-top: 0;
  }
  .sm-down-pb-0 {
    padding-bottom: 0;
  }
  .sm-down-py-0 {
    padding-block: 0;
  }
  .sm-down-pl-0 {
    padding-left: 0;
  }
  .sm-down-pr-0 {
    padding-right: 0;
  }
  .sm-down-px-0 {
    padding-inline: 0;
  }
  .sm-down-m-xs {
    margin: 0.5rem;
  }
  .sm-down-mt-xs {
    margin-top: 0.5rem;
  }
  .sm-down-mb-xs {
    margin-bottom: 0.5rem;
  }
  .sm-down-my-xs {
    margin-block: 0.5rem;
  }
  .sm-down-ml-xs {
    margin-left: 0.5rem;
  }
  .sm-down-mr-xs {
    margin-right: 0.5rem;
  }
  .sm-down-mx-xs {
    margin-inline: 0.5rem;
  }
  .sm-down-p-xs {
    padding: 0.5rem;
  }
  .sm-down-pt-xs {
    padding-top: 0.5rem;
  }
  .sm-down-pb-xs {
    padding-bottom: 0.5rem;
  }
  .sm-down-py-xs {
    padding-block: 0.5rem;
  }
  .sm-down-pl-xs {
    padding-left: 0.5rem;
  }
  .sm-down-pr-xs {
    padding-right: 0.5rem;
  }
  .sm-down-px-xs {
    padding-inline: 0.5rem;
  }
  .sm-down-m-sm {
    margin: 1rem;
  }
  .sm-down-mt-sm {
    margin-top: 1rem;
  }
  .sm-down-mb-sm {
    margin-bottom: 1rem;
  }
  .sm-down-my-sm {
    margin-block: 1rem;
  }
  .sm-down-ml-sm {
    margin-left: 1rem;
  }
  .sm-down-mr-sm {
    margin-right: 1rem;
  }
  .sm-down-mx-sm {
    margin-inline: 1rem;
  }
  .sm-down-p-sm {
    padding: 1rem;
  }
  .sm-down-pt-sm {
    padding-top: 1rem;
  }
  .sm-down-pb-sm {
    padding-bottom: 1rem;
  }
  .sm-down-py-sm {
    padding-block: 1rem;
  }
  .sm-down-pl-sm {
    padding-left: 1rem;
  }
  .sm-down-pr-sm {
    padding-right: 1rem;
  }
  .sm-down-px-sm {
    padding-inline: 1rem;
  }
  .sm-down-m-md {
    margin: 2rem;
  }
  .sm-down-mt-md {
    margin-top: 2rem;
  }
  .sm-down-mb-md {
    margin-bottom: 2rem;
  }
  .sm-down-my-md {
    margin-block: 2rem;
  }
  .sm-down-ml-md {
    margin-left: 2rem;
  }
  .sm-down-mr-md {
    margin-right: 2rem;
  }
  .sm-down-mx-md {
    margin-inline: 2rem;
  }
  .sm-down-p-md {
    padding: 2rem;
  }
  .sm-down-pt-md {
    padding-top: 2rem;
  }
  .sm-down-pb-md {
    padding-bottom: 2rem;
  }
  .sm-down-py-md {
    padding-block: 2rem;
  }
  .sm-down-pl-md {
    padding-left: 2rem;
  }
  .sm-down-pr-md {
    padding-right: 2rem;
  }
  .sm-down-px-md {
    padding-inline: 2rem;
  }
  .sm-down-m-lg {
    margin: 4rem;
  }
  .sm-down-mt-lg {
    margin-top: 4rem;
  }
  .sm-down-mb-lg {
    margin-bottom: 4rem;
  }
  .sm-down-my-lg {
    margin-block: 4rem;
  }
  .sm-down-ml-lg {
    margin-left: 4rem;
  }
  .sm-down-mr-lg {
    margin-right: 4rem;
  }
  .sm-down-mx-lg {
    margin-inline: 4rem;
  }
  .sm-down-p-lg {
    padding: 4rem;
  }
  .sm-down-pt-lg {
    padding-top: 4rem;
  }
  .sm-down-pb-lg {
    padding-bottom: 4rem;
  }
  .sm-down-py-lg {
    padding-block: 4rem;
  }
  .sm-down-pl-lg {
    padding-left: 4rem;
  }
  .sm-down-pr-lg {
    padding-right: 4rem;
  }
  .sm-down-px-lg {
    padding-inline: 4rem;
  }
  .sm-down-m-xl {
    margin: 5rem;
  }
  .sm-down-mt-xl {
    margin-top: 5rem;
  }
  .sm-down-mb-xl {
    margin-bottom: 5rem;
  }
  .sm-down-my-xl {
    margin-block: 5rem;
  }
  .sm-down-ml-xl {
    margin-left: 5rem;
  }
  .sm-down-mr-xl {
    margin-right: 5rem;
  }
  .sm-down-mx-xl {
    margin-inline: 5rem;
  }
  .sm-down-p-xl {
    padding: 5rem;
  }
  .sm-down-pt-xl {
    padding-top: 5rem;
  }
  .sm-down-pb-xl {
    padding-bottom: 5rem;
  }
  .sm-down-py-xl {
    padding-block: 5rem;
  }
  .sm-down-pl-xl {
    padding-left: 5rem;
  }
  .sm-down-pr-xl {
    padding-right: 5rem;
  }
  .sm-down-px-xl {
    padding-inline: 5rem;
  }
  .sm-down-m-xxl {
    margin: 7.5rem;
  }
  .sm-down-mt-xxl {
    margin-top: 7.5rem;
  }
  .sm-down-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .sm-down-my-xxl {
    margin-block: 7.5rem;
  }
  .sm-down-ml-xxl {
    margin-left: 7.5rem;
  }
  .sm-down-mr-xxl {
    margin-right: 7.5rem;
  }
  .sm-down-mx-xxl {
    margin-inline: 7.5rem;
  }
  .sm-down-p-xxl {
    padding: 7.5rem;
  }
  .sm-down-pt-xxl {
    padding-top: 7.5rem;
  }
  .sm-down-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .sm-down-py-xxl {
    padding-block: 7.5rem;
  }
  .sm-down-pl-xxl {
    padding-left: 7.5rem;
  }
  .sm-down-pr-xxl {
    padding-right: 7.5rem;
  }
  .sm-down-px-xxl {
    padding-inline: 7.5rem;
  }
  .sm-down-m-fluid {
    margin: var(--side-margin);
  }
  .sm-down-mt-fluid {
    margin-top: var(--side-margin);
  }
  .sm-down-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .sm-down-my-fluid {
    margin-block: var(--side-margin);
  }
  .sm-down-ml-fluid {
    margin-left: var(--side-margin);
  }
  .sm-down-mr-fluid {
    margin-right: var(--side-margin);
  }
  .sm-down-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .sm-down-p-fluid {
    padding: var(--side-margin);
  }
  .sm-down-pt-fluid {
    padding-top: var(--side-margin);
  }
  .sm-down-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .sm-down-py-fluid {
    padding-block: var(--side-margin);
  }
  .sm-down-pl-fluid {
    padding-left: var(--side-margin);
  }
  .sm-down-pr-fluid {
    padding-right: var(--side-margin);
  }
  .sm-down-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (min-width: 36rem) {
  .sm-up-m-0 {
    margin: 0;
  }
  .sm-up-mt-0 {
    margin-top: 0;
  }
  .sm-up-mb-0 {
    margin-bottom: 0;
  }
  .sm-up-my-0 {
    margin-block: 0;
  }
  .sm-up-ml-0 {
    margin-left: 0;
  }
  .sm-up-mr-0 {
    margin-right: 0;
  }
  .sm-up-mx-0 {
    margin-inline: 0;
  }
  .sm-up-p-0 {
    padding: 0;
  }
  .sm-up-pt-0 {
    padding-top: 0;
  }
  .sm-up-pb-0 {
    padding-bottom: 0;
  }
  .sm-up-py-0 {
    padding-block: 0;
  }
  .sm-up-pl-0 {
    padding-left: 0;
  }
  .sm-up-pr-0 {
    padding-right: 0;
  }
  .sm-up-px-0 {
    padding-inline: 0;
  }
  .sm-up-m-xs {
    margin: 0.5rem;
  }
  .sm-up-mt-xs {
    margin-top: 0.5rem;
  }
  .sm-up-mb-xs {
    margin-bottom: 0.5rem;
  }
  .sm-up-my-xs {
    margin-block: 0.5rem;
  }
  .sm-up-ml-xs {
    margin-left: 0.5rem;
  }
  .sm-up-mr-xs {
    margin-right: 0.5rem;
  }
  .sm-up-mx-xs {
    margin-inline: 0.5rem;
  }
  .sm-up-p-xs {
    padding: 0.5rem;
  }
  .sm-up-pt-xs {
    padding-top: 0.5rem;
  }
  .sm-up-pb-xs {
    padding-bottom: 0.5rem;
  }
  .sm-up-py-xs {
    padding-block: 0.5rem;
  }
  .sm-up-pl-xs {
    padding-left: 0.5rem;
  }
  .sm-up-pr-xs {
    padding-right: 0.5rem;
  }
  .sm-up-px-xs {
    padding-inline: 0.5rem;
  }
  .sm-up-m-sm {
    margin: 1rem;
  }
  .sm-up-mt-sm {
    margin-top: 1rem;
  }
  .sm-up-mb-sm {
    margin-bottom: 1rem;
  }
  .sm-up-my-sm {
    margin-block: 1rem;
  }
  .sm-up-ml-sm {
    margin-left: 1rem;
  }
  .sm-up-mr-sm {
    margin-right: 1rem;
  }
  .sm-up-mx-sm {
    margin-inline: 1rem;
  }
  .sm-up-p-sm {
    padding: 1rem;
  }
  .sm-up-pt-sm {
    padding-top: 1rem;
  }
  .sm-up-pb-sm {
    padding-bottom: 1rem;
  }
  .sm-up-py-sm {
    padding-block: 1rem;
  }
  .sm-up-pl-sm {
    padding-left: 1rem;
  }
  .sm-up-pr-sm {
    padding-right: 1rem;
  }
  .sm-up-px-sm {
    padding-inline: 1rem;
  }
  .sm-up-m-md {
    margin: 2rem;
  }
  .sm-up-mt-md {
    margin-top: 2rem;
  }
  .sm-up-mb-md {
    margin-bottom: 2rem;
  }
  .sm-up-my-md {
    margin-block: 2rem;
  }
  .sm-up-ml-md {
    margin-left: 2rem;
  }
  .sm-up-mr-md {
    margin-right: 2rem;
  }
  .sm-up-mx-md {
    margin-inline: 2rem;
  }
  .sm-up-p-md {
    padding: 2rem;
  }
  .sm-up-pt-md {
    padding-top: 2rem;
  }
  .sm-up-pb-md {
    padding-bottom: 2rem;
  }
  .sm-up-py-md {
    padding-block: 2rem;
  }
  .sm-up-pl-md {
    padding-left: 2rem;
  }
  .sm-up-pr-md {
    padding-right: 2rem;
  }
  .sm-up-px-md {
    padding-inline: 2rem;
  }
  .sm-up-m-lg {
    margin: 4rem;
  }
  .sm-up-mt-lg {
    margin-top: 4rem;
  }
  .sm-up-mb-lg {
    margin-bottom: 4rem;
  }
  .sm-up-my-lg {
    margin-block: 4rem;
  }
  .sm-up-ml-lg {
    margin-left: 4rem;
  }
  .sm-up-mr-lg {
    margin-right: 4rem;
  }
  .sm-up-mx-lg {
    margin-inline: 4rem;
  }
  .sm-up-p-lg {
    padding: 4rem;
  }
  .sm-up-pt-lg {
    padding-top: 4rem;
  }
  .sm-up-pb-lg {
    padding-bottom: 4rem;
  }
  .sm-up-py-lg {
    padding-block: 4rem;
  }
  .sm-up-pl-lg {
    padding-left: 4rem;
  }
  .sm-up-pr-lg {
    padding-right: 4rem;
  }
  .sm-up-px-lg {
    padding-inline: 4rem;
  }
  .sm-up-m-xl {
    margin: 5rem;
  }
  .sm-up-mt-xl {
    margin-top: 5rem;
  }
  .sm-up-mb-xl {
    margin-bottom: 5rem;
  }
  .sm-up-my-xl {
    margin-block: 5rem;
  }
  .sm-up-ml-xl {
    margin-left: 5rem;
  }
  .sm-up-mr-xl {
    margin-right: 5rem;
  }
  .sm-up-mx-xl {
    margin-inline: 5rem;
  }
  .sm-up-p-xl {
    padding: 5rem;
  }
  .sm-up-pt-xl {
    padding-top: 5rem;
  }
  .sm-up-pb-xl {
    padding-bottom: 5rem;
  }
  .sm-up-py-xl {
    padding-block: 5rem;
  }
  .sm-up-pl-xl {
    padding-left: 5rem;
  }
  .sm-up-pr-xl {
    padding-right: 5rem;
  }
  .sm-up-px-xl {
    padding-inline: 5rem;
  }
  .sm-up-m-xxl {
    margin: 7.5rem;
  }
  .sm-up-mt-xxl {
    margin-top: 7.5rem;
  }
  .sm-up-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .sm-up-my-xxl {
    margin-block: 7.5rem;
  }
  .sm-up-ml-xxl {
    margin-left: 7.5rem;
  }
  .sm-up-mr-xxl {
    margin-right: 7.5rem;
  }
  .sm-up-mx-xxl {
    margin-inline: 7.5rem;
  }
  .sm-up-p-xxl {
    padding: 7.5rem;
  }
  .sm-up-pt-xxl {
    padding-top: 7.5rem;
  }
  .sm-up-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .sm-up-py-xxl {
    padding-block: 7.5rem;
  }
  .sm-up-pl-xxl {
    padding-left: 7.5rem;
  }
  .sm-up-pr-xxl {
    padding-right: 7.5rem;
  }
  .sm-up-px-xxl {
    padding-inline: 7.5rem;
  }
  .sm-up-m-fluid {
    margin: var(--side-margin);
  }
  .sm-up-mt-fluid {
    margin-top: var(--side-margin);
  }
  .sm-up-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .sm-up-my-fluid {
    margin-block: var(--side-margin);
  }
  .sm-up-ml-fluid {
    margin-left: var(--side-margin);
  }
  .sm-up-mr-fluid {
    margin-right: var(--side-margin);
  }
  .sm-up-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .sm-up-p-fluid {
    padding: var(--side-margin);
  }
  .sm-up-pt-fluid {
    padding-top: var(--side-margin);
  }
  .sm-up-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .sm-up-py-fluid {
    padding-block: var(--side-margin);
  }
  .sm-up-pl-fluid {
    padding-left: var(--side-margin);
  }
  .sm-up-pr-fluid {
    padding-right: var(--side-margin);
  }
  .sm-up-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (min-width: 48rem) {
  .md-up-m-0 {
    margin: 0;
  }
  .md-up-mt-0 {
    margin-top: 0;
  }
  .md-up-mb-0 {
    margin-bottom: 0;
  }
  .md-up-my-0 {
    margin-block: 0;
  }
  .md-up-ml-0 {
    margin-left: 0;
  }
  .md-up-mr-0 {
    margin-right: 0;
  }
  .md-up-mx-0 {
    margin-inline: 0;
  }
  .md-up-p-0 {
    padding: 0;
  }
  .md-up-pt-0 {
    padding-top: 0;
  }
  .md-up-pb-0 {
    padding-bottom: 0;
  }
  .md-up-py-0 {
    padding-block: 0;
  }
  .md-up-pl-0 {
    padding-left: 0;
  }
  .md-up-pr-0 {
    padding-right: 0;
  }
  .md-up-px-0 {
    padding-inline: 0;
  }
  .md-up-m-xs {
    margin: 0.5rem;
  }
  .md-up-mt-xs {
    margin-top: 0.5rem;
  }
  .md-up-mb-xs {
    margin-bottom: 0.5rem;
  }
  .md-up-my-xs {
    margin-block: 0.5rem;
  }
  .md-up-ml-xs {
    margin-left: 0.5rem;
  }
  .md-up-mr-xs {
    margin-right: 0.5rem;
  }
  .md-up-mx-xs {
    margin-inline: 0.5rem;
  }
  .md-up-p-xs {
    padding: 0.5rem;
  }
  .md-up-pt-xs {
    padding-top: 0.5rem;
  }
  .md-up-pb-xs {
    padding-bottom: 0.5rem;
  }
  .md-up-py-xs {
    padding-block: 0.5rem;
  }
  .md-up-pl-xs {
    padding-left: 0.5rem;
  }
  .md-up-pr-xs {
    padding-right: 0.5rem;
  }
  .md-up-px-xs {
    padding-inline: 0.5rem;
  }
  .md-up-m-sm {
    margin: 1rem;
  }
  .md-up-mt-sm {
    margin-top: 1rem;
  }
  .md-up-mb-sm {
    margin-bottom: 1rem;
  }
  .md-up-my-sm {
    margin-block: 1rem;
  }
  .md-up-ml-sm {
    margin-left: 1rem;
  }
  .md-up-mr-sm {
    margin-right: 1rem;
  }
  .md-up-mx-sm {
    margin-inline: 1rem;
  }
  .md-up-p-sm {
    padding: 1rem;
  }
  .md-up-pt-sm {
    padding-top: 1rem;
  }
  .md-up-pb-sm {
    padding-bottom: 1rem;
  }
  .md-up-py-sm {
    padding-block: 1rem;
  }
  .md-up-pl-sm {
    padding-left: 1rem;
  }
  .md-up-pr-sm {
    padding-right: 1rem;
  }
  .md-up-px-sm {
    padding-inline: 1rem;
  }
  .md-up-m-md {
    margin: 2rem;
  }
  .md-up-mt-md {
    margin-top: 2rem;
  }
  .md-up-mb-md {
    margin-bottom: 2rem;
  }
  .md-up-my-md {
    margin-block: 2rem;
  }
  .md-up-ml-md {
    margin-left: 2rem;
  }
  .md-up-mr-md {
    margin-right: 2rem;
  }
  .md-up-mx-md {
    margin-inline: 2rem;
  }
  .md-up-p-md {
    padding: 2rem;
  }
  .md-up-pt-md {
    padding-top: 2rem;
  }
  .md-up-pb-md {
    padding-bottom: 2rem;
  }
  .md-up-py-md {
    padding-block: 2rem;
  }
  .md-up-pl-md {
    padding-left: 2rem;
  }
  .md-up-pr-md {
    padding-right: 2rem;
  }
  .md-up-px-md {
    padding-inline: 2rem;
  }
  .md-up-m-lg {
    margin: 4rem;
  }
  .md-up-mt-lg {
    margin-top: 4rem;
  }
  .md-up-mb-lg {
    margin-bottom: 4rem;
  }
  .md-up-my-lg {
    margin-block: 4rem;
  }
  .md-up-ml-lg {
    margin-left: 4rem;
  }
  .md-up-mr-lg {
    margin-right: 4rem;
  }
  .md-up-mx-lg {
    margin-inline: 4rem;
  }
  .md-up-p-lg {
    padding: 4rem;
  }
  .md-up-pt-lg {
    padding-top: 4rem;
  }
  .md-up-pb-lg {
    padding-bottom: 4rem;
  }
  .md-up-py-lg {
    padding-block: 4rem;
  }
  .md-up-pl-lg {
    padding-left: 4rem;
  }
  .md-up-pr-lg {
    padding-right: 4rem;
  }
  .md-up-px-lg {
    padding-inline: 4rem;
  }
  .md-up-m-xl {
    margin: 5rem;
  }
  .md-up-mt-xl {
    margin-top: 5rem;
  }
  .md-up-mb-xl {
    margin-bottom: 5rem;
  }
  .md-up-my-xl {
    margin-block: 5rem;
  }
  .md-up-ml-xl {
    margin-left: 5rem;
  }
  .md-up-mr-xl {
    margin-right: 5rem;
  }
  .md-up-mx-xl {
    margin-inline: 5rem;
  }
  .md-up-p-xl {
    padding: 5rem;
  }
  .md-up-pt-xl {
    padding-top: 5rem;
  }
  .md-up-pb-xl {
    padding-bottom: 5rem;
  }
  .md-up-py-xl {
    padding-block: 5rem;
  }
  .md-up-pl-xl {
    padding-left: 5rem;
  }
  .md-up-pr-xl {
    padding-right: 5rem;
  }
  .md-up-px-xl {
    padding-inline: 5rem;
  }
  .md-up-m-xxl {
    margin: 7.5rem;
  }
  .md-up-mt-xxl {
    margin-top: 7.5rem;
  }
  .md-up-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .md-up-my-xxl {
    margin-block: 7.5rem;
  }
  .md-up-ml-xxl {
    margin-left: 7.5rem;
  }
  .md-up-mr-xxl {
    margin-right: 7.5rem;
  }
  .md-up-mx-xxl {
    margin-inline: 7.5rem;
  }
  .md-up-p-xxl {
    padding: 7.5rem;
  }
  .md-up-pt-xxl {
    padding-top: 7.5rem;
  }
  .md-up-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .md-up-py-xxl {
    padding-block: 7.5rem;
  }
  .md-up-pl-xxl {
    padding-left: 7.5rem;
  }
  .md-up-pr-xxl {
    padding-right: 7.5rem;
  }
  .md-up-px-xxl {
    padding-inline: 7.5rem;
  }
  .md-up-m-fluid {
    margin: var(--side-margin);
  }
  .md-up-mt-fluid {
    margin-top: var(--side-margin);
  }
  .md-up-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .md-up-my-fluid {
    margin-block: var(--side-margin);
  }
  .md-up-ml-fluid {
    margin-left: var(--side-margin);
  }
  .md-up-mr-fluid {
    margin-right: var(--side-margin);
  }
  .md-up-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .md-up-p-fluid {
    padding: var(--side-margin);
  }
  .md-up-pt-fluid {
    padding-top: var(--side-margin);
  }
  .md-up-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .md-up-py-fluid {
    padding-block: var(--side-margin);
  }
  .md-up-pl-fluid {
    padding-left: var(--side-margin);
  }
  .md-up-pr-fluid {
    padding-right: var(--side-margin);
  }
  .md-up-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (min-width: 64rem) {
  .lg-up-m-0 {
    margin: 0;
  }
  .lg-up-mt-0 {
    margin-top: 0;
  }
  .lg-up-mb-0 {
    margin-bottom: 0;
  }
  .lg-up-my-0 {
    margin-block: 0;
  }
  .lg-up-ml-0 {
    margin-left: 0;
  }
  .lg-up-mr-0 {
    margin-right: 0;
  }
  .lg-up-mx-0 {
    margin-inline: 0;
  }
  .lg-up-p-0 {
    padding: 0;
  }
  .lg-up-pt-0 {
    padding-top: 0;
  }
  .lg-up-pb-0 {
    padding-bottom: 0;
  }
  .lg-up-py-0 {
    padding-block: 0;
  }
  .lg-up-pl-0 {
    padding-left: 0;
  }
  .lg-up-pr-0 {
    padding-right: 0;
  }
  .lg-up-px-0 {
    padding-inline: 0;
  }
  .lg-up-m-xs {
    margin: 0.5rem;
  }
  .lg-up-mt-xs {
    margin-top: 0.5rem;
  }
  .lg-up-mb-xs {
    margin-bottom: 0.5rem;
  }
  .lg-up-my-xs {
    margin-block: 0.5rem;
  }
  .lg-up-ml-xs {
    margin-left: 0.5rem;
  }
  .lg-up-mr-xs {
    margin-right: 0.5rem;
  }
  .lg-up-mx-xs {
    margin-inline: 0.5rem;
  }
  .lg-up-p-xs {
    padding: 0.5rem;
  }
  .lg-up-pt-xs {
    padding-top: 0.5rem;
  }
  .lg-up-pb-xs {
    padding-bottom: 0.5rem;
  }
  .lg-up-py-xs {
    padding-block: 0.5rem;
  }
  .lg-up-pl-xs {
    padding-left: 0.5rem;
  }
  .lg-up-pr-xs {
    padding-right: 0.5rem;
  }
  .lg-up-px-xs {
    padding-inline: 0.5rem;
  }
  .lg-up-m-sm {
    margin: 1rem;
  }
  .lg-up-mt-sm {
    margin-top: 1rem;
  }
  .lg-up-mb-sm {
    margin-bottom: 1rem;
  }
  .lg-up-my-sm {
    margin-block: 1rem;
  }
  .lg-up-ml-sm {
    margin-left: 1rem;
  }
  .lg-up-mr-sm {
    margin-right: 1rem;
  }
  .lg-up-mx-sm {
    margin-inline: 1rem;
  }
  .lg-up-p-sm {
    padding: 1rem;
  }
  .lg-up-pt-sm {
    padding-top: 1rem;
  }
  .lg-up-pb-sm {
    padding-bottom: 1rem;
  }
  .lg-up-py-sm {
    padding-block: 1rem;
  }
  .lg-up-pl-sm {
    padding-left: 1rem;
  }
  .lg-up-pr-sm {
    padding-right: 1rem;
  }
  .lg-up-px-sm {
    padding-inline: 1rem;
  }
  .lg-up-m-md {
    margin: 2rem;
  }
  .lg-up-mt-md {
    margin-top: 2rem;
  }
  .lg-up-mb-md {
    margin-bottom: 2rem;
  }
  .lg-up-my-md {
    margin-block: 2rem;
  }
  .lg-up-ml-md {
    margin-left: 2rem;
  }
  .lg-up-mr-md {
    margin-right: 2rem;
  }
  .lg-up-mx-md {
    margin-inline: 2rem;
  }
  .lg-up-p-md {
    padding: 2rem;
  }
  .lg-up-pt-md {
    padding-top: 2rem;
  }
  .lg-up-pb-md {
    padding-bottom: 2rem;
  }
  .lg-up-py-md {
    padding-block: 2rem;
  }
  .lg-up-pl-md {
    padding-left: 2rem;
  }
  .lg-up-pr-md {
    padding-right: 2rem;
  }
  .lg-up-px-md {
    padding-inline: 2rem;
  }
  .lg-up-m-lg {
    margin: 4rem;
  }
  .lg-up-mt-lg {
    margin-top: 4rem;
  }
  .lg-up-mb-lg {
    margin-bottom: 4rem;
  }
  .lg-up-my-lg {
    margin-block: 4rem;
  }
  .lg-up-ml-lg {
    margin-left: 4rem;
  }
  .lg-up-mr-lg {
    margin-right: 4rem;
  }
  .lg-up-mx-lg {
    margin-inline: 4rem;
  }
  .lg-up-p-lg {
    padding: 4rem;
  }
  .lg-up-pt-lg {
    padding-top: 4rem;
  }
  .lg-up-pb-lg {
    padding-bottom: 4rem;
  }
  .lg-up-py-lg {
    padding-block: 4rem;
  }
  .lg-up-pl-lg {
    padding-left: 4rem;
  }
  .lg-up-pr-lg {
    padding-right: 4rem;
  }
  .lg-up-px-lg {
    padding-inline: 4rem;
  }
  .lg-up-m-xl {
    margin: 5rem;
  }
  .lg-up-mt-xl {
    margin-top: 5rem;
  }
  .lg-up-mb-xl {
    margin-bottom: 5rem;
  }
  .lg-up-my-xl {
    margin-block: 5rem;
  }
  .lg-up-ml-xl {
    margin-left: 5rem;
  }
  .lg-up-mr-xl {
    margin-right: 5rem;
  }
  .lg-up-mx-xl {
    margin-inline: 5rem;
  }
  .lg-up-p-xl {
    padding: 5rem;
  }
  .lg-up-pt-xl {
    padding-top: 5rem;
  }
  .lg-up-pb-xl {
    padding-bottom: 5rem;
  }
  .lg-up-py-xl {
    padding-block: 5rem;
  }
  .lg-up-pl-xl {
    padding-left: 5rem;
  }
  .lg-up-pr-xl {
    padding-right: 5rem;
  }
  .lg-up-px-xl {
    padding-inline: 5rem;
  }
  .lg-up-m-xxl {
    margin: 7.5rem;
  }
  .lg-up-mt-xxl {
    margin-top: 7.5rem;
  }
  .lg-up-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .lg-up-my-xxl {
    margin-block: 7.5rem;
  }
  .lg-up-ml-xxl {
    margin-left: 7.5rem;
  }
  .lg-up-mr-xxl {
    margin-right: 7.5rem;
  }
  .lg-up-mx-xxl {
    margin-inline: 7.5rem;
  }
  .lg-up-p-xxl {
    padding: 7.5rem;
  }
  .lg-up-pt-xxl {
    padding-top: 7.5rem;
  }
  .lg-up-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .lg-up-py-xxl {
    padding-block: 7.5rem;
  }
  .lg-up-pl-xxl {
    padding-left: 7.5rem;
  }
  .lg-up-pr-xxl {
    padding-right: 7.5rem;
  }
  .lg-up-px-xxl {
    padding-inline: 7.5rem;
  }
  .lg-up-m-fluid {
    margin: var(--side-margin);
  }
  .lg-up-mt-fluid {
    margin-top: var(--side-margin);
  }
  .lg-up-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .lg-up-my-fluid {
    margin-block: var(--side-margin);
  }
  .lg-up-ml-fluid {
    margin-left: var(--side-margin);
  }
  .lg-up-mr-fluid {
    margin-right: var(--side-margin);
  }
  .lg-up-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .lg-up-p-fluid {
    padding: var(--side-margin);
  }
  .lg-up-pt-fluid {
    padding-top: var(--side-margin);
  }
  .lg-up-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .lg-up-py-fluid {
    padding-block: var(--side-margin);
  }
  .lg-up-pl-fluid {
    padding-left: var(--side-margin);
  }
  .lg-up-pr-fluid {
    padding-right: var(--side-margin);
  }
  .lg-up-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (min-width: 79rem) {
  .xl-up-m-0 {
    margin: 0;
  }
  .xl-up-mt-0 {
    margin-top: 0;
  }
  .xl-up-mb-0 {
    margin-bottom: 0;
  }
  .xl-up-my-0 {
    margin-block: 0;
  }
  .xl-up-ml-0 {
    margin-left: 0;
  }
  .xl-up-mr-0 {
    margin-right: 0;
  }
  .xl-up-mx-0 {
    margin-inline: 0;
  }
  .xl-up-p-0 {
    padding: 0;
  }
  .xl-up-pt-0 {
    padding-top: 0;
  }
  .xl-up-pb-0 {
    padding-bottom: 0;
  }
  .xl-up-py-0 {
    padding-block: 0;
  }
  .xl-up-pl-0 {
    padding-left: 0;
  }
  .xl-up-pr-0 {
    padding-right: 0;
  }
  .xl-up-px-0 {
    padding-inline: 0;
  }
  .xl-up-m-xs {
    margin: 0.5rem;
  }
  .xl-up-mt-xs {
    margin-top: 0.5rem;
  }
  .xl-up-mb-xs {
    margin-bottom: 0.5rem;
  }
  .xl-up-my-xs {
    margin-block: 0.5rem;
  }
  .xl-up-ml-xs {
    margin-left: 0.5rem;
  }
  .xl-up-mr-xs {
    margin-right: 0.5rem;
  }
  .xl-up-mx-xs {
    margin-inline: 0.5rem;
  }
  .xl-up-p-xs {
    padding: 0.5rem;
  }
  .xl-up-pt-xs {
    padding-top: 0.5rem;
  }
  .xl-up-pb-xs {
    padding-bottom: 0.5rem;
  }
  .xl-up-py-xs {
    padding-block: 0.5rem;
  }
  .xl-up-pl-xs {
    padding-left: 0.5rem;
  }
  .xl-up-pr-xs {
    padding-right: 0.5rem;
  }
  .xl-up-px-xs {
    padding-inline: 0.5rem;
  }
  .xl-up-m-sm {
    margin: 1rem;
  }
  .xl-up-mt-sm {
    margin-top: 1rem;
  }
  .xl-up-mb-sm {
    margin-bottom: 1rem;
  }
  .xl-up-my-sm {
    margin-block: 1rem;
  }
  .xl-up-ml-sm {
    margin-left: 1rem;
  }
  .xl-up-mr-sm {
    margin-right: 1rem;
  }
  .xl-up-mx-sm {
    margin-inline: 1rem;
  }
  .xl-up-p-sm {
    padding: 1rem;
  }
  .xl-up-pt-sm {
    padding-top: 1rem;
  }
  .xl-up-pb-sm {
    padding-bottom: 1rem;
  }
  .xl-up-py-sm {
    padding-block: 1rem;
  }
  .xl-up-pl-sm {
    padding-left: 1rem;
  }
  .xl-up-pr-sm {
    padding-right: 1rem;
  }
  .xl-up-px-sm {
    padding-inline: 1rem;
  }
  .xl-up-m-md {
    margin: 2rem;
  }
  .xl-up-mt-md {
    margin-top: 2rem;
  }
  .xl-up-mb-md {
    margin-bottom: 2rem;
  }
  .xl-up-my-md {
    margin-block: 2rem;
  }
  .xl-up-ml-md {
    margin-left: 2rem;
  }
  .xl-up-mr-md {
    margin-right: 2rem;
  }
  .xl-up-mx-md {
    margin-inline: 2rem;
  }
  .xl-up-p-md {
    padding: 2rem;
  }
  .xl-up-pt-md {
    padding-top: 2rem;
  }
  .xl-up-pb-md {
    padding-bottom: 2rem;
  }
  .xl-up-py-md {
    padding-block: 2rem;
  }
  .xl-up-pl-md {
    padding-left: 2rem;
  }
  .xl-up-pr-md {
    padding-right: 2rem;
  }
  .xl-up-px-md {
    padding-inline: 2rem;
  }
  .xl-up-m-lg {
    margin: 4rem;
  }
  .xl-up-mt-lg {
    margin-top: 4rem;
  }
  .xl-up-mb-lg {
    margin-bottom: 4rem;
  }
  .xl-up-my-lg {
    margin-block: 4rem;
  }
  .xl-up-ml-lg {
    margin-left: 4rem;
  }
  .xl-up-mr-lg {
    margin-right: 4rem;
  }
  .xl-up-mx-lg {
    margin-inline: 4rem;
  }
  .xl-up-p-lg {
    padding: 4rem;
  }
  .xl-up-pt-lg {
    padding-top: 4rem;
  }
  .xl-up-pb-lg {
    padding-bottom: 4rem;
  }
  .xl-up-py-lg {
    padding-block: 4rem;
  }
  .xl-up-pl-lg {
    padding-left: 4rem;
  }
  .xl-up-pr-lg {
    padding-right: 4rem;
  }
  .xl-up-px-lg {
    padding-inline: 4rem;
  }
  .xl-up-m-xl {
    margin: 5rem;
  }
  .xl-up-mt-xl {
    margin-top: 5rem;
  }
  .xl-up-mb-xl {
    margin-bottom: 5rem;
  }
  .xl-up-my-xl {
    margin-block: 5rem;
  }
  .xl-up-ml-xl {
    margin-left: 5rem;
  }
  .xl-up-mr-xl {
    margin-right: 5rem;
  }
  .xl-up-mx-xl {
    margin-inline: 5rem;
  }
  .xl-up-p-xl {
    padding: 5rem;
  }
  .xl-up-pt-xl {
    padding-top: 5rem;
  }
  .xl-up-pb-xl {
    padding-bottom: 5rem;
  }
  .xl-up-py-xl {
    padding-block: 5rem;
  }
  .xl-up-pl-xl {
    padding-left: 5rem;
  }
  .xl-up-pr-xl {
    padding-right: 5rem;
  }
  .xl-up-px-xl {
    padding-inline: 5rem;
  }
  .xl-up-m-xxl {
    margin: 7.5rem;
  }
  .xl-up-mt-xxl {
    margin-top: 7.5rem;
  }
  .xl-up-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .xl-up-my-xxl {
    margin-block: 7.5rem;
  }
  .xl-up-ml-xxl {
    margin-left: 7.5rem;
  }
  .xl-up-mr-xxl {
    margin-right: 7.5rem;
  }
  .xl-up-mx-xxl {
    margin-inline: 7.5rem;
  }
  .xl-up-p-xxl {
    padding: 7.5rem;
  }
  .xl-up-pt-xxl {
    padding-top: 7.5rem;
  }
  .xl-up-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .xl-up-py-xxl {
    padding-block: 7.5rem;
  }
  .xl-up-pl-xxl {
    padding-left: 7.5rem;
  }
  .xl-up-pr-xxl {
    padding-right: 7.5rem;
  }
  .xl-up-px-xxl {
    padding-inline: 7.5rem;
  }
  .xl-up-m-fluid {
    margin: var(--side-margin);
  }
  .xl-up-mt-fluid {
    margin-top: var(--side-margin);
  }
  .xl-up-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .xl-up-my-fluid {
    margin-block: var(--side-margin);
  }
  .xl-up-ml-fluid {
    margin-left: var(--side-margin);
  }
  .xl-up-mr-fluid {
    margin-right: var(--side-margin);
  }
  .xl-up-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .xl-up-p-fluid {
    padding: var(--side-margin);
  }
  .xl-up-pt-fluid {
    padding-top: var(--side-margin);
  }
  .xl-up-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .xl-up-py-fluid {
    padding-block: var(--side-margin);
  }
  .xl-up-pl-fluid {
    padding-left: var(--side-margin);
  }
  .xl-up-pr-fluid {
    padding-right: var(--side-margin);
  }
  .xl-up-px-fluid {
    padding-inline: var(--side-margin);
  }
}
@media (min-width: 90rem) {
  .xxl-up-m-0 {
    margin: 0;
  }
  .xxl-up-mt-0 {
    margin-top: 0;
  }
  .xxl-up-mb-0 {
    margin-bottom: 0;
  }
  .xxl-up-my-0 {
    margin-block: 0;
  }
  .xxl-up-ml-0 {
    margin-left: 0;
  }
  .xxl-up-mr-0 {
    margin-right: 0;
  }
  .xxl-up-mx-0 {
    margin-inline: 0;
  }
  .xxl-up-p-0 {
    padding: 0;
  }
  .xxl-up-pt-0 {
    padding-top: 0;
  }
  .xxl-up-pb-0 {
    padding-bottom: 0;
  }
  .xxl-up-py-0 {
    padding-block: 0;
  }
  .xxl-up-pl-0 {
    padding-left: 0;
  }
  .xxl-up-pr-0 {
    padding-right: 0;
  }
  .xxl-up-px-0 {
    padding-inline: 0;
  }
  .xxl-up-m-xs {
    margin: 0.5rem;
  }
  .xxl-up-mt-xs {
    margin-top: 0.5rem;
  }
  .xxl-up-mb-xs {
    margin-bottom: 0.5rem;
  }
  .xxl-up-my-xs {
    margin-block: 0.5rem;
  }
  .xxl-up-ml-xs {
    margin-left: 0.5rem;
  }
  .xxl-up-mr-xs {
    margin-right: 0.5rem;
  }
  .xxl-up-mx-xs {
    margin-inline: 0.5rem;
  }
  .xxl-up-p-xs {
    padding: 0.5rem;
  }
  .xxl-up-pt-xs {
    padding-top: 0.5rem;
  }
  .xxl-up-pb-xs {
    padding-bottom: 0.5rem;
  }
  .xxl-up-py-xs {
    padding-block: 0.5rem;
  }
  .xxl-up-pl-xs {
    padding-left: 0.5rem;
  }
  .xxl-up-pr-xs {
    padding-right: 0.5rem;
  }
  .xxl-up-px-xs {
    padding-inline: 0.5rem;
  }
  .xxl-up-m-sm {
    margin: 1rem;
  }
  .xxl-up-mt-sm {
    margin-top: 1rem;
  }
  .xxl-up-mb-sm {
    margin-bottom: 1rem;
  }
  .xxl-up-my-sm {
    margin-block: 1rem;
  }
  .xxl-up-ml-sm {
    margin-left: 1rem;
  }
  .xxl-up-mr-sm {
    margin-right: 1rem;
  }
  .xxl-up-mx-sm {
    margin-inline: 1rem;
  }
  .xxl-up-p-sm {
    padding: 1rem;
  }
  .xxl-up-pt-sm {
    padding-top: 1rem;
  }
  .xxl-up-pb-sm {
    padding-bottom: 1rem;
  }
  .xxl-up-py-sm {
    padding-block: 1rem;
  }
  .xxl-up-pl-sm {
    padding-left: 1rem;
  }
  .xxl-up-pr-sm {
    padding-right: 1rem;
  }
  .xxl-up-px-sm {
    padding-inline: 1rem;
  }
  .xxl-up-m-md {
    margin: 2rem;
  }
  .xxl-up-mt-md {
    margin-top: 2rem;
  }
  .xxl-up-mb-md {
    margin-bottom: 2rem;
  }
  .xxl-up-my-md {
    margin-block: 2rem;
  }
  .xxl-up-ml-md {
    margin-left: 2rem;
  }
  .xxl-up-mr-md {
    margin-right: 2rem;
  }
  .xxl-up-mx-md {
    margin-inline: 2rem;
  }
  .xxl-up-p-md {
    padding: 2rem;
  }
  .xxl-up-pt-md {
    padding-top: 2rem;
  }
  .xxl-up-pb-md {
    padding-bottom: 2rem;
  }
  .xxl-up-py-md {
    padding-block: 2rem;
  }
  .xxl-up-pl-md {
    padding-left: 2rem;
  }
  .xxl-up-pr-md {
    padding-right: 2rem;
  }
  .xxl-up-px-md {
    padding-inline: 2rem;
  }
  .xxl-up-m-lg {
    margin: 4rem;
  }
  .xxl-up-mt-lg {
    margin-top: 4rem;
  }
  .xxl-up-mb-lg {
    margin-bottom: 4rem;
  }
  .xxl-up-my-lg {
    margin-block: 4rem;
  }
  .xxl-up-ml-lg {
    margin-left: 4rem;
  }
  .xxl-up-mr-lg {
    margin-right: 4rem;
  }
  .xxl-up-mx-lg {
    margin-inline: 4rem;
  }
  .xxl-up-p-lg {
    padding: 4rem;
  }
  .xxl-up-pt-lg {
    padding-top: 4rem;
  }
  .xxl-up-pb-lg {
    padding-bottom: 4rem;
  }
  .xxl-up-py-lg {
    padding-block: 4rem;
  }
  .xxl-up-pl-lg {
    padding-left: 4rem;
  }
  .xxl-up-pr-lg {
    padding-right: 4rem;
  }
  .xxl-up-px-lg {
    padding-inline: 4rem;
  }
  .xxl-up-m-xl {
    margin: 5rem;
  }
  .xxl-up-mt-xl {
    margin-top: 5rem;
  }
  .xxl-up-mb-xl {
    margin-bottom: 5rem;
  }
  .xxl-up-my-xl {
    margin-block: 5rem;
  }
  .xxl-up-ml-xl {
    margin-left: 5rem;
  }
  .xxl-up-mr-xl {
    margin-right: 5rem;
  }
  .xxl-up-mx-xl {
    margin-inline: 5rem;
  }
  .xxl-up-p-xl {
    padding: 5rem;
  }
  .xxl-up-pt-xl {
    padding-top: 5rem;
  }
  .xxl-up-pb-xl {
    padding-bottom: 5rem;
  }
  .xxl-up-py-xl {
    padding-block: 5rem;
  }
  .xxl-up-pl-xl {
    padding-left: 5rem;
  }
  .xxl-up-pr-xl {
    padding-right: 5rem;
  }
  .xxl-up-px-xl {
    padding-inline: 5rem;
  }
  .xxl-up-m-xxl {
    margin: 7.5rem;
  }
  .xxl-up-mt-xxl {
    margin-top: 7.5rem;
  }
  .xxl-up-mb-xxl {
    margin-bottom: 7.5rem;
  }
  .xxl-up-my-xxl {
    margin-block: 7.5rem;
  }
  .xxl-up-ml-xxl {
    margin-left: 7.5rem;
  }
  .xxl-up-mr-xxl {
    margin-right: 7.5rem;
  }
  .xxl-up-mx-xxl {
    margin-inline: 7.5rem;
  }
  .xxl-up-p-xxl {
    padding: 7.5rem;
  }
  .xxl-up-pt-xxl {
    padding-top: 7.5rem;
  }
  .xxl-up-pb-xxl {
    padding-bottom: 7.5rem;
  }
  .xxl-up-py-xxl {
    padding-block: 7.5rem;
  }
  .xxl-up-pl-xxl {
    padding-left: 7.5rem;
  }
  .xxl-up-pr-xxl {
    padding-right: 7.5rem;
  }
  .xxl-up-px-xxl {
    padding-inline: 7.5rem;
  }
  .xxl-up-m-fluid {
    margin: var(--side-margin);
  }
  .xxl-up-mt-fluid {
    margin-top: var(--side-margin);
  }
  .xxl-up-mb-fluid {
    margin-bottom: var(--side-margin);
  }
  .xxl-up-my-fluid {
    margin-block: var(--side-margin);
  }
  .xxl-up-ml-fluid {
    margin-left: var(--side-margin);
  }
  .xxl-up-mr-fluid {
    margin-right: var(--side-margin);
  }
  .xxl-up-mx-fluid {
    margin-inline: var(--side-margin);
  }
  .xxl-up-p-fluid {
    padding: var(--side-margin);
  }
  .xxl-up-pt-fluid {
    padding-top: var(--side-margin);
  }
  .xxl-up-pb-fluid {
    padding-bottom: var(--side-margin);
  }
  .xxl-up-py-fluid {
    padding-block: var(--side-margin);
  }
  .xxl-up-pl-fluid {
    padding-left: var(--side-margin);
  }
  .xxl-up-pr-fluid {
    padding-right: var(--side-margin);
  }
  .xxl-up-px-fluid {
    padding-inline: var(--side-margin);
  }
}
/*
|
| BACKGROUND COLORS
|----------------
|
*/
.bg-black {
  background-color: #000;
}

.bg-white {
  background-color: #fff;
}

.bg-blue {
  background-color: #000066;
}

.bg-orange {
  background-color: #D26F4E;
}

.bg-dark-blue {
  background-color: #191943;
}

.bg-environnement {
  background-color: #00a3a4;
}

.bg-construction {
  background-color: #ff931e;
}

.bg-reemploi {
  background-color: #d26f4e;
}

.bg-revaloriation {
  background-color: #7ca8fe;
}

.bg-energie {
  background-color: #56ccab;
}

.bg-foncier {
  background-color: #4cebee;
}

/*
|
| TEXT ALIGNS
|----------------
|
*/
/*
|
| FONT FAMILIES
|----------------
|
*/
/*
|
| FONT SIZES
|----------------
|
*/
/*
|
| FONT WEIGHTS
|----------------
|
*/
/*
|
| TITLES
|----------------
|
*/
/*
|
| COLORS
|----------------
|
*/
.c-black {
  color: #000;
}

.c-white {
  color: #fff;
}

.c-blue {
  color: #000066;
}

.c-orange {
  color: #D26F4E;
}

.c-dark-blue {
  color: #191943;
}

.c-environnement {
  color: #00a3a4;
}

.c-construction {
  color: #ff931e;
}

.c-reemploi {
  color: #d26f4e;
}

.c-revaloriation {
  color: #7ca8fe;
}

.c-energie {
  color: #56ccab;
}

.c-foncier {
  color: #4cebee;
}

/**
 * Swiper 11.2.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 3, 2025
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

:root {
  --header-height: 112px;
  --side-margin: clamp(20px, 3.5vw, 70px);
  --container-width: 81rem;
}

@font-face {
  font-family: "futura pt";
  src: url(../fonts/futura-pt/400.woff2) format("woff2");
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "futura pt";
  src: url(../fonts/futura-pt/600.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
  font-stretch: normal;
}
* {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

hr {
  border: 0;
}

button,
input,
select,
textarea {
  border: 0;
  border-radius: 0;
  background-color: transparent;
  appearance: none;
  letter-spacing: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
}

a,
button,
select,
input,
textarea {
  color: inherit;
}

a,
button {
  cursor: pointer;
}

button {
  text-transform: inherit;
}

a {
  text-decoration: none;
}

ol li,
ul li {
  list-style-type: none;
}

ul {
  margin: 0;
  padding: 0;
}
ul li {
  list-style-type: none;
}

[hidden] {
  display: none !important;
}

html,
body {
  scroll-behavior: smooth;
}
@media (hover: hover) {
  html,
  body {
    overscroll-behavior: none;
  }
}

body {
  color: #000066;
  display: flex;
  min-height: 100dvh;
  flex-direction: column;
  font-family: futura pt, sans-serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
@media (min-width: 64rem) {
  body::before {
    position: fixed;
    inset: 0;
    z-index: 998;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.5s ease;
  }
  body:has(.submenu:is([data-state=opening], [data-state=opened]))::before {
    opacity: 1;
  }
}

.wrapper {
  flex: 1 1 auto;
  margin-top: -8.45rem;
}

.quick-access {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  justify-content: center;
  align-items: center;
  pointer-events: none;
}
.quick-access:not(:focus-within) {
  opacity: 0;
}
.quick-access-link:not(:focus-visible) {
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
}

.icon {
  display: inline-block;
  width: 1em;
  min-width: 1em;
  height: 1em;
  min-height: 1em;
  fill: none;
}
.icon [fill] {
  fill: currentColor;
}
.icon [stroke] {
  stroke: currentColor;
}

.screen-reader-text {
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
}

.cms p:not(:first-child),
.cms ul:not(:first-child),
.cms ol:not(:first-child),
.cms h1:not(:first-child),
.cms h2:not(:first-child),
.cms h3:not(:first-child),
.cms h4:not(:first-child),
.cms h5:not(:first-child),
.cms h6:not(:first-child),
.cms table:not(:first-child) {
  margin-top: 0.8rem;
}
.cms p:not(:last-child) {
  margin-bottom: 0.8rem;
}
.cms img {
  display: block;
  width: 100%;
  height: auto;
}
.cms ul:not([class]),
.cms ol:not([class]) {
  padding-left: 1.25em;
}
.cms ul:not([class]) li:not(:first-child),
.cms ol:not([class]) li:not(:first-child) {
  margin-top: 0.25em;
}
.cms ul:not([class]) li {
  list-style: disc;
}
.cms ul:not([class]) li ul li {
  list-style: circle;
}
.cms ol:not([class]) li {
  list-style: decimal;
}
.cms a:not([class]) {
  text-decoration: underline;
}
.cms table th,
.cms table td {
  padding-block: 0.25rem;
}
.cms table th:not(:last-child),
.cms table td:not(:last-child) {
  padding-right: 1rem;
}

.swiper-button-disabled {
  opacity: 0.5;
}

.rel {
  position: relative;
}

.full {
  margin-left: 0;
  margin-right: 0;
  width: 100%;
}

.indent {
  text-indent: 1.5rem;
}

.grid-item {
  display: grid;
}

.m-a {
  margin: auto;
}

.txt-c {
  text-align: center;
}

.tt-u {
  text-transform: uppercase;
}

.c-w {
  color: #fff;
}

.z3 {
  z-index: 3;
}

.d-g {
  display: grid;
}

.w-100 {
  width: 100%;
}

.h-100 {
  height: 100%;
}

.gx-md {
  --gx: 3.75rem;
}

.gy-md {
  --gy: 4rem;
}
@media (max-width: 63.98rem) {
  .gy-md {
    --gy: 1.5rem;
  }
}

.p-r {
  position: relative;
}

.al-b {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.a-c {
  display: flex;
  align-items: center;
}

.gx-12 {
  --gx: 12rem;
}
@media (max-width: 78.98rem) {
  .gx-12 {
    --gx: 6rem;
  }
}
@media (max-width: 63.98rem) {
  .gx-12 {
    --gx: 0rem;
  }
}

.ml-a {
  margin-left: auto;
  display: flex;
  gap: 1rem;
}

.fade-in-up {
  opacity: 0;
}

.content-image {
  width: 100%;
  overflow: hidden;
}
.content-image .img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.flex-column-reverse {
  display: flex;
  flex-direction: column-reverse;
}

@media (min-width: 64rem) {
  .flex-lg-row {
    flex-direction: row;
  }
}
.simple-link {
  font-weight: 600;
  font-size: 0.875rem;
  letter-spacing: 0.02625rem;
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  color: #fff;
  text-transform: uppercase;
}
.simple-link svg {
  margin-right: 5px;
}

.screen-reader-text {
  display: none;
}

.no-pad {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

.no-marge {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 47.98rem) {
  .no-marge-mob {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
hr {
  height: 1px;
  width: 100%;
  margin: 30px 0;
  background-color: black;
}

.dflex {
  display: flex;
  vertical-align: middle;
  align-items: center;
}

.disp-desk {
  display: block !important;
}
@media (max-width: 47.98rem) {
  .disp-desk {
    display: none !important;
  }
}

.disp-mob {
  display: none !important;
}
@media (max-width: 47.98rem) {
  .disp-mob {
    display: block !important;
  }
}

.disp-mob-lg {
  display: none !important;
}
@media (max-width: 63.98rem) {
  .disp-mob-lg {
    display: block !important;
  }
}

.al-rc {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (max-width: 47.98rem) {
  .al-rc {
    display: block;
  }
}

.al-rb {
  display: flex;
  justify-content: flex-end;
  align-items: end;
}
@media (max-width: 47.98rem) {
  .al-rb {
    display: block;
  }
}

.cms h1,
.title-h1 {
  font-size: 5rem;
  font-weight: 600;
  line-height: 5rem;
  text-transform: uppercase;
}
@media (max-width: 78.98rem) {
  .cms h1,
  .title-h1 {
    font-size: 4rem;
    line-height: 120%;
  }
}
@media (max-width: 63.98rem) {
  .cms h1,
  .title-h1 {
    font-size: 3rem;
    line-height: 120%;
  }
}
@media (max-width: 35.98rem) {
  .cms h1,
  .title-h1 {
    font-size: 2rem;
  }
}

.cms h2,
.title-h2 {
  color: #000066;
  font-size: 3rem;
  line-height: 120%;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 47.98rem) {
  .cms h2,
  .title-h2 {
    font-size: 1.8rem;
    line-height: 120%;
  }
}

.title-h2-alt {
  color: #000066;
  font-size: 2.25rem;
  line-height: 120%;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 47.98rem) {
  .title-h2-alt {
    font-size: 1.8rem;
    line-height: 120%;
  }
}

.cms h3,
.title-h3 {
  color: #000066;
  font-size: 1.6875rem;
  line-height: 2.3125rem;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 47.98rem) {
  .cms h3,
  .title-h3 {
    font-size: 1.4rem;
    line-height: 1;
  }
}

/**
 * Swiper 11.2.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 3, 2025
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none; /* For Firefox */
  -ms-overflow-style: none; /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.button {
  color: #fff;
  background-color: #000066;
  display: inline-flex;
  transition: all ease 0.4s;
  position: relative;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.5rem;
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
  border-top-left-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem;
  padding: 0.65rem 1.5rem;
  border: 1px solid #000066;
}
.button:hover {
  color: #000066;
  background-color: #fff;
}
.button.btn_tra {
  border: 1px solid #fff;
  background: transparent;
}
.button.btn_tra:after {
  content: none;
}
.button.btn_tra:hover {
  opacity: 1;
  color: #fff;
  background-color: #000066;
  transition: all ease 0.4s;
  border: 1px solid #000066;
}
.button.btn_white {
  color: #000066;
  border: 1.01px solid var(--E5E5E5, #e5e5e5);
  background: #fff;
}
.button.btn_white:after {
  content: none;
}
.button.btn_white:hover {
  opacity: 1;
  transition: all ease 0.4s;
  border: 1px solid #000066;
}
.button.btn_alt {
  border: none;
  background: rgba(232, 232, 232, 0.24);
  backdrop-filter: blur(15.5555553436px);
}
.button.btn_alt:after {
  content: none;
}
.button.btn_alt:hover {
  opacity: 1;
  color: #fff;
  background-color: #000066;
  transition: all ease 0.4s;
}

.post-card .image-content {
  width: 100%;
  height: auto;
  aspect-ratio: 1.7839;
  overflow: hidden;
  display: block;
  position: relative;
}
.post-card .image-content svg {
  right: -1px;
  bottom: -1px;
  position: absolute;
}
.post-card .image-content .post-card-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform ease 0.5s;
}
.post-card .image-content .post-card-tag {
  position: absolute;
  left: 0rem;
  top: 0rem;
}
.post-card .image-content .post-card-tag span {
  padding: 0.7rem 0.7rem;
  color: #fff;
  font-size: 0.875rem;
  line-height: 130%;
  text-transform: uppercase;
  display: block;
  font-weight: 600;
}
.post-card .post-card-details {
  opacity: 0.4;
  font-size: 0.875rem;
  display: block;
}
.post-card .post-card-details .post-card-cat,
.post-card .post-card-details .post-card-date {
  display: block;
  display: inline-block;
  vertical-align: middle;
}
.post-card .post-card-details .post-card-date span {
  padding: 0 0.4rem;
  display: inline-block;
}
.post-card .post-card-title {
  color: #000066;
  font-size: 1.1875rem;
  font-weight: 600;
  text-transform: uppercase;
  display: block;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.post-card .post-file {
  color: #000066;
  display: block;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 150%;
  text-transform: uppercase;
  text-decoration: underline;
}
.post-card:hover .image-content img {
  transform: scale(1.04);
  transition: transform ease 0.8s;
}

form {
  position: relative;
}
form .input, form .ginput_container_text input, form .ginput_container_email input, form .ginput_container_phone input, form .ginput_container_select select, form .ginput_container_textarea textarea {
  display: block;
  width: 100%;
}
form .radio, form .ginput_container_radio .gchoice,
form .checkbox,
form .ginput_container_checkbox .gchoice {
  display: inline-flex;
  align-items: flex-start;
}
form .radio-input, form .ginput_container_radio input,
form .checkbox-input,
form .ginput_container_checkbox input {
  display: flex;
  min-width: 1rem;
  aspect-ratio: 1/1;
  border: 1px solid;
  margin-top: 0.25rem;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
form .radio-input::before, form .ginput_container_radio input::before,
form .checkbox-input::before,
form .ginput_container_checkbox input::before {
  display: block;
  content: "";
  color: transparent;
}
form .radio-input:checked::before, form .ginput_container_radio input:checked::before,
form .checkbox-input:checked::before,
form .ginput_container_checkbox input:checked::before {
  color: currentColor;
}
form .radio-label, form .ginput_container_radio label,
form .checkbox-label,
form .ginput_container_checkbox label {
  padding-left: 0.5rem;
}
form .radio-input, form .ginput_container_radio input {
  padding: 0.125rem;
  border-radius: 100%;
}
form .radio-input::before, form .ginput_container_radio input::before {
  height: 100%;
  aspect-ratio: 1/1;
  border-radius: inherit;
  background-color: currentColor;
  scale: 0;
}
form .radio-input:checked::before, form .ginput_container_radio input:checked::before {
  scale: 1;
  transition: scale 0.2s ease;
}
form .checkbox-input::before, form .ginput_container_checkbox input::before {
  width: 0.375em;
  height: 0.625em;
  border-width: 0 2px 2px 0;
  border-style: solid;
  border-color: currentColor;
  transform: rotate(45deg);
  transform-origin: 80% 50%;
}
form .checkbox-input:checked::before, form .ginput_container_checkbox input:checked::before {
  animation: checkmark 0.25s ease forwards;
}
form .gform_submission_error {
  background-color: #f00;
  color: #fff;
}
form .gform_fields {
  display: grid;
  gap: 1.5rem 1rem;
}
form .gform_footer {
  display: flex;
  margin-top: 1.5rem;
  align-items: center;
  gap: 0.5rem;
}
form .gform_link {
  text-decoration: underline;
}
form .gform-loader {
  display: block;
  width: 1.5rem;
  aspect-ratio: 1/1;
  border: 2px solid rgba(0, 0, 102, 0.1);
  border-radius: 100%;
  border-top-color: #000066;
  animation: spin 1s linear infinite;
}
@media (min-width: 64rem) {
  form .gform_fields {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media (max-width: 63.98rem) {
  form .gform_fields {
    grid-template-columns: 100%;
  }
}
form .gfield {
  position: relative;
}
form .gfield:is(fieldset) {
  border: none;
}
form .gfield:is(fieldset) legend {
  width: 0;
  height: 0;
  position: absolute;
  overflow: hidden;
}
form .gfield_label {
  display: block;
}
form .gfield--type-captcha form .gfield_label {
  display: none;
}
form .gfield_required,
form .gfield .instruction, form .gfield_validation_message {
  color: #d50f00;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4375rem;
}
form .gfield_radio, form .gfield_checkbox {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media (min-width: 64rem) {
  form .gfield--width-full {
    grid-column: span 12;
  }
  form .gfield--width-half {
    grid-column: span 6;
  }
  form .gfield--width-third {
    grid-column: span 4;
  }
  form .gfield--width-quarter {
    grid-column: span 3;
  }
}
form .gfield--type-html {
  font-size: 0.9375rem;
}
form .gfield--type-honeypot {
  display: none;
}
form .ginput_container_consent {
  display: flex;
  color: #000066;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
}
form .ginput_container_consent input[type=checkbox] {
  display: flex;
  min-width: 1rem;
  aspect-ratio: 1;
  padding: 2px;
  border: 1.5px solid #000066;
  color: transparent;
  cursor: pointer;
  height: 16px;
  margin-top: 6px;
}
form .ginput_container_consent input[type=checkbox]::before {
  width: 100%;
  aspect-ratio: 1;
  background-color: currentColor;
  content: "";
}
form .ginput_container_consent input[type=checkbox]:checked {
  color: #000066;
}
form .ginput_container_consent input[type=checkbox] + label {
  font-size: 1rem;
  padding-left: 0.5rem;
  margin-top: 0.0625rem;
}
form .ginput_container_consent a {
  text-decoration: underline;
}
form .gform_submission_error {
  background-color: #f00;
  color: #d50f00;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.4375rem;
  padding: 1.5rem 1rem;
  background: #fdf3f2;
  display: flex;
  margin-bottom: 20px;
}
form button[type=submit] {
  width: 100%;
  text-align: center;
  display: block;
  padding: 1rem;
}
form button[type=submit] span {
  margin: 10px auto;
}
form .ginput_container_text input, form .ginput_container_email input, form .ginput_container_phone input, form .ginput_container_select select, form .ginput_container_textarea textarea {
  padding: 1rem 1.25rem;
  border: 1px solid #000066;
  outline: none;
}
.gfield_error form .ginput_container_text input, .gfield_error form .ginput_container_email input, .gfield_error form .ginput_container_phone input, .gfield_error form .ginput_container_select select, .gfield_error form .ginput_container_textarea textarea {
  border-color: #f00;
}

form .ginput_container_select {
  position: relative;
}
form .ginput_container_select select {
  padding-right: 1.625rem;
}
form .ginput_container_select::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  position: absolute;
  top: 46%;
  right: 1.5rem;
  transform: translateY(-50%) rotate(225deg);
  border-width: 4px;
  border-style: solid;
  border-color: #000066 transparent transparent #000066;
  pointer-events: none;
}
form .ginput_container_textarea textarea {
  height: calc(9em + 2px);
  min-height: calc(1.5em + 2px);
  resize: vertical;
}
form .gfield_label {
  margin-bottom: 0.75rem;
}
@keyframes checkmark {
  0% {
    clip-path: polygon(0 calc(100% - 2px), 0 calc(100% - 2px), 0 calc(100% - 2px), 0 100%, 0 100%, 0 100%);
  }
  30% {
    clip-path: polygon(0 calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), 100% 100%, 100% 100%, 0 100%);
  }
  100% {
    clip-path: polygon(0 calc(100% - 2px), calc(100% - 2px) calc(100% - 2px), calc(100% - 2px) 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes spin {
  to {
    rotate: 360deg;
  }
}

.gform_heading,
.gform_required_legend {
  display: none;
}

.modal {
  display: flex;
  position: fixed;
  inset: 0;
  z-index: 1000;
  background-color: rgba(0, 0, 0, 0.9);
  padding: var(--side-margin);
  overflow: auto;
  transition: background-color 0.5s ease;
}
.modal-inner {
  padding: var(--side-margin);
  margin: auto;
  background-color: #FFF;
  color: #000;
  transition: opacity 0.5s ease, transform 0.5s ease;
}
[role=dialog] > .modal-inner {
  width: 100%;
  max-width: 54rem;
}

[role=alertdialog] > .modal-inner {
  width: fit-content;
}

.modal[inert] {
  background-color: rgba(0, 0, 0, 0);
}
.modal[inert] .modal-inner {
  opacity: 0;
  transform: translateY(var(--side-margin));
}

.pagination {
  margin: 3rem auto 0 auto;
  width: fit-content;
}
@media (max-width: 47.98rem) {
  .pagination {
    margin: 1rem auto 0 auto;
  }
}
.pagination, .pagination-list {
  display: flex;
  align-items: center;
  gap: 1rem;
}
@media (max-width: 63.98rem) {
  .pagination, .pagination-list {
    gap: 0.3rem;
  }
}
@media (max-width: 47.98rem) {
  .pagination, .pagination-list {
    gap: 0.2rem;
  }
}
.pagination-arrow {
  vertical-align: middle;
  align-items: center;
  display: flex;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid #000066;
  border-radius: 10rem;
}
@media (max-width: 35.98rem) {
  .pagination-arrow {
    width: 1.7rem;
    height: 1.7rem;
  }
}
.pagination .icon {
  margin: auto;
}
.pagination .icon path {
  stroke: #000066;
}
.pagination-link {
  width: 2.5rem;
  height: 2.5rem;
  aspect-ratio: 1;
  border-radius: 10rem;
  border: 1px solid transparent;
  background: #fff;
  box-shadow: 0px 10px 34px 0px rgba(239, 239, 239, 0.3);
  transition: all ease 0.3s;
  color: #000066;
}
@media (max-width: 47.98rem) {
  .pagination-link {
    width: 2rem;
    height: 2rem;
  }
}
@media (max-width: 35.98rem) {
  .pagination-link {
    width: 1.7rem;
    height: 1.7rem;
  }
}
.pagination-link[aria-current=true] {
  border: 1px solid #000066;
  color: #fff;
  background-color: #000066;
}
.pagination-link:hover {
  transition: all ease 0.3s;
  border: 1px solid #000066;
}

.header {
  width: 100%;
  position: sticky;
  top: calc(-1 * var(--header-h) + var(--header-o));
  z-index: 999;
}
.header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}
.header-logo {
  display: block;
  height: 5rem;
}
.header-logo-inner {
  display: block;
}
.header .logo_alt {
  display: none;
}
@media (min-width: 64rem) {
  .header {
    clip-path: polygon(0 0, 100% 0, 100% calc(100% + var(--submenu-h, 0px)), 0 calc(100% + var(--submenu-h, 0px)));
    transition: clip-path 0.5s ease;
  }
  .header::before {
    display: block;
    width: 100%;
    height: calc(var(--viewport-height, 100vh) - 100% - 1px);
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    z-index: -2;
    background-color: inherit;
    content: "";
  }
}

.other-sites {
  text-align: right;
  padding: 0.4rem 0 0.5rem 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.other-sites .elem {
  color: #fff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
  cursor: pointer;
}
.other-sites .elem svg {
  font-size: 0.5rem;
  margin: 0 0px 1px 4px;
}

.button-contact {
  font-size: 0.94rem;
  border-radius: 0.75rem 0rem;
  background: rgba(232, 232, 232, 0.24) !important;
  backdrop-filter: blur(15.6px);
  border: none !important;
}
@media (max-width: 63.98rem) {
  .button-contact {
    display: none;
  }
}
@media (max-width: 47.98rem) {
  .button-contact.disp-mob-lg {
    padding: 0.4rem 0.5rem;
    line-height: 120%;
    font-size: 0.8rem;
    display: flex !important;
    vertical-align: middle;
    align-items: center;
  }
}
.button-contact:hover {
  color: #000066 !important;
  background-color: white !important;
}
@media (max-width: 63.98rem) {
  .button-contact:hover {
    display: none;
  }
}

.menu-item-contact {
  display: none !important;
}
@media (max-width: 63.98rem) {
  .menu-item-contact {
    display: block !important;
    transition: all ease 0.4s;
    position: relative;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.5rem;
    letter-spacing: 0.0375rem;
    text-transform: uppercase;
    border-top-left-radius: 0.75rem;
    border-bottom-right-radius: 0.75rem;
    padding: 0.65rem 1.5rem;
    background-color: #191943 !important;
    border: 1px solid #191943 !important;
    width: fit-content;
    margin-top: auto !important;
    margin-bottom: 1rem;
  }
  .menu-item-contact a {
    color: #fff !important;
  }
}

.menu-wrapper {
  display: flex;
  gap: 1.5rem 1rem;
}
.menu-list {
  display: flex;
  column-gap: 1.25rem;
}
.menu-item {
  display: flex;
}
.menu-item.submenu-item a:hover {
  transition: all ease 0.3s;
}
.menu-item.submenu-item a::before {
  content: "";
  display: block;
  height: 6px;
  width: 6px;
  max-width: 6px;
  border-radius: 30rem;
  float: left;
  margin-top: 0.55rem;
  margin-right: 0.4rem;
}
.menu-item.submenu-item.environnement a:hover {
  color: #00a3a4;
}
.menu-item.submenu-item.environnement a::before {
  content: "";
  background-color: #00a3a4;
}
.menu-item.submenu-item.construction a:hover {
  color: #ff931e;
}
.menu-item.submenu-item.construction a::before {
  content: "";
  background-color: #ff931e;
}
.menu-item.submenu-item.reemploi a:hover {
  color: #d26f4e;
}
.menu-item.submenu-item.reemploi a::before {
  content: "";
  background-color: #ff931e;
}
.menu-item.submenu-item.revaloriation a:hover {
  color: #7ca8fe;
}
.menu-item.submenu-item.revaloriation a::before {
  content: "";
  background-color: #7ca8fe;
}
.menu-item.submenu-item.energie a:hover {
  color: #56ccab;
}
.menu-item.submenu-item.energie a::before {
  content: "";
  background-color: #56ccab;
}
.menu-item.submenu-item.foncier a:hover {
  color: #4cebee;
}
.menu-item.submenu-item.foncier a::before {
  content: "";
  background-color: #4cebee;
}
.menu-link {
  display: flex;
  position: relative;
  justify-content: space-between;
  align-items: center;
  gap: 0.25rem;
  text-align: center;
  font-size: 0.94rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5rem;
  letter-spacing: 0.03rem;
  text-transform: uppercase;
  width: 100%;
}
.menu-search {
  display: flex;
  border: 1px solid;
  align-items: center;
}
.menu-search-input {
  padding-inline: 0.25rem;
}
.menu-search-button {
  display: grid;
  width: 1.5rem;
  aspect-ratio: 1;
  place-items: center;
}
@media (min-width: 64rem) {
  .menu-toggle {
    display: none;
  }
  .menu-wrapper {
    align-items: center;
  }
  .menu-list {
    color: #fff;
    align-items: center;
  }
  [aria-expanded=true] > .menu-arrow {
    rotate: 180deg;
  }
}
@media (max-width: 63.98rem) {
  .menu-toggle {
    display: flex;
    width: 2.5rem;
    aspect-ratio: 1/1;
    justify-content: center;
    align-items: center;
    font-size: 1.25rem;
  }
  .menu-toggle-icon {
    width: 1em;
    position: relative;
    margin-block: 0.3em;
    transform-origin: 0.5em 50%;
    transition: background-color 0.3s ease, transform 0.3s ease;
  }
  .menu-toggle-icon, .menu-toggle-icon::before, .menu-toggle-icon::after {
    display: block;
    height: 2px;
    border-radius: 2px;
    background-color: #fff;
  }
  .menu-toggle-icon::before, .menu-toggle-icon::after {
    width: 1em;
    position: absolute;
    left: 0;
    content: "";
    transition: transform 0.3s ease;
  }
  .menu-toggle-icon::before {
    top: -0.3em;
  }
  .menu-toggle-icon::after {
    bottom: -0.3em;
  }
  .menu-toggle[aria-expanded=true] .menu-toggle-icon {
    background-color: transparent;
    transform: rotate(180deg);
  }
  .menu-toggle[aria-expanded=true] .menu-toggle-icon::before {
    transform: translateY(0.3em) rotate(-45deg);
  }
  .menu-toggle[aria-expanded=true] .menu-toggle-icon::after {
    transform: translateY(-0.3em) rotate(45deg);
  }
  .menu-wrapper {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    padding: 10.5rem var(--side-margin) 0 var(--side-margin);
    flex-direction: column;
    align-items: center;
    background-color: #fff;
    transition: opacity 0.5s ease;
  }
  .menu-wrapper[inert] {
    opacity: 0;
  }
  .menu-list {
    width: calc(100% + 2 * var(--side-margin));
    padding-inline: var(--side-margin);
    margin-inline: calc(-1 * var(--side-margin));
    flex-direction: column;
    flex: 1 1 auto;
    overflow: auto;
  }
  .menu-item:not(.language):not(:first-child) {
    padding-top: 0.75rem;
    border-top: 1px solid #eee;
    margin-top: 0.75rem;
  }
  .menu-arow {
    rotate: -90deg;
  }
}

.submenu {
  width: 100%;
  position: absolute;
  padding-inline: var(--side-margin);
  transition: opacity 0.5s ease;
}
.submenu[inert] {
  opacity: 0;
}
.submenu-wrapper {
  display: grid;
  position: relative;
  column-gap: var(--side-margin);
}
.submenu-header, .submenu-content {
  padding-block: 1.5rem;
}
.submenu-title {
  font-size: 2.3rem;
  font-weight: 600;
  line-height: 2.9rem;
  text-transform: uppercase;
}
.submenu-text {
  margin-top: 1rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5rem;
}
.submenu-button {
  margin-top: 2rem;
}
.submenu-list {
  display: grid;
  gap: 0.5rem var(--side-margin);
}
.submenu-close {
  display: grid;
  width: 4.3rem;
  aspect-ratio: 1/1;
  position: absolute;
  place-items: center;
  font-size: 1.25rem;
}
@media (min-width: 64rem) {
  .submenu {
    top: calc(100% - 1px);
    left: 0;
    z-index: -1;
    background: white;
    border-top: 1px solid #eee;
  }
  .submenu-wrapper {
    color: #000;
    grid-template-columns: 1fr 3fr;
  }
  .submenu-header {
    padding-right: var(--side-margin);
    border-right: 1px solid #eee;
    color: #191943;
    font-weight: 600;
  }
  .submenu-list a {
    color: #191943;
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5rem;
  }
  .submenu-close {
    bottom: 1rem;
    right: 0;
    opacity: 0;
    pointer-events: none;
  }
  .submenu-close:focus-visible {
    opacity: 1;
  }
}
@media (max-width: 63.98rem) {
  .submenu {
    height: 100%;
    top: 10.5rem;
    left: 0;
    z-index: 10;
    background-color: #fff;
    overflow: auto;
  }
  .submenu-wrapper {
    grid-template-columns: 100%;
  }
  .submenu-header {
    padding: 0;
  }
  .submenu-close {
    top: 0;
    right: 0;
    height: 2.5rem;
    position: relative !important;
  }
}
@media (max-width: 47.98rem) {
  .submenu-list {
    grid-template-columns: 100%;
  }
  .submenu-list .submenu-item a {
    font-size: 1.3rem;
  }
}

.language-list {
  display: flex;
  gap: 1em;
}
.language-item:not(:last-child) {
  position: relative;
}
.language-item:not(:last-child)::after {
  display: block;
  width: 1em;
  height: 100%;
  position: absolute;
  top: 0;
  left: 100%;
  text-align: center;
  font-weight: 700;
  content: "·";
}
.language-link[aria-current=true] {
  font-weight: 600;
}
@media (max-width: 63.98rem) {
  .language {
    margin-top: auto;
  }
}

.shortcut-link {
  position: absolute;
  top: calc(var(--header-height) + 1rem);
  left: 1rem;
  z-index: 1000;
  opacity: 0;
  pointer-events: none;
}
.shortcut-link:focus-visible {
  opacity: 1;
}

[data-scroll=ongoing] .header {
  background: #191943;
}

.mobile-open .header {
  background-color: #fff;
}
.mobile-open .header .logo {
  display: none;
}
.mobile-open .header .logo_alt {
  display: flex;
}
.mobile-open .header .other-sites {
  border-color: #e5e5e5;
}
.mobile-open .header .other-sites .elem {
  color: #191943;
}
.mobile-open .header .button-contact {
  color: white !important;
  background-color: #191943 !important;
  border: 1px solid #191943 !important;
}
.mobile-open .header .button-contact:hover {
  background-color: white !important;
  color: #191943 !important;
}
.mobile-open .header nav button,
.mobile-open .header nav .menu-link {
  color: #191943;
}
.mobile-open .header nav .submenu-close {
  font-size: 0.94rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5rem;
  text-transform: uppercase;
}
@media (max-width: 63.98rem) {
  .mobile-open .header .menu {
    color: #191943;
  }
  .mobile-open .header .menu-toggle-icon, .mobile-open .header .menu-toggle-icon::before, .mobile-open .header .menu-toggle-icon::after {
    background-color: #000066;
  }
}

@media (max-width: 63.98rem) {
  .menu-toggle[aria-expanded=true] .menu-toggle-icon {
    background-color: transparent !important;
  }
}

footer {
  overflow: hidden;
  position: relative;
}
footer .domains-footer {
  z-index: 1;
  position: relative;
}
footer .domains-footer:before, footer .domains-footer:after {
  content: "";
  left: 0;
  right: 0;
  position: absolute;
  opacity: 0.1;
  border-bottom: 1px solid #000066;
}
footer .domains-footer:before {
  top: 0;
}
footer .domains-footer:after {
  bottom: 0;
}
footer .domains-footer .container .row {
  --gy: 0.8rem;
}
footer .domains-footer .container .row li {
  display: flex;
  vertical-align: middle;
  align-items: center;
}
@media (max-width: 47.98rem) {
  footer .domains-footer .container .row li a {
    margin: auto;
  }
}
footer .domains-footer .container .row li a img {
  width: 100%;
  max-width: 9rem;
  max-height: 4rem;
  object-fit: contain;
}
footer .infos-footer {
  z-index: 1;
  position: relative;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .footer-logo {
    display: block;
    width: 100%;
    text-align: center;
  }
}
footer .infos-footer .text {
  font-size: 0.75rem;
  letter-spacing: 0.0375rem;
  font-weight: 600;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .btn {
    display: table;
    margin: 1rem auto 1rem auto;
  }
}
footer .infos-footer .row {
  --gy: 0.8rem;
}
footer .infos-footer .row li {
  display: flex;
  vertical-align: middle;
  align-items: center;
  padding-bottom: 0.4rem;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .row li a {
    margin: auto;
  }
}
footer .infos-footer .row li a img {
  width: 100%;
  max-width: 9rem;
  max-height: 4rem;
  object-fit: contain;
}
footer .infos-footer .row .rs {
  display: inline-flex;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .row .rs {
    gap: 1rem;
  }
}
footer .infos-footer .row .rs .social_link {
  display: flex;
  width: 3rem;
  height: 3rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 3.28688rem;
  border: 1px solid #000066;
  transition: all ease 0.4s;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .row .rs .social_link {
    margin: 1rem auto 1rem auto;
  }
}
footer .infos-footer .row .rs .social_link img {
  height: 15px;
  width: 100%;
}
footer .infos-footer .row .rs .social_link:hover {
  opacity: 0.5;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .row .a-c {
    display: block;
    width: 100%;
    text-align: center;
  }
}
@media (max-width: 47.98rem) {
  footer .infos-footer .menu-footer {
    display: none;
  }
}
footer .infos-footer .menu-footer .title {
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.5rem;
  text-transform: uppercase;
}
@media (max-width: 47.98rem) {
  footer .infos-footer .menu-footer .title {
    text-align: center;
  }
}
footer .infos-footer .menu-footer a {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5rem;
  transition: all ease 0.3s;
}
footer .infos-footer .menu-footer a:hover {
  opacity: 0.5;
}
footer .infos-footer .file-footer {
  border-top-left-radius: 3rem;
  border-bottom-right-radius: 3rem;
  background-color: #fff;
  overflow: hidden;
}
footer .infos-footer .file-footer .image {
  aspect-ratio: 1.855;
  overflow: hidden;
}
footer .infos-footer .file-footer .image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
footer .infos-footer .file-footer .infos {
  padding: 2rem;
}
footer .infos-footer .file-footer .infos .title {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5rem;
}
footer .infos-footer .file-footer .infos .text {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
}
footer .copyright-footer {
  z-index: 1;
  position: relative;
}
footer .copyright-footer:after {
  content: "";
  top: 0;
  left: 0;
  right: 0;
  position: absolute;
  opacity: 0.1;
  border-bottom: 1px solid #000066;
}
@media (min-width: 48rem) {
  footer .copyright-footer ul {
    display: flex;
    text-align: right;
    padding: 2rem 0;
  }
}
@media (max-width: 47.98rem) {
  footer .copyright-footer ul {
    text-align: center;
    padding: 1rem 0;
  }
}
footer .copyright-footer ul li {
  color: #000066;
  font-size: 0.75rem;
  padding-left: 2rem;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 47.98rem) {
  footer .copyright-footer ul li {
    padding: 0.2rem;
  }
}
@media (min-width: 48rem) {
  footer .copyright-footer ul li:first-child {
    padding-left: 0;
    margin-right: auto;
  }
}
footer .aura_footer_1 {
  position: absolute;
  z-index: 0;
  left: 0;
  bottom: 0;
  height: 28.3125rem;
  width: 41.875rem;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../bd23b7d153fc47455559.webp);
}
footer .aura_footer_2 {
  position: absolute;
  z-index: 0;
  right: 0;
  bottom: -20rem;
  height: 82.3125rem;
  width: 111.5rem;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 100%;
  background-image: url(../9017219e0a27c4c667d3.webp);
}

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

.video .player {
  position: relative;
  aspect-ratio: 16/9;
}
.video .player .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  aspect-ratio: 16/9;
}
.video .player .overlay .image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all ease 0.4s;
}
.video .player .overlay .play-icon {
  position: absolute;
  z-index: 2;
}
.video .player .video-frame {
  display: none;
  aspect-ratio: 16/9;
}
.video .player .video-frame iframe {
  width: 100%;
  height: 100%;
}
.video .player .video-frame video {
  width: 100%;
  height: auto;
  max-width: 100%;
}
.video:hover .image {
  filter: brightness(0.7);
  transition: all ease 0.4s;
}

.slider-full {
  position: relative;
}
@media (min-width: 64rem) {
  .slider-full {
    height: 100vh;
  }
}
.slider-full .swiper-full .swiper-slide {
  height: auto;
}
.slider-full .swiper-full .swiper-slide .image-full {
  overflow: hidden;
  position: relative;
  height: 100%;
}
@media (min-width: 64rem) {
  .slider-full .swiper-full .swiper-slide .image-full {
    height: 100vh;
  }
}
.slider-full .swiper-full .swiper-slide .image-full:after {
  content: "";
  background-color: #000;
  position: absolute;
  inset: 0;
  opacity: 0.2;
}
.slider-full .swiper-full .swiper-slide .image-full[data-bg=white]:after {
  background-color: white;
}
.slider-full .swiper-full .swiper-slide .image-full[data-bg=white] .cms {
  color: white;
  font-size: 1.3rem;
}
.slider-full .swiper-full .swiper-slide .image-full img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
}
.slider-full .swiper-full .swiper-slide .image-full .container {
  z-index: 1;
  position: relative;
  margin: 10rem auto;
  height: calc(100% - 14rem);
  color: #fff;
}
@media (max-width: 63.98rem) {
  .slider-full .swiper-full .swiper-slide .image-full .container {
    margin: 3.5rem auto 6rem auto;
  }
}
.slider-full .swiper-full .swiper-slide .image-full .container .title-h2 {
  color: #fff;
}
.slider-full .swiper-full .swiper-slide .image-full .container .cms {
  color: #fff;
  font-size: 1.3rem;
}
@media (min-width: 64rem) {
  .slider-full .swiper-full .swiper-slide .image-full .container .bottom-content {
    position: absolute;
    bottom: 0;
    width: 100%;
  }
}
@media (max-width: 63.98rem) {
  .slider-full .swiper-full .swiper-slide .image-full .container .bottom-content {
    top: initial;
    bottom: 100px;
    left: 0.8rem;
    right: initial;
    margin: initial;
    width: auto;
  }
}
@media (max-width: 63.98rem) {
  .slider-full .swiper-full .swiper-slide .image-full .container .bottom-content .link {
    display: block;
  }
}
.slider-full .swiper-full .swiper-slide .image-full .container .bottom-content .text {
  color: #fff;
}
.slider-full .swiper-full .swiper-slide .image-full .shape-c {
  position: absolute;
  top: 0;
  right: -13%;
  bottom: 0;
  display: block;
  opacity: 0.3;
  z-index: 0;
}
@media (max-width: 63.98rem) {
  .slider-full .swiper-full .swiper-slide .image-full .shape-c {
    left: 1rem;
  }
}
.slider-full .swiper-full .swiper-slide .image-full .shape-c svg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.slider-full .swiper-full .swiper-slide .image-full .shape-c svg [fill] {
  fill: white;
}
.slider-full .swiper-full .swiper-slide .image-full .shape-c svg [stroke] {
  stroke: white;
}
.slider-full .buttons-slider {
  position: absolute !important;
  bottom: 4rem;
  right: 0;
  left: 0;
  margin: auto;
}
@media (max-width: 63.98rem) {
  .slider-full .buttons-slider {
    left: 0.8rem;
    right: initial;
    width: auto;
    bottom: 2rem;
  }
}
.slider-full .buttons-slider .swiper-button {
  width: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0rem;
  max-width: fit-content;
  z-index: 111;
  position: relative;
  float: right;
}
@media (max-width: 63.98rem) {
  .slider-full .buttons-slider .swiper-button {
    margin: auto;
    float: initial;
  }
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-nt,
.slider-full .buttons-slider .swiper-button .swiper-button-full-pv {
  cursor: pointer;
  width: 3.5rem;
  height: 3.5rem;
  padding: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 50%;
  transition: all ease 0.3s;
  background: white;
}
@media (max-width: 63.98rem) {
  .slider-full .buttons-slider .swiper-button .swiper-button-full-nt,
  .slider-full .buttons-slider .swiper-button .swiper-button-full-pv {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-nt.swiper-button-disabled,
.slider-full .buttons-slider .swiper-button .swiper-button-full-pv.swiper-button-disabled {
  opacity: 0.5;
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-nt svg,
.slider-full .buttons-slider .swiper-button .swiper-button-full-pv svg {
  height: 2rem;
  width: 100%;
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-nt:hover,
.slider-full .buttons-slider .swiper-button .swiper-button-full-pv:hover {
  color: #000066;
  background-color: #fff;
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-nt:hover svg,
.slider-full .buttons-slider .swiper-button .swiper-button-full-pv:hover svg {
  height: 2rem;
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-pv {
  transform: rotate(180deg);
}
.slider-full .buttons-slider .swiper-button .swiper-button-full-nt {
  margin-left: 1rem;
}
.slider-full .buttons-slider .swiper-button .swiper-button svg {
  width: 8px;
  height: 13px;
}

.last-news {
  text-align: center;
}

.slider-achievements {
  overflow: hidden;
  position: relative;
}
.slider-achievements .header-achievements {
  position: absolute;
  left: 3rem;
  top: 4.5rem;
  z-index: 2;
  display: block;
}
@media (max-width: 63.98rem) {
  .slider-achievements .header-achievements {
    left: 1rem;
  }
}
.slider-achievements .header-achievements .title-h2 {
  color: #fff;
}
.slider-achievements .swiper-achievements {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100%;
  max-width: 100%;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-achievements {
    height: 40rem;
    display: block;
  }
}
.slider-achievements .swiper-achievements .swiper-wrapper {
  height: initial;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide {
  height: 100%;
  position: relative;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements {
  position: relative;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .image-content {
  width: 100%;
  height: 95vh;
  display: block;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .image-content {
    height: 40rem;
    display: block;
  }
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .image-content img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .image-content:before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.2;
  z-index: 0;
  display: block;
  background-color: #000066;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .image-content .corner-lt {
  left: 0px;
  top: -1px;
  position: absolute;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .image-content .corner-rb {
  right: 0px;
  bottom: -1px;
  position: absolute;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details {
  color: white;
  position: absolute;
  right: 3rem;
  bottom: 2.5rem;
  width: 20rem;
  height: 15.45rem;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details {
    height: initial;
    right: initial;
    left: 1rem;
    width: calc(100% - 2rem);
    bottom: 4.5rem;
  }
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details:before {
  content: "";
  background: rgba(0, 0, 0, 0.15);
  backdrop-filter: blur(19.2px);
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  z-index: 0;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos {
  padding: 2rem;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos {
    padding: 1rem;
  }
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos .post-card-tag {
  display: block;
  font-weight: 600;
  font-size: 0.72rem;
  text-transform: uppercase;
  position: relative;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos .post-card-tag span {
  padding: 0.2rem 0.5rem;
  background-color: #01a0a2;
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos .title-content {
  font-size: 1.1875rem;
  line-height: 1.8125rem;
  text-transform: uppercase;
  font-weight: 600;
  display: block;
  z-index: 1;
  position: relative;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos .title-content {
    font-size: 0.9rem;
    line-height: 120%;
  }
}
.slider-achievements .swiper-achievements .swiper-wrapper .swiper-slide .post-card-achievements .details .infos .text-content {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  display: block;
  z-index: 1;
  position: relative;
  padding: 0 2rem;
}
.slider-achievements .swiper-button {
  position: absolute;
  bottom: 19rem;
  right: 3rem;
  width: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0rem;
  max-width: fit-content;
  z-index: 1;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-button {
    bottom: 1rem;
    margin: auto;
    left: 0;
    right: 0;
    top: inherit;
  }
}
.slider-achievements .swiper-button .swiper-button-nt,
.slider-achievements .swiper-button .swiper-button-pv {
  cursor: pointer;
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 50%;
  transition: all ease 0.3s;
  background-color: #fff;
}
@media (max-width: 63.98rem) {
  .slider-achievements .swiper-button .swiper-button-nt,
  .slider-achievements .swiper-button .swiper-button-pv {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.slider-achievements .swiper-button .swiper-button-nt.swiper-button-disabled,
.slider-achievements .swiper-button .swiper-button-pv.swiper-button-disabled {
  opacity: 0.5;
}
.slider-achievements .swiper-button .swiper-button-nt svg,
.slider-achievements .swiper-button .swiper-button-pv svg {
  height: 1.2rem;
  width: 100%;
}
.slider-achievements .swiper-button .swiper-button-nt svg.icon [fill],
.slider-achievements .swiper-button .swiper-button-pv svg.icon [fill] {
  stroke: #000066;
}
.slider-achievements .swiper-button .swiper-button-nt svg.icon [stroke],
.slider-achievements .swiper-button .swiper-button-pv svg.icon [stroke] {
  stroke: #000066;
}
.slider-achievements .swiper-button .swiper-button-nt:hover,
.slider-achievements .swiper-button .swiper-button-pv:hover {
  color: #fff;
  background-color: #fff;
}
.slider-achievements .swiper-button .swiper-button-nt:hover svg.icon [fill],
.slider-achievements .swiper-button .swiper-button-pv:hover svg.icon [fill] {
  stroke: #000066;
}
.slider-achievements .swiper-button .swiper-button-nt:hover svg.icon [stroke],
.slider-achievements .swiper-button .swiper-button-pv:hover svg.icon [stroke] {
  stroke: #000066;
}
.slider-achievements .swiper-button .swiper-button-pv {
  transform: rotate(180deg);
}
.slider-achievements .swiper-button .swiper-button-nt {
  margin-left: 1rem;
}
.slider-achievements .swiper-button .swiper-button svg {
  width: 8px;
  height: 13px;
}

.slider-gallery {
  position: relative;
}
.slider-gallery .container-fluid {
  padding: 0;
  margin: 0 auto;
  max-width: 100vw;
}
.slider-gallery .swiper-gallery {
  margin-left: calc(-1 * (100vw - 100%) / 2);
  margin-right: calc(-1 * (100vw - 100%) / 2);
  width: 100vw;
  max-width: 100vw;
}
.slider-gallery .swiper-gallery .swiper-wrapper {
  height: initial;
}
.slider-gallery .swiper-gallery .swiper-wrapper .swiper-slide {
  height: 100%;
  position: relative;
}
.slider-gallery .swiper-gallery .swiper-wrapper .swiper-slide .image-container {
  aspect-ratio: 1.842/1;
}
@media (max-width: 63.98rem) {
  .slider-gallery .swiper-gallery .swiper-wrapper .swiper-slide .image-container {
    aspect-ratio: 4/3;
  }
}
.slider-gallery .swiper-gallery .swiper-wrapper .swiper-slide .image-container img {
  display: block;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.slider-gallery .swiper-button {
  position: relative;
  bottom: 0;
  right: 0;
  width: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0rem;
  max-width: fit-content;
  z-index: 1;
  margin: 1rem auto;
}
.slider-gallery .swiper-button .swiper-button-nt,
.slider-gallery .swiper-button .swiper-button-pv {
  cursor: pointer;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000066;
  border-radius: 50%;
  transition: all ease 0.3s;
  background-color: #fff;
}
.slider-gallery .swiper-button .swiper-button-nt.swiper-button-disabled,
.slider-gallery .swiper-button .swiper-button-pv.swiper-button-disabled {
  opacity: 0.5;
}
.slider-gallery .swiper-button .swiper-button-nt svg,
.slider-gallery .swiper-button .swiper-button-pv svg {
  height: 1.2rem;
  width: 100%;
}
.slider-gallery .swiper-button .swiper-button-nt svg.icon [fill],
.slider-gallery .swiper-button .swiper-button-pv svg.icon [fill] {
  stroke: #000066;
}
.slider-gallery .swiper-button .swiper-button-nt svg.icon [stroke],
.slider-gallery .swiper-button .swiper-button-pv svg.icon [stroke] {
  stroke: #000066;
}
.slider-gallery .swiper-button .swiper-button-nt:hover,
.slider-gallery .swiper-button .swiper-button-pv:hover {
  color: #fff;
  background-color: #fff;
}
.slider-gallery .swiper-button .swiper-button-nt:hover svg.icon [fill],
.slider-gallery .swiper-button .swiper-button-pv:hover svg.icon [fill] {
  stroke: #000066;
}
.slider-gallery .swiper-button .swiper-button-nt:hover svg.icon [stroke],
.slider-gallery .swiper-button .swiper-button-pv:hover svg.icon [stroke] {
  stroke: #000066;
}
.slider-gallery .swiper-button .swiper-button-pv {
  transform: rotate(180deg);
}
.slider-gallery .swiper-button .swiper-button-nt {
  margin-left: 1rem;
}
.slider-gallery .swiper-button .swiper-button svg {
  width: 8px;
  height: 13px;
}

.sectors {
  overflow: hidden;
  position: relative;
}
.sectors .title-h2 strong {
  display: block;
  font-weight: 600;
}
.sectors .swiper-sectors {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.sectors .swiper-sectors .swiper-slide .post-card-sector {
  display: grid;
  padding: 3.5rem 2rem;
  border-radius: 0.75rem;
  background: var(--White, #fff);
  box-shadow: 0px 2px 39px 0px rgba(235, 235, 235, 0.6);
}
.sectors .swiper-sectors .swiper-slide .post-card-sector .image-content {
  justify-content: left;
  display: grid;
  width: 11rem;
  height: 5rem;
}
.sectors .swiper-sectors .swiper-slide .post-card-sector .image-content img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.sectors .swiper-sectors .swiper-slide .post-card-sector .title-content {
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.8125rem;
  text-transform: uppercase;
  display: block;
}
.sectors .swiper-sectors .swiper-slide .post-card-sector .text-content {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  display: block;
}
.sectors .swiper-button {
  width: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0rem;
  max-width: fit-content;
}
.sectors .swiper-button .swiper-button-nt,
.sectors .swiper-button .swiper-button-pv {
  cursor: pointer;
  width: 3.5rem;
  height: 3.5rem;
  padding: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000066;
  border-radius: 50%;
  transition: all ease 0.3s;
}
.sectors .swiper-button .swiper-button-nt svg,
.sectors .swiper-button .swiper-button-pv svg {
  height: 2rem;
  width: 100%;
}
.sectors .swiper-button .swiper-button-nt:hover,
.sectors .swiper-button .swiper-button-pv:hover {
  color: #fff;
  background-color: #000066;
}
.sectors .swiper-button .swiper-button-nt:hover svg,
.sectors .swiper-button .swiper-button-pv:hover svg {
  height: 2rem;
}
.sectors .swiper-button .swiper-button-pv {
  transform: rotate(180deg);
}
.sectors .swiper-button .swiper-button-nt {
  margin-left: 1rem;
}
.sectors .swiper-button .swiper-button svg {
  width: 8px;
  height: 13px;
}

.partners .container {
  background-color: #fff;
  position: relative;
  padding: 4rem;
}
@media (max-width: 47.98rem) {
  .partners .container {
    padding: 4rem 0rem 6rem 0rem;
  }
}
@media (max-width: 47.98rem) {
  .partners .container .title-h2 {
    padding: 0 1rem;
  }
}
.partners .container .slider-partners {
  position: relative;
}
.partners .container .slider-partners .swiper {
  overflow: hidden;
}
.partners .container .slider-partners .swiper .swiper-wrapper {
  align-items: center;
}
.partners .container .slider-partners .swiper .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}
.partners .container .slider-partners .swiper .swiper-slide img {
  width: 100%;
  max-width: 5rem;
  max-height: 4rem;
  object-fit: contain;
}
@media (max-width: 47.98rem) {
  .partners .container .slider-partners .swiper-buttons {
    width: 0.5rem;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -2rem;
  }
}
.partners .container .slider-partners .swiper-buttons .swiper-button-pv,
.partners .container .slider-partners .swiper-buttons .swiper-button-nt {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.5rem;
  height: 2.5rem;
  padding: 1rem;
  border: 1px solid #000066;
  border-radius: 50%;
  background: white;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: all ease 0.3s;
}
.partners .container .slider-partners .swiper-buttons .swiper-button-pv svg,
.partners .container .slider-partners .swiper-buttons .swiper-button-nt svg {
  width: 8px;
  height: 13px;
}
.partners .container .slider-partners .swiper-buttons .swiper-button-pv:hover,
.partners .container .slider-partners .swiper-buttons .swiper-button-nt:hover {
  background: #000066;
  color: white;
}
.partners .container .slider-partners .swiper-buttons .swiper-button-pv.swiper-button-disabled,
.partners .container .slider-partners .swiper-buttons .swiper-button-nt.swiper-button-disabled {
  opacity: 0.5;
}
.partners .container .slider-partners .swiper-buttons .swiper-button-pv {
  z-index: 1;
  left: 0;
  transform: translate(-50%, -50%) rotate(180deg);
}
@media (max-width: 47.98rem) {
  .partners .container .slider-partners .swiper-buttons .swiper-button-pv {
    left: -1.5rem;
  }
}
.partners .container .slider-partners .swiper-buttons .swiper-button-nt {
  z-index: 1;
  right: 0;
  transform: translate(50%, -50%);
}
@media (max-width: 47.98rem) {
  .partners .container .slider-partners .swiper-buttons .swiper-button-nt {
    right: -1.5rem;
  }
}

.numbers {
  overflow: hidden;
  position: relative;
  background-size: cover;
  background-position: center;
}
.numbers svg {
  width: 49rem;
  height: 70rem;
  border-radius: 69.75rem;
  opacity: 0.1;
  background: linear-gradient(180deg, #50efff 0%, #3c68cc 100%);
  filter: blur(157px);
}
.numbers svg:first-child {
  position: absolute;
  top: 0;
  left: -14rem;
}
.numbers svg:last-child {
  position: absolute;
  top: 1rem;
  right: -26rem;
}
.numbers .numbers-items {
  z-index: 1;
  text-align: center;
}
.numbers .numbers-items .item {
  position: relative;
}
.numbers .numbers-items .item .icon {
  height: 95px;
  width: 100%;
}
.numbers .numbers-items .item .number {
  font-size: 4rem;
  font-weight: 600;
}
@media (max-width: 47.98rem) {
  .numbers .numbers-items .item .number {
    font-size: 3rem;
  }
}
.numbers .numbers-items .item .text {
  font-size: 1rem;
}

.sectors .row {
  --gx: 1rem;
  --gy: 1.5rem;
}
.sectors .row .item {
  height: 100%;
  aspect-ratio: 13/10;
  position: relative;
  overflow: hidden;
}
.sectors .row .item:before {
  content: "";
  left: 0;
  right: 0;
  height: 60%;
  bottom: -50px;
  position: absolute;
  background: var(--Gradients-Down, linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 100%));
  z-index: 1;
}
.sectors .row .item img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
  transition: all ease 0.5s;
}
.sectors .row .item .details {
  flex-direction: column;
  position: absolute;
  bottom: 0.5rem;
  left: 0.5rem;
  right: 0.5rem;
  padding: 1rem 4.5rem 1rem 1rem;
  color: #fff;
  z-index: 3;
}
.sectors .row .item .details .title {
  text-transform: uppercase;
  font-size: 1.68rem;
  line-height: 100%;
  font-weight: 600;
  display: block;
}
@media (max-width: 1300px) {
  .sectors .row .item .details .title {
    font-size: 1.5rem;
  }
}
@media (max-width: 1180px) {
  .sectors .row .item .details .title {
    font-size: 1.3rem;
  }
}
@media (max-width: 1075px) {
  .sectors .row .item .details .title {
    font-size: 1.2rem;
  }
}
.sectors .row .item .details .description {
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  order: -1;
  overflow: hidden;
  opacity: 0;
  display: block;
  max-height: 0rem;
  transition: all ease 0.5s;
}
.sectors .row .item .bar {
  height: 0.5rem;
  width: 0%;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
  position: absolute;
  background-color: #00a3a4;
  transition: all ease 0.5s;
}
.sectors .row .item .arrow {
  border-radius: 2.5rem;
  border: 1px solid var(--White, #fff);
  display: flex;
  align-items: center;
  vertical-align: middle;
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  height: 2.5rem;
  width: 2.5rem;
  z-index: 3;
  transition: all ease 0.5s;
}
.sectors .row .item .arrow svg {
  margin: auto;
  font-size: 0.7rem;
}
.sectors .row .item .arrow svg path {
  stroke: #fff;
}
.sectors .row .item .bg {
  opacity: 0;
  height: 7.5rem;
  bottom: 0.5rem;
  left: 0.5rem;
  right: 0.5rem;
  z-index: 2;
  width: calc(100% - 1rem);
  position: absolute;
  transition: all ease 0.5s;
  background-color: #00a3a4;
}
@media (max-width: 63.98rem) {
  .sectors .row .item .bg {
    height: 8.5rem;
  }
}
.sectors .row .item:hover .arrow {
  background: #fff;
}
.sectors .row .item:hover .arrow svg path {
  stroke: #000066;
}
.sectors .row .item:hover img {
  transform: scale(1.05);
}
.sectors .row .item:hover .bg {
  opacity: 1;
}
.sectors .row .item:hover .bar {
  width: 100%;
}
.sectors .row .item:hover .details .description {
  max-height: 4rem;
  opacity: 1;
}

.intro {
  overflow: hidden;
  position: relative;
}
.intro .title-h2-alt {
  color: #000066;
}
.intro .text {
  font-size: 1.3125rem;
  line-height: 1.75rem;
}
.intro .filter {
  width: 44.5rem;
  height: 53.0625rem;
  transform: rotate(49.357deg);
  flex-shrink: 0;
  position: absolute;
  top: 80%;
  left: -460px;
  background: radial-gradient(160.74% 91.57% at 16.79% 165.86%, #5964f4 0%, #8b93f7 19%, #b4b9fa 37%, #d5d8fc 54%, #ecedfd 71%, #fff 86%, #fff 100%);
  mix-blend-mode: darken;
}

.domain {
  position: relative;
  color: white;
  background-color: #191943;
  overflow: hidden;
}
.domain .title-h2 {
  color: white;
  font-size: 3rem;
  line-height: 1.2;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 63.98rem) {
  .domain .title-h2 {
    font-size: 1.8rem;
    line-height: 120%;
  }
}
.domain .text {
  color: white;
  font-size: 1.3125rem;
}
.domain .button-domain .button {
  color: #000066;
  background: #fff;
}
.domain .button-domain .button:hover {
  color: #fff;
  background: #000066;
}
.domain-interactive {
  position: relative;
  margin-top: 12rem;
  padding: 0 4rem;
}
@media (max-width: 63.98rem) {
  .domain-interactive {
    margin-top: 5rem;
  }
}
@media (max-width: 47.98rem) {
  .domain-interactive {
    padding: 0 2rem;
    display: none;
    visibility: hidden;
  }
}
@media (max-width: 35.98rem) {
  .domain-interactive {
    padding: 0 1rem;
  }
}
.domain-center {
  position: absolute;
  z-index: 2;
  top: 56%;
  left: 50%;
  width: 35%;
  transform: translate(-50%, -50%);
  padding: 2.5rem;
  background: rgba(255, 255, 255, 0.08);
  --center-height: calc(100% - 5rem);
}
@media (max-width: 63.98rem) {
  .domain-center {
    top: 71%;
    width: 55%;
    padding: 1rem;
  }
}
@media (max-width: 47.98rem) {
  .domain-center {
    top: initial;
    width: 100%;
    transform: initial;
    position: relative;
    left: 0;
    margin-bottom: 2rem;
  }
}
.domain-center-title {
  color: #01a0a2;
  font-size: 1.19rem;
  font-weight: 600;
  line-height: 1.8rem;
  text-transform: uppercase;
}
.domain-center-text {
  position: relative;
  width: 100%;
  height: var(--center-height);
  color: white;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
}
.domain-center-text-inner {
  position: absolute;
  inset: 0;
  opacity: 0;
}
@media (prefers-reduced-motion: no-preference) {
  .domain-center-text-inner {
    transition: opacity 0.3s ease-in-out;
  }
}
.domain-center-text-inner[data-active=true] {
  opacity: 1;
}
.domain-center-text-inner-title {
  color: var(--color, #ffffff);
  font-size: 1.1875rem;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 0.45rem;
}
.domain-items {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 500px;
  margin: 0 auto;
  overflow: visible;
}
@media (max-width: 63.98rem) {
  .domain-items {
    height: 370px;
  }
}
@media (max-width: 47.98rem) {
  .domain-items {
    height: 240px;
  }
}
@media (max-width: 35.98rem) {
  .domain-items {
    height: 200px;
  }
}
.domain-items .domain-arc {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.domain-items .domain-arc path {
  fill: none;
  stroke: #fff;
  stroke-width: 1;
}
.domain-circle {
  --circle-size: min(90vw, 88rem);
  display: grid;
  width: var(--circle-size);
  height: var(--circle-size);
  position: absolute;
  bottom: max(-50vw, -50rem);
  left: calc(50% - var(--circle-size) / 2);
  place-items: center;
  border-radius: 100%;
}
.domain-circle[data-animate=true] {
  animation: outer-circle var(--duration, 90s) infinite linear;
}
@media (prefers-reduced-motion: no-preference) {
  .domain-circle {
    transition: transform 1s ease-in-out;
  }
}
.domain-circle-inner {
  position: absolute;
  width: calc(var(--circle-size) - 7rem);
  height: calc(var(--circle-size) - 5rem);
  border-radius: 100%;
  border: 1px solid #fff;
  pointer-events: none;
}
.domain-circle-dot {
  --r: calc(1turn * (var(--i) / var(--total)) - 0.25turn);
  position: absolute;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
  pointer-events: all;
  transition: background 0.3s;
  z-index: 2;
  transform: rotate(var(--r)) translate(calc(var(--circle-size) / 3)) rotate(calc(-1 * var(--r)));
}
.domain-list {
  position: relative;
  display: grid;
}
.domain-list-item {
  --w: clamp(4rem, 3.185rem + 4.0125vw, 8rem);
  --r: calc(1turn * (var(--i) / var(--total)) - 0.25turn);
  width: var(--w);
  aspect-ratio: 1;
  grid-area: 1/1;
  margin: calc(var(--w) / -2);
  transform: rotate(var(--r)) translate(calc(var(--circle-size) / 2)) rotate(calc(-1 * var(--r)));
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media (prefers-reduced-motion: no-preference) {
  .domain-list-item {
    transition: transform 0.9s ease-in-out;
  }
}
.domain-list-item img {
  width: 100%;
  height: auto;
  rotate: var(--anti-r, 0deg);
  transform-origin: center center;
}
@media (prefers-reduced-motion: no-preference) {
  .domain-list-item img {
    transition: rotate 0.9s ease-in-out;
  }
}
.domain-slider {
  display: none;
  margin-top: 3rem;
  padding-bottom: 2rem;
}
@media (max-width: 47.98rem) {
  .domain-slider {
    display: block;
  }
}
.domain-slider-wrapper {
  box-sizing: border-box;
}
.domain-slider-slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  box-sizing: border-box;
}
.domain-slider-image {
  width: min(100%, 10.7rem);
}
.domain-slider-image img {
  width: 100%;
  height: auto;
}
.domain-slider-content {
  width: 100%;
  padding: 2.5rem;
  background: rgba(255, 255, 255, 0.08);
}
.domain-slider-title {
  color: var(--color, #ffffff);
  font-size: 1.1875rem;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 0.45rem;
}
.domain-slider-text {
  color: #ffffff;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
}
.domain-slider-controls {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  margin-top: 2rem;
}
.domain-slider-button {
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ffffff;
  border-radius: 100vmax;
}
@media (prefers-reduced-motion: no-preference) {
  .domain-slider-button {
    transition: opacity 0.3s ease-in-out;
  }
}
.domain-slider-button-inner {
  height: 1.5rem;
}
.domain-slider-button svg {
  color: #000066;
  width: 1.5rem;
  height: 1.5rem;
}
.domain-slider-button--prev {
  transform: rotate(180deg);
}
.domain-slider-button:hover {
  opacity: 0.7;
}

@keyframes outer-circle {
  to {
    rotate: -360deg;
  }
}
.follow-us {
  position: relative;
  color: #fff;
  overflow: hidden;
  background-color: #000066;
}
.follow-us .row {
  z-index: 1;
  position: relative;
}
@media (max-width: 47.98rem) {
  .follow-us .row {
    --gy: 1.5rem;
  }
}
.follow-us .row .title {
  font-size: 2.3rem;
  line-height: 2.9375rem;
  text-transform: uppercase;
}
@media (max-width: 63.98rem) {
  .follow-us .row .title {
    font-size: 2rem;
    line-height: 120%;
  }
}
@media (max-width: 47.98rem) {
  .follow-us .row .title {
    text-align: center;
  }
}
.follow-us .row .title strong {
  display: block;
  font-weight: 400;
}
.follow-us .row .rs {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (max-width: 47.98rem) {
  .follow-us .row .rs {
    justify-content: center;
  }
}
.follow-us .row .rs .in {
  display: flex;
  width: 4.5rem;
  height: 4.5rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background-color: #000066;
  border: 1px solid #fff;
  transition: all ease 0.3s;
}
.follow-us .row .rs .in:hover {
  background-color: #fff;
}
.follow-us .row .rs .in:hover svg path {
  fill: #000066;
}
.follow-us .shape2 {
  position: absolute;
  top: -100%;
  right: -26rem;
  width: 1093px;
  height: 1560px;
  z-index: 0;
  display: block;
  opacity: 0.1;
}
@media (max-width: 63.98rem) {
  .follow-us .shape2 {
    left: 1rem;
  }
}
.follow-us .shape2 svg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.follow-us .shape2 svg [fill] {
  fill: #fff;
}
.follow-us .shape2 svg [stroke] {
  stroke: #fff;
}

.news {
  overflow: hidden;
  position: relative;
}
.news .title-h2 strong {
  display: block;
  font-weight: 600;
}
.news .swiper-news {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.news .swiper-news .swiper-slide {
  display: grid;
}
.news .swiper-button {
  width: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0rem;
  max-width: fit-content;
}
@media (max-width: 63.98rem) {
  .news .swiper-button {
    margin: auto;
  }
}
.news .swiper-button .swiper-button-nt,
.news .swiper-button .swiper-button-pv {
  cursor: pointer;
  width: 3.5rem;
  height: 3.5rem;
  padding: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000066;
  border-radius: 50%;
  transition: all ease 0.3s;
}
@media (max-width: 63.98rem) {
  .news .swiper-button .swiper-button-nt,
  .news .swiper-button .swiper-button-pv {
    width: 2.5rem;
    height: 2.5rem;
  }
}
.news .swiper-button .swiper-button-nt svg,
.news .swiper-button .swiper-button-pv svg {
  height: 2rem;
  width: 100%;
}
.news .swiper-button .swiper-button-nt:hover,
.news .swiper-button .swiper-button-pv:hover {
  color: #fff;
  background-color: #000066;
}
.news .swiper-button .swiper-button-nt:hover svg,
.news .swiper-button .swiper-button-pv:hover svg {
  height: 2rem;
}
.news .swiper-button .swiper-button-pv {
  transform: rotate(180deg);
}
.news .swiper-button .swiper-button-nt {
  margin-left: 1rem;
}
.news .swiper-button .swiper-button svg {
  width: 8px;
  height: 13px;
}

.featured-news {
  z-index: 1;
  background: white;
  position: relative;
  box-shadow: 0px 17px 39px 0px rgba(146, 146, 146, 0.08);
}
@media (min-width: 64rem) {
  .featured-news {
    margin-top: -6rem;
  }
}
@media (max-width: 63.98rem) {
  .featured-news {
    margin-top: 2rem;
  }
}
.featured-news .infos {
  padding: 2rem;
}
@media (max-width: 78.98rem) {
  .featured-news .infos {
    padding: 1rem;
  }
}
@media (max-width: 63.98rem) {
  .featured-news .infos {
    padding: 0;
  }
}
.featured-news .infos .post-card-tag {
  position: absolute;
  left: 0rem;
  top: 0rem;
}
.featured-news .infos .post-card-tag span {
  padding: 0.7rem 0.7rem;
  color: #fff;
  font-size: 0.875rem;
  line-height: 130%;
  text-transform: uppercase;
  display: block;
  font-weight: 600;
}
.featured-news .infos .post-card-details {
  display: flex;
}
.featured-news .infos .post-title {
  color: #000066;
  display: block;
  font-size: 1.6875rem;
  font-weight: 600;
  line-height: 2.3125rem;
  text-transform: uppercase;
}
@media (max-width: 78.98rem) {
  .featured-news .infos .post-title {
    font-size: 1.4rem;
    line-height: 120%;
  }
}
.featured-news .infos .post-file {
  color: #000066;
  display: block;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 2rem;
  text-transform: uppercase;
  text-decoration: underline;
}
@media (max-width: 78.98rem) {
  .featured-news .infos .post-file {
    font-size: 1.4rem;
    line-height: 120%;
  }
}

.box {
  padding: 2.5rem;
  border-radius: 0.25rem;
  background: #f0f6ff;
  color: #000066;
}

.cta {
  overflow: hidden;
  position: relative;
}
.cta .item {
  position: relative;
  padding: 2.88rem 2.5rem;
}
.cta .item .title_h2 {
  font-weight: 600;
  font-size: 2.3125rem;
  line-height: 2.9375rem;
  text-transform: uppercase;
  color: #fff;
  z-index: 1;
  position: relative;
}
.cta .item .text {
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
  color: #fff;
  z-index: 1;
  position: relative;
}
.cta .item .links {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1rem;
  z-index: 1;
  position: relative;
}
.cta .item .shape2 {
  position: absolute;
  top: -180%;
  right: -52rem;
  width: 1093px;
  height: 1560px;
  z-index: 0;
  display: block;
  opacity: 0.1;
}
.cta .item .shape2 svg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.cta .item .shape2 svg [fill] {
  fill: #fff;
}
.cta .item .shape2 svg [stroke] {
  stroke: #fff;
}

.quote {
  position: relative;
}
.quote:before {
  content: "";
  height: 100%;
  width: 100%;
  display: block;
  position: absolute;
  background: linear-gradient(180deg, rgba(233, 248, 249, 0) 0%, rgba(var(--main-color-rgb), 0.2) 63.33%), #fff;
}
.quote .row {
  gap: 0;
}
.quote .row .quote-section {
  min-height: 27rem;
  padding: 4.6875rem 16rem 4.6875rem 4.6875rem;
  position: relative;
}
@media (max-width: 63.98rem) {
  .quote .row .quote-section {
    padding: 2.5rem;
  }
}
.quote .row .quote-section .apostrophe {
  top: -27px;
  left: 50px;
  position: absolute;
}
.quote .row .quote-section .apostrophe svg {
  width: 3.1875rem;
  height: 3.1875rem;
}
.quote .row .quote-section .text {
  color: #fff;
  font-size: 1.6875rem;
  line-height: 2.3125rem;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 63.98rem) {
  .quote .row .quote-section .text {
    font-size: 1.4rem;
    line-height: 120%;
  }
}
.quote .row .quote-section .author {
  color: #fff;
  font-size: 1.1875rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.8125rem;
  text-transform: uppercase;
}
.quote .row .quote-section .info {
  color: #fff;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5rem;
}
.quote .row .photo-section {
  display: flex;
  vertical-align: middle;
  align-items: center;
}
@media (max-width: 63.98rem) {
  .quote .row .photo-section {
    display: none;
  }
}
.quote .row .photo-section .photo {
  max-width: 24rem;
  max-height: 24rem;
  aspect-ratio: 1;
  position: absolute;
  right: 6rem;
}
.quote .row .photo-section .photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.quote .row .photo-mob {
  max-width: 12rem;
  max-height: 12rem;
  margin-bottom: 2rem;
}
@media (min-width: 64rem) {
  .quote .row .photo-mob {
    display: none;
  }
}
.quote .row .photo-mob img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.quote .quote-section {
  position: relative;
  transition: bottom 0.3s ease;
}
.quote .photo {
  transition: margin-top 0.3s ease;
}

.other-sites-container {
  position: fixed;
  top: 0;
  right: 0;
  width: 648px;
  height: 100vh;
  background-color: #f0fdfe;
  overflow-y: auto;
  z-index: 1000;
  box-shadow: -4px 0 16px rgba(0, 0, 0, 0.1);
  transform: translateX(100%);
  transition: transform 0.3s ease-out;
}
@media (max-width: 47.98rem) {
  .other-sites-container {
    width: 100%;
  }
}
.other-sites-container.is-open {
  transform: translateX(0);
}
.other-sites-container .close-other-sites {
  position: absolute;
  top: 16px;
  right: 16px;
  background: none;
  border: none;
  font-size: 1rem;
  cursor: pointer;
}
.other-sites-container .container {
  height: 100%;
  padding: 24px;
}
.other-sites-container .title-other {
  font-size: 1.1875rem;
  line-height: 1.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 1.5rem;
  color: #0e1261;
}
.other-sites-container .close {
  color: #0e1261;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5rem;
  letter-spacing: 0.0375rem;
  text-transform: uppercase;
  display: flex;
  justify-content: flex-end;
  cursor: pointer;
}
.other-sites-container .close svg {
  margin-top: 0.12rem;
  font-size: 1.2rem;
  display: block;
}
.other-sites-container .elem {
  background: #fff;
  box-shadow: 0px 1.795px 34.993px rgba(235, 235, 235, 0.6);
  padding: 3rem 1.34rem 1.24rem 1.34rem;
  position: relative;
  transition: all ease 0.3s;
}
.other-sites-container .elem:hover {
  box-shadow: 0px 1.795px 34.993px rgb(232, 232, 232);
}
.other-sites-container .elem .tag {
  display: inline-block;
  padding: 0.5rem 1rem;
  font-weight: 600;
  font-size: 0.75rem;
  text-transform: uppercase;
  color: #fff;
  position: absolute;
  top: 0;
  left: 0;
}
.other-sites-container .elem .image-container {
  margin-bottom: 1rem;
  height: 3rem;
  display: flex;
  vertical-align: middle;
  align-items: center;
}
.other-sites-container .elem .image-container .logo-other-sites {
  display: block;
  height: auto;
  width: auto;
  max-width: 7.8rem;
  max-height: 3.5rem;
}
.other-sites-container .elem .title {
  font-size: 1.1875rem;
  font-style: normal;
  font-weight: 600;
  color: #0e1261;
  margin-bottom: 8px;
  text-transform: uppercase;
  display: block;
}
.other-sites-container .elem .text {
  font-size: 1rem;
  line-height: 1.4;
  color: #1b2851;
  display: block;
}

.practical-informations {
  width: 100%;
  padding: 3rem;
  border-radius: 0.25rem;
  background: linear-gradient(180deg, #fff -55.9%, #ebf9fa 23.54%);
}
.practical-informations .title {
  color: #000066;
  font-size: 1.7rem;
  line-height: 120%;
  font-weight: 600;
  text-transform: uppercase;
}
.practical-informations ul li {
  display: flex;
  font-size: 1.3125rem;
}
.practical-informations ul li:not(:last-child) {
  margin-bottom: 1rem;
}
.practical-informations ul li svg {
  width: 0.8rem;
  min-width: 0.8rem;
  margin-top: 0.28rem;
  margin-right: 0.4rem;
}

.project-summary {
  width: 100%;
  padding: 3rem;
  border-radius: 0.25rem;
  background: linear-gradient(180deg, #fff -55.9%, #ebf9fa 23.54%);
}
.project-summary .title {
  color: #000066;
  font-size: 1.7rem;
  line-height: 120%;
  font-weight: 600;
  text-transform: uppercase;
}
@media (min-width: 64rem) {
  .project-summary .logo {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
}
.project-summary .br-b {
  padding-bottom: 1rem;
  border-bottom: 1px solid #d8e3f0;
}
.project-summary .infos .title-info {
  font-size: 1.125rem;
  line-height: 120%;
  font-weight: 600;
}
.project-summary .infos .value-info {
  font-size: 1.125rem;
  line-height: 120%;
  font-weight: 400;
}

.content-numbers {
  overflow: hidden;
  position: relative;
  background-size: cover;
  background-position: center;
}
.content-numbers:before {
  content: "";
  height: 80rem;
  width: 80rem;
  display: block;
  position: absolute;
  left: initial;
  right: -47rem;
  top: -56rem;
  z-index: -1;
  background-position: top right;
  background: radial-gradient(circle, rgba(var(--main-color-rgb), 0.2) 0%, rgba(233, 248, 249, 0) 70%), #fff;
}
.content-numbers .logo-numbers img {
  max-height: 6.6rem;
  width: auto;
}
@media (min-width: 64rem) {
  .content-numbers .logo-numbers img {
    float: right;
  }
}
.content-numbers .text-numbers .item {
  min-height: 10rem;
  padding: 2rem;
  background-size: cover;
  position: relative;
}
.content-numbers .text-numbers .item::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--main-color);
  opacity: 0.1;
}
.content-numbers .text-numbers .item .title {
  font-size: 1.6875rem;
  font-weight: 600;
  line-height: 2.3125rem;
  text-transform: uppercase;
  margin-bottom: 0.8rem;
}
.content-numbers .text-numbers .item .text {
  font-size: 1rem;
  line-height: 1.5rem;
}
.content-numbers .numbers-items .item {
  height: 10rem;
  padding: 2rem;
  background-size: cover;
  position: relative;
}
.content-numbers .numbers-items .item::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--main-color);
  opacity: 0.1;
}
.content-numbers .numbers-items .item .number {
  font-size: 3rem;
  font-weight: 600;
  line-height: 3.625rem;
  text-transform: uppercase;
}
.content-numbers .numbers-items .item .desciption {
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.8125rem;
  text-transform: uppercase;
}

.tabs-content {
  position: relative;
}
.tabs-content:before {
  content: "";
  z-index: -1;
  height: 100%;
  width: 100%;
  display: block;
  bottom: 0;
  position: absolute;
  background: linear-gradient(180deg, rgba(233, 248, 249, 0) 0%, rgba(var(--main-color-rgb), 0.2) 63.33%), #fff;
}
.tabs-content .tabs-titles {
  gap: 1rem;
  justify-content: center;
}
@media (min-width: 64rem) {
  .tabs-content .tabs-titles {
    display: flex;
    margin-bottom: 2rem;
  }
}
.tabs-content .tabs-titles .tab-title {
  justify-content: center;
  background: white;
  font-size: 0.97094rem;
  font-weight: 600;
  line-height: 1.482rem;
  text-transform: uppercase;
  padding: 0.61rem 1.5rem;
  cursor: pointer;
  transition: background 0.3s;
  box-shadow: 0px 8.561px 35.467px 0px rgba(100, 100, 111, 0.1);
  text-align: center;
}
@media (max-width: 63.98rem) {
  .tabs-content .tabs-titles .tab-title {
    margin-bottom: 1rem;
  }
}
.tabs-content .tabs-titles .tab-title.active {
  background: var(--main-color);
  color: white;
}
.tabs-content .tabs-items .tab-item {
  display: none;
}
.tabs-content .tabs-items .tab-item.active {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
}
.tabs-content .tabs-items .tab-item .item .image {
  min-height: 36rem;
  height: 100%;
  flex: 1 1 60%;
}
.tabs-content .tabs-items .tab-item .item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.tabs-content .tabs-items .tab-item .item .text {
  flex: 1 1 35%;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5rem;
}

.norms {
  overflow: hidden;
  position: relative;
}
.norms .norms-items {
  z-index: 1;
}
.norms .norms-items .item {
  position: relative;
  border-radius: 0.75rem;
  padding: 1.5rem 24px;
  background: #fff;
  box-shadow: 0px 2px 39px 0px rgba(235, 235, 235, 0.6);
}
.norms .norms-items .item .icon {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
}
.norms .norms-items .item .icon img {
  height: 4rem;
  width: 100%;
  object-fit: contain;
  margin: auto;
}
.norms .norms-items .item .title {
  font-size: 1.2em;
  font-weight: 600;
  text-transform: uppercase;
}
.norms .norms-items .item .description {
  font-size: 1rem;
}

.values {
  overflow: hidden;
  position: relative;
  background-size: cover;
  background-position: center;
}
.values svg {
  width: 49rem;
  height: 70rem;
  border-radius: 69.75rem;
  opacity: 0.1;
  background: linear-gradient(180deg, #50efff 0%, #3c68cc 100%);
  filter: blur(157px);
}
.values svg:first-child {
  position: absolute;
  top: 0;
  left: -14rem;
}
.values svg:last-child {
  position: absolute;
  top: 1rem;
  right: -26rem;
}
.values .values-items {
  z-index: 1;
}
.values .values-items .item {
  position: relative;
  border-radius: 0.75rem;
  padding: 1.5rem 24px;
  background: #fff;
  box-shadow: 0px 2px 39px 0px rgba(235, 235, 235, 0.6);
}
.values .values-items .item .icon {
  width: 3.5rem;
  height: 3.5rem;
  display: flex;
  object-fit: contain;
  vertical-align: middle;
  align-items: center;
  border-radius: 1rem 0rem;
  background: linear-gradient(47deg, #67b7cf 0%, #006 100.58%);
}
.values .values-items .item .icon img {
  height: 1.8rem;
  width: 1.8rem;
  object-fit: contain;
  margin: auto;
}
.values .values-items .item .title {
  font-size: 1.2em;
  font-weight: 600;
  text-transform: uppercase;
}
.values .values-items .item .text {
  font-weight: 600;
  font-size: 1rem;
}

.image-list {
  position: relative;
}
.image-list:before {
  content: "";
  height: 100%;
  width: 100%;
  display: block;
  top: 0;
  position: absolute;
  background-color: var(--main-color);
  opacity: 0.1;
}
.image-list .item {
  position: relative;
}
.image-list .item .image {
  height: 39rem;
  aspect-ratio: 5/6;
  position: sticky;
  top: 2rem;
}
@media (max-width: 78.98rem) {
  .image-list .item .image {
    aspect-ratio: initial;
  }
}
.image-list .item .image .corner-lt {
  left: 0px;
  top: -1px;
  position: absolute;
}
.image-list .item .image .corner-lt path {
  fill: #e9f6f7;
}
.image-list .item .image .corner-rb {
  right: 0px;
  bottom: -1px;
  position: absolute;
}
.image-list .item .image .corner-rb path {
  fill: #e9f6f7;
}
@media (max-width: 63.98rem) {
  .image-list .item .image {
    height: 17rem;
    width: 100%;
    aspect-ratio: initial;
  }
}
.image-list .item .image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.image-list .item .elem {
  position: relative;
}
.image-list .item .elem:after {
  content: "";
  display: block;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  width: 100%;
  margin: 2rem 0;
}
.image-list .item .elem img {
  float: left;
  display: block;
  height: 2.3rem;
  width: 2.3rem;
  max-width: 2.3rem;
  margin-right: 0.6rem;
}
.image-list .item .elem .item {
  display: block;
  padding-left: 3rem;
}
.image-list .item .elem .item .title {
  font-size: 1.7em;
  line-height: 135%;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 63.98rem) {
  .image-list .item .elem .item .title {
    font-size: 1.3em;
    aspect-ratio: initial;
  }
}
.image-list .item .elem .item .text {
  font-weight: 400;
  font-size: 1.125rem;
}

.image-content {
  overflow: hidden;
  position: relative;
  background: #F8F8FE;
}
.image-content .item {
  position: relative;
}
.image-content .item .image {
  height: 39rem;
  aspect-ratio: 5/6;
  position: relative;
}
@media (max-width: 78.98rem) {
  .image-content .item .image {
    aspect-ratio: initial;
  }
}
.image-content .item .image .corner-lt {
  left: 0px;
  top: -1px;
  position: absolute;
}
.image-content .item .image .corner-rb {
  right: 0px;
  bottom: -1px;
  position: absolute;
}
@media (max-width: 63.98rem) {
  .image-content .item .image {
    height: 17rem;
    width: 100%;
    aspect-ratio: initial;
  }
}
.image-content .item .image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.image-content .item .title {
  font-size: 1.2em;
  font-weight: 600;
  text-transform: uppercase;
}
.image-content .item .text {
  font-weight: 600;
  font-size: 1rem;
}

.history {
  position: relative;
}
.history .title-h2 {
  margin: auto;
}
@media (min-width: 64rem) {
  .history .elems {
    padding-top: 10rem;
  }
}
.history .elems > .elem {
  transition: opacity 0.3s ease;
  opacity: 1;
  z-index: 1;
  /*.year {
            font-size: 3rem;
            line-height: 120%;
            font-weight: 600;
            margin: auto;
            text-transform: uppercase;
        }*/
}
@media (min-width: 64rem) {
  .history .elems > .elem {
    position: sticky;
    top: 50vh;
    transform: translateY(-50%);
  }
}
.history .elems > .elem.fade-out {
  opacity: 0;
}
.history .elems > .elem .image-elem {
  height: 100%;
}
@media (min-width: 64rem) {
  .history .elems > .elem .image-elem {
    aspect-ratio: 4/3;
  }
}
@media (max-width: 63.98rem) {
  .history .elems > .elem .image-elem {
    height: 15rem;
  }
}
.history .elems > .elem .image-elem img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
@media (max-width: 63.98rem) {
  .history .elems > .elem .image-elem img {
    height: 15rem;
  }
}
.history .elems > .elem .logo {
  margin: auto;
}
.history .elems > .elem .logo img {
  width: 100%;
  max-width: 9rem;
  max-height: 4rem;
  object-fit: contain;
}
.history .elems > .elem .item {
  background: #fff;
  display: flex;
  align-items: center;
  box-shadow: 0 0 60px -12px rgba(50, 50, 93, 0.19);
  height: 100%;
}
@media (min-width: 64rem) {
  .history .elems > .elem .item {
    gap: 0;
  }
}
@media (min-width: 64rem) {
  .history .elems > .elem .item .h100 {
    height: 100%;
  }
}
.history .elems > .elem .item .title {
  font-size: 1.7rem;
  font-weight: 600;
  line-height: 2.3rem;
  text-transform: uppercase;
}
.history .elems > .elem .item .text {
  font-size: 1.2rem;
  line-height: 120%;
}

.hero-home {
  overflow: hidden;
  position: relative;
}
.hero-home::before {
  content: "";
  inset: 0;
  position: absolute;
  background-color: #000;
  opacity: 0.2;
  z-index: 1;
}
.hero-home .image-content {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-home .image-content img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 47.98rem) {
  .hero-home .image-content img {
    object-position: 34% center;
  }
}
.hero-home .image-content .filter {
  content: "";
  inset: 0;
  position: absolute;
  background-color: #000;
  z-index: 1;
  opacity: 0;
}
.hero-home .infos-content {
  z-index: 1;
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.hero-home .infos-content .container .title-h1 {
  color: #fff;
  margin: 0;
  position: absolute;
  bottom: 3rem;
  width: 100%;
}
.hero-home .infos-content .container .title-h1 strong {
  display: block;
}
@media (max-width: 47.98rem) {
  .hero-home .infos-content .container .title-h1 strong {
    top: 0;
    position: relative;
    text-align: center;
  }
}
.hero-home .infos-content .container .title-h1 strong:last-of-type {
  text-align: right;
}
@media (max-width: 47.98rem) {
  .hero-home .infos-content .container .title-h1 strong:last-of-type {
    text-align: left;
  }
}
.hero-home .infos-content .shape {
  position: absolute;
  top: 16%;
  right: -4%;
  bottom: 0;
  width: 1093px;
  height: 1560px;
  z-index: 1;
  display: block;
  opacity: 0.5;
}
@media (max-width: 63.98rem) {
  .hero-home .infos-content .shape {
    left: 1rem;
  }
}
.hero-home .infos-content .shape svg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.hero-home .infos-content .shape svg [fill] {
  fill: white;
}
.hero-home .infos-content .shape svg [stroke] {
  stroke: white;
}

.hero-news {
  overflow: hidden;
  position: relative;
}
@media (min-width: 64rem) {
  .hero-news.feature-news-on .infos-content {
    bottom: 9rem;
  }
}
.hero-news .image-content {
  position: relative;
  width: 100%;
  height: 35rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-news .image-content img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.hero-news .image-content .filter {
  content: "";
  inset: 0;
  position: absolute;
  background-color: #000;
  z-index: 1;
  opacity: 0;
}
.hero-news .infos-content {
  z-index: 1;
  position: absolute;
  bottom: 4rem;
  left: 0;
  right: 0;
}
@media (max-width: 63.98rem) {
  .hero-news .infos-content {
    bottom: 2rem;
  }
}
.hero-news .infos-content .title {
  font-size: 3rem;
  line-height: 100%;
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 35.98rem) {
  .hero-news .infos-content .title {
    font-size: 2.5rem;
  }
}
.hero-news .infos-content .introduction {
  font-size: 1.125rem;
  color: white;
}

.hero-post {
  overflow: hidden;
  position: relative;
}
.hero-post .image-content {
  position: relative;
  width: 100%;
  height: 35rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #D26F4E;
}
@media (max-width: 63.98rem) {
  .hero-post .image-content {
    height: 25rem;
  }
}
.hero-post .image-content .shape2 {
  position: absolute;
  top: -210%;
  left: initial;
  right: -100%;
  width: 140%;
  z-index: 0;
  display: block;
  opacity: 0.1;
}
@media (max-width: 63.98rem) {
  .hero-post .image-content .shape2 {
    left: 1rem;
  }
}
.hero-post .image-content .shape2 svg {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.hero-post .image-content .shape2 svg [fill] {
  fill: #fff;
}
.hero-post .image-content .shape2 svg [stroke] {
  stroke: #fff;
}
.hero-post .infos-content {
  z-index: 1;
  position: absolute;
  bottom: 6rem;
  left: 0;
  right: 0;
}
.hero-post .infos-content .back {
  color: #fff;
  font-size: 0.875rem;
}
@media (max-width: 63.98rem) {
  .hero-post .infos-content .back {
    text-align: center;
    display: block;
  }
}
.hero-post .infos-content .back svg {
  margin-right: 0.3rem;
}
.hero-post .infos-content .back svg path {
  fill: #fff;
}
.hero-post .infos-content .back:hover {
  opacity: 0.7;
  transition: all ease 0.6s;
}
.hero-post .infos-content .post-card-details {
  font-size: 0.875rem;
  display: block;
}
@media (max-width: 63.98rem) {
  .hero-post .infos-content .post-card-details {
    text-align: center;
  }
}
.hero-post .infos-content .post-card-details .post-card-cat,
.hero-post .infos-content .post-card-details .post-card-date {
  color: #fff;
  font-size: 0.875rem;
  display: block;
  display: inline-block;
  vertical-align: middle;
}
.hero-post .infos-content .post-card-details .post-card-date span {
  padding: 0 0.4rem;
  display: inline-block;
}
.hero-post .infos-content .title {
  font-size: 3rem;
  line-height: 3.75rem;
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
}
@media (max-width: 78.98rem) {
  .hero-post .infos-content .title {
    font-size: 2rem;
    line-height: 100%;
  }
}
@media (max-width: 63.98rem) {
  .hero-post .infos-content .title {
    font-size: 1.8rem;
    text-align: center;
  }
}

.page-template-default .hero-default {
  overflow: hidden;
  position: relative;
}
.page-template-default .hero-default .image-content {
  position: relative;
  width: 100%;
  height: 100%;
  max-height: 35rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-template-default .hero-default .image-content img {
  height: 100%;
  width: 100%;
  min-height: 20rem;
  object-fit: cover;
}
.page-template-default .hero-default .image-content .filter {
  content: "";
  inset: 0;
  position: absolute;
  background-color: #000;
  z-index: 1;
  opacity: 0.2;
}
.page-template-default .hero-default .infos-content {
  z-index: 1;
  position: absolute;
  bottom: 2rem;
  left: 0;
  right: 0;
}
@media (max-width: 63.98rem) {
  .page-template-default .hero-default .infos-content .row {
    display: flex;
    align-items: center;
    vertical-align: middle;
  }
}
.page-template-default .hero-default .infos-content .row .title {
  font-size: 3rem;
  line-height: 100%;
  font-weight: 600;
  color: #fff;
  text-transform: uppercase;
}
@media (max-width: 63.98rem) {
  .page-template-default .hero-default .infos-content .row .title {
    margin-top: 5rem;
    position: relative;
  }
}
@media (max-width: 47.98rem) {
  .page-template-default .hero-default .infos-content .row .title {
    font-size: 2rem;
  }
}
@media (max-width: 35.98rem) {
  .page-template-default .hero-default .infos-content .row .title {
    font-size: 1.7rem;
  }
}
.page-template-default .hero-default .infos-content .row .introduction {
  font-size: 1.125rem;
  color: white;
}

.page-template-default:not(.home):not(.home ~ .page-template-default) .header .logo {
  display: none;
}
.page-template-default:not(.home):not(.home ~ .page-template-default) .header .logo_alt {
  display: flex;
}
.page-template-default:not(.home):not(.home ~ .page-template-default) .header .other-sites {
  border-color: #e5e5e5;
  padding: 0.6rem 0 0.5rem 0;
}
.page-template-default:not(.home):not(.home ~ .page-template-default) .header .other-sites .elem {
  color: #191943;
}
.page-template-default:not(.home):not(.home ~ .page-template-default) .header .button-contact {
  color: #fff !important;
  background-color: #191943 !important;
  border: 1px solid #191943 !important;
}
.page-template-default:not(.home):not(.home ~ .page-template-default) .header .button-contact:hover {
  background-color: #fff !important;
  color: #191943 !important;
}
.page-template-default:not(.home):not(.home ~ .page-template-default) .header nav button,
.page-template-default:not(.home):not(.home ~ .page-template-default) .header nav .menu-link {
  color: #191943;
}

.hero-expertise {
  overflow: hidden;
  position: relative;
}
.hero-expertise::before {
  content: "";
  inset: 0;
  position: absolute;
  background-color: #000;
  opacity: 0.2;
  z-index: 1;
}
.hero-expertise .image-content {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-expertise .image-content img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-expertise .infos-content {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: 0 1rem;
}
.hero-expertise .infos-content .container .title-h2 {
  color: #fff;
}
.hero-expertise .infos-content .container .text_left {
  color: #fff;
  font-size: 1.3125rem;
}
.hero-expertise .infos-content .container .text_right {
  color: #fff;
  font-size: 1rem;
}
.hero-expertise .infos-content .others.swiper {
  position: absolute;
  bottom: 3rem;
  width: 100%;
}
.hero-expertise .infos-content .others.swiper .swiper-wrapper {
  display: flex;
}
.hero-expertise .infos-content .others.swiper .swiper-button-prev,
.hero-expertise .infos-content .others.swiper .swiper-button-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #fff;
  border-radius: 50%;
  cursor: pointer;
  z-index: 3;
  background: rgba(0, 0, 0, 0.3);
}
.hero-expertise .infos-content .others.swiper .swiper-button-prev svg,
.hero-expertise .infos-content .others.swiper .swiper-button-next svg {
  color: #fff;
  width: 8px;
  height: 13px;
}
.hero-expertise .infos-content .others.swiper .swiper-button-prev:hover,
.hero-expertise .infos-content .others.swiper .swiper-button-next:hover {
  color: #000066;
  background-color: #fff;
  border-color: #fff;
}
.hero-expertise .infos-content .others.swiper .swiper-button-prev:hover svg,
.hero-expertise .infos-content .others.swiper .swiper-button-next:hover svg {
  color: #000066;
}
.hero-expertise .infos-content .others.swiper .swiper-button-prev {
  left: 1rem;
  transform: translateY(-50%) rotate(180deg);
}
.hero-expertise .infos-content .others.swiper .swiper-button-next {
  right: 1rem;
}
.hero-expertise .infos-content .others.swiper .elem {
  position: relative;
  height: 10rem;
}
.hero-expertise .infos-content .others.swiper .elem:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 0%, #000 100%);
  z-index: 1;
}
.hero-expertise .infos-content .others.swiper .elem img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero-expertise .infos-content .others.swiper .elem .title {
  position: absolute;
  bottom: 1rem;
  left: 1rem;
  color: #fff;
  font-size: 1.1875rem;
  font-weight: 600;
  text-transform: uppercase;
  z-index: 2;
}
@media (max-width: 63.98rem) {
  .hero-expertise .infos-content .others.swiper .elem .title {
    font-size: 1rem;
    padding: 0.7rem;
    bottom: 0;
    left: 0;
  }
}

.hero-modular {
  position: relative;
}
.hero-modular::before {
  content: "";
  inset: 0;
  position: absolute;
  background-color: #000;
  opacity: 0.2;
  z-index: 1;
  height: 100vh;
}
.hero-modular .image-content-hero {
  position: relative;
  width: 100%;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-modular .image-content-hero img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.hero-modular .infos-content {
  z-index: 1;
  position: absolute;
  inset: 0;
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: end;
  justify-content: center;
  overflow: hidden;
}
@media (max-width: 47.98rem) {
  .hero-modular .infos-content .container {
    display: flex;
    align-items: center;
    vertical-align: middle;
  }
}
.hero-modular .infos-content .title-h2 {
  font-size: 3rem;
  line-height: 120%;
  font-style: normal;
  font-weight: 600;
  color: white;
}
.hero-modular .infos-content .text {
  font-size: 1.3125rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1.75rem;
  color: white;
}

.error404 .header {
  background-color: #191943;
}
.error404 .page-404 {
  height: 100vh;
  vertical-align: middle;
  align-items: center;
  display: flex;
  margin: auto;
}
.error404 .page-404-title {
  font-size: 8vw;
  font-weight: 300;
  line-height: 1;
}
.error404 .page-404-link {
  text-decoration: underline;
  text-underline-offset: 0.25rem;
}

.page-template-contact .infos-content {
  color: white;
}
@media (min-width: 64rem) {
  .page-template-contact .infos-content {
    bottom: 8rem;
  }
}
.page-template-contact .text {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.875rem;
}
.page-template-contact .text a {
  text-decoration: underline;
}
.page-template-contact .infos .title-address {
  color: #000066;
  opacity: 0.9;
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.8125rem;
  text-transform: uppercase;
}
.page-template-contact .infos .main-address {
  display: flex;
  vertical-align: middle;
  align-items: center;
  width: 16rem;
}
.page-template-contact .infos .main-phone {
  display: flex;
  vertical-align: middle;
  align-items: center;
  width: 16rem;
}
.page-template-contact .infos .list-places .places {
  padding: 1.25rem 2rem;
  border: 1px solid #ddd;
  cursor: pointer;
}
.page-template-contact .infos .list-places .places .place {
  color: #000066;
  font-size: 1.1875rem;
  line-height: 1.8125rem;
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
}
.page-template-contact .infos .list-places .places .place:after {
  content: "";
  position: absolute;
  z-index: 0;
  right: 0;
  top: calc(50% - 0.25rem);
  width: 0.8rem;
  height: 0.5rem;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../img/arrow.svg);
  transition: transform 0.3s ease;
}
.page-template-contact .infos .list-places .places.is-open .place:after {
  transform: rotate(180deg);
}
.page-template-contact .infos .list-places .places .phone {
  color: #000066;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1rem;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease, margin-top 0.3s ease;
}
@media (max-width: 63.98rem) {
  .page-template-contact .infos .list-places .places .phone {
    margin-top: 0.5rem;
  }
}
.page-template-contact .infos .list-places .places:not(.is-open) .phone {
  margin-top: 0;
}
.page-template-contact .infos .list-places .places.is-open .phone {
  max-height: 100px;
}
.page-template-contact .infos svg {
  height: 2.5rem;
  min-width: 2.5rem;
  padding: 0.5rem;
  display: flex;
  vertical-align: middle;
  align-items: center;
  border-radius: 4.73231rem;
  background: #f0f6ff;
}
.page-template-contact .infos svg.icon [fill] {
  fill: #000066 !important;
}
.page-template-contact .phone {
  font-size: 1.0625rem;
  font-weight: 400;
  line-height: 1.5rem;
  display: flex;
  vertical-align: middle;
  align-items: center;
}
.page-template-contact .phone .img {
  width: 3.5rem;
  height: 3.5rem;
}
.page-template-contact .phone .infos-secur {
  cursor: pointer;
  transition: all ease 0.4s;
}
.page-template-contact .phone .infos-secur:hover {
  opacity: 0.6;
}
.page-template-contact form {
  box-shadow: 0px 48px 100px 0px rgba(9, 0, 58, 0.09);
  background: white;
}
@media (min-width: 64rem) {
  .page-template-contact form {
    padding: 3rem;
    margin-top: -11rem;
  }
}
@media (max-width: 63.98rem) {
  .page-template-contact form {
    padding: 1rem;
  }
}

.ecoindex-grade {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.ecoindex-grade-item {
  display: flex;
  width: clamp(3rem, 5vw, 5rem);
  aspect-ratio: 1;
  padding: 0.75rem;
  border: 1px solid;
  border-radius: 0.5rem;
  justify-content: flex-end;
  align-items: flex-end;
  font-weight: 600;
  line-height: 1;
}
.ecoindex-grade-item:nth-child(1) {
  color: #4D9E30;
}
.ecoindex-grade-item:nth-child(1).ecoindex-grade-item--active {
  background-color: #4D9E30;
  color: white;
}
.ecoindex-grade-item:nth-child(2) {
  color: #50B84B;
}
.ecoindex-grade-item:nth-child(2).ecoindex-grade-item--active {
  background-color: #50B84B;
  color: white;
}
.ecoindex-grade-item:nth-child(3) {
  color: #CADB2A;
}
.ecoindex-grade-item:nth-child(3).ecoindex-grade-item--active {
  background-color: #CADB2A;
  color: white;
}
.ecoindex-grade-item:nth-child(4) {
  color: #F6EB13;
}
.ecoindex-grade-item:nth-child(4).ecoindex-grade-item--active {
  background-color: #F6EB13;
  color: white;
}
.ecoindex-grade-item:nth-child(5) {
  color: #FECD07;
}
.ecoindex-grade-item:nth-child(5).ecoindex-grade-item--active {
  background-color: #FECD07;
  color: white;
}
.ecoindex-grade-item:nth-child(6) {
  color: #FA9F47;
}
.ecoindex-grade-item:nth-child(6).ecoindex-grade-item--active {
  background-color: #FA9F47;
  color: white;
}
.ecoindex-grade-item:nth-child(7) {
  color: #EF3A3B;
}
.ecoindex-grade-item:nth-child(7).ecoindex-grade-item--active {
  background-color: #EF3A3B;
  color: white;
}

.home .numbers {
  padding-bottom: 16rem;
}
.home .partners {
  padding-block: 4rem;
  background-color: #191943;
}
.home .partners .container {
  margin-top: -16rem;
}
@media (max-width: 47.98rem) {
  .home .partners .container {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}
.home .partners .container .slider-partners {
  padding: 3rem 0 1rem 0;
}
.home .slider-full {
  height: initial !important;
}
.home .slider-full .image-full {
  aspect-ratio: 16/9;
  height: initial !important;
}
@media (min-width: 64rem) {
  .home .slider-full .buttons-slider {
    bottom: 2rem;
  }
}
@media (max-width: 63.98rem) {
  .home .slider-full .buttons-slider {
    right: 0;
    left: 0;
    bottom: 0;
    position: relative !important;
  }
}
.home .slider-full .buttons-slider .row {
  width: fit-content;
  margin: auto;
}
.home .slider-full .buttons-slider .row .swiper-button {
  gap: 1rem;
}
.home .slider-full .buttons-slider .row .swiper-button .swiper-button-full-pv,
.home .slider-full .buttons-slider .row .swiper-button .swiper-button-full-nt {
  border: 1px solid #000066;
  margin: 1rem 0;
}

@media (min-width: 48rem) {
  .blog #filters,
  .archive #filters {
    display: flex;
  }
}
.blog #filters label,
.archive #filters label {
  display: flex;
  cursor: pointer;
  transition: all ease 0.4s;
  margin-right: 1rem;
  font-size: 0.75rem;
  padding: 0.5rem 1rem;
  justify-content: center;
  align-items: center;
  color: #000066;
  border: 1px solid #000066;
  background: #fff;
  text-transform: uppercase;
  vertical-align: middle;
  align-items: center;
}
@media (max-width: 47.98rem) {
  .blog #filters label,
  .archive #filters label {
    width: 49%;
    margin-bottom: 0.3rem;
    margin-right: 0rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 2.6rem;
    vertical-align: middle;
    padding: 0.7rem 0.1rem;
  }
}
@media (max-width: 35.98rem) {
  .blog #filters label,
  .archive #filters label {
    width: 48%;
    font-size: 0.6rem;
  }
}
.blog #filters label:hover,
.archive #filters label:hover {
  color: #fff;
  background-color: #000066;
}
.blog #filters input,
.archive #filters input {
  display: none;
}
.blog #filters input[type=radio]:checked + label,
.archive #filters input[type=radio]:checked + label {
  color: #fff;
  background-color: #000066;
}
.blog .text-seo,
.archive .text-seo {
  border-top: 1px solid #e8e8e8;
}

.single-post .single-news-container {
  overflow: hidden;
}
.single-post .single-news-container .image-container {
  width: 100%;
  display: block;
  margin-top: -3rem;
}
.single-post .single-news-container .image-container img {
  width: 100%;
  height: 100%;
  display: block;
}
.single-post .more-news {
  border-top: 1px solid #f2f0ea;
}
@media (min-width: 64rem) {
  .single-post .more-news .btn-more-news .btn {
    float: right;
  }
}
.single-post .service-offer .btn {
  color: #fff;
}
.single-post .service-offer .btn:after {
  content: "";
  background-color: #fff;
}

/*# sourceMappingURL=app.css.map*/