/* The server fallback is replaced only after the original carousel is ready. */
.public-static-gallery { position: relative; }
#media > .public-static-gallery { position: absolute !important; inset: 0; width: 100%; height: 100%; }
#media:not(.mediaNew):has(> .public-static-gallery)::before { content: ""; display: block; padding-top: 100%; }
.public-static-gallery > .sentinel { opacity: 0; pointer-events: none; }
.public-static-gallery > .sandbox-slide { display: none !important; }
.public-static-gallery > .sandbox-slide-active { display: block !important; position: absolute !important; inset: 0; width: 100%; height: 100%; margin: 0; }
.public-static-gallery > .sandbox-slide-active > picture { display: block; width: 100%; height: 100%; }
.public-static-gallery > .sandbox-slide-active > picture > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.public-static-gallery.public-gallery-no-sentinel:not(#media > .canvas) > .sandbox-slide-active { position: relative !important; inset: auto; height: auto; }
.public-static-gallery.public-gallery-no-sentinel:not(#media > .canvas) > .sandbox-slide-active > picture,
.public-static-gallery.public-gallery-no-sentinel:not(#media > .canvas) > .sandbox-slide-active > picture > img { position: static; height: auto; }
.public-static-gallery > section.sandbox-slide-active { transform: none; opacity: 1; }
.ce-textpic .image { opacity: 1 !important; }
@media (max-width: 767px) {
  .dce-imageText-background .carouselLeft, .dce-imageText-background .carouselRight { width: 100%; float: none; }
}
/* The preserved brand stylesheet supplies Flickity dots, arrows and captions. */
.flickity-page-dots .dot, .control [role="button"] { cursor: pointer; }
.flickity-enabled { touch-action: pan-y; }
.public-lightbox #swipebox-slider { touch-action: pan-y; }
.public-lightbox [role="button"]:focus-visible, .public-lightbox a:focus-visible { outline: 3px solid #0074cc; outline-offset: -3px; }
html[data-public-input="keyboard"] .flickity-enabled:focus-visible, [role="button"]:focus-visible { outline: 3px solid #0074cc; outline-offset: 3px; }
html[data-public-input="pointer"] .flickity-enabled:focus { outline: none; }
.dce-sujetslider .flickity-viewport { overflow: visible; }
/* Preserve the original static media area when it contains just a video. */
#media > .canvas > .sandbox-slide-active { display: block; }
#menu.open > .menuWrap { max-height: calc(100vh - 130px); overflow-y: auto !important; overscroll-behavior: contain; }
#menu.open li.span, #menu.open li.hasSub > a { display: block !important; }
#menu li:not([data-public-menu-group]):focus-within > .submenuWrap > ul { display: block; }
/* The original megamenus are viewport-fixed; follow the preview header offset. */
@media (min-width: 1030px) {
  #menu > div > ul > li > div.big > ul { top: 90px; }
  .onScroll #menu > div > ul > li > div.big > ul { top: 70px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } }
.net-maintenance { padding-bottom: 80px; }
.net-maintenance #title h1 { font-size: clamp(30px, 3.2vw, 44px); line-height: 1.2; hyphens: none; }
.net-maintenance #title h1 span { white-space: nowrap; }
.net-maintenance-notice { border-left: 3px solid #ff321d; padding: 8px 24px; margin: 32px 0; }
.net-maintenance-notice p { margin-bottom: 18px; text-align: left; hyphens: none; }
.net-maintenance-notice p:last-child { margin-bottom: 0; }
.net-maintenance-notice a { overflow-wrap: anywhere; text-decoration: underline; }
.net-maintenance-back { margin-top: 40px; }
@media (max-width: 767px) {
  .net-maintenance { padding-left: 20px; padding-right: 20px; }
  .net-maintenance-notice { padding: 8px 16px; }
  .net-maintenance #title h1 { font-size: 36px; overflow-wrap: anywhere; }
}
#search.public-search-open { top: 70px; }
.faq-item > .canvas[hidden]{display:none!important}.faq-item > .canvas:not([hidden]){display:block!important;height:auto!important}.faq-item > header{cursor:pointer}
.foldable .canvas[hidden], .accordion .canvas[hidden] { display: none !important; }
.foldable .slideHeader, .accordion .slideHeader, .scrollToTop { cursor: pointer; }
.foldable .slideHeader, .accordion .slideHeader { scroll-margin-top: 100px; }

#media > .public-media-gallery { position: absolute; inset: 0; }
#media > .public-media-gallery .flickity-viewport { position: absolute; inset: 0; width: 100%; height: 100%; }
#media > .public-media-gallery .flickity-slider > div[data-iteration] { width: 100%; height: 100%; }
#media > .public-media-gallery .flickity-slider picture { display: block; width: 100%; height: 100%; }
#media > .public-media-gallery .flickity-slider img { height: 100%; object-fit: cover; }
/* Match the original fullscreen image slider's 8px white/red dots. */
#mediaBox #media > .public-media-gallery .flickity-page-dots {
  position: absolute; left: 20px; bottom: 26px; z-index: 2;
  width: auto; height: auto; margin: 0; padding: 0;
  list-style: none; font-size: 0; line-height: 0;
}
#mediaBox #media > .public-media-gallery .flickity-page-dots .dot {
  display: inline-block; width: 8px; height: 8px; margin: 0 10px 0 0;
  border: 0; border-radius: 100%; background: #fff;
}
#mediaBox #media > .public-media-gallery .flickity-page-dots .dot.is-selected { background: #ff2b0b; }
@media (min-width: 992px) {
  /* Original media images can extend beyond their five-column container. */
  #media > .public-media-gallery { width: 55vw; }
  #mediaBox #media > .public-media-gallery .flickity-page-dots { left: 40px; bottom: 46px; }
}

@media (max-width: 991px) {
  #media:not(.mediaNew):has(> .public-static-gallery)::before { display: none; }
  #media:not(.mediaNew) > .public-static-gallery,
  #media:not(.mediaNew) > .canvas > .sandbox-slide-active { position: relative !important; }
  #media:not(.mediaNew) > .canvas > .sandbox-slide-active > picture > img { position: static !important; width: 100%; height: auto; }
  #media:not(.mediaNew) > .public-media-gallery { position: relative; inset: auto; width: 100%; height: auto; aspect-ratio: var(--public-media-ratio, 1); }
}
