/* ==========================================================================
   Variables
   ========================================================================== */
/* ==========================================================================
   COLORS
   ========================================================================== */
/* ==========================================================================
   TEXT
   ========================================================================== */
/* ==========================================================================
   FONT
   ========================================================================== */
/* ==========================================================================
   TITLE
   ========================================================================== */
/* ==========================================================================
   GRID
   ========================================================================== */
/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
/* ==========================================================================
   ZINDEX
   ========================================================================== */
/* ==========================================================================
   BTN
   ========================================================================== */
/* ==========================================================================
   INPUT
   ========================================================================== */
/* ==========================================================================
   TAG
   ========================================================================== */
/* ==========================================================================
   TABLE
   ========================================================================== */
/* ==========================================================================
   NOTICE
   ========================================================================== */
/* ==========================================================================
   TABS
   ========================================================================== */
/* ==========================================================================
   SPINNER
   ========================================================================== */
/* ==========================================================================
   CUSTOM
   ========================================================================== */
/* ==========================================================================
   PRINT
   ========================================================================== */
/* ==========================================================================
   MIXINS
   ========================================================================== */
/* ==========================================================================
   TEXT & FONTS
   ========================================================================== */
/* ==========================================================================
   STATES
   ========================================================================== */
/* ==========================================================================
   VISIBILITY
   ========================================================================== */
/*
 * Only display content to screen readers
 */
/*
 * Use in conjunction with .sr-only to only display content when it's focused.
 */
/* ==========================================================================
   COLORS
   ========================================================================== */
/* ==========================================================================
   LAYOUT
   ========================================================================== */
/* ==========================================================================
   ALIGNMENT
   ========================================================================== */
/* ==========================================================================
   OTHER
   ========================================================================== */
/* ==========================================================================
    ROUNDED
   ========================================================================== */
/**
 * $center-v: start/center/end
 * $center-h: start/center/end/around/beween
 */
/*

 */
/**
 * breakpoint : min width breakpoint
 * $columns: int or string = inline list
 * $center-v: start/center/end
 */
/* ==========================================================================
   Libs
   ========================================================================== */
/* ==========================================================================
   Spinner
   ========================================================================== */
.spinner--overlay {
  position: relative; }

.spinner-wrapper {
  opacity: 0;
  visibility: hidden;
  z-index: 99;
  pointer-events: none; }
  .is-loading .spinner-wrapper {
    opacity: 1;
    visibility: visible;
    pointer-events: auto; }

/* ==========================================================================
   Overlay
   ========================================================================== */
.spinner--inline .spinner-wrapper,
.spinner--overlay .spinner-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.spinner--inline .spinner-wrapper-inner,
.spinner--overlay .spinner-wrapper-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 5;
  padding: 15px;
  margin: -30px;
  width: 18px;
  height: 18px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25); }

.spinner--inline.l-spinner .spinner-wrapper-inner,
.spinner--overlay.l-spinner .spinner-wrapper-inner {
  background: no-repeat center #0071b8;
  border-radius: 50%; }

.spinner--inline.l-spinner.is-loading .spinner-wrapper-inner,
.spinner--overlay.l-spinner.is-loading .spinner-wrapper-inner {
  background-image: url("../../images/spinner.svg"); }

/* ==========================================================================
   Inline
   ========================================================================== */
.spinner--inline {
  position: relative;
  /* Dataviz
       ========================================================================== */ }
  .spinner--inline .spinner-wrapper {
    position: absolute;
    top: 40px;
    bottom: auto; }
  .spinner--inline .spinner-wrapper-inner {
    box-shadow: none; }
  .spinner--inline.l-spinner .spinner-wrapper-inner {
    background: no-repeat center #0071b8;
    border-radius: 50%; }
  .spinner--inline.l-spinner.is-loading .spinner-wrapper-inner {
    background-image: url("../../images/spinner.svg"); }
  .spinner--inline.js-dataviz-render .view-empty {
    padding-top: 80px;
    padding-bottom: 20px; }

/* ==========================================================================
   Button
   ========================================================================== */
.spinner--button.l-spinner .spinner-wrapper {
  position: absolute;
  z-index: 5;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  width: 24px;
  height: 24px;
  background: url("../../images/spinner.svg") no-repeat;
  background-size: 100% auto;
  transition: .3s; }

