@charset "UTF-8";
.navbar .burger-icon rect {
  x: 0;
  rx: 5px;
  width: 100px;
  height: 16px;
  transform-origin: center;
  transition: y 0.3s 0.3s, opacity 0.3s, rotate 0.3s;
}
.navbar .burger-icon .rect-1 {
  y: 0;
}
.navbar .burger-icon .rect-2 {
  y: 40px;
}
.navbar .burger-icon .rect-3 {
  y: 80px;
}
.navbar [aria-expanded=true] .burger-icon rect {
  transition: y 0.3s, opacity 0.3s, rotate 0.3s 0.3s cubic-bezier(0.55, -0.65, 0, 2.32);
}
.navbar [aria-expanded=true] .burger-icon .rect-1 {
  y: 40px;
  rotate: 45deg;
}
.navbar [aria-expanded=true] .burger-icon .rect-2 {
  opacity: 0;
}
.navbar [aria-expanded=true] .burger-icon .rect-3 {
  y: 40px;
  rotate: -45deg;
}

:root {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #dc3545;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #198754;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #004d9e;
  --bs-secondary: #3b3939;
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 0, 77, 158;
  --bs-secondary-rgb: 59, 57, 57;
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: rgb(0, 30.8, 63.2);
  --bs-secondary-text-emphasis: rgb(23.6, 22.8, 22.8);
  --bs-success-text-emphasis: rgb(10, 54, 33.6);
  --bs-info-text-emphasis: rgb(5.2, 80.8, 96);
  --bs-warning-text-emphasis: rgb(102, 77.2, 2.8);
  --bs-danger-text-emphasis: rgb(88, 21.2, 27.6);
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: rgb(204, 219.4, 235.6);
  --bs-secondary-bg-subtle: rgb(215.8, 215.4, 215.4);
  --bs-success-bg-subtle: rgb(209, 231, 220.8);
  --bs-info-bg-subtle: rgb(206.6, 244.4, 252);
  --bs-warning-bg-subtle: rgb(255, 242.6, 205.4);
  --bs-danger-bg-subtle: rgb(248, 214.6, 217.8);
  --bs-light-bg-subtle: rgb(251.5, 252, 252.5);
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: rgb(153, 183.8, 216.2);
  --bs-secondary-border-subtle: rgb(176.6, 175.8, 175.8);
  --bs-success-border-subtle: rgb(163, 207, 186.6);
  --bs-info-border-subtle: rgb(158.2, 233.8, 249);
  --bs-warning-border-subtle: rgb(255, 230.2, 155.8);
  --bs-danger-border-subtle: rgb(241, 174.2, 180.6);
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: "Inter", sans-serif;
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: #3b3939;
  --bs-body-color-rgb: 59, 57, 57;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(59, 57, 57, 0.75);
  --bs-secondary-color-rgb: 59, 57, 57;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(59, 57, 57, 0.5);
  --bs-tertiary-color-rgb: 59, 57, 57;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: #3b3939;
  --bs-link-color: #004d9e;
  --bs-link-color-rgb: 0, 77, 158;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #3b3939;
  --bs-link-hover-color-rgb: 59, 57, 57;
  --bs-code-color: #d63384;
  --bs-highlight-color: #3b3939;
  --bs-highlight-bg: rgb(255, 242.6, 205.4);
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #004d9e;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(0, 77, 158, 0.25);
  --bs-form-valid-color: #198754;
  --bs-form-valid-border-color: #198754;
  --bs-form-invalid-color: #dc3545;
  --bs-form-invalid-border-color: #dc3545;
}

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

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  text-align: var(--bs-body-text-align);
  background-color: var(--bs-body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

 h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--bs-heading-color);
}

h1, .h1 {
  font-size: calc(1.425rem + 2.1vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 3rem;
  }
}

h2, .h2 {
  font-size: calc(1.35rem + 1.2vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 2.25rem;
  }
}

h3, .h3 {
  font-size: calc(1.3125rem + 0.75vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 1.875rem;
  }
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}


ul {
  padding-left: 2rem;
}


ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}


ul ul {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

b {
  font-weight: bolder;
}

small, .small {
  font-size: 0.875em;
}

mark, .mark {
  padding: 0.1875em;
  color: var(--bs-highlight-color);
  background-color: var(--bs-highlight-bg);
}

a {
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
  text-decoration: underline;
}
a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}


code {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
}

code {
  font-size: 0.875em;
  color: var(--bs-code-color);
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-secondary-color);
  text-align: left;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}
select:disabled {
  opacity: 1;
}

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

textarea {
  resize: vertical;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0;
}

::-webkit-inner-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

::file-selector-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

iframe {
  border: 0;
}

[hidden] {
  display: none !important;
}

.container, .banner, .middlebar, .topbar, .menu-header, .footer {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
   .container, .banner, .middlebar, .topbar, .menu-header, .footer {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
   .container, .banner, .middlebar, .topbar, .menu-header, .footer {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
   .container, .banner, .middlebar, .topbar, .menu-header, .footer {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
   .container, .banner, .middlebar, .topbar, .menu-header, .footer {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
   .container, .banner, .middlebar, .topbar, .menu-header, .footer {
    max-width: 1320px;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}
.form-label {
  margin-bottom: 0.5rem;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--bs-body-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: 0;
  box-shadow: var(--bs-box-shadow-inset);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: rgb(127.5, 166, 206.5);
  outline: 0;
  box-shadow: var(--bs-box-shadow-inset), 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.5em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.form-control::-moz-placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: var(--bs-body-color);
  background-color: var(--bs-tertiary-bg);
  background-image: var(--bs-gradient);
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: var(--bs-border-width);
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--bs-secondary-bg);
}

textarea.form-control {
  min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));
}

.form-check {
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-top: 0.25em;
  vertical-align: top;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: var(--bs-form-check-bg);
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: var(--bs-border-width) solid var(--bs-border-color);
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: rgb(127.5, 166, 206.5);
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
}
.form-check-input:checked {
  background-color: #004d9e;
  border-color: #004d9e;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e"), var(--bs-gradient);
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"), var(--bs-gradient);
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #004d9e;
  border-color: #004d9e;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"), var(--bs-gradient);
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: transparent;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  -webkit-appearance: none;
          appearance: none;
  background-color: #004d9e;
  background-image: var(--bs-gradient);
  border: 0;
  border-radius: 1rem;
  box-shadow: 0 0.1rem 0.25rem rgba(0, 0, 0, 0.1);
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: rgb(178.5, 201.6, 225.9);
  background-image: var(--bs-gradient);
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
  box-shadow: var(--bs-box-shadow-inset);
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  -moz-appearance: none;
       appearance: none;
  background-color: #004d9e;
  background-image: var(--bs-gradient);
  border: 0;
  border-radius: 1rem;
  box-shadow: 0 0.1rem 0.25rem rgba(0, 0, 0, 0.1);
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: rgb(178.5, 201.6, 225.9);
  background-image: var(--bs-gradient);
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-secondary-bg);
  border-color: transparent;
  border-radius: 1rem;
  box-shadow: var(--bs-box-shadow-inset);
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: var(--bs-secondary-color);
}
.form-range:disabled::-moz-range-thumb {
  background-color: var(--bs-secondary-color);
}

.btn, .middlebar .menu-link, .button, .error__message a, .button-backtotop {
  --bs-btn-padding-x: 12px;
  --bs-btn-padding-y: 5px;
  --bs-btn-font-family: Inter, sans-serif;
  --bs-btn-font-size: 0.875rem;
  --bs-btn-font-weight: 700;
  --bs-btn-line-height: 150%;
  --bs-btn-color: #3b3939;
  --bs-btn-bg: transparent;
  --bs-btn-border-width: 1px;
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: 0;
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  background-image: var(--bs-gradient);
  box-shadow: var(--bs-btn-box-shadow);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn, .middlebar .menu-link, .button, .error__message a, .button-backtotop {
    transition: none;
  }
}
.btn:hover, .middlebar .menu-link:hover, .button:hover, .error__message a:hover, .button-backtotop:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}
.btn:focus-visible, .middlebar .menu-link:focus-visible, .button:focus-visible, .error__message a:focus-visible, .button-backtotop:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  background-image: var(--bs-gradient);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-box-shadow), var(--bs-btn-focus-box-shadow);
}
 :not(.btn-check) + .btn:active, .middlebar :not(.btn-check) + .menu-link:active, :not(.btn-check) + .button:active, .error__message :not(.btn-check) + a:active, :not(.btn-check) + .button-backtotop:active, .btn:first-child:active, .middlebar .menu-link:first-child:active, .button:first-child:active, .error__message a:first-child:active, .button-backtotop:first-child:active, .btn.active, .btn.pagination__item--active, .middlebar .active.menu-link, .middlebar .menu-link.pagination__item--active, .active.button, .button.pagination__item--active, .error__message a.active, .error__message a.pagination__item--active, .active.button-backtotop, .button-backtotop.pagination__item--active, .btn.show, .middlebar .show.menu-link, .show.button, .error__message a.show, .show.button-backtotop {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  background-image: none;
  border-color: var(--bs-btn-active-border-color);
  box-shadow: var(--bs-btn-active-shadow);
}
 :not(.btn-check) + .btn:active:focus-visible, .middlebar :not(.btn-check) + .menu-link:active:focus-visible, :not(.btn-check) + .button:active:focus-visible, .error__message :not(.btn-check) + a:active:focus-visible, :not(.btn-check) + .button-backtotop:active:focus-visible, .btn:first-child:active:focus-visible, .middlebar .menu-link:first-child:active:focus-visible, .button:first-child:active:focus-visible, .error__message a:first-child:active:focus-visible, .button-backtotop:first-child:active:focus-visible, .btn.active:focus-visible, .btn.pagination__item--active:focus-visible, .middlebar .active.menu-link:focus-visible, .middlebar .menu-link.pagination__item--active:focus-visible, .active.button:focus-visible, .button.pagination__item--active:focus-visible, .error__message a.active:focus-visible, .error__message a.pagination__item--active:focus-visible, .active.button-backtotop:focus-visible, .button-backtotop.pagination__item--active:focus-visible, .btn.show:focus-visible, .middlebar .show.menu-link:focus-visible, .show.button:focus-visible, .error__message a.show:focus-visible, .show.button-backtotop:focus-visible {
  box-shadow: var(--bs-btn-active-shadow), var(--bs-btn-focus-box-shadow);
}
.btn:disabled, .middlebar .menu-link:disabled, .button:disabled, .error__message a:disabled, .button-backtotop:disabled, .btn.disabled, .btn.pagination__item--disabled, .middlebar .disabled.menu-link, .middlebar .menu-link.pagination__item--disabled, .disabled.button, .button.pagination__item--disabled, .error__message a.disabled, .error__message a.pagination__item--disabled, .disabled.button-backtotop, .button-backtotop.pagination__item--disabled {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  background-image: none;
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
  box-shadow: none;
}

 .button, .error__message a, .button-backtotop {
  --bs-btn-color: #fff;
  --bs-btn-bg: #004d9e;
  --bs-btn-border-color: #004d9e;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #004d9e;
  --bs-btn-hover-border-color: #004d9e;
  --bs-btn-focus-shadow-rgb: 38, 104, 173;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #004d9e;
  --bs-btn-active-border-color: #004d9e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #004d9e;
  --bs-btn-disabled-border-color: #004d9e;
}

 .middlebar .menu-link {
  --bs-btn-color: #004d9e;
  --bs-btn-border-color: #004d9e;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #004d9e;
  --bs-btn-hover-border-color: #004d9e;
  --bs-btn-focus-shadow-rgb: 0, 77, 158;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #004d9e;
  --bs-btn-active-border-color: #004d9e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #004d9e;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #004d9e;
  --bs-gradient: none;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.nav, .page-produit__accessoires, .searchbar__items, .links__items, .files__items, .middlebar .laravel-menu, .topbar__nav-langues, .topbar__nav-websites, .topbar__nav-social, .menu-header, .footer__infos .laravel-menu {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link, .links__item-link, .files__item-link, .menu-header .menu-link, .footer__infos .menu-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link, .links__item-link, .files__item-link, .menu-header .menu-link, .footer__infos .menu-link {
    transition: none;
  }
}
.nav-link:hover, .links__item-link:hover, .files__item-link:hover, .menu-header .menu-link:hover, .footer__infos .menu-link:hover, .nav-link:focus, .links__item-link:focus, .files__item-link:focus, .menu-header .menu-link:focus, .footer__infos .menu-link:focus {
  color: var(--bs-nav-link-hover-color);
}
.nav-link:focus-visible, .links__item-link:focus-visible, .files__item-link:focus-visible, .menu-header .menu-link:focus-visible, .footer__infos .menu-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
}
.nav-link.disabled, .nav-link.pagination__item--disabled, .disabled.links__item-link, .links__item-link.pagination__item--disabled, .disabled.files__item-link, .files__item-link.pagination__item--disabled, .menu-header .disabled.menu-link, .menu-header .menu-link.pagination__item--disabled, .footer__infos .disabled.menu-link, .footer__infos .menu-link.pagination__item--disabled, .nav-link:disabled, .links__item-link:disabled, .files__item-link:disabled, .menu-header .menu-link:disabled, .footer__infos .menu-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0;
  --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
  --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
  --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
  --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-padding-y: 0;
  --bs-navbar-brand-margin-end: 0;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-nav-link-padding-x: 0;
  --bs-navbar-toggler-padding-y: 0;
  --bs-navbar-toggler-padding-x: 0;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2859, 57, 57, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
  --bs-navbar-toggler-border-radius: 0;
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
  background-image: var(--bs-gradient);
}
.navbar > .container, .navbar > .banner, .navbar > .middlebar, .navbar > .topbar, .navbar > .menu-header, .navbar > .footer {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  color: var(--bs-navbar-brand-hover-color);
}