.spinner--button.is-loading {
  padding-left: 44px; }

/* ==========================================================================
   Notice des cookies
   ========================================================================== */
.notice--cookie {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 1010;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 20px;
  background: rgba(0, 0, 0, 0.75);
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  color: #fff;
  font-weight: normal;
  font-family: "source-sans-pro--regular", Arial, sans-serif;
  font-size: 0.875rem;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
  /* Responsive
       ========================================================================== */ }
  .is-cookienotice-notice-open .notice--cookie {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    visibility: visible; }
  .notice--cookie p {
    flex-grow: 1;
    margin: 0; }
  .notice--cookie a {
    color: inherit; }
    .notice--cookie a:hover {
      color: inherit !important;
      text-decoration: underline; }
  .notice--cookie .cookienotice-notice-actions {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    margin-left: 20px; }
  .notice--cookie .cookienotice-btn + .cookienotice-btn {
    margin-left: 10px; }
  .notice--cookie .cookienotice-btn--primary {
    text-transform: uppercase; }
  @media all and (max-width: 767px) {
    .notice--cookie {
      flex-direction: column; }
      .notice--cookie .cookienotice-notice-actions {
        margin-top: 20px;
        justify-content: center; }
      .is-cookienotice-notice-open .notice--cookie {
        bottom: 0; } }

/* ==========================================================================
   Modal des cookies
   ========================================================================== */
.modal--cookie {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: -1;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  width: 100%;
  max-width: 800px;
  max-height: 80vh;
  padding: 36px 2.5%;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  opacity: 0;
  visibility: hidden;
  overflow: auto;
  transition: .2s;
  /* Responsive
       ========================================================================== */ }
  .modal--cookie:focus {
    border: 1px dotted inherit; }
  .modal--cookie p {
    margin: 0 0 18px; }
  .is-cookienotice-modal-open .modal--cookie {
    z-index: 1005;
    opacity: 1;
    visibility: visible; }
  @media all and (max-width: 767px) {
    .modal--cookie {
      top: 0;
      left: 0;
      -webkit-transform: none;
              transform: none;
      height: 100vh;
      max-height: none;
      border-radius: 0; }
      .is-cookienotice-modal-open .modal--cookie {
        -webkit-transform: none;
                transform: none; } }

/* Overlay
   ========================================================================== */
.cookienotice-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.3);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  overflow: auto;
  transition: opacity .3s; }
  .is-cookienotice-notice-open .cookienotice-modal-overlay,
  .is-cookienotice-modal-open .cookienotice-modal-overlay {
    z-index: 1000;
    opacity: 1;
    visibility: visible;
    pointer-events: auto; }

/* Close btn
========================================================================== */
.cookienotice-modal-close {
  position: absolute;
  top: 0;
  right: -10px;
  z-index: 5;
  padding: 0;
  width: 40px;
  height: 40px;
  text-indent: -9999px;
  background: none;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition: background-color .3s; }
  .cookienotice-modal-close:hover, .cookienotice-modal-close:focus {
    background-color: #656A6E; }
    .cookienotice-modal-close:hover:before, .cookienotice-modal-close:hover:after, .cookienotice-modal-close:focus:before, .cookienotice-modal-close:focus:after {
      background-color: #fff; }
  .cookienotice-modal-close:before, .cookienotice-modal-close:after {
    content: "";
    position: absolute;
    top: 20px;
    right: 12px;
    z-index: 5;
    width: 16px;
    height: 2px;
    background: #656A6E;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    transition: background-color .3s; }
  .cookienotice-modal-close:after {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }

/* Header
   ========================================================================== */
.cookienotice-modal-header {
  position: relative;
  padding-right: 50px; }
  .cookienotice-modal-header .cookienotice-modal-label {
    margin: 0 20px 18px 0;
    font-weight: normal;
    font-family: "source-sans-pro--regular", Arial, sans-serif;
    color: #656A6E;
    font-size: 2em;
    text-transform: uppercase; }
  .cookienotice-modal-header .cookienotice-modal-description {
    margin: 18px 0;
    padding-bottom: 18px; }

/* Groupes
   ========================================================================== */
.cookienotice-group {
  padding: 18px 0; }
  .cookienotice-group:after {
    height: 1px; }
  .cookienotice-group:last-child:after {
    display: none; }

.cookienotice-modal-header,
.cookienotice-service--all,
.cookienotice-group {
  position: relative;
  margin-bottom: 36px; }
  .cookienotice-modal-header:after,
  .cookienotice-service--all:after,
  .cookienotice-group:after {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 0;
    width: 150px;
    height: 2px;
    background: #888; }

.cookienotice-group--label {
  color: #888;
  font-size: 1.1em;
  font-weight: bold; }

/* Services
   ========================================================================== */
.cookienotice-services ul {
  margin: 0;
  padding: 0; }

.cookienotice-services li {
  list-style: none; }

.cookienotice-service {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
  .cookienotice-service .cookienotice-service-description {
    margin: 6px 0 0;
    color: #888;
    font-size: .8em; }

.cookienotice-group .cookienotice-service:last-of-type {
  border-bottom: 0; }

a.cookienotice-service-label:focus {
  outline: 1px dotted #000; }

.cookienotice-service-action {
  cursor: pointer; }
  .cookienotice-service-action.is-inactive .cookienotice-service-action-input {
    grid-template-columns: 0fr 1fr 1fr; }
    .cookienotice-service-action.is-inactive .cookienotice-service-action-input:before {
      background-color: #d9534f; }
  .cookienotice-service-action.is-active .cookienotice-service-action-input {
    grid-template-columns: 1fr 1fr 0fr; }
    .cookienotice-service-action.is-active .cookienotice-service-action-input:before {
      background-color: #5cb85c; }

.cookienotice-service-action-input {
  display: grid;
  grid-template-columns: .5fr 1fr .5fr;
  padding: 4px;
  width: 52px;
  height: 30px;
  background: #656A6E;
  border-radius: 15px;
  box-sizing: border-box;
  transition: .2s; }
  .cookienotice-service-action-input:before {
    content: "";
    grid-column: 2;
    background: #ccc;
    border-radius: 50%;
    transition: background .2s; }

.cookienotice-service-action-input--checkbox,
.cookienotice-service-action-label {
  position: absolute;
  z-index: -1;
  width: 0;
  height: 0;
  opacity: 0;
  visibility: hidden; }

.cookienotice-service--all {
  border-bottom: 0; }

.cookienotice-service-all-label {
  color: #888;
  font-size: 1.2em;
  font-weight: bold;
  text-transform: uppercase; }

p.cookienotice-service-all-label {
  margin-bottom: 0; }

@media all and (max-width: 767px) {
  .cookienotice-service {
    flex-direction: column;
    justify-content: start;
    align-items: start; }
  .cookienotice-service-actions {
    margin-top: 10px;
    min-width: 0; } }

/* ==========================================================================
   CustomForm
   ========================================================================== */
.customform {
  cursor: pointer; }
  .customform.is-disabled,
  .customform.is-disabled label,
  .customform .is-disabled {
    opacity: .5;
    cursor: default; }

.customform-input {
  display: block;
  position: relative; }
  .customform-input > input,
  .customform-input > select {
    position: absolute;
    z-index: -1;
    opacity: 0;
    visibility: hidden; }

/* ==========================================================================
   Global
   ========================================================================== */
@media print {
  @page {
    margin: 10mm; }
  @page :blank {
    display: none; }
  /* ==========================================================================
       Print defaults
       ========================================================================== */
  body {
    margin: 0 !important;
    background: transparent !important; }
  * {
    text-shadow: none !important;
    box-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #999;
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h1,
  h2,
  h3 {
    -webkit-column-break-after: avoid;
       -moz-column-break-after: avoid;
            break-after: avoid; }
  /* ==========================================================================
       Print common
       ========================================================================== */
  .page--print .row--print {
    padding: 0;
    max-width: none; }
  .page--print .messages,
  .page--print .print-header,
  .page--print .nav--toolbar,
  .page--print .dataviz-form {
    display: none; }
  .page--print .print-content {
    margin: 0;
    padding: 0; }
  .page--print .print-page {
    -webkit-column-break-after: page;
       -moz-column-break-after: page;
            break-after: page;
    padding: 0;
    margin: 0;
    min-height: 0;
    overflow: visible; }
    .page--print .print-page .block--space {
      position: static;
      -webkit-column-break-after: page;
         -moz-column-break-after: page;
              break-after: page; }
      .page--print .print-page .block--space a[data-action], .page--print .print-page .block--space:before, .page--print .print-page .block--space:after {
        display: none; }
  .page--print .nav--children .nav-item,
  .page--print .dataviz {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid; }
  .print-page-break,
  .block--video .item-image .icon,
  .spinner--overlay .spinner-wrapper {
    display: none; }
  /* ==========================================================================
       Grid
       ========================================================================== */
  .page--print .builder-row {
    display: block; }
  .page--print .layout--onecol {
    clear: both; }
    .page--print .layout--onecol.builder-row {
      margin-left: auto;
      margin-right: auto; }
      .page--print .layout--onecol.builder-row > .builder-item {
        margin-left: auto;
        margin-right: auto; }
  .page--print .layout--twocol,
  .page--print .layout--threecol {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid; }
    .page--print .layout--twocol > .builder-item,
    .page--print .layout--threecol > .builder-item {
      float: left;
      min-height: 1px;
      margin-left: 0;
      margin-right: 0;
      margin-bottom: 18px;
      padding-left: 10px;
      padding-right: 10px;
      box-sizing: border-box; }
    .page--print .layout--twocol:after,
    .page--print .layout--threecol:after {
      content: "";
      clear: both;
      display: table; }
  .page--print .layout--twocol.l-33-67 > .layout__region--first {
    width: 33%; }
  .page--print .layout--twocol.l-33-67 > .layout__region--second {
    width: 67%; }
  .page--print .layout--twocol.l-67-33 > .layout__region--first {
    width: 67%; }
  .page--print .layout--twocol.l-67-33 > .layout__region--second {
    width: 33%; }
  .page--print .layout--twocol.l-50-50 > .layout__region--first,
  .page--print .layout--twocol.l-50-50 > .layout__region--second {
    width: 50%; } }

/* ==========================================================================
   Modules
   ========================================================================== */
/* ==========================================================================
   Layout builder
   ========================================================================== */
.glb-body .content-header {
  background: none; }

.glb-region-sticky__items__inner.form-wrapper {
  margin-bottom: 0; }

.layout-builder__link--remove {
  top: -19px;
  width: 19px;
  height: 19px; }

/* ==========================================================================
   Sidebar
   ========================================================================== */
.dialog-off-canvas-main-canvas {
  transition: padding-right .3s, padding-left .3s, padding-top .1s; }

#drupal-off-canvas-wrapper {
  z-index: 1000;
  border-radius: 0;
  background: #fff; }
  #drupal-off-canvas-wrapper .ui-dialog-content div .dataviz-html-editor div {
    color: #ccc; }
  #drupal-off-canvas-wrapper .layout-icon__region {
    fill: #ccc; }

.ui-widget.ui-dialog.ui-dialog-off-canvas {
  overflow: hidden;
  /* Html code
       ========================================================================== */ }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .js-hide,
  .ui-widget.ui-dialog.ui-dialog-off-canvas .form-item-settings-label,
  .ui-widget.ui-dialog.ui-dialog-off-canvas .js-filter-wrapper {
    display: none; }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .js-form-type-search {
    display: none; }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .block-categories li {
    list-style: none; }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .block-categories a {
    display: block; }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .fieldset-page-selection > .fieldset-wrapper {
    margin-top: -38px; }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .form-item-settings-selection-remove,
  .ui-widget.ui-dialog.ui-dialog-off-canvas .glb-claro-details[open] > .glb-claro-details__summary {
    display: none; }
  .ui-widget.ui-dialog.ui-dialog-off-canvas .form-item-settings-block-form-field-htmlcode-0-value .form-textarea,
  .ui-widget.ui-dialog.ui-dialog-off-canvas .form-item-settings-block-form-field-jscode-0-value .form-textarea {
    display: none; }

/* ==========================================================================
   Form
   ========================================================================== */
.glb-canvas-form {
  margin-bottom: 0; }

.glb-canvas-form__actions {
  padding-bottom: 18px; }

/* ==========================================================================
   Modal
   ========================================================================== */
.ui-dialog-off-canvas.ui-dialog-position-side {
  width: 782px !important; }

/* ==========================================================================
   Direct Add block
   ========================================================================== */
.node-body .layout-builder__add-block a:not(.btn) {
  text-decoration: none; }

.js .layout-builder__add-block a.layout-builder__direct-add__toggle {
  display: inline; }

.layout-builder__direct-add__toggle {
  padding-left: 1.3em;
  border-bottom: none;
  color: #686868;
  background: url(../../../../../../core/misc/icons/787878/plus.svg) transparent center left/1em no-repeat; }
  .layout-builder__direct-add__toggle:before {
    content: none; }

.layout-builder__direct-add__list {
  width: 100%;
  max-width: 50vw; }

/* ==========================================================================
   Edit links
   ========================================================================== */
.js-layout-builder-block.contextual-region .contextual .trigger {
  display: none; }
  .js-layout-builder-block.contextual-region .contextual .trigger:not(.visually-hidden) + .contextual-links {
    display: flex; }
  .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links {
    padding: 0;
    border-radius: 4px;
    overflow: hidden; }
    .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links li {
      background: none; }
    .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a {
      margin: 0;
      font-size: 0;
      padding: 12px;
      background: none;
      border: 1px solid #fff;
      border-radius: var(--gin-border-xs); }
      .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a:after {
        content: "";
        display: block;
        width: 16px;
        height: 16px;
        background-repeat: no-repeat; }
      .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a[href^="/layout_builder/update/"]:after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cg%3E%3Cpath fill='%23bebebe' d='M14.545 3.042l-1.586-1.585c-.389-.389-1.025-.389-1.414 0l-1.293 1.293 3 3 1.293-1.293c.389-.389.389-1.026 0-1.415z'/%3E%3Crect fill='%23bebebe' x='5.129' y='3.8' transform='matrix(-.707 -.707 .707 -.707 6.189 20.064)' width='4.243' height='9.899'/%3E%3Cpath fill='%23bebebe' d='M.908 14.775c-.087.262.055.397.316.312l2.001-.667-1.65-1.646-.667 2.001z'/%3E%3C/g%3E%3C/svg%3E%0A"); }
      .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a[href^="/layout_builder/move/"]:after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23bebebe' d='M14.904 7.753l-2.373-2.372c-.291-.292-.529-.193-.529.22v1.399h-3v-3h1.398c.414 0 .512-.239.221-.53l-2.371-2.372c-.137-.136-.36-.136-.497 0l-2.372 2.372c-.292.292-.193.53.22.53h1.399v3h-3v-1.369c0-.413-.239-.511-.53-.22l-2.372 2.372c-.136.136-.136.359 0 .494l2.372 2.372c.291.292.53.192.53-.219v-1.43h3v3h-1.4c-.413 0-.511.238-.22.529l2.374 2.373c.137.137.36.137.495 0l2.373-2.373c.29-.291.19-.529-.222-.529h-1.398v-3h3v1.4c0 .412.238.511.529.219l2.373-2.371c.137-.137.137-.359 0-.495z'/%3E%3C/svg%3E%0A"); }
      .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a[href^="/layout_builder/remove/"]:after {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23bebebe' d='M3.51 13.925c.194.194.512.195.706.001l3.432-3.431c.194-.194.514-.194.708 0l3.432 3.431c.192.194.514.193.707-.001l1.405-1.417c.191-.195.189-.514-.002-.709l-3.397-3.4c-.192-.193-.192-.514-.002-.708l3.401-3.43c.189-.195.189-.515 0-.709l-1.407-1.418c-.195-.195-.513-.195-.707-.001l-3.43 3.431c-.195.194-.516.194-.708 0l-3.432-3.431c-.195-.195-.512-.194-.706.001l-1.407 1.417c-.194.195-.194.515 0 .71l3.403 3.429c.193.195.193.514-.001.708l-3.4 3.399c-.194.195-.195.516-.001.709l1.406 1.419z'/%3E%3C/svg%3E%0A"); }
      .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a:focus {
        outline: 0;
        box-shadow: none; }
      .js-layout-builder-block.contextual-region .contextual .trigger + .contextual-links a:hover {
        background-color: #fff;
        border-color: var(--gin-color-primary); }

.js-layout-builder-block.contextual-region .webform-submission-form .contextual {
  display: none; }