.navbar-collapse {
  flex-grow: 1;
  flex-basis: 100%;
  align-items: center;
}

.navbar-toggler {
  padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
  font-size: var(--bs-navbar-toggler-font-size);
  line-height: 1;
  color: var(--bs-navbar-color);
  background-color: transparent;
  border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
  border-radius: var(--bs-navbar-toggler-border-radius);
  transition: var(--bs-navbar-toggler-transition);
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: #fff;
  --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: 0;
  --bs-accordion-inner-border-radius: calc(0 - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 10px;
  --bs-accordion-btn-color: var(--bs-body-color);
  --bs-accordion-btn-bg: transparent;
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%233b3939' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='rgb%280, 30.8, 63.2%29' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--bs-primary-text-emphasis);
  --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 1rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

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

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type > .accordion-header .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type > .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 10px;
  --bs-breadcrumb-margin-bottom: 0;
  --bs-breadcrumb-font-size: 0.875rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius);
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: var(--bs-breadcrumb-item-padding-x);
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: var(--bs-breadcrumb-item-padding-x);
  color: var(--bs-breadcrumb-divider-color);
  content: var(--bs-breadcrumb-divider, ">") /* rtl: var(--bs-breadcrumb-divider, ">") */;
}
.breadcrumb-item.active, .breadcrumb-item.pagination__item--active {
  color: var(--bs-breadcrumb-item-active-color);
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 1rem;
  --bs-pagination-color: #3b3939;
  --bs-pagination-bg: transparent;
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: transparent;
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: #004d9e;
  --bs-pagination-hover-bg: transparent;
  --bs-pagination-hover-border-color: #004d9e;
  --bs-pagination-focus-color: #004d9e;
  --bs-pagination-focus-bg: transparent;
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(0, 77, 158, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #004d9e;
  --bs-pagination-active-border-color: #004d9e;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: transparent;
  --bs-pagination-disabled-border-color: transparent;
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link, .pagination__link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link, .pagination__link {
    transition: none;
  }
}
.page-link:hover, .pagination__link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}
.page-link:focus, .pagination__link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}
.page-link.active, .active.pagination__link, .page-link.pagination__item--active, .pagination__item--active.pagination__link, .active > .page-link, .active > .pagination__link, .pagination__item--active > .page-link, .pagination__item--active > .pagination__link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  background-image: var(--bs-gradient);
  border-color: var(--bs-pagination-active-border-color);
}
.page-link.disabled, .disabled.pagination__link, .page-link.pagination__item--disabled, .pagination__item--disabled.pagination__link, .disabled > .page-link, .disabled > .pagination__link, .pagination__item--disabled > .page-link, .pagination__item--disabled > .pagination__link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link, .page-item:not(:first-child) .pagination__link, .pagination__item:not(:first-child) .page-link, .pagination__item:not(:first-child) .pagination__link {
  margin-left: calc(-1 * var(--bs-border-width));
}
.page-item:first-child .page-link, .page-item:first-child .pagination__link, .pagination__item:first-child .page-link, .pagination__item:first-child .pagination__link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}
.page-item:last-child .page-link, .page-item:last-child .pagination__link, .pagination__item:last-child .page-link, .pagination__item:last-child .pagination__link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.toast {
  --bs-toast-zindex: 1090;
  --bs-toast-padding-x: 0.75rem;
  --bs-toast-padding-y: 0.5rem;
  --bs-toast-spacing: 1.5rem;
  --bs-toast-max-width: 350px;
  --bs-toast-font-size: 1rem;
  --bs-toast-color: #fff;
  --bs-toast-bg: rgba(0, 77, 158, 0.95);
  --bs-toast-border-width: var(--bs-border-width);
  --bs-toast-border-color: var(--bs-border-color-translucent);
  --bs-toast-border-radius: var(--bs-border-radius);
  --bs-toast-box-shadow: var(--bs-box-shadow);
  --bs-toast-header-color: var(--bs-secondary-color);
  --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-header-border-color: var(--bs-border-color-translucent);
  width: var(--bs-toast-max-width);
  max-width: 100%;
  font-size: var(--bs-toast-font-size);
  color: var(--bs-toast-color);
  pointer-events: auto;
  background-color: var(--bs-toast-bg);
  background-clip: padding-box;
  border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
  box-shadow: var(--bs-toast-box-shadow);
  border-radius: var(--bs-toast-border-radius);
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  --bs-toast-zindex: 1090;
  position: absolute;
  z-index: var(--bs-toast-zindex);
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

.toast-body {
  padding: var(--bs-toast-padding-x);
  word-wrap: break-word;
}


.spinner-border {
  display: inline-block;
  width: var(--bs-spinner-width);
  height: var(--bs-spinner-height);
  vertical-align: var(--bs-spinner-vertical-align);
  border-radius: 50%;
  animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border {
    --bs-spinner-animation-speed: 1.5s;
  }
}

.visually-hidden, .videos__title {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.visually-hidden:not(caption), .videos__title:not(caption) {
  position: absolute !important;
}
.visually-hidden *, .videos__title * {
  overflow: hidden !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}

.overflow-hidden {
  overflow: hidden !important;
}

.d-flex {
  display: flex !important;
}

.d-none {
  display: none !important;
}

.border {
  border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.m-auto {
  margin: auto !important;
}

/* rtl:begin:remove */

/* rtl:end:remove */
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-body-secondary {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

@media (min-width: 576px) {
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
}
.leaflet-container {
  width: 100%;
  height: 300px;
  z-index: 0;
}

div.leaflet-marker-icon.leaflet-div-icon {
  background-color: transparent;
  border-color: transparent;
}

.leaflet-popup-content-wrapper {
  border-radius: 0 !important;
  border-top: 2px solid #004d9e;
  border-bottom: 2px solid #004d9e;
}
.splide__track {
  text-align: center;
}
.splide__slide {
  display: flex;
  flex-direction: column;
}
.splide__arrow {
  width: auto;
  height: auto;
  padding: 10px;
  border-radius: 0;
  background: none;
  opacity: 1;
}
.splide__arrow svg {
  fill: #004d9e;
  width: 20px;
  height: auto;
}
@media (min-width: 768px) {
  .splide__arrow svg {
    width: 30px;
  }
}
.splide__arrow:hover svg, .splide__arrow:focus svg {
  fill: #004d9e;
}
.splide__arrow--prev {
  left: -40px;
}
@media (min-width: 768px) {
  .splide__arrow--prev {
    left: -50px;
  }
}
.splide__arrow--next {
  right: -40px;
}
@media (min-width: 768px) {
  .splide__arrow--next {
    right: -50px;
  }
}
.splide__pagination {
  -moz-column-gap: 10px;
       column-gap: 10px;
}
.splide__pagination__page {
  width: 16px;
  height: 16px;
  opacity: 1;
  transform: scale(1);
  border: 3px solid #fff;
  background-color: #fff;
}
.splide__pagination__page:hover, .splide__pagination__page:focus, .splide__pagination__page.is-active {
  transform: scale(1);
  background-color: #004d9e;
}
.splide[data-type=images] {
  margin: 0 40px 40px 40px;
}
.splide[data-type=images] .splide__slide {
  padding-top: 5px;
  border-top: 5px solid #004d9e;
}
.splide[data-type=images] .splide__slide a {
  display: inline-block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  cursor: pointer;
}
.splide[data-type=images] .splide__slide a::before, .splide[data-type=images] .splide__slide a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  transition: all 0.2s ease-in-out;
  border-radius: inherit;
  opacity: 0;
}
.splide[data-type=images] .splide__slide a::before {
  background-color: rgba(0, 77, 158, 0.9);
}
.splide[data-type=images] .splide__slide a::after {
  filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
  filter: url('data:image/svg+xml;utf8,      <svg xmlns="http://www.w3.org/2000/svg">        <filter id="recolor" color-interpolation-filters="sRGB">          <feColorMatrix type="matrix" values="            0 0 0 0 1            0 0 0 0 1            0 0 0 0 1            0 0 0 1 0          "/>        </filter>      </svg>      #recolor');
  background-image: url("/images/icons/zoom.svg");
  transform: scale(0.75);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 20% auto;
}
.splide[data-type=images] .splide__slide a:hover::before, .splide[data-type=images] .splide__slide a:hover::after {
  opacity: 1;
}
.splide[data-type=images] .splide__arrow {
  top: calc(50% - 18px);
}
.splide[data-type=images]:not(.is-overflow) .splide__list {
  justify-content: center;
}
.splide[data-type=banner] .splide__track {
  text-align: left;
}
@media (min-width: 992px) {
  .splide[data-type=banner] .splide__track {
    overflow: visible;
  }
}
@media (min-width: 992px) {
  .splide[data-type=banner] .splide__pagination {
    left: calc(50vw + 15px);
    bottom: 20px;
    justify-content: flex-start;
  }
}
.splide[data-type=familles-gamme] .splide__track, .splide[data-type=images-encart-technologie] .splide__track {
  text-align: left;
}
.splide[data-type=familles-gamme] .splide__arrow svg, .splide[data-type=images-encart-technologie] .splide__arrow svg {
  width: 30px;
  fill: rgba(88, 151, 217, 0.6);
}
@media (min-width: 1200px) {
  .splide[data-type=familles-gamme] .splide__arrow svg, .splide[data-type=images-encart-technologie] .splide__arrow svg {
    width: 45px;
  }
}
@media (min-width: 1200px) {
  .splide[data-type=familles-gamme] .splide__arrow--prev, .splide[data-type=images-encart-technologie] .splide__arrow--prev {
    left: -90px;
  }
  .splide[data-type=familles-gamme] .splide__arrow--next, .splide[data-type=images-encart-technologie] .splide__arrow--next {
    right: -90px;
  }
}
.splide[data-type=familles-gamme] .splide__arrow:hover svg, .splide[data-type=familles-gamme] .splide__arrow:focus svg, .splide[data-type=images-encart-technologie] .splide__arrow:hover svg, .splide[data-type=images-encart-technologie] .splide__arrow:focus svg {
  fill: #5897d9;
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes text-shadow-color {
  0% {
    text-shadow: 0.5vw 0.5vw 0 rgb(158, 205.2721518987, 255);
  }
  50% {
    text-shadow: 0.5vw 0.5vw 0 #3b3939;
  }
  100% {
    text-shadow: 0.5vw 0.5vw 0 rgb(158, 205.2721518987, 255);
  }
}
@keyframes skeleton-shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
img {
  max-width: 100%;
  height: auto;
}

svg {
  overflow: visible;
  transition: all 0.2s ease-in-out;
}
svg * {
  transform-box: fill-box;
}

dt {
  font-size: 0.875rem;
  font-weight: bold;
  color: #908B8B;
}

dd {
  font-weight: bold;
}

.required {
  position: relative;
  top: -0.5em;
  font-size: 75%;
  font-weight: normal;
  line-height: 0;
  vertical-align: baseline;
  color: #dc3545;
  white-space: nowrap;
}

.footer {
  -o-border-image: linear-gradient(#48484a 0 0) 0/0/0 100vw;
     border-image: linear-gradient(#48484a 0 0) fill 0/0/0 100vw;
  display: flex;
  flex-direction: column;
  gap: 30px;
  padding-top: 30px;
  padding-bottom: 30px;
  color: #fff;
}
@media (min-width: 576px) {
  .footer {
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: wrap;
  }
}
@media (min-width: 1200px) {
  .footer {
    justify-content: space-between;
  }
  .footer .nav-link, .footer .links__item-link, .footer .files__item-link, .footer .menu-header .menu-link, .menu-header .footer .menu-link, .footer .footer__infos .menu-link, .footer__infos .footer .menu-link {
    padding-top: 0;
    padding-right: 0;
  }
}
.footer a {
  color: inherit;
}
.footer a.button, .footer .error__message a, .error__message .footer a, .footer a.button-backtotop {
  white-space: break-spaces;
}
.footer__logos {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
}
@media (min-width: 576px) and (max-width: 1199.98px) {
  .footer__logos {
    width: 100%;
    flex-direction: row;
    justify-content: space-evenly;
  }
  .footer__logos img {
    max-width: 200px;
  }
}
.footer__logos .logo-ecofit img {
  filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
  filter: url('data:image/svg+xml;utf8,      <svg xmlns="http://www.w3.org/2000/svg">        <filter id="recolor" color-interpolation-filters="sRGB">          <feColorMatrix type="matrix" values="            0 0 0 0 1            0 0 0 0 1            0 0 0 0 1            0 0 0 1 0          "/>        </filter>      </svg>      #recolor');
}
.footer__contact {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.footer__contact .nav, .footer__contact .page-produit__accessoires, .footer__contact .searchbar__items, .footer__contact .links__items, .footer__contact .files__items, .footer__contact .middlebar .laravel-menu, .middlebar .footer__contact .laravel-menu, .footer__contact .topbar__nav-langues, .footer__contact .topbar__nav-websites, .footer__contact .topbar__nav-social, .footer__contact .menu-header, .footer__contact .footer__infos .laravel-menu, .footer__infos .footer__contact .laravel-menu {
  flex-direction: column;
  margin-top: 30px;
  gap: 16px;
}
.footer__contact .address__company {
  display: none;
}
.footer__infos .laravel-menu {
  flex-direction: column;
}
.footer__infos .menu-link {
  color: #fff;
  text-decoration: underline;
}
.footer__infos .menu-link:hover, .footer__infos .menu-link:focus {
  color: #fff;
  text-decoration: none;
}
.footer__infos .laravel-menu + .nav, .footer__infos .laravel-menu + .page-produit__accessoires, .footer__infos .laravel-menu + .searchbar__items, .footer__infos .laravel-menu + .links__items, .footer__infos .laravel-menu + .files__items, .footer__infos .laravel-menu + .topbar__nav-langues, .footer__infos .laravel-menu + .topbar__nav-websites, .footer__infos .laravel-menu + .topbar__nav-social, .footer__infos .laravel-menu + .menu-header, .footer__infos .laravel-menu + .laravel-menu {
  flex-direction: column;
  margin-top: 30px;
  gap: 16px;
}
.footer__credit {
  width: 100%;
  text-align: center;
  font-size: 14px;
  font-weight: 300;
}
.footer__credit a {
  color: inherit;
  text-decoration: none;
}
.footer__credit a:hover, .footer__credit a:focus {
  text-decoration: underline;
}

.form {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.form__fields {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.form--submited input:invalid,
.form--submited textarea:invalid {
  border: 1px solid #dc3545;
  box-shadow: -4px 4px rgb(237.5, 154, 162);
}

.header {
  position: sticky;
  top: 0;
  z-index: 1020;
  background-color: #e8e8eb;
  box-shadow: 0 0 0 0 transparent;
  transition: transform 0.5s ease, opacity 0.5s ease, box-shadow 0.5s ease;
}
@media (min-width: 992px) {
  .header {
    background-image: url("/images/rose.svg");
    background-position: 36vw -93px;
    background-repeat: no-repeat;
    padding-bottom: 15px;
  }
}
.header .logo,
.header .navbar-toggler,
.header .topbar,
.header .middlebar,
.header #menu-header {
  transition: transform 0.5s ease, opacity 0.5s ease, box-shadow 0.5s ease;
  transform-origin: 0 0;
}
.header.is-scrolled {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  transform: translateY(-50px);
}
@media (min-width: 992px) {
  .header.is-scrolled {
    transform: translateY(-80px);
  }
}
@media (min-width: 1400px) {
  .header.is-scrolled {
    transform: translateY(-60px);
  }
}
.header.is-scrolled .logo {
  transform: scale(0.8) translateY(40px);
}
@media (min-width: 992px) {
  .header.is-scrolled .logo {
    transform: scale(0.8) translateY(90px);
  }
}
@media (min-width: 1400px) {
  .header.is-scrolled .logo {
    transform: scale(0.8) translateY(30px);
  }
}
.header.is-scrolled .navbar-toggler {
  transform: translateY(30px);
}
@media (min-width: 992px) {
  .header.is-scrolled .topbar {
    transform: translateY(-100%);
    opacity: 0;
    pointer-events: none;
  }
}
@media (min-width: 992px) {
  .header.is-scrolled .middlebar {
    transform: translateY(-20px);
  }
}
@media (min-width: 1400px) {
  .header.is-scrolled .middlebar {
    transform: translateY(0);
  }
}
@media (min-width: 992px) {
  .header.is-scrolled #menu-header {
    margin: 10px 0;
  }
}
@media (min-width: 1400px) {
  .header.is-scrolled #menu-header {
    margin: 25px 0 0 0;
  }
}

body {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  overflow-x: hidden;
}

main {
  flex-grow: 1;
}

.navbar {
  background-image: none;
}
@media (min-width: 992px) {
  .navbar {
    flex-direction: column;
  }
}
.navbar > .container, .navbar > .banner, .navbar > .middlebar, .navbar > .topbar, .navbar > .menu-header, .navbar > .footer {
  flex-wrap: nowrap;
  gap: 20px;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media (min-width: 992px) {
  .navbar > .container, .navbar > .banner, .navbar > .middlebar, .navbar > .topbar, .navbar > .menu-header, .navbar > .footer {
    position: absolute;
    left: 0;
    z-index: 1;
    width: 25%;
  }
}
@media (min-width: 1400px) {
  .navbar > .container, .navbar > .banner, .navbar > .middlebar, .navbar > .topbar, .navbar > .menu-header, .navbar > .footer {
    top: 20px;
  }
}
.navbar-brand {
  max-width: 75vw;
}
.navbar-toggler {
  min-width: 40px;
  width: 40px;
  height: 40px;
  padding: 8px;
  border-radius: 5px;
}
.navbar .burger-icon {
  fill: #004d9e;
}
.navbar-collapse {
  display: flex;
  flex-direction: column;
  gap: 30px;
  width: 100%;
}
@media (min-width: 992px) {
  .navbar-collapse {
    gap: 0;
  }
}
.navbar .menu-header {
  order: 1;
}
.navbar .topbar {
  order: 3;
}
.navbar .middlebar {
  order: 2;
}
@media (min-width: 992px) {
  .navbar .menu-header {
    order: 3;
  }
  .navbar .topbar {
    order: 1;
  }
  .navbar .middlebar {
    order: 2;
  }
}

.menu-header {
  flex-direction: column;
}
@media (min-width: 992px) {
  .menu-header {
    flex-direction: row;
    justify-content: space-between;
    margin: 30px 0;
    background-color: #fff;
  }
}
@media (min-width: 1400px) {
  .menu-header {
    justify-content: center;
    gap: 30px;
  }
}
.menu-header .menu-link {
  display: inline-block;
  cursor: default;
  color: #3b3939;
}
.menu-header a.menu-link {
  cursor: pointer;
}
.menu-header .button-icon[aria-expanded=true] .icon {
  transform: rotate(90deg);
  transform-origin: center;
}
.menu-header > .menu-item {
  position: relative;
  width: 100%;
}
@media (min-width: 992px) {
  .menu-header > .menu-item {
    width: initial;
  }
}
.menu-header > .menu-item > .menu-link {
  width: calc(100% - 50px);
  font-size: 1.125rem;
  font-weight: 700;
}
@media (min-width: 992px) {
  .menu-header > .menu-item > .menu-link {
    width: initial;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .menu-header > .menu-item > .menu-link {
    font-size: 1rem;
    padding-left: 0;
    padding-right: 0;
  }
}
.menu-header > .menu-item.active, .menu-header > .menu-item.pagination__item--active, .menu-header > .menu-item:hover, .menu-header > .menu-item:focus-within {
  transition: all 0.2s ease-in-out;
}
.menu-header > .menu-item.active > .menu-link, .menu-header > .menu-item.pagination__item--active > .menu-link, .menu-header > .menu-item:hover > .menu-link, .menu-header > .menu-item:focus-within > .menu-link {
  color: #004d9e;
}
@media (min-width: 1400px) {
  .menu-header > .menu-item + .menu-item > .menu-link {
    position: relative;
    overflow: visible;
    z-index: 0;
  }
  .menu-header > .menu-item + .menu-item > .menu-link::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    top: 0;
    left: 0;
    z-index: -1;
    left: -12px;
    top: 50%;
    transform: translateY(-50%);
    background-color: #e8e8eb;
  }
  .menu-header > .menu-item + .menu-item.active > .menu-link::before, .menu-header > .menu-item + .menu-item.pagination__item--active > .menu-link::before, .menu-header > .menu-item + .menu-item:hover > .menu-link::before, .menu-header > .menu-item + .menu-item:focus-within > .menu-link::before {
    transition: all 0.2s ease-in-out;
    background-color: #004d9e;
  }
}
.menu-header > .menu-item > ul {
  list-style: none;
  padding-left: 0;
  margin-left: 1.5rem;
  border-left: 5px solid #004d9e;
}
@media (min-width: 992px) {
  .menu-header > .menu-item > ul {
    position: absolute;
    z-index: 999;
    top: 100%;
    left: 0;
    margin: 0;
    background-color: #fff;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    border-left: 0;
    transform-origin: top;
    transition: all 0.2s ease-in-out;
    border-top: 2px solid #004d9e;
    border-bottom: 2px solid #004d9e;
    transform: scaleY(0);
    opacity: 0;
  }
}
@media (min-width: 992px) {
  .menu-header > .menu-item > ul .menu-item + .menu-item {
    border-top: 1px solid #dedada;
  }
}
.menu-header > .menu-item > ul .menu-item.active > .menu-link, .menu-header > .menu-item > ul .menu-item.pagination__item--active > .menu-link, .menu-header > .menu-item > ul .menu-item.current > .menu-link, .menu-header > .menu-item > ul .menu-item:hover > .menu-link, .menu-header > .menu-item > ul .menu-item:focus > .menu-link {
  color: #004d9e;
}
.menu-header > .menu-item > ul .menu-link {
  font-size: 1rem;
  font-weight: 400;
}
@media (min-width: 992px) {
  .menu-header > .menu-item > ul .menu-link {
    white-space: nowrap;
  }
}
.menu-header > .menu-item:hover ul, .menu-header > .menu-item:focus-within ul {
  transform: scaleY(1);
  opacity: 1;
}
@media (min-width: 992px) and (max-width: 1399.98px) {
  .menu-header > .menu-item:last-child > ul {
    left: initial;
    right: 0;
  }
}

.topbar {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 20px;
}
@media (min-width: 992px) {
  .topbar {
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    flex-wrap: wrap;
    padding: 16px 0 16px 27.0833333333%;
    margin-bottom: 0;
  }
}
.topbar__slogan {
  display: none;
}
@media (min-width: 992px) {
  .topbar__slogan {
    display: block;
    font-size: 1.25rem;
    font-weight: 500;
    font-style: italic;
  }
  .topbar__slogan span {
    color: #004d9e;
    font-weight: 700;
    text-transform: uppercase;
  }
}
@media (min-width: 992px) and (max-width: 1399.98px) {
  .topbar__slogan {
    width: 100%;
    text-align: center;
  }
}
@media (min-width: 1400px) {
  .topbar__slogan {
    position: absolute;
    left: 29.1666666667%;
  }
}
.topbar__telephone .nav-link, .topbar__telephone .links__item-link, .topbar__telephone .files__item-link, .topbar__telephone .footer__infos .menu-link, .footer__infos .topbar__telephone .menu-link, .topbar__telephone .menu-header .menu-link, .menu-header .topbar__telephone .menu-link {
  font-size: 1.125rem;
  font-weight: 900;
  color: #004d9e;
}
.topbar__telephone .nav-link:hover, .topbar__telephone .links__item-link:hover, .topbar__telephone .files__item-link:hover, .topbar__telephone .footer__infos .menu-link:hover, .footer__infos .topbar__telephone .menu-link:hover, .topbar__telephone .menu-header .menu-link:hover, .menu-header .topbar__telephone .menu-link:hover, .topbar__telephone .nav-link:focus, .topbar__telephone .links__item-link:focus, .topbar__telephone .files__item-link:focus, .topbar__telephone .footer__infos .menu-link:focus, .footer__infos .topbar__telephone .menu-link:focus, .topbar__telephone .menu-header .menu-link:focus, .menu-header .topbar__telephone .menu-link:focus {
  text-decoration: underline;
  color: #3b3939;
}
.topbar__nav-social .icon {
  fill: #004d9e;
}
.topbar__nav-social .nav-link:hover .icon, .topbar__nav-social .links__item-link:hover .icon, .topbar__nav-social .files__item-link:hover .icon, .topbar__nav-social .footer__infos .menu-link:hover .icon, .footer__infos .topbar__nav-social .menu-link:hover .icon, .topbar__nav-social .menu-header .menu-link:hover .icon, .menu-header .topbar__nav-social .menu-link:hover .icon, .topbar__nav-social .nav-link:focus .icon, .topbar__nav-social .links__item-link:focus .icon, .topbar__nav-social .files__item-link:focus .icon, .topbar__nav-social .footer__infos .menu-link:focus .icon, .footer__infos .topbar__nav-social .menu-link:focus .icon, .topbar__nav-social .menu-header .menu-link:focus .icon, .menu-header .topbar__nav-social .menu-link:focus .icon {
  fill: #3b3939;
}
@media (min-width: 1400px) {
  .topbar__nav-social .nav-link, .topbar__nav-social .links__item-link, .topbar__nav-social .files__item-link, .topbar__nav-social .footer__infos .menu-link, .footer__infos .topbar__nav-social .menu-link, .topbar__nav-social .menu-header .menu-link, .menu-header .topbar__nav-social .menu-link {
    padding-left: 8px;
    padding-right: 8px;
  }
}
.topbar__nav-websites {
  gap: 20px;
}
.topbar__nav-langues {
  bottom: 20px;
}
.topbar__nav-langues > *:nth-child(n+2) {
  position: relative;
  margin-left: 0px;
}
.topbar__nav-langues > *:nth-child(n+2)::before {
  content: "";
  position: absolute;
  width: 1px;
  height: 10px;
  top: 50%;
  left: -0.5px;
  z-index: 1;
  background-color: #b1acac;
  border-radius: 0;
  transform: translateY(-50%);
}
@media (min-width: 992px) and (max-width: 1399.98px) {
  .topbar__nav-langues {
    position: absolute;
    top: 16px;
    right: 0;
    height: 36px;
  }
}
.topbar__nav-langues .nav-link, .topbar__nav-langues .links__item-link, .topbar__nav-langues .files__item-link, .topbar__nav-langues .footer__infos .menu-link, .footer__infos .topbar__nav-langues .menu-link, .topbar__nav-langues .menu-header .menu-link, .menu-header .topbar__nav-langues .menu-link {
  font-size: 0.75rem;
  font-weight: 700;
  color: #b1acac;
}
.topbar__nav-langues .nav-link.active, .topbar__nav-langues .nav-link.pagination__item--active, .topbar__nav-langues .active.links__item-link, .topbar__nav-langues .links__item-link.pagination__item--active, .topbar__nav-langues .active.files__item-link, .topbar__nav-langues .files__item-link.pagination__item--active, .topbar__nav-langues .footer__infos .active.menu-link, .topbar__nav-langues .footer__infos .menu-link.pagination__item--active, .footer__infos .topbar__nav-langues .active.menu-link, .footer__infos .topbar__nav-langues .menu-link.pagination__item--active, .topbar__nav-langues .menu-header .active.menu-link, .topbar__nav-langues .menu-header .menu-link.pagination__item--active, .menu-header .topbar__nav-langues .active.menu-link, .menu-header .topbar__nav-langues .menu-link.pagination__item--active {
  color: #3b3939;
}
.topbar__nav-langues .nav-link:hover, .topbar__nav-langues .links__item-link:hover, .topbar__nav-langues .files__item-link:hover, .topbar__nav-langues .footer__infos .menu-link:hover, .footer__infos .topbar__nav-langues .menu-link:hover, .topbar__nav-langues .menu-header .menu-link:hover, .menu-header .topbar__nav-langues .menu-link:hover, .topbar__nav-langues .nav-link:focus, .topbar__nav-langues .links__item-link:focus, .topbar__nav-langues .files__item-link:focus, .topbar__nav-langues .footer__infos .menu-link:focus, .footer__infos .topbar__nav-langues .menu-link:focus, .topbar__nav-langues .menu-header .menu-link:focus, .menu-header .topbar__nav-langues .menu-link:focus {
  color: #004d9e;
}

.middlebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
  z-index: 10;
}
@media (min-width: 992px) {
  .middlebar {
    flex-direction: row;
    justify-content: flex-end;
    padding: 0;
  }
}
.middlebar .laravel-menu {
  gap: 20px;
}
@media (min-width: 992px) {
  .middlebar__search {
    min-width: 350px;
  }
}

.address__company {
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to top, #3980CB, #3980CB);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 80px 1px;
  font-size: calc(1.275rem + 0.3vw);
  font-weight: 700;
}
@media (min-width: 1200px) {
  .address__company {
    font-size: 1.5rem;
  }
}
.address__street, .address__street-complement, .address__postal-code, .address__city, .address__country, .address__phone {
  font-size: 1.125rem;
}
.address__street a, .address__street-complement a, .address__postal-code a, .address__city a, .address__country a, .address__phone a {
  color: inherit;
  text-decoration: none;
}
.address__street a:hover, .address__street a:focus, .address__street-complement a:hover, .address__street-complement a:focus, .address__postal-code a:hover, .address__postal-code a:focus, .address__city a:hover, .address__city a:focus, .address__country a:hover, .address__country a:focus, .address__phone a:hover, .address__phone a:focus {
  text-decoration: underline;
}

.banner {
  position: relative;
  padding: 25px;
  position: relative;
  overflow: visible;
  z-index: 0;
}
.banner::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translate(-50%, 0);
  background-image: linear-gradient(to right, #4a4848, #000);
}
.banner__title {
  display: table;
  margin-inline: auto;
  width: -moz-max-content;
  width: max-content;
  max-width: 80vw;
  padding: 12px 25px;
  background-color: #fff;
  border-left: 5px solid #004d9e;
  font-size: calc(1.425rem + 2.1vw);
  color: #004d9e;
}
@media (min-width: 1200px) {
  .banner__title {
    font-size: 3rem;
  }
}
.banner--with-image {
  padding: 0 0 60px 0;
}
.banner--with-image::before {
  background-image: linear-gradient(to right, #4a4848, #000), linear-gradient(to right, #004d9e);
  background-position: center bottom, center top;
  background-repeat: no-repeat;
  background-size: 100% 50px, 100% 100%;
}
@media (min-width: 576px) {
  .banner--with-image {
    padding: 0;
  }
  .banner--with-image::before {
    height: 80%;
    background-image: linear-gradient(to right, #004d9e), linear-gradient(to right, #4a4848, #000);
    background-size: 100% 20px, 100% 100%;
  }
}
.banner--with-image .banner__title {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 16px;
}
@media (min-width: 576px) {
  .banner--with-image .banner__title {
    bottom: 20%;
    left: initial;
    right: 16px;
    transform: initial;
  }
}
@media (min-width: 1400px) {
  .banner--with-image .banner__title {
    right: 13%;
  }
}

@media (min-width: 992px) {
  .brochures, .documentations {
    margin-left: 8.3333333333%;
    margin-right: 8.3333333333%;
  }
}
.brochures__categories {
  margin-top: 40px;
}
.brochures__items, .documentations__items {
  display: grid;
  grid-template-columns: minmax(auto, 366px);
  justify-content: center;
  gap: 30px;
}
@media (min-width: 768px) {
  .brochures__items, .documentations__items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .brochures__items, .documentations__items {
    grid-template-columns: repeat(1, 1fr);
  }
}
.brochures__item, .documentations__item {
  position: relative;
  display: flex;
  flex-direction: column;
  background-color: #fff;
}
@media (min-width: 992px) {
  .brochures__item, .documentations__item {
    flex-direction: row;
  }
}
.brochures__item-image img, .documentations__item-image img {
  border-top: 5px solid #004d9e;
}
@media (min-width: 992px) {
  .brochures__item-image, .documentations__item-image {
    flex-basis: 25%;
  }
}
.brochures__item-body, .documentations__item-body {
  padding: 20px;
}
@media (min-width: 992px) {
  .brochures__item-body, .documentations__item-body {
    flex-basis: 58.3333333333%;
  }
}

.button, .error__message a, .button-backtotop {
  border: none;
  text-transform: uppercase;
}
 .post:hover .post__link, .middlebar .menu-link:hover, .middlebar .menu-link:focus:not([aria-expanded=false]), .middlebar [aria-expanded=true].menu-link, .button:hover, .error__message a:hover, .button-backtotop:hover, .button:focus:not([aria-expanded=false]), .error__message a:focus:not([aria-expanded=false]), .button-backtotop:focus:not([aria-expanded=false]), .button[aria-expanded=true], .error__message a[aria-expanded=true], [aria-expanded=true].button-backtotop {
  background-color: #3b3939;
}

.button-backtotop {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.5rem;
  height: 2.5rem;
  right: clamp(25px, 3.5714285714vw, 50px);
  bottom: 1.5rem;
  z-index: 9997;
  padding: 0;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease-in-out;
}
.button-backtotop .icon {
  width: 50%;
  fill: #ffffff;
}
.button-backtotop[data-show=false] {
  opacity: 0;
  transform: translateY(100px);
}
.button-backtotop[data-show=true] {
  opacity: 1;
  transform: translateY(0);
}

.button-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  display: inline-flex;
  width: 40px;
  height: 40px;
  padding: 8px;
  border-radius: 5px;
}
.button-icon .icon {
  height: 100%;
  transition: all 0.2s ease-in-out;
  fill: #004d9e;
}
.button-icon .icon:hover, .button-icon .icon:focus {
  fill: #3b3939;
}

 .links, .files {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
}
 .links__title, .files__title {
  position: absolute;
  top: 0;
  z-index: 1;
  transform: translateY(calc(-50% + 4px));
  display: inline-block;
  align-self: center;
  max-width: 90%;
  padding: 8px 20px;
  border-left: 5px solid #004d9e;
  border-right: 5px solid #004d9e;
  background-color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #004d9e;
}
 .links__items, .files__items {
  margin-bottom: 0;
  position: relative;
  overflow: visible;
  z-index: 0;
  padding: 40px 25px 25px;
}
 .links__items::before, .files__items::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(to right, #8fbae6) no-repeat left top/100% 8px;
}

.card-fullscreen, .slider-familles-gamme, .posts-home, .domaines-activite, .brochures__categorie {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  background-color: #fff;
}
.card-fullscreen__title, .slider-familles-gamme__title, .posts-home__title, .domaines-activite__title, .brochures__categorie-title {
  position: absolute;
  top: 0;
  z-index: 1;
  transform: translateY(calc(-50% + 6px));
  display: inline-block;
  align-self: center;
  max-width: 90%;
  padding: 8px 20px;
  border-left: 5px solid #004d9e;
  border-right: 5px solid #004d9e;
  background-color: #fff;
  font-size: calc(1.275rem + 0.3vw);
  font-weight: 700;
  text-transform: uppercase;
  color: #004d9e;
}
@media (min-width: 1200px) {
  .card-fullscreen__title, .slider-familles-gamme__title, .posts-home__title, .domaines-activite__title, .brochures__categorie-title {
    font-size: 1.5rem;
  }
}
.card-fullscreen__body, .slider-familles-gamme__wrapper, .posts-home__body, .domaines-activite__body, .brochures__items, .documentations__items {
  margin-bottom: 0;
  position: relative;
  overflow: visible;
  z-index: 0;
  padding: 60px 0 60px 0;
}
.card-fullscreen__body::before, .slider-familles-gamme__wrapper::before, .posts-home__body::before, .domaines-activite__body::before, .brochures__items::before, .documentations__items::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  background: linear-gradient(to right, #8fbae6) no-repeat left top/100% 12px;
}
.card-fullscreen__body::after, .slider-familles-gamme__wrapper::after, .posts-home__body::after, .domaines-activite__body::after, .brochures__items::after, .documentations__items::after {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 50%;
  z-index: -2;
  transform: translate(-50%, 0);
  background-image: linear-gradient(to right, #e8e8eb);
}
.card-fullscreen__body::before, .slider-familles-gamme__wrapper::before, .posts-home__body::before, .domaines-activite__body::before, .brochures__items::before, .documentations__items::before {
  width: 100vw;
  left: 50%;
  transform: translate(-50%, 0);
}

.card-simple {
  position: relative;
  padding: 20px;
  background-color: #fff;
  border-top: 2px solid #004d9e;
  border-bottom: 2px solid #004d9e;
}
.card-simple__title {
  font-size: calc(1.275rem + 0.3vw);
  font-weight: 700;
  color: #004d9e;
  text-align: center;
}
@media (min-width: 1200px) {
  .card-simple__title {
    font-size: 1.5rem;
  }
}
.card-simple__body {
  margin-top: 10px;
}

.ckeditor h2, .ckeditor .h2,
.ckeditor .text-huge {
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to top, #004d9e, #004d9e);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 80px 2px;
  font-size: calc(1.3125rem + 0.75vw);
  font-weight: 700;
}
@media (min-width: 1200px) {
  .ckeditor h2, .ckeditor .h2,
  .ckeditor .text-huge {
    font-size: 1.875rem;
  }
}
.ckeditor h3, .ckeditor .h3,
.ckeditor .text-big {
  font-size: calc(1.2625rem + 0.15vw);
  font-weight: 700;
}
@media (min-width: 1200px) {
  .ckeditor h3, .ckeditor .h3,
  .ckeditor .text-big {
    font-size: 1.375rem;
  }
}

 .encart__text * {
  color: #fff;
}
 .encart__text h2, .encart__text .h2,
.encart__text .text-huge {
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to top, #3980cb, #3980cb);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 80px 2px;
  font-size: calc(1.3125rem + 0.75vw);
  font-weight: 700;
  color: #fff;
}
@media (min-width: 1200px) {
   .encart__text h2, .encart__text .h2,
  .encart__text .text-huge {
    font-size: 1.875rem;
  }
}
 .encart__text h3, .encart__text .h3,
.encart__text .text-big {
  font-size: calc(1.2625rem + 0.15vw);
  font-weight: 700;
  color: #fff;
}
@media (min-width: 1200px) {
   .encart__text h3, .encart__text .h3,
  .encart__text .text-big {
    font-size: 1.375rem;
  }
}

.ckeditor-seo * {
  font-size: 0.875rem;
}
.ckeditor-seo h2, .ckeditor-seo .h2,
.ckeditor-seo .text-huge {
  display: block;
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to top, #3980cb, #3980cb);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 80px 1px;
  font-size: calc(1.275rem + 0.3vw);
  font-weight: 700;
  color: #004d9e;
}
@media (min-width: 1200px) {
  .ckeditor-seo h2, .ckeditor-seo .h2,
  .ckeditor-seo .text-huge {
    font-size: 1.5rem;
  }
}
.ckeditor-seo h3, .ckeditor-seo .h3,
.ckeditor-seo .text-big {
  font-size: 1.25rem;
  font-weight: 700;
  color: #004d9e;
}

.domaines-activite__pictos {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.domaines-activite__picto {
  position: relative;
  margin: 0 auto;
}
.domaines-activite__picto-image {
  width: 210px;
  height: 210px;
  -o-object-fit: cover;
     object-fit: cover;
}
.domaines-activite__picto-legende {
  position: absolute;
  left: 5px;
  bottom: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% - 10px);
  border-radius: 0 0 20px 20px;
  padding: 5px;
  min-height: 50px;
  color: #fff;
  font-weight: 700;
  line-height: 122%;
  font-size: 15px;
  text-align: center;
  text-transform: uppercase;
  background-color: #48484a;
}
@media (min-width: 768px) {
  .domaines-activite__picto-legende {
    font-size: 18px;
  }
}
.domaines-activite__picto-link {
  border-radius: 22px;
}
.domaines-activite__picto-link:hover, .domaines-activite__picto-link:focus {
  box-shadow: 0 0 0 5px #004d9e;
}
.documentations {
  padding-top: 40px;
}
.edito {
  padding-bottom: 80px;
}
@media (min-width: 768px) {
  .edito {
    padding-top: 50px;
    padding-bottom: 50px;
    position: relative;
    overflow: visible;
    z-index: 0;
  }
  .edito::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    top: 0;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, 0);
    background-image: url("/images/bg-encart.webp");
    background-size: cover;
  }
}
.edito__title {
  display: block;
  margin-bottom: 30px;
  padding-bottom: 20px;
  background-image: linear-gradient(to top, #004d9e, #004d9e);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 80px 2px;
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 700;
}
@media (min-width: 1200px) {
  .edito__title {
    font-size: 3rem;
  }
}
@media (min-width: 1400px) {
  .edito__title {
    margin-left: 8.3333333333%;
  }
}
.edito__body {
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
@media (min-width: 768px) {
  .edito__body {
    display: block;
  }
}
@media (min-width: 1400px) {
  .edito__body {
    margin-left: 8.3333333333%;
  }
}
.edito__texte {
  padding-bottom: 30px;
  order: 1;
}
.edito__image {
  order: 2;
}
@media (min-width: 768px) {
  .edito__image {
    float: right;
    margin: 0 0 20px 20px;
  }
}
@media (min-width: 1400px) {
  .edito__image {
    margin: 0 0 50px 50px;
  }
}

.encart, .encart-technologie {
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  position: relative;
  overflow: visible;
  z-index: 0;
}
.encart::before, .encart-technologie::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translate(-50%, 0);
  background-color: #004d9e;
}
@media (min-width: 768px) {
  .encart::before, .encart-technologie::before {
    background-image: url("/images/bg-encart.webp");
    background-size: cover;
  }
}
@media (min-width: 768px) {
  .encart, .encart-technologie {
    flex-direction: row;
    padding: 30px 0;
  }
}
@media (min-width: 1400px) {
  .encart, .encart-technologie {
    padding-left: 8.3333333333%;
    padding-right: 8.3333333333%;
  }
}
@media (min-width: 768px) {
  .encart__image {
    flex: 0 0 33.3%;
  }
}
.encart__image a {
  display: inline-block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  cursor: pointer;
}
.encart__image a::before, .encart__image a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  transition: all 0.2s ease-in-out;
  border-radius: inherit;
  opacity: 0;
}
.encart__image a::before {
  background-color: rgba(0, 77, 158, 0.9);
}
.encart__image a::after {
  filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
  filter: url('data:image/svg+xml;utf8,      <svg xmlns="http://www.w3.org/2000/svg">        <filter id="recolor" color-interpolation-filters="sRGB">          <feColorMatrix type="matrix" values="            0 0 0 0 1            0 0 0 0 1            0 0 0 0 1            0 0 0 1 0          "/>        </filter>      </svg>      #recolor');
  background-image: url("/images/icons/zoom.svg");
  transform: scale(0.75);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 20% auto;
}
.encart__image a:hover::before, .encart__image a:hover::after {
  opacity: 1;
}
@media (min-width: 768px) {
  .encart__text {
    flex: 0 0 66.6%;
  }
}

.encart-technologie {
  padding: 30px 20px 60px 20px;
}
@media (min-width: 768px) {
  .encart-technologie {
    padding: 30px 0 60px 0;
  }
}
@media (min-width: 1400px) {
  .encart-technologie {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 768px) {
  .encart-technologie__slider {
    min-width: calc(50% - 15px);
    max-width: calc(50% - 15px);
    padding: 0 20px;
  }
}
@media (min-width: 1200px) {
  .encart-technologie__slider {
    padding-left: 8.3333333333%;
    padding-right: 8.3333333333%;
  }
}
.encart-technologie .button:not(:hover, :focus), .encart-technologie .error__message a:not(:hover, :focus), .error__message .encart-technologie a:not(:hover, :focus), .encart-technologie .button-backtotop:not(:hover, :focus) {
  background-color: #fff;
  color: #004d9e;
}

.error {
  text-align: center;
  font-size: 1.25rem;
}
.error__code {
  position: relative;
  color: #004d9e;
  line-height: 1em;
  font-size: 2rem;
  font-weight: 700;
}
.error__code--animated {
  font-size: 10vw;
  animation: text-shadow-color 10s linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .error__code--animated {
    animation: none;
  }
}
.excerpt {
  margin-bottom: 35px;
  font-size: 1.125rem;
  font-weight: 700;
  text-align: center;
}
@media (min-width: 1400px) {
  .excerpt {
    margin-left: 16.6666666667%;
    margin-right: 16.6666666667%;
  }
}

.filters {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.filters__title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #004d9e;
}
.filters__field {
  position: relative;
}
.filters .accordion {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.filters .accordion-item {
  border: var(--bs-border-width) solid var(--bs-border-color);
}
.filters .accordion-item[disabled] {
  border-color: #bbb;
}
.filters .accordion-item[disabled] .accordion-button {
  background-color: var(--bs-secondary-bg);
  border-color: #bbb;
}
.filters .accordion-item[disabled] .accordion-button:not(.collapsed) {
  box-shadow: inset 0 -1px 0 #bbb;
}
.filters .accordion-body {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.filters .button, .filters .button-backtotop, .filters .error__message a, .error__message .filters a {
  width: 100%;
}

.links__items, .files__items {
  flex-direction: column;
}
.links__item-link, .files__item-link {
  color: #3b3939;
}
.links__item-link:hover, .files__item-link:hover, .links__item-link:focus, .files__item-link:focus {
  color: #004d9e;
}
.links .icon, .files .icon {
  margin-left: 10px;
  fill: #004d9e;
}

.js .loader-page {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  background-color: #fff;
}
.js .loader-page__spinner {
  position: relative;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  border: 6px solid transparent;
  border-left-color: #004d9e;
  border-right-color: #004d9e;
  animation: rotation 1.2s linear infinite;
}

.loading-shimmer {
  position: relative;
  opacity: 0.5;
  cursor: wait !important;
}
.loading-shimmer * {
  cursor: wait !important;
}
.loading-shimmer::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
  background-size: 200% 100%;
  animation: skeleton-shimmer 1.5s infinite linear;
}
@media (prefers-reduced-motion: reduce) {
  .loading-shimmer::after {
    animation: none;
  }
}

.map-popup__title {
  font-size: calc(1.2625rem + 0.15vw);
  font-weight: 700;
  color: #004d9e;
}
@media (min-width: 1200px) {
  .map-popup__title {
    font-size: 1.375rem;
  }
}
.map-popup__text {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #e8e8eb;
  font-size: 1rem;
  line-height: 24px;
}

.pagination {
  margin-top: 30px;
  justify-content: center;
}
.pagination__item--disabled svg {
  fill: var(--bs-secondary-color) !important;
}
.pagination__item:nth-child(1) svg {
  transform: scaleX(-1) !important;
}
.pagination__link svg {
  fill: #3b3939;
  height: 22px;
}
.pagination__link:hover svg, .pagination__link:focus svg {
  fill: #004d9e;
}

.posts {
  padding-bottom: 30px;
  -o-border-image: linear-gradient(to bottom, transparent 18vw, #e8e8eb 18vw) 0/0/0 100vw;
     border-image: linear-gradient(to bottom, transparent 18vw, #e8e8eb 18vw) fill 0/0/0 100vw;
}
@media (min-width: 576px) {
  .posts {
    -o-border-image: linear-gradient(to bottom, transparent 120px, #e8e8eb 120px) 0/0/0 100vw;
       border-image: linear-gradient(to bottom, transparent 120px, #e8e8eb 120px) fill 0/0/0 100vw;
  }
}
@media (min-width: 768px) {
  .posts {
    -o-border-image: linear-gradient(to bottom, transparent 90px, #e8e8eb 90px) 0/0/0 100vw;
       border-image: linear-gradient(to bottom, transparent 90px, #e8e8eb 90px) fill 0/0/0 100vw;
  }
}
@media (min-width: 1400px) {
  .posts {
    -o-border-image: linear-gradient(to bottom, transparent 200px, #e8e8eb 200px) 0/0/0 100vw;
       border-image: linear-gradient(to bottom, transparent 200px, #e8e8eb 200px) fill 0/0/0 100vw;
  }
}
.posts__list, .posts-home__list {
  display: grid;
  grid-template-columns: minmax(auto, 366px);
  justify-content: center;
  gap: 30px;
}
@media (min-width: 768px) {
  .posts__list, .posts-home__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 992px) {
  .posts__list, .posts-home__list {
    grid-template-columns: repeat(3, 1fr);
  }
}

.posts-home__lien-actualites .button, .posts-home__lien-actualites .button-backtotop, .posts-home__lien-actualites .error__message a, .error__message .posts-home__lien-actualites a {
  display: table;
  margin: 20px auto;
}

.post {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background-color: #fff;
  border-top: 5px solid #004d9e;
  padding-top: 5px;
}
.post:hover .post__image::before, .post:hover .post__image::after {
  opacity: 1;
}
.post__image {
  display: inline-block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  cursor: pointer;
}
.post__image::before, .post__image::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  transition: all 0.2s ease-in-out;
  border-radius: inherit;
  opacity: 0;
}
.post__image::before {
  background-color: rgba(0, 77, 158, 0.9);
}
.post__image::after {
  filter: saturate(0%) brightness(0%) invert(100%) opacity(1);
  filter: url('data:image/svg+xml;utf8,      <svg xmlns="http://www.w3.org/2000/svg">        <filter id="recolor" color-interpolation-filters="sRGB">          <feColorMatrix type="matrix" values="            0 0 0 0 1            0 0 0 0 1            0 0 0 0 1            0 0 0 1 0          "/>        </filter>      </svg>      #recolor');
  background-image: url("/images/icons/chevron-droite.svg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 20% auto;
}
.post__body {
  display: flex;
  flex-direction: column;
  padding: 20px;
  gap: 10px;
}
.post__title {
  order: 2;
  font-size: calc(1.275rem + 0.3vw);
  font-weight: 700;
}
@media (min-width: 1200px) {
  .post__title {
    font-size: 1.5rem;
  }
}
.post__title a {
  color: #3b3939;
  text-decoration: none;
}
.post__date {
  order: 1;
  font-size: 0.875rem;
  font-weight: 700;
  color: #908B8B;
}
.post__excerpt {
  order: 3;
}
.post__link {
  order: 4;
  align-self: flex-start;
}

.produits {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (min-width: 768px) {
  .produits {
    flex-direction: row;
    justify-content: space-around;
  }
}
.produits__filters {
  flex-basis: 50%;
}
@media (min-width: 992px) {
  .produits__filters {
    flex-basis: 33.3333333333%;
  }
}
@media (min-width: 1400px) {
  .produits__filters {
    flex-basis: 25%;
  }
}
.produits__results {
  position: relative;
  flex-basis: 50%;
}
@media (min-width: 992px) {
  .produits__results {
    flex-basis: 66.6666666667%;
  }
}
@media (min-width: 1400px) {
  .produits__results {
    flex-basis: 75%;
  }
}
.produits__items {
  position: relative;
  display: grid;
  grid-template-columns: minmax(auto, 366px);
  justify-content: center;
  align-items: stretch;
  gap: 16px;
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  .produits__items {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1400px) {
  .produits__items {
    grid-template-columns: repeat(3, 1fr);
  }
}
.produits__item {
  position: relative;
  border-top: 5px solid #004d9e;
  background-color: #fff;
  display: flex;
  flex-direction: column;
}
.produits__item--skeleton {
  background-color: #e0e0e0 !important;
  color: transparent;
  position: relative;
  overflow: hidden;
}
.produits__item--skeleton .produits__item-image {
  background-color: #e0e0e0;
  filter: contrast(0);
  color: transparent;
  pointer-events: none;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  outline: none;
  width: initial;
  width: initial;
}
.produits__item--skeleton dt {
  background-color: #e0e0e0;
  filter: contrast(0);
  color: transparent;
  pointer-events: none;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  outline: none;
  width: initial;
  width: initial;
}
.produits__item--skeleton dd {
  background-color: #e0e0e0;
  filter: contrast(0);
  color: transparent;
  pointer-events: none;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  outline: none;
  width: initial;
  width: initial;
}
.produits__item--skeleton a {
  background-color: #e0e0e0;
  filter: contrast(0);
  color: transparent;
  pointer-events: none;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  outline: none;
  width: initial;
  width: initial;
}
.produits__item--skeleton::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
  background-size: 200% 100%;
  animation: skeleton-shimmer 1.5s infinite linear;
}
@media (prefers-reduced-motion: reduce) {
  .produits__item--skeleton::after {
    animation: none;
  }
}
.produits__item-image img {
  width: 100%;
  height: 100%;
  aspect-ratio: 100/70;
  -o-object-fit: cover;
     object-fit: cover;
}
.produits__item-body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.produits__item-infos {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.5rem 1rem;
}
.produits__item-links {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: auto;
}
.produits__loadmore, .produits__nodata {
  display: table;
  margin-inline: auto;
  margin-top: 30px;
  text-align: center;
}
.produits .button, .produits .button-backtotop, .produits .error__message a, .error__message .produits a {
  font-size: 0.8125rem;
}
.produits .toast-container {
  position: fixed;
  top: 5px;
  left: 50%;
  z-index: 2000;
  transform: translateX(-50%);
}
.produits .toast-body {
  text-align: center;
}
.produits .toast-body a {
  color: inherit;
}

.progressbar {
  height: 0.125rem;
  background: #004d9e;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9998;
}

.searchbar {
  position: relative;
}
.searchbar__filters {
  position: relative;
  display: flex;
  flex-direction: row;
  gap: 5px;
  background-color: #fff;
}
.searchbar__filters .form-control {
  border: 0;
  font-size: 15px;
}
.searchbar__filters .form-control:not(:focus) {
  box-shadow: initial;
}
.searchbar__filters .button-icon {
  background-color: #fff;
  border: 0;
  border-radius: 0;
}
.searchbar__filters .icon {
  fill: #004d9e;
}
.searchbar__results {
  position: relative;
  width: 100%;
  max-height: 60vh;
  background-color: #fff;
  border: 1px solid #8fbae6;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  overflow-y: auto;
  transition: all 0.2s ease;
}
@media (min-width: 992px) {
  .searchbar__results {
    position: absolute;
    top: calc(100% + 2px);
    right: 0;
    z-index: 999;
  }
}
.searchbar__results .spinner-border {
  display: table;
  margin: 10px auto;
}
.searchbar__info {
  margin: 10px;
  text-align: center;
  font-style: italic;
}
.searchbar__items {
  flex-direction: column;
}
.searchbar__item + .searchbar__item {
  border-top: 1px solid #ddd;
}
.searchbar__item-link {
  position: relative;
  display: flex;
  flex-direction: row;
  padding: 10px;
  gap: 10px;
  text-decoration: none;
  color: #3b3939;
}
.searchbar__item-link:hover, .searchbar__item-link:focus {
  background-color: #004d9e;
  color: #fff;
}
.searchbar__item-image img {
  width: 60px;
  height: 60px;
  -o-object-fit: cover;
     object-fit: cover;
}
.searchbar__item-title {
  font-size: 16px;
  font-weight: 700;
}
.searchbar__item-text {
  font-size: 14px;
}
.searchbar__footer {
  display: table;
  margin: 10px auto;
}

.seo-h1 {
  margin-bottom: 20px;
  padding-bottom: 20px;
  background-image: linear-gradient(to top, #004d9e, #004d9e);
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: 80px 2px;
  font-size: calc(1.3125rem + 0.75vw);
  font-weight: 700;
  text-align: center;
}
@media (min-width: 1200px) {
  .seo-h1 {
    font-size: 1.875rem;
  }
}

.seo-fields {
  margin-bottom: 30px;
  padding: 30px 0;
}
.seo-fields .button, .seo-fields .button-backtotop, .seo-fields .error__message a, .error__message .seo-fields a {
  font-size: 0.8125rem;
}
@media (min-width: 1400px) {
  .seo-fields {
    margin-left: 8.3333333333%;
    margin-right: 8.3333333333%;
  }
}

#collapseSeoFieldTwo .ckeditor-seo {
  margin-top: 30px;
}

.slider-banners {
  position: relative;
  margin-bottom: 0;
  background-color: #e8e8eb;
  box-shadow: -100px -100px 0 100px #e8e8eb; /* fix effet visuel au scroll top */
  z-index: 100;
}
@media (min-width: 992px) {
  .slider-banners::before {
    content: "";
    position: absolute;
    width: 50%;
    height: 100%;
    top: 0;
    left: 50%;
    z-index: 0;
    background: linear-gradient(135deg, #4a4848, #000) no-repeat center;
    border-left: 12px solid #004d9e;
  }
}
.slider-banners__slide-wrapper {
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .slider-banners__slide-wrapper {
    flex-direction: row;
  }
}
.slider-banners__slide-content {
  min-height: 100%;
  padding: 20px 20px 60px 20px;
  border-top: 12px solid #004d9e;
  background: linear-gradient(135deg, #4a4848, #000) no-repeat center;
  color: #fff;
}
@media (min-width: 992px) {
  .slider-banners__slide-content {
    padding: 30px 30px 60px 30px;
    flex-basis: 50%;
    border: 0;
    background: none;
  }
}
.slider-banners__slide-title {
  margin-bottom: 20px;
  padding-bottom: 20px;
  font-size: calc(1.35rem + 1.2vw);
  background-image: linear-gradient(to top, #b1acac, #b1acac);
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 80px 2px;
}
@media (min-width: 1200px) {
  .slider-banners__slide-title {
    font-size: 2.25rem;
  }
}
.slider-banners__slide-excerpt {
  font-size: 1.125rem;
  font-weight: 700;
}
@media (min-width: 992px) {
  .slider-banners__slide-image {
    flex-basis: 50%;
    max-height: 500px;
    overflow: hidden;
    transform: translateY(25px);
  }
}

.slider-images {
  margin-bottom: 40px;
}
.slider-images__slide-content {
  margin-bottom: 0;
  padding: clamp(8px, 2.0833333333vw, 16px) 16px;
  text-align: center;
  background-color: #fff;
}

.slider-familles-gamme__wrapper {
  padding: 60px 20px;
}
@media (min-width: 1200px) {
  .slider-familles-gamme__wrapper {
    padding-left: 8.3333333333%;
    padding-right: 8.3333333333%;
  }
}
.slider-familles-gamme__wrapper::before {
  clip-path: polygon(0 0, 100% 0, 100% 160px, 0 225px);
  background-color: #f5f5f7;
}
@media (min-width: 768px) {
  .slider-familles-gamme__wrapper::before {
    clip-path: polygon(50% 0, 100% 0, 100% 100%, 44% 100%);
  }
}
.slider-familles-gamme__wrapper::after {
  background-image: linear-gradient(to right, #004d9e);
}
.slider-familles-gamme__slide-wrapper {
  background-color: #fff;
}
@media (min-width: 768px) {
  .slider-familles-gamme__slide-wrapper {
    display: flex;
    flex-direction: row;
  }
}
.slider-familles-gamme__slide-content {
  padding: 20px;
}
@media (min-width: 768px) {
  .slider-familles-gamme__slide-image {
    min-width: 50%;
  }
  .slider-familles-gamme__slide-image img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
}
.slider-familles-gamme__slide-title {
  margin-bottom: 15px;
  font-size: calc(1.3125rem + 0.75vw);
  font-weight: bold;
}
@media (min-width: 1200px) {
  .slider-familles-gamme__slide-title {
    font-size: 1.875rem;
  }
}
.videos {
  margin-bottom: 30px;
}
@media (min-width: 1400px) {
  .videos {
    margin-left: 25%;
    margin-right: 25%;
  }
}

.videos__item-video iframe {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 690/450;
}

.page-accueil .seo-h1 {
  margin-top: 50px;
}
.page-accueil .domaines-activite__pictos {
  justify-content: space-evenly;
}
@media (min-width: 1400px) {
  .page-accueil .domaines-activite__pictos {
    gap: 30px 100px;
  }
}
.page-accueil .post {
  border-top: initial;
  padding-top: initial;
  padding-bottom: 1px;
  border-bottom: 1px solid #004d9e;
}
.page-accueil .post__body {
  padding-top: 0;
}
.page-accueil .post__date {
  padding: 10px 0;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 400;
  color: #004d9e;
  position: relative;
  overflow: visible;
  z-index: 0;
}
.page-accueil .post__date::before {
  content: "";
  position: absolute;
  width: calc(100% + 40px);
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  left: -20px;
  background-color: #DFEBF8;
  border-left: 6px solid #004d9e;
}

.page-actualite__date {
  margin-bottom: 20px;
  font-size: 0.875rem;
  font-weight: 700;
  color: #908B8B;
  text-align: center;
}

.page-contact__veryform {
  display: table;
  margin-inline: auto;
  margin-bottom: 30px;
  text-align: center;
}
.page-contact__encart {
  position: relative;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
  background-color: #004d9e;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}
@media (min-width: 768px) {
  .page-contact__encart {
    flex-direction: row;
    background-image: url("/images/bg-encart.webp");
    background-size: cover;
  }
  .page-contact__encart > div {
    width: 50vw;
  }
}
.page-contact__encart .address {
  padding: 1.5rem;
  color: #fff;
}
@media (min-width: 768px) {
  .page-contact__encart .address {
    max-width: 340px;
  }
}
@media (min-width: 992px) {
  .page-contact__encart .address {
    margin-right: 8vw;
  }
}
.page-distributeurs__carte {
  position: relative;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
}
.page-distributeurs .leaflet-container {
  height: 50vh;
}
@media (min-width: 768px) {
  .page-distributeurs .leaflet-container {
    height: 70vh;
  }
}

.page-editoriale__main, .page-recherche__main, .page-produit__main, .page-actualite__main, .page-distributeurs__main {
  padding-top: 30px;
  padding-bottom: 30px;
  -o-border-image: linear-gradient(#e8e8eb 0 0) 0/0/0 100vw;
     border-image: linear-gradient(#e8e8eb 0 0) fill 0/0/0 100vw;
  position: relative;
  overflow: visible;
  z-index: 0;
}
.page-editoriale__main::before, .page-recherche__main::before, .page-produit__main::before, .page-actualite__main::before, .page-distributeurs__main::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 50%;
  z-index: -1;
  transform: translate(-50%, 0);
  background-image: url("/images/rose.svg");
  background-position: calc(100% + 80px) calc(100% + 70px);
  background-repeat: no-repeat;
  background-size: 250px auto;
}
@media (min-width: 1400px) {
  .page-editoriale__main::before, .page-recherche__main::before, .page-produit__main::before, .page-actualite__main::before, .page-distributeurs__main::before {
    background-position: calc(100% + 200px) calc(100% + 120px);
    background-size: 650px auto;
  }
}
.page-editoriale__main:has(.slider-images), .page-recherche__main:has(.slider-images), .page-produit__main:has(.slider-images), .page-actualite__main:has(.slider-images), .page-distributeurs__main:has(.slider-images) {
  padding-top: 0;
  -o-border-image: linear-gradient(to bottom, transparent 18vw, #e8e8eb 18vw) 0/0/0 100vw;
     border-image: linear-gradient(to bottom, transparent 18vw, #e8e8eb 18vw) fill 0/0/0 100vw;
}
@media (min-width: 576px) {
  .page-editoriale__main:has(.slider-images), .page-recherche__main:has(.slider-images), .page-produit__main:has(.slider-images), .page-actualite__main:has(.slider-images), .page-distributeurs__main:has(.slider-images) {
    -o-border-image: linear-gradient(to bottom, transparent 120px, #e8e8eb 120px) 0/0/0 100vw;
       border-image: linear-gradient(to bottom, transparent 120px, #e8e8eb 120px) fill 0/0/0 100vw;
  }
}
@media (min-width: 768px) {
  .page-editoriale__main:has(.slider-images), .page-recherche__main:has(.slider-images), .page-produit__main:has(.slider-images), .page-actualite__main:has(.slider-images), .page-distributeurs__main:has(.slider-images) {
    -o-border-image: linear-gradient(to bottom, transparent 90px, #e8e8eb 90px) 0/0/0 100vw;
       border-image: linear-gradient(to bottom, transparent 90px, #e8e8eb 90px) fill 0/0/0 100vw;
  }
}
@media (min-width: 1400px) {
  .page-editoriale__main:has(.slider-images), .page-recherche__main:has(.slider-images), .page-produit__main:has(.slider-images), .page-actualite__main:has(.slider-images), .page-distributeurs__main:has(.slider-images) {
    -o-border-image: linear-gradient(to bottom, transparent 200px, #e8e8eb 200px) 0/0/0 100vw;
       border-image: linear-gradient(to bottom, transparent 200px, #e8e8eb 200px) fill 0/0/0 100vw;
  }
}
.page-editoriale__files-links, .page-actualite__files-links {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  .page-editoriale__files-links, .page-actualite__files-links {
    flex-direction: row;
    justify-content: center;
  }
}
@media (min-width: 1400px) {
  .page-editoriale__files-links, .page-actualite__files-links {
    margin-left: 8.3333333333%;
    margin-right: 8.3333333333%;
  }
}
.page-editoriale .ckeditor, .page-recherche .ckeditor, .page-institutionnelle .ckeditor, .page-erreur .ckeditor, .page-actualite .ckeditor, .page-actualites .ckeditor, .page-brochures .ckeditor, .page-contact .ckeditor, .page-distributeurs .ckeditor, .page-documentations .ckeditor {
  margin-bottom: 60px;
}
@media (min-width: 1400px) {
  .page-editoriale .ckeditor, .page-recherche .ckeditor, .page-institutionnelle .ckeditor, .page-erreur .ckeditor, .page-actualite .ckeditor, .page-actualites .ckeditor, .page-brochures .ckeditor, .page-contact .ckeditor, .page-distributeurs .ckeditor, .page-documentations .ckeditor {
    margin-left: 16.6666666667%;
    margin-right: 16.6666666667%;
  }
}

.page-produit__infos {
  display: grid;
  gap: 10px 16px;
  width: 100%;
}
.page-produit__infos > div {
  display: grid;
  align-items: flex-end;
}
@media (min-width: 768px) {
  .page-produit__infos > div {
    margin-left: 8.3333333333%;
    margin-right: 25%;
    grid-template-columns: 120px auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
.page-produit__infos > div + div {
  padding-top: 10px;
  border-top: 2px solid #3980cb;
}
.page-produit__infos dt {
  padding-bottom: 5px;
  font-weight: 700;
  color: #abcbeb;
}
@media (min-width: 768px) {
  .page-produit__infos dt {
    text-align: right;
  }
}
.page-produit__infos dd {
  font-size: calc(1.275rem + 0.3vw);
  font-weight: 700;
  color: #fff;
}
@media (min-width: 1200px) {
  .page-produit__infos dd {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) {
  .page-produit__infos dd {
    margin-bottom: 0;
  }
}
.page-produit__fiche-technique {
  padding: 20px;
  display: flex;
  justify-content: center;
}
.page-produit__logos {
  display: flex;
  justify-content: center;
  gap: 30px;
  padding: 20px;
}
.page-produit__detail {
  display: grid;
  gap: 20px;
}
@media (min-width: 1200px) {
  .page-produit__detail {
    grid-template-columns: repeat(2, 1fr);
  }
}
.page-produit__wrapper {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.page-produit__infos-techniques, .page-produit__caracteristiques-techniques {
  display: grid;
  gap: 0 16px;
  width: 100%;
}
@media (min-width: 768px) {
  .page-produit__infos-techniques, .page-produit__caracteristiques-techniques {
    grid-template-columns: 45% auto;
  }
}
.page-produit__infos-techniques dt, .page-produit__caracteristiques-techniques dt {
  font-size: 0.9375rem;
  font-weight: 400;
  color: #acadb1;
}
@media (min-width: 768px) {
  .page-produit__infos-techniques dt, .page-produit__caracteristiques-techniques dt {
    text-align: right;
  }
}
.page-produit__infos-techniques dd, .page-produit__caracteristiques-techniques dd {
  align-self: flex-end;
  font-size: 1.125rem;
  font-weight: 700;
}
@media (min-width: 768px) {
  .page-produit__infos-techniques dd, .page-produit__caracteristiques-techniques dd {
    margin-bottom: 0;
  }
}
.page-produit__infos-techniques-label {
  font-size: 1.125rem;
  font-weight: 700;
  color: #004d9e;
}
@media (min-width: 768px) {
  .page-produit__infos-techniques-label {
    width: 45%;
    text-align: right;
  }
}
.page-produit__accessoires {
  flex-direction: column;
  font-size: 1.125rem;
  font-weight: 700;
}
.page-produit__accessoire {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 6px 0;
}
@media (min-width: 768px) {
  .page-produit__accessoire {
    flex-direction: row;
  }
}
.page-produit__accessoire + .page-produit__accessoire {
  border-top: 1px solid #dadade;
}
.page-produit__accessoire .button, .page-produit__accessoire .button-backtotop, .page-produit__accessoire .error__message a, .error__message .page-produit__accessoire a {
  align-self: flex-start;
  width: auto;
}
.page-produit__contact {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 25px;
  font-size: 1.25rem;
  color: #fff;
  background-color: #004d9e;
  text-align: center;
}
@media (min-width: 768px) {
  .page-produit__contact {
    background-image: url("/images/bg-encart.webp");
    background-size: cover;
  }
}
.page-produit__contact .button, .page-produit__contact .button-backtotop, .page-produit__contact .error__message a, .error__message .page-produit__contact a {
  align-self: center;
  width: auto;
}
.page-produit__contact .button:not(:hover, :focus), .page-produit__contact .button-backtotop:not(:hover, :focus), .page-produit__contact .error__message a:not(:hover, :focus), .error__message .page-produit__contact a:not(:hover, :focus) {
  background-color: #fff;
  color: #004d9e;
}
.page-produit .excerpt {
  margin-bottom: 60px;
}
.page-produit .encart, .page-produit .encart-technologie {
  padding: 30px 0;
}
.page-produit .domaines-activite .card-fullscreen__body::after, .page-produit .domaines-activite .brochures__items::after, .page-produit .domaines-activite .domaines-activite__body::after, .page-produit .domaines-activite .documentations__items::after, .page-produit .domaines-activite .posts-home__body::after, .page-produit .domaines-activite .slider-familles-gamme__wrapper::after {
  background-image: linear-gradient(to right, #fff);
}
.page-produit .ckeditor h2, .page-produit .ckeditor .h2,
.page-produit .ckeditor .text-huge {
  font-size: calc(1.2625rem + 0.15vw);
}
@media (min-width: 1200px) {
  .page-produit .ckeditor h2, .page-produit .ckeditor .h2,
  .page-produit .ckeditor .text-huge {
    font-size: 1.375rem;
  }
}
.page-produit .ckeditor h3, .page-produit .ckeditor .h3,
.page-produit .ckeditor .text-big {
  font-size: 1.125rem;
}

@media (min-width: 768px) {
  .page-recherche .ckeditor {
    padding-top: 30px;
    padding-bottom: 30px;
    position: relative;
    overflow: visible;
    z-index: 0;
  }
  .page-recherche .ckeditor::before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    top: 0;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, 0);
    background-image: url("/images/bg-encart.webp");
    background-size: cover;
  }
}
@media (min-width: 1400px) {
  .page-recherche .ckeditor {
    margin: 0;
    padding-left: 25%;
  }
}