/* CSS Standard Artifica version 11.5 */

/******** SOMMAIRE ************/
/*
/* 00 = FONTS
/* 01 = RESET
/* 02 = STYLES GLOBAUX à tous les sites
/* 03 = STRUCTURE
/* 04 = HEADER
/* 05 = FOOTER
/* ==== PAGES ====
/* 06 = ACCUEIL
/* 07 = PAGE INTERNE
/* 08 = ACTUALITÉS
/* 09 = AGENDA
/* 10 = ANNUAIRE
/* 11 = RECHERCHE
/* 12 = MÉDIATHÈQUE
/* 13 = VIDÉOTHÈQUE
/* 14 = SOMMAIRE
/* 15 = PUBLICATIONS
/* ==== MODULES ====
/* 16 = BREADCRUMBS
/* 17 = OUTILS ET PARTAGE
/* 18 = FORMULAIRE
/* 19 = PAGINATION
/* 20 = DIAPORAMA & GABARITS DE FICHIERS
/* 21 = MODALES
/* 22 = LOGIN
/* 23 = PROFILS
/* 24 = MÉTÉO
/* 25 = LEAFLET
/* 26 = MENUS
/* 27 = FAQ
/* 28 = COOKIE CONSENT
/* 29 = PRINT
/*
/* RESPONSIVE
/*
/******************************/


:root {/* À mettre en premier dans les CSS ! */
  --box-shadow: 0 0 15px rgb(0 0 0 / 10%);
  --border-radius: 5px;
  /* SWITCH */    
  --switch-length: 60px;
  --switch-border: 4px;
  --switch-height: calc((var(--switch-length) / 2) + var(--switch-border));
  --switch-border-radius: calc((var(--switch-height) / 2));
}


/* 00 = FONTS */
/* FONT AWESOME ARTIFICA */
@font-face {
  font-family: 'fontawesome';
  src:  url('../Fonts/Fontawesome/fontawesome.woff?4fyphb') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="fa-"], [class*=" fa-"],
.rte-content .encart::before,
.rte-content .frame-encart::before,
.blueimp-gallery>.play-pause::before,
.blueimp-gallery-playing>.play-pause::before,
.ui-datepicker .ui-datepicker-prev span::before,
.ui-datepicker .ui-datepicker-next span::before,
.frame-type-textmedia .external-link-new-window::after,
.form-fileupload-gallery-container .form-fileinput-element::before,
.fa,
.btn-ticket-perforated::before,
.link-arrow::after, .link-page::after, .link-folder::after, .link-file::after, .link-external::after, .link-chevron::after, .link-mail::after, .link-globe::after, .link-phone::after,.fa-page::before, .fa-folder::before, .fa-arrow-up-right-from-square::before, .fa-envelope-open-text::before, .fa-globe::before,
.rte-content .accordion-header .accordion-button::after,
.btn-plus::after,
.filters .calendar .dropdown-toggle::after,
.external-link-new-window::after,
.check-cache::after,
.has-error .error::before,
.cbv-eye::before,
.practical-info .practical-info-item::before,
.criteria .btn-primary .btn-remove::before,
.main-navigation .link-blank .title::after {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'fontawesome' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fa-envelope-regular::before {
  content: "\e920";
}
.fa-envelope-solid::before {
  content: "\e90a";
}
.fa-bars-solid::before {
  content: "\e917";
}
.fa-arrow-right::before,
.fa-arrow-right-regular::before,
.menu-subpages .link::after,
.directories-list .filters-results .item-directories::after {
  content: "\e919";
}
.fa-house-light::before {
  content: "\e91a";
}
.fa-arrow-down-to-line::before, .fa-arrow-down-to-line-regular::before {
  content: "\e91b";
}
.fa-paper-plane-regular::before,  {
  content: "\e914";
}
.fa-xmark-solid::before, .fa-xmark-large::before, .fa-xmark::before {
  content: "\e91d";
}
.fa-assistive-listening-systems::before {
  content: "\e910";
}
.fa-font::before {
  content: "\e911";
}
.fa-star::before {
  content: "\e912";
}
.fa-print::before {
  content: "\e913";
}
.fa-location-dot-solid::before/*, .leaflet-marker-icon::before*/ {
  content: "\e90c";
}
.fa-location-dot::before, .fa-location-dot-regular::before, .fa-map-marker-alt::before {
  content: "\e90b";
}
.calendar-days-regular::before, .fa-calendar-alt::before, .fa-calendar-day::before {
  content: "\e90d";
}
.fa-ear-listen-solid::before {
  content: "\e911";
}
.fa-font-solid::before {
  content: "\e912";
}
.fa-star-regular::before {
  content: "\e913";
}
.fa-print-solid::before {
  content: "\e914";
}
.fa-child-solid::before {
  content: "\e90e";
}
.euro-sign-solid::before {
  content: "\e90f";
}
.fa-images::before, .fa-images-solid::before {
  content: "\e90f";
}
.fa-phone-regular::before, .fa-phone::before {
  content: "\e91f";
}
.fa-phone-solid::before {
  content: "\e909";
}
.fa-envelope::before, .fa-envelope-regular::before {
  content: "\e920";
}
.fa-envelope-solid::before {
  content: "\e90a";
}
.fa-search::before, .fa-magnifying-glass::before {
  content: "\e906";
}
.fa-user-circle::before {
  content: "\65";
}
.fa-angle-up::before, .fa-chevron-up::before, .fa-angle-up-solid::before {
  content: "\e908";
}
.fa-chevron-down::before, .btn-plus::after {
  content: "\e934";
}
.fa-arrow-up::before {
  content: "\e921";
}
.fa-tiktok::before {
  content: "\e902";
}
.fa-x-twitter::before {
  content: "\e903";
}
.fa-youtube::before {
  content: "\e904";
}
.fa-linkedin-in::before {
  content: "\e905";
}
.fa-facebook-f::before, .fa-facebook::before {
  content: "\e900";
}
.fa-instagram::before {
  content: "\e901";
}
.circle-exclamation-check::before {
  content: "\e91c";
}
.fa-chevron-right::before {
  content: "\e91e";
}
.fa-clock::before {
  content: "\e907";
}
.fa-play::before, .fa-video::before {
  content: "\e922";
}
.fa-play-bold::before {
  content: "\e923";
}
.fa-camera::before, .fa-image::before {
  content: "\e924";
}
.fa-camera-bold::before {
  content: "\e925";
}
.fa-eye::before {
  content: "\e926";
}
.fa-file-certificate::before {
  content: "\e928";
}
.fa-map-location-dot::before {
  content: "\e929";
}
.fa-share-nodes::before {
  content: "\e92a";
}
.fa-pinterest::before {
  content: "\e92b";
}
.fa-times::before, .fa-X::before {
  content: "\e91d";
}
.fa-check::before {
  content: "\e92c";
}
.fa-arrows-alt::before {
  content: "\e92d";
}
.fa-times-circle::before {
  content: "\e92e";
}
.fa-angle-left::before {
  content: "\e930";
}
.fa-angle-right::before {
  content: "\e931";
}
body:last-child .blueimp-gallery>.play-pause::before {
  content: '\e923';
}
body:last-child .blueimp-gallery-playing>.play-pause::before {
  content: '\e92f';
}
.fa-pause::before {
  content: "\e92f";
}
.fa-arrow-left::before, .fa-arrow-left-bold::before {
  content: "\e932";
}
.fa-circle-calendar::before {
  content: "\e933";
}
.fa-euro-sign-regular::before, .fa-euro-sign::before {
  content: "\e936";
}
.fa-calendar-star::before {
  content: "\e937";
}
.fa-timer::before {
  content: "\e938";
}
.fa-circle-info::before {
  content: "\e939";
}
.fa-file::before {
  content: "\e93a";
}
.fa-file-alt::before {
  content: "\e93b";
}
.fa-newspaper::before {
  content: "\e93c";
}
.fa-calendar-alt::before {
  content: "\e93d";
}
.fa-address-card::before {
  content: "\e93e";
}
.fa-podcast::before {
  content: "\e93f";
}
.file-arrow-down::before, .fa-file-download::before {
  content: "\e940";
}
.fa-square::before {
  content: "\e946";
}
.fa-square-minus::before {
  content: "\e947";
}
.fa-circle-user-regular::before {
  content: "\65";
}
.fa-user::before, .fa-user-alt::before {
  content: "\e94a";
}
.fa-calendar::before {
  content: "\e948";
}
.fa-folder-solid::before {
  content: "\e949";
}
.fa-globe::before {
  content: "\e945";
}
.fa-comment-regular::before {
  content: "\e94b";
}
.fa-comment-solid::before {
  content: "\e94c";
}
.fa-thumbs-up-regular::before {
  content: "\e94d";
}
.fa-thumbs-up-solid::before {
  content: "\e94e";
}
.fa-vimeo::before {
  content: "\e952";
}
.fa-calameo::before {
  content: "\e953";
}
.fa-magnifying-glass-solid::before {
  content: "\e906";
}
.fa-envelope-light::before {
  content: "\e917";
}
.fa-arrow-up-right-from-square::before {
  content: "\e941";
}
.fa-page::before {
  content: "\e942";
}
.fa-envelope-open-text::before {
  content: "\e943";
}
.fa-circle::before {
  content: "\e94f";
}
.fa-circle-check-solid::before {
  content: "\e950";
}
.fa-file-pdf::before {
  content: "\e951";
}
.fa-star-exclamation::before {
  content: "\e954";
}
.fa-ellipsis-stroke::before {
  content: "\e955";
}
.fa-face-smile::before {
  content: "\e958";
}
.fa-face-frown-slight::before {
  content: "\e959";
}
.fa-bookmark::before {
  content: "\e95a";
}
.fa-bookmark-plain::before {
  content: "\e95b";
}
.fa-toggle-on::before {
  content: "\e956";
}
.fa-toggle-off::before {
  content: "\e957";
}
.fa-button-arrow::before {
  content: "\e95c";
}
.fa-calendar-check::before {
  content: "\e95d";
}
.fa-calendar-plus::before {
  content: "\e95e";
}
.fa-whatsapp::before {
  content: "\e95f";
}
.fa-bullhorn::before {
  content: "\e960";
}
.fa-xmark-solid::before, .criteria .btn-primary .btn-remove::before {
  content: "\e916";
}
.fa-ticket-perforated::before, .btn-ticket-perforated::before {
  content: "\e961";
}
.fa-rss::before {
  content: "\e96b";
}
/* icônes light */
.fa-calendar-day-light::before {
  content: "\e962";
}
.fa-location-dot-light::before {
  content: "\e963";
}
.fa-timer-light::before {
  content: "\e964";
}
.fa-euro-sign-light::before {
  content: "\e965";
}
.fa-user-group-simple-light::before {
  content: "\e966";
}
/* icônes handicap */
.fa-ear-deaf::before {
  content: "\e967";
}
.fa-eye-low-vision::before {
  content: "\e968";
}
.fa-head-side-heart::before {
  content: "\e969";
}
.fa-wheelchair::before {
  content: "\e96a";
}
.fa-pen-line::before {
  content: "\e96f";
}
.fa-trash-can::before {
  content: "\e970";
}
.fa-minus::before {
  content: "\e971";
}
.fa-house-regular::before {
  content: "\e972";
}
.fa-chart-network::before {
  content: "\e973";
}
.fa-house-solid::before {
  content: "\e974";
}
.fa-arrow-down-to-bracket-light::before {
  content: "\e975";
}
.fa-ellipsis-stroke-light::before {
  content: "\e976";
}
.fa-arrow-down-long::before {
  content: "\e977";
}
.fa-newsletter-light::before {
  content: "\e978";
}
.fa-chart-network-light::before {
  content: "\e979";
}


/* 01 = RESET : vérifier la pertinence de chaque ligne !!!!! */
/* BOOTSTRAP */
.navbar-mainnavigation .dropdown-toggle:after {
  display: none;
}
.frame-container {
  padding-right: var(--bs-gutter-x,15px);
  padding-left: var(--bs-gutter-x,15px);
}
.row {
  --bs-gutter-x: 30px;
}
.container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl,
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col, .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm, .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md, .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg, .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl, .col-xl-auto {
  padding-left: 15px;
  padding-right: 15px;
}
figure .picture {
  display: inline;
}
.alert > .fa {
  margin-right: 5px;
}
.frame-none {/* classe dans le fichier Layouts/bootstrap_package/ContentElements/SimpleMain.html pour les plugins */
  --frame-spacing: 0;
}
/* Éléments colonne de droite */
.col-right .frame + .frame {/* Même style que pour les blocs dans l'article */
  --frame-outer-spacing-before: calc(-1 * var(--frame-spacing));
}
/* Accessibilité */
.sr-only { /* Pour Asqatasun */
  background-color: #fff;
  color: #000;
}
h2.sr-only,
.rte-content h2.sr-only {
  margin: 0;
  padding: 0;
}
/* Modales */
.modal-header .close {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e1e1e1;
  height: 50px;
  margin: 0;
  width: 50px;
  font-size: 24px;
}
/* Blocs text & media */
.textmedia,
.textpic {
  gap: 30px; /* Anciennes marges */
}
/* Listes avec images */
.card-img-top picture,
.card-img-top .picture {
  height: 100%;
}
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,main,pre,form,fieldset,input,textarea,p,blockquote,th,td {
  margin: 0; 
  padding: 0;
}
html {
  min-height: 100%;
  max-width: 100%;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  font-size: 100%;
  overflow-x: hidden;
  scroll-behavior: smooth; /* Défilement de la page */
}
/* Taille texte */
body {
  color: #333; 
  font-size: 1em;
}
  form,fieldset {
    border: none;
  }
    input:-webkit-autofill { /* Enlève le fond jaune sur Chrome */
      -webkit-box-shadow:0 0 0px 1000px white inset;
    }
    /**
    * 1. Correct the text wrapping in Edge and IE.
    * 2. Correct the color inheritance from `fieldset` elements in IE.
    * 3. Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
    */
    legend {
      display: table; /* 1 */
      padding: 0; /* 3 */
      max-width: 100%; /* 1 */
      color: inherit; /* 2 */
      box-sizing: border-box; /* 1 */
      white-space: normal; /* 1 */
    }
  img {
    -ms-interpolation-mode: bicubic; 
    vertical-align: middle;
  }
  abbr[title] {  
    text-decoration: underline; /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
    text-decoration: underline dotted; /* Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari */
  }
  button,
  [type="button"],
  [type="reset"],
  [type="submit"] { /* Correct the inability to style clickable types in iOS and Safari */
    -webkit-appearance: button;
  }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner { /* Remove the inner border and padding in Firefox */
    border-style: none;
    padding: 0;
  }
  /**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
  progress {
    vertical-align: baseline;
  }
  .frame-type-textmedia *:last-child,
  .frame-type-textmedia .textmedia *:last-child,
  .media-list-default *:last-child {
    margin-bottom: 0;
  }
.link-arrow::after, .link-page::after, .link-folder::after, .link-file::after, .link-external::after, .link-chevron::after, .link-mail::after, .link-globe::after, .link-phone::after {
  position: relative;
  background: none;
  line-height: 1; 
}
.link-arrow::after {
  content: '\e919';
}
.link-page::after, .fa-page::before {
  content: '\e942';
}
.link-folder::after, .fa-folder::before {
  content: '\e944';
}
.link-file::after {
  content: '\e93a';
}
.link-external::after, .fa-arrow-up-right-from-square::before, .external-link-new-window::after {
  content: '\e941';
}
.link-chevron::after {
  content: '\e91e';
}
.link-mail::after, .fa-envelope-open-text::before {
  content: '\e943';
}
.link-globe::after, .fa-globe::before {
  content: '\e945';
}
.link-phone::after {
  content: '\e91f';
}


/* 02 = STYLES GLOBAUX à tous les sites */
body {
  font-size: 16px;
  color: var(--dark);
}
.btn-primary,
.btn-secondary,
.btn-info,
.btn-default {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
  border-radius: 20px;
  min-height: 40px;
  padding: 8px 20px;
  width: max-content;
  line-height: 1.125;
  text-decoration: none;
  transition: all .3s;
}
.btn,
.btn:is(:focus-visible,:focus,:hover,:active) {/* Tous les boutons */
  box-shadow: none;
  outline: none;
}
*:focus, 
*:active {
  outline: revert;
}
/* Tailles polices */
.typo_size1 .rte-content {
  font-size: 100%;
} 
.typo_size2 .rte-content {
  font-size: 120%;
}
.typo_size3 .rte-content {
  font-size: 140%;
}
/* Utilisé régulièrement sans effets de bord de Bootstrap */
.hidden {/* équivaut à [hidden] utilisé par Bootstrap ! */
  display: none !important;
}
.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}
.object-fit {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
/* LOADING */ /* VOIR SI ON PEUT FAIRE QUELQUE CHOSE POUR CETTE TAILLE ! */
/*** Reprend les styles de "fa fa-spinner fa-spin" // Changer le "background-color" et le "color" selon le projet,voire aussi le "content" */
.loading {
  position: relative;
  display: block;
  height: 250px;
  max-height: 100%; 
  margin: 0 auto; 
  max-width: 100%;
  width: 710px;
  background: #f5f5f5 url(../Img/tremblay_sprite.svg#loading) no-repeat center center / 50px auto /*cover*/;
  overflow: hidden;
}
.loading.form-group {
  max-height: 130px;
  background-position: center bottom;
}
.navbar-visible {/* Enlève l'ascenseur sur le body */
  height: 100vh; /* Si on ne veut pas de saut en haut de page : height: auto;*/
  overflow-y: hidden;
}
.scroll-page-hidden {
  height: auto;
  padding-right: 0px;
  overflow: hidden;
}
/* Font-Awesome */
.sr-only, 
.fa-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* Surcharge Bootstrap */
.container .container {
  padding: 0;
}


/* 03 = STRUCTURE */
html, body {
  height: 100%;/*Pour l'overflow: hidden de la page avec le cookie consent */
}
  #wrap {
    position: relative;/* Sinon ascenseur sur .modal-cookie-consent-scroll-visible */
  }
    .rte-content .last-update {
      --frame-spacing: var(--frame-spacing-xl);
      padding-bottom: var(--frame-spacing);
    }
    .site-main {
      padding: 0;
    }
      .rte-content .lead {
        --frame-spacing: var(--frame-spacing-xl);
        padding-top: var(--frame-spacing);
      }


/* 04 = HEADER */
/* Skip links */
.skip-links {
  position: absolute; 
  left: 0;
  top: 0;
  list-style-type: none;
}
  .skip-item {
    position: absolute;
    left: 0; 
    top: -200px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    background: #000;
    color: #fff;/* Pour tests accessibilité */
    line-height: 1;
    white-space: nowrap;
  }
  .skip-item:focus {
    top: 0; 
    z-index: 10000;
    color: #fff; 
  }
/* Header du site */
/* BOOTSTRAP */
/* Header fixe */
/* LOGO */
.navbar-brand {
  margin: 0;
  padding: 0;
}
  .navbar-mainnavigation.navbar-default-transition .logo .navbar-brand {
    display: block;
    border: 0;
    height: 100%;
    margin: 0;
    padding: 0;
  }
    .navbar-mainnavigation .navbar-brand-image img {
      top: 0;
      max-height: inherit;
      height: 100%;
      transform: none; 
    }
/* 1er niveau */
.header-menu .navbar-collapse {
  position: absolute;
  left: 0;
  right: 0;
  top: 50px;
  height: calc(100vh - 51px);
  background-color: rgba(0,0,0,.75);
}
  .header-menu .navigation {
    flex-direction: column;
    border-radius: 0;
  }
    .header-menu .list-group-item {
      position: static;
      border: 0;
      border-radius: 0;
      padding: 0;
    }
    .header-menu .list-group-item.active {/*Surcharge BS */
      border: 0;
      margin: 0;
      background: transparent;
    }
      .header-menu .list-group-item .link {
        display: flex;
        align-items: center;
        min-height: 50px;
        padding: 13px 15px;
        text-decoration: none;
        transition: all .3s;
      }
      .header-menu .list-group-item .link:is(:focus,:hover,:active),
      .header-menu .current .link {
        outline: none;
      }
        /* 2ème niveau */
        .header-menu .dropdown-menu {
          top: 75px!important;
          border: 0;
          border-radius: 0;
          padding: 0;
          width: 100%;
          transition: top .3s;
          transform: none!important;
        }
        .navbar-transition .header-menu .dropdown-menu {
          top: 50px!important;
        }
          .header-menu .dropdown-menu .container {
            padding: 50px var(--bs-gutter-x,20px);
          }
        /* Header de la page */
        .site-main .page-header {
            
        }


/* 05 = FOOTER */
.site-footer {
  position: relative;
}
  /* Retour haut de page*/
  .site-footer .to-page-top {
    position: absolute;
    top: -25px;
    right: 20px;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    height: 50px;
    width: 50px;
    transition: all .3s;
  }
    .to-page-top,
    .to-page-top:is(:focus,:hover,:active) {
      background-color: #000;
      color: #fff;
      text-decoration: none;
    }
      .to-page-top .fa-arrow-up {
      	font-size: 1.3rem;    	
      }
      .to-page-top:hover .fa-arrow-up {
      	transform: translateY(-3px);
      }


/* 07 = PAGE INTERNE */
/* TITRES ET ELEMENTS En relatif car A+/A- ! */
.rte-content .page-title {
  margin-bottom: 1em;
  font-size: 3em;
}
.rte-content .lead {
  font-size: 1.25em;
}
/* RTE */ 
.rte-content h2, 
.rte-content .h2,
.rte-content h2:last-child,
.rte-content h3,
.rte-content .h3, 
.rte-content h3:last-child,
.rte-content h4,
.rte-content .h4, 
.rte-content h4:last-child,
.rte-content h5,
.rte-content .h5, 
.rte-content h5:last-child,
.rte-content h6,
.rte-content .h6,
.rte-content h6:last-child {
  margin-bottom: 1em;
}
.rte-content h2 {
  font-size: 1.75em;
}
.rte-content h3 {
  font-size: 1.55em;
}
.rte-content h4 {
  font-size: 1.125em;
}
.rte-content h5 {
  font-size: 1em;
}
.rte-content h6 {
  font-size: .875em;
}
  /* Classes RTE */
  .text-important {
    color: #c00!important;
    font-weight: bold;
  }
  .text-strike {
    text-decoration: line-through;
  }
  .text-small {
    font-size: .8em;
  }
  .text-big {
    font-size: 1.2em;
  }
  .rte-content .phone {
    color: #333;
    font-weight: 700;
  }
  /* Icône lien externe */
  .frame-type-textmedia .external-link-new-window::after {
    margin-left: 0.25em;
  }
  .rte-content p {
    margin-bottom: 1em;
  }
  .rte-content p,
  .rte-content .list-normal li,
  .rte-content ol li  {
      font-size: 1em;
  }
  .rte-content blockquote {
    position: relative;
    border-left: 4px solid rgba(0,0,0,0.125);
    margin-bottom: 2em;
    padding: 1.25rem 1.5rem;
    font-size: 1.25rem;
  }
.page-picture .picture-desc {

}
  .page-picture .picture-desc small {/* Mêmes styles que "figure .caption" de Bootstrap Package */
    padding-top: 0.25rem;
    font-size: 0.85rem;
    opacity: 0.8;
    word-wrap: break-word;
  }
.rte-content .encart,
.frame-encart .frame-group-container {
  position: relative;  
  margin-bottom: 1em;
  padding: 50px 60px;
}
.rte-content .frame-encart {/* Laisser les styles Bootstrap package ! */

}
  .frame-encart .frame-group-container {/* Laisser les styles Bootstrap package ! */
    /*margin: 0;*/
  }
  .rte-content .encart::before,
  .rte-content .frame-encart::before {
    position: absolute;
    left: 20px;
    top: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    content: '\f129';
    border-radius: 40px;
    height: 80px;
    width: 80px;
    background-color: #fff;
    color: var(--colordark);
    font-size: 50px;
  }
/* Listes */
.rte-content ul:not(.list-unstyled),
.rte-content ol:not(.list-unstyled) {
  margin-bottom: 2em;
  padding-left: 40px;
}
  .rte-content ul ul,
  .rte-content ol ol,
  .rte-content ul ol,
  .rte-content ol ul {
    margin-bottom: 0;
  }
    .rte-content .list-normal li li,
    .rte-content ol li li {
      font-size: 1em;
    }

/* Vidéos */
.embed-responsive-16by9 {
  margin-bottom: 2em;
}
  .embed-responsive .container-player-video {
    position: absolute;  
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    z-index: 0;
    background-color: #ccc;
  }
    .container-player-video img {
      height: 100%;
      width: 100%;
      object-fit: cover;
    }
    .container-player-video .container-player-play {
      position: absolute;
      left: 50%;
      top: 50%;
      content: "";
      border: 0;
      border-radius: 50%;
      height: 90px;
      width: 90px;
      background-color: rgba(0,0,0,.5);
      background-image: url(data:image/svg+xml;base64,PHN2ZyBhcmlhLWhpZGRlbj0idHJ1ZSIgZm9jdXNhYmxlPSJmYWxzZSIgZGF0YS1wcmVmaXg9ImZhcyIgZGF0YS1pY29uPSJwbGF5IiBjbGFzcz0ic3ZnLWlubGluZS0tZmEgZmEtcGxheSBmYS13LTE0IiByb2xlPSJpbWciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDQ0OCA1MTIiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik00MjQuNCAyMTQuN0w3Mi40IDYuNkM0My44LTEwLjMgMCA2LjEgMCA0Ny45VjQ2NGMwIDM3LjUgNDAuNyA2MC4xIDcyLjQgNDEuM2wzNTItMjA4YzMxLjQtMTguNSAzMS41LTY0LjEgMC04Mi42eiI+PC9wYXRoPjwvc3ZnPg==);
      background-position: 58% center;
      background-repeat: no-repeat;
      background-size: 40px;
      cursor: pointer;
      overflow: hidden;
      text-indent: 200%;
      white-space: nowrap;
      transform: translateX(-50%) translateY(-50%);
    }
.rte-content .last-update {
  display: block;
  margin-bottom: 1em;
  color: #737373;
  font-size: .875em;
}

/* Tableaux *//* Vu avec Raoul : on change seulement quelques détails sur les 4 tableaux possibles avec TYPO3*/

/* Accordéon */
.rte-content .frame-type-accordion .accordion-header {
  margin-bottom: 0;
}
/* Colonne de droite */
.frame-siblings .list-unstyled {
  margin: 0;
  padding: 0;
}
.rte-content .col-droite h2 {
  margin-bottom: 10px;
}
/* Liste de fichiers */
.media-list-default .media {
  display: flex;
}
  .media-list-default .media-left {
    width: 20px;
  }
/* Tableaux */
figure.table {
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
}
  .rte-content .table-responsive {
    /*margin-bottom: 2em;*/
  }
    .table-responsive table {
      width: 100%;
    }
    .rte-content table p {
      margin-bottom: 0;
    }
    .table figcaption {
      border: 1px solid var(--grey-border);
      border-bottom: 0;
      margin: 1px 1px 0;
      padding: 12px 20px;
      background-color: var(--mainmorepale);
      font-size: .875em;
      font-weight: 700;
      line-height: 1.214;
      text-align: center;
    }


/* 08 = ACTUALITÉS */
/* Catégories */
.category {/* Style général pour toutes les catégories */
  display: inline-flex;
}


/* 09 = AGENDA */
/* Filtres */
.filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  background-color: #fff;
}
  .filters .row {
    align-items: center;
    border-radius: var(--border-radius);
    margin: 0;
    padding: 15px 0;
    width: 100%;
    background: #fff;
    box-shadow: var(--box-shadow);
  }
    .filters .form-group {
      margin-bottom: 10px;
    }
      .filters .calendar .form-control,
      .filters select.form-control {
        height: 40px;
        box-shadow: none;
      }
        .filters .calendar .dropdown-toggle::after {
          margin-left: auto;
        }
      .filters .calendar .form-control {
        display: flex;
        align-items: center;
        gap: 5px;
      }
        .filters .calendar .time {
          color: inherit;
        }
    .filters .form-group:last-child {
      margin-bottom: 0;
    }
    .filters .control-label :is(.far,.fa,.fas) {
      margin-right: 5px;
    }
.filters .col-xs-12,
.filters .filters-search {
  padding: 0;
}
.filters .col-md-3 {
  max-width: inherit;
}

/* Switch */
.filters .switch {
  height: 34px;
}
  .filters .switch input + label {
    position: relative;
    margin: 0;
    padding-right: calc(10px + var(--switch-length));
    font-weight: 400;
    cursor: pointer;
  }
  .filters .switch input + label::before,
  .switch input + label::after {
    position: absolute;
    display: block;    
    content: "";
  }
  .filters .switch input + label::before {
    right: 0;
    top: 0;
    z-index: 1;
    border: 2px solid #ccc;
    border-radius: var(--switch-border-radius); 
    height: var(--switch-height);
    width: var(--switch-length);
    background-color: #ccc;
    transition-property: background-color;
  }
  .filters .switch input + label::after {
    right: calc(var(--switch-length) - (var(--switch-height) - var(--switch-border)));
    top: var(--switch-border);
    z-index: 2;
    border-radius: 50%;
    height: calc(var(--switch-height) - (2 * (var(--switch-border))));
    width: calc(var(--switch-height) - (2 * (var(--switch-border))));
    background-color: #fff;
    transition-property: background-color,left;
  }
  .filters .switch input:checked + label::after {
    right: calc(var(--switch-border));
  }
  .filters .switch input:checked + label::before,
  .filters .switch input:checked + label::after {
    color: #30a1c0;
  }

/* Calendrier */
.calendar .dropdown-menu {
  padding: 0;
}
  .calendar-render .thosedates {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 5px;
    padding: 5px;
  }
    .thosedates .checkbox {
      position: relative;
      padding: 0;
      overflow: hidden;
    }
      .checkbox input[type="checkbox"].sr-only {
        position: absolute;
        top: -50px;
      }
      .checkbox .btn-thosedates {
        white-space: nowrap;
      }
.calendar-render .ui-datepicker {
  border: 0;
  padding: 0;
  width: auto;
}
  .ui-datepicker .ui-datepicker-header {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0;
  }
    .ui-datepicker .ui-datepicker-title {
      font-size: 1.125em;
      line-height: 1;
      text-transform: initial;
    }
    .ui-datepicker .ui-datepicker-prev, 
    .ui-datepicker .ui-datepicker-next {
      left: 0;
      top: 0;
      border: 2px solid transparent;
      height: 40px;
      width: 40px;
    }
    .ui-datepicker .ui-datepicker-next {
      left: auto;
      right: 0;
    }
      .ui-datepicker .ui-datepicker-prev span, 
      .ui-datepicker .ui-datepicker-next span {
        background: none;
        position: static;
        margin: -2px 0 0 -2px;/* On récupère la marge sur le parent */
        display: inline-flex;
        height: 40px;
        width: 40px;
        text-indent: 100px;
      }
        .ui-datepicker .ui-datepicker-prev span::before,
        .ui-datepicker .ui-datepicker-next span::before {
          display: flex;
          align-items: center;
          justify-content: center;
          text-indent: 0;
          height: 40px;
          min-width: 40px;
          font-size: 18px;
          font-weight: 600;
          cursor: pointer;
        }
        .ui-datepicker .ui-datepicker-prev span::before {
          content: '\f053';
        }
        .ui-datepicker .ui-datepicker-next span::before {
          content: '\f054';
        }
    /* Tableau */
    .ui-datepicker table {
      margin: 0 auto;
      width: auto;
    }
      .ui-datepicker td span, .ui-datepicker td a {
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        height: 40px;
        width: 40px;
        padding: 0;
        text-align: center;
        text-decoration: none;
      }
    /* Boutons bas de panel */
    .ui-datepicker .ui-datepicker-buttonpane .ui-datepicker-current,
    .ui-datepicker .ui-datepicker-buttonpane .ui-datepicker-submit {
      border-radius: 20px;
      height: 36px;
      padding-top: 0.5em;
      font-size: .75em;
      font-weight: 600;
      text-transform: uppercase;
      opacity: 1;
      transition: all .3s;
    }

/* Critères */
.criteria-total {
  margin: 15px 0;
}
  .criteria-total .totalresults {
    margin-bottom: 10px;
  }
  .criteria-total .criteria {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
  }
    .criteria .btn-primary {
      display: inline-flex;
    }

/* Liste */
.events-item .item-link:is(:focus,:hover,:active),
.news-item .item-link:is(:focus,:hover,:active) {
  text-decoration: none;
}
/* Single */
/* Infos pratiques */
.practical-info .practical-info-item::before {
  position: relative;
  top: -1px;
  display: inline-flex;
  align-self: flex-start;
  justify-content: center;
  min-width: 24px;
  color: var(--main);
  font-size: 1.5rem;
}
.practical-info .practical-info-association::before {
  content: "\e960";
}
.practical-info .practical-info-time::before {
  content: "\e90d";
}
.practical-info .practical-info-duration::before {
  content: "\e938";
}
.practical-info .practical-info-location::before {
  content: "\e90b";
}
.practical-info .practical-info-free::before {
  content: "\e936";
}
.practical-info .practical-info-tariff::before {
  content: "\e936";
}
.practical-info .practical-info-public::before {
  content: "\e939";
}
.practical-info .practical-info-reservation::before {
  display: none;
}
.col-droite .events-dates {
  margin-bottom: 1em;
}
#modalShareAgenda .modal-footer {
  flex-wrap: wrap;
  justify-content: flex-start;
}
  #modalShareAgenda .modal-footer .btn-primary {
    padding: 0 10px;
    min-width: calc(33.3333334% - 10px);
    font-weight: normal;
    line-height: 1;
    text-transform: inherit;
    white-space: nowrap;
  }
    #modalShareAgenda .modal-footer .fa-calendar-plus {
      margin-right: 5px;
    }
/* Ajouter à mon agenda */
#modalShareAgenda .modal-content {
  border: 0;
  border-radius: 5px;
  /*min-width: 630px;*/
  background-color: #f9f9f9;
  box-shadow: 0 0 20px rgba(0,0,0,.35);
}
  #modalShareAgenda .modal-header {
    align-items: center;
    padding: 10px 1rem;
    text-align: center;
  }
    #modalShareAgenda .title {
      font-size: 1.125em;
      font-weight: 600;
    }
#modalShareAgenda .modal-body {

}
  .modal-body .modal-list-item .legend,
  .modal-body .modal-date .legend,
  .modal-body .modal-item .legend {
    margin-bottom: 15px;
    font-weight: bold;
  }
  .modal-body .modal-item .legend {
    margin: 0;
  }
    .modal-body .modal-item .modal-date {
      margin-bottom: 15px;
    }
  #modalShareAgenda .modal-body_title {
    color: #333;
    font-size: .875em;
    font-weight: 600;
    margin-bottom: 15px;
  }
  #modalShareAgenda .share-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 50px;
  }
    #modalShareAgenda .btn-adds {
      display: flex;
      flex-direction: column;
      flex-wrap: wrap;
      justify-content: space-between;
    }
      #modalShareAgenda .btn-adds .adds-li {
        width: 50%;
      }
        #modalShareAgenda .btn-primary {
          display: inline-flex;
          align-items: center;
          justify-content: flex-start;
          border: 1px solid #e5e5e5;
          border-radius: 5px;
          height: 50px;
          margin: 0 0 10px;
          padding: 0 12px;            
          background-color: #fff;
          color: #000;
          font-size: .875em;
        }
          #modalShareAgenda .share-icon {
            display: inline-block;
            height: 32px;
            margin-right: 15px;
            min-width: 32px;
            background-position: center center;
            background-repeat: no-repeat;
            background-size: 32px auto;
          }
          #modalShareAgenda .googleCalendar .share-icon {
            background-image: url("../Img/tremblay_sprite.svg#google");
          }
          #modalShareAgenda .windowsLive .share-icon {
            background-image: url("../Img/tremblay_sprite.svg#outlook");
          }
          #modalShareAgenda .yahooCalendar .share-icon {
            background-image: url("../Img/tremblay_sprite.svg#yahoo");
          }
          #modalShareAgenda .iCal .share-icon {
            background-image: url("../Img/tremblay_sprite.svg#iCal");
          }
#modalShareAgenda .modal-footer {
  background-color: #fff;
  border-radius: 0 0 5px 5px;
}
  #modalShareAgenda .close {
    border: 1px solid #e5e5e5;
    border-radius: 50%;
    padding: 0px 15px;
    background-color: #fff;
    color: #737373;
    font-size: 3rem;
    opacity: 1;
  }
  #modalShareAgenda .btn-default {
    margin-left: auto;
  }
/* Galerie */
.single-events .files-list-galerie .gallery-list {
  gap: 20px;
  margin: 0 0 1em;
}
  .single-events .gallery-list .gallery-item {
    border-radius: 15px;
    margin: 0;
    padding: 0;
    overflow: hidden;
  }

/* 10 = ANNUAIRE */
/* Single */
.directories-single-text .embed-responsive-16by9 {
    z-index: 1;
    border: 1px solid #ddd;
    height: auto;
    margin-top: 30px;
    width: auto;
}


/* 11 = RECHERCHE */
/* Liste */
.search-result .search-content {
  order: 2;
}
  .start-point .item {
    border-bottom: 1px solid #e3e3e3;
    margin: 0;
    padding: 30px 0;
    cursor: unset;
  }
  .start-point .item:last-child {
      border: 0;
  }
    .start-point .item .search-rating {
      margin: 0 0 10px 0;
      width: auto;
      color: #333;
      font-size: .75em;
      font-weight: 300;
      text-transform: uppercase;
    }
      .search-rating .progressBar {
        height: 10px;
        margin-right: 10px;
        width: 75px;
        appearance: none;
      }
      progress::-webkit-progress-bar {
        border-radius: 5px;
      }
      progress::-webkit-progress-value {
        border-radius: 5px;
      }
    .start-point .item .title {
      margin-bottom: 10px;
    }
      .search-content .link {
        position: relative;
        display: block;
      }
        .search-content .link::after {
          position: absolute;
          left: 0;
          bottom: -50px;
          content: '';
          height: 50px;
          width: 50px;
        }
    .item .search-body {
        display: flex;
        align-items: center;
        width: 100%;
    }
    .start-point .abstract p {
        margin-bottom: 0;
    }
/* Filtres */
.search-result .search-filters {
  order: 1;
}
  .rte-content .search-filters .search-filters-title {
    margin-bottom: 20px;
  }
  .col-droite .search-filters-list {
    display: flex;
    flex-wrap: wrap;  
    gap: 10px;
    margin-bottom: 40px;
    padding: 0;
  }
    .rte-content .search-filters-list .item {
      margin: 0;
    }
      .search-filters-list .link {
        display: inline-flex;
        align-items: center;
        border-radius: 20px;
        height: 40px;
        margin: 0;  
        padding: 0 15px;
        font-size: inherit;
        text-decoration: none;
        transition: all .3s;
      }
      .search-filters-list .link:is(:focus,:hover,:active),
      .start-point .item .link:is(:focus,:hover,:active) {
        color: var(--link);
        text-decoration: none;
      }
        .search-type .icon {
          border: 1px solid var(--main);
          border-radius: 50%;
          height: 40px;
          margin-right: 10px;
          width: 40px;
          font-size: 16px;
          transition: all .3s;
        }
        .search-filters-list .icon {
          margin-right: 10px;
          font-size: 16px;
        }
        .search-filters-list .link:is(:focus,:hover,:active) .icon {
          color: #fff;
        }


/* 16 = BREADCRUMBS */
.site-main .breadcrumb {
    position: relative;
    margin: 10px 0;
    padding: 0;
    background-color: transparent;
    color: #737373;
    max-width: 100%;
    white-space: nowrap;
}
    .site-main .breadcrumb::before {
        position: absolute;
        bottom: 0;
        right: 0;
        top: 0;
        z-index: 1;
        display: block;
        content: '';
        width: 40px;
        background: rgb(255,255,255);
        background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%);
    }
    .rte-content ol.breadcrumb-list {
        display: flex;        
        margin: 0;
        padding: 10px 0;
        font-size: 1em;
        overflow: auto hidden;
    }
        .rte-content .breadcrumb-list .breadcrumb-item {
            margin: 0;
            padding: 0;
        }
            .rte-content .breadcrumb-list .breadcrumb-item::before {
                    display: none;
            }
            .breadcrumb .item,
            .breadcrumb .link,
            .breadcrumb .separator {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                margin: 0;
                padding: 0;
                font-weight: unset;     
                line-height: 1.2;
                white-space: nowrap;
            }
            .breadcrumb .first {
                text-decoration: none;
            }
            .breadcrumb .first:is(:focus,:hover,:active) {
                text-decoration: none;
            } 
            .breadcrumb .separator {
                padding: 0 5px;
                line-height: 1.3;
            }
            .breadcrumb .breadcrumb-last {
                padding-right: 40px;
            }


/* 17 = OUTILS ET PARTAGE */
.site-main .site-tools {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
    .site-tools-dropdown .dropdown-tools li {
        margin: 0;
    }
        .site-tools .tools-share {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 40px;
            padding: 0 12px;
            width: 40px;
        }        


/* 18 = FORMULAIRE */
.site-main .form-horizontal {
  margin: 0 auto;
  max-width: 770px;
}
  .form-horizontal .container-fluid {
    padding: 0;
  }
  .form-horizontal .obligatoires {
    margin: 1em 0; 
    color: red;
    font-size: .875em;
  }
  .form-horizontal .form-group {
    width: auto;/* Pour largeur avec .loading ! */
  }
    .form-horizontal .form-group .comments {
      background-color: var(--grey);
    }
    .form-horizontal abbr[title] {
      color: red;
      text-decoration: none;
    }
    .form-group .row {
      margin: 0;
    }
      .input-group {
        justify-content: space-between;
      }
        .input-group .form-control {
          min-height: 40px;
          line-height: 1.2;
        }
        .input-group .form-control,
        .form-group input[type="file"] {
          box-shadow: none;
        }
        .form-horizontal .form-group .file-uploaded {
          display: flex;
          flex-wrap: wrap;
          border: 1px solid #ced4da;
          border-radius: 4px;
          margin-top: 10px;
          padding: 10px;
          background-color: #fff3cd;/* alert alert-warning */
        }
          .form-horizontal .form-group .file-uploaded .file-remove {
            margin: 10px 0 0 0;
            width: 100%;
            font-weight: 700;
          }
        /* Surcharge BP si on enlène .input-group-addon */ 
        .input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating), .input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3), .input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control, .form-group .input-group:not(.has-validation)>.form-floating:not(:last-child)>input[type="file"], .frame-type-felogin_login .input-group:not(.has-validation)>.form-floating:not(:last-child)>input[type="text"], .frame-type-felogin_login .input-group:not(.has-validation)>.form-floating:not(:last-child)>input[type="password"], .input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select {
          border-bottom-right-radius: 6px;
          border-top-right-radius: 6px;
        }
        .input-group-addon, 
        .input-group-btn, 
        .input-group .form-control {

        }
        .input-group-addon, 
        .input-group-btn {
          width: 40px;
          white-space: nowrap;
          vertical-align: middle;
        }
        .input-group-addon {
          display: none;
        }
        .input-group > span:not(.input-group-addon) {
          display: flex;
          align-items: center;
          justify-content: center;
          height: 40px;
          min-width: 20px;
        }

    .form-group select.form-control {
      appearance: auto;
      box-shadow: none;
    }
      .checkbox, .radio {
        display: block;
        min-height: 1.5rem;
        padding-left: 0;
        margin-bottom: 0.125rem;
      }
      .checkbox-unique {
        display: flex;
        align-items: flex-start;
      }
        .form-group .checkbox-unique input[type="checkbox"] {
          margin-top: 4px;
        }
      .radio label, 
      .checkbox label {
        margin-bottom: 0;
        cursor: pointer;
      }
        .radio input[type="radio"], 
        .radio-inline input[type="radio"], 
        .checkbox input[type="checkbox"], 
        .checkbox-inline input[type="checkbox"] {
          position: static;  
          display: inline-block;
          margin: 0 .5rem 0 0;
        }
    .form-group .date .col-xs-12 {
      padding: 0;
    }
    .form-group .date .col-sm-4 {
      width: calc(33.3333334% - 10px);
    }
    input[type="file"] {
      display: block;
    }
    .help-block {
      display: block;
      color: #737373;
    }
    .form-group .comments {
      padding: 6px 12px;
      background-color: #e1e1e1;
    }
      /* Date-picker */
      .ui-datepicker {
          width: auto;
      }
    /* Photo */
    .form-fileupload-gallery-container .form-fileinput-element {
      position: relative;
      border: 1px solid #000000;
      height: 83px;
      padding: 0px;
      width: 83px;
    }
      .form-fileupload-gallery-container .form-fileinput-element::before {
        position: absolute;
        right: 0;
        top: 0;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        content: '\f2ed';
        border: 0;
        height: 24px;
        width: 24px;
        background: transparent;
        color: #fff;
        font-size: 16px;
        text-shadow: 1px 1px 5px black;
      }
.form-horizontal .text-center:has(> .btn-default) {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}
  .form-horizontal .text-center .btn-default {
    margin: 0;
  }

/* Référence en haut de formulaire */
.form-horizontal .getpost {
    border-radius: 5px;
    margin-bottom: 20px;
    padding: 20px;
    background-color: #e2e0dc;
}
    .form-horizontal .getpost p:last-child {
        margin-bottom: 0;
    }
.form-horizontal .form-reference {
    display: flex;
    align-items: center;
    padding: 0 20px;
    border-radius: 25px;
    height: 50px;
    margin: 0;
    background-color: #0d62a0;
    color: #fff;
}

/* Captcha */
.captcha .todo {
  margin-bottom: 2em; 
  font-size: 1.25em;
}
.captcha .serie {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 25px 0;
}
  .form-horizontal .captcha .serie li {
    position: relative;
    margin: 0;
    overflow: hidden;
  }
  .form-horizontal .captcha .serie .control-label {
    border: 2px dashed #b5b7ba;
    border-radius: 5px;
    margin: 0;
    padding-top: 0;
    width: 40px;
    background-color: #fff;
    color: #333; 
    font-size: 25px;
    line-height: 40px;
    text-align: center;
    cursor: pointer;
  }
  .captcha .serie input:checked ~ label {
    border: 2px solid #333;
  }
  .captcha .serie input {
    position: absolute;
    left: -20px;
    top: -20px;
  }
  .captcha .serie input:checked {
    height: 40px;
  }
/* Erreurs */
.has-error .help-block, .has-error .control-label, .has-error .radio, .has-error .checkbox, .has-error .radio-inline, .has-error .checkbox-inline, .has-error.radio label, .has-error.checkbox label, .has-error.radio-inline label, .has-error.checkbox-inline label {
  margin: 0;
  color: var(--red);/* Couleur Bootstrap Package par défaut */
}
/* Alertes */
.alert .fa {
  margin-right: 15px;
}
/* Récapitulatif */
form .recap + .text-center {
  display: flex;
  justify-content: center;
  gap: 30px;
}
  form .recap + .text-center .btn {
    margin: 0;
  }
  form .recap + .text-center .btn-default {
    border-color: #eaebec;
    background-color: #eaebec;
    color: #333;
  }
  form .recap + .text-center .btn-default:is(:focus, :hover, :active) {
    border-color: #333;
    background-color: #fff;
    color: #333;
    box-shadow: none;
  }


/* 19 = PAGINATION */
.pagination {
    display: flex;
    justify-content: center;
    margin: 2em 0;
    padding-left: 0;
    list-style: none;
}
    .pagination .btn-light {
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 25px;
        height: 50px;
        padding: 0;
        width: 50px;
        background-color: var(--lightblue);
        font-size: 1.125em;
        box-shadow: none;
        transition: all .3s;
    }
    .pagination .current {
        font-weight: bold;
    }

/* pagination Load More */
.load-more {
    position: relative;
    z-index: 1;
    display: inline-block;
    border: 1px solid #999;
    padding: 1em;
    background-color: transparent;
    color: #333;
}
.load-more:hover {
    border: 1px solid #999;
}


/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
/* Téléchargement de fichiers */
.files-list-default .list-unstyled {
    margin: 0;
    padding: 0;
}
    .files-list-default a {
        display: flex;
        align-items: center;
        border-bottom: 1px solid #e1e1e1;
        min-height: 60px;
        text-decoration: none;
    }
    .files-list-default li:first-child a {
        border-top: 1px solid #e1e1e1;
    }
        .files-list-default .media-left {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0;
            height: 50px;
            min-width: 80px;
            font-size: 24px;
            transition: .3s ease;
        }
        .files-list-default .media-body {
            padding: 13px 0;
        }
            .files-list-default .media-title {
                display: inline-block;
                margin-right: 5px;
            }

/* GALERIE */
.rte-content .files-list-gallery {

}
  .files-list-gallery .gallery-item {
      --gallery-columns: 1;
      --gallery-gap: 0px;/* Important pour ne garder QUE les paddings */
      margin-bottom: 30px;
  }   
    .gallery-item .gallery-link {
      text-decoration: none;
    }
      .gallery-item .gallery-artifica-picture {
          display: block;
          border-radius: 10px;
          overflow: hidden;
      }


/* BLUEIMP - GALLERY + CAROUSEL */
.blueimp-gallery-carousel {
    box-shadow: none;
}
    .blueimp-gallery-carousel .title {
        font-size: 1rem; 
        font-weight: 700; 
        line-height: 1;
    }
    .blueimp-gallery-carousel .counter {
        position: absolute;
        bottom: 0; 
        left:5px;
        top: auto;
        color: #fff;
        font-size: 1.5rem;
        opacity:.5;
    }
    .blueimp-gallery-carousel button {
        background-color: transparent;
        border: 0;
        padding: 0;
        box-shadow: none;
    }
    .blueimp-gallery-carousel .fullScreen {
        position: absolute;
        left: auto; 
        right: 0;
        top: 0;
        height: 50px;
        width: 50px;
        color: #fff; 
        font-size:1.3em;
        line-height:50px;
        text-align:center;
        cursor:pointer;  
        opacity:.5;     
        transition-property:opacity;
    }
    .blueimp-gallery-carousel .fullScreen:active,
    .blueimp-gallery-carousel .fullScreen:focus,
    .blueimp-gallery-carousel .fullScreen:hover,
    .blueimp-gallery-carousel .play-payse:active,
    .blueimp-gallery-carousel .play-payse:focus,
    .blueimp-gallery-carousel .play-payse:hover {
        opacity:1;
    }
    body:last-child .blueimp-gallery>.play-pause { 
        bottom: 0;
        right: 0;
        height: 50px;
        width: 50px;
        background-image:none; 
        color:#fff; 
        font-size:1.5rem;
        line-height:50px;  
        text-align: center; 
        transition-property:opacity;
    }
        body:last-child .blueimp-gallery>.play-pause::before {
            content: "\f04b";
            display: inline-block;  
            font-size: inherit;
            font-weight: 700;
            text-rendering: auto;  
        }
        body:last-child .blueimp-gallery-playing>.play-pause::before { 
            content:"\f04c";
            font-weight: 700px;
        }
    .blueimp-gallery>.next,
    .blueimp-gallery >.prev { 
        border-radius:50%; 
        height: 46px;
        padding: 0;
        width: 46px;
        max-width: 46px;
        line-height: 0;
        text-shadow: none;     
        transition-property: opacity;
    }
        .blueimp-gallery-controls > .next .fa,
        .blueimp-gallery-controls > .prev .fa {
            color: #fff; 
            font-size: 30px; 
            line-height: 45px;
        }

/* Vignettes */
.diaporama-controls {
    display: flex;
    align-items: center;
    justify-content: center;
}
    .diaporama-controls .indicator,
    .diaporama-controls .next,
    .diaporama-controls .prev {
        display: inline-block; 
        vertical-align: middle;
    }
    .diaporama-controls .next,
    .diaporama-controls .prev {
        display: flex;
        align-items: center;
        justify-content: center;
        border: 0 !important; 
        border-radius: 50% !important; 
        height: 40px;
        width: 40px;
        color: #222; 
        font-family: monospace; 
        font-size: 32px;
        line-height: 40px;
        text-decoration: none;
        cursor: pointer; 
        transition-property: background-color,color; 
    }
    .diaporama-controls .next:focus,
    .diaporama-controls .prev:focus,
    .diaporama-controls .next:hover,
    .diaporama-controls .prev:hover,
    .diaporama-controls .next:active,
    .diaporama-controls .prev:active {
        border-radius: 5px;
        background-color: #222; 
        color: #fff;
    }
        .diaporama-controls .next .fa,
        .diaporama-controls .prev .fa {
            line-height: 40px;
        }
    .diaporama-controls .indicator {
        position: relative;
        height: 60px;
        width: 80%;
        overflow: hidden;
    }
        .diaporama-controls ul { 
            position: absolute;
            left: 0; 
            top: 0;
            margin:0; 
            padding:0;
            white-space: nowrap;
            transition: left .2s ease-in;
        }
            .diaporama-controls ul .item {
                display: inline-block;
                border: 5px solid transparent; 
                border-radius: 0; 
                padding: 0;
                cursor: pointer;   
                transition: all 0.2s ease; 
                vertical-align: middle;
            }
            .blueimp-gallery .indicator .item {  
                border: 5px solid transparent; 
                border-radius: 0; 
                transition: all 0.2s ease;
            }
            .diaporama-controls ul .item.active,
            .diaporama-controls ul .item:hover {
                border-color: #222;
            }
                .diaporama-controls ul .item::before {/* Correction CSS client */
                    display: none;
                }
                .diaporama-controls ul .item img {
                    height: 50px; 
                    width: auto;
                }

/* Galerie full-page */
.blueimp-gallery>.indicator>li {
    background-size:cover;
}
.blueimp-gallery>.close {
    height: 50px;
    width: 50px;
    padding: 0; 
    line-height: 50px;
    text-align: center;
}
.blueimp-gallery>.close .fa-times {
    font-size: 1.5rem;
}
/* Surcharges styles boutons */
.blueimp-gallery-controls .fullScreen, 
.blueimp-gallery-controls .close,
body:last-child .blueimp-gallery>.play-pause {
  background: none;
  border: 0;
}
body:last-child .blueimp-gallery>.play-pause::before {
  content: '\e92f';/* Pause */
}
body:last-child .blueimp-gallery-playing>.play-pause::before {
  content: '\e923';/* Play */
}


/* 21 = MODALES */
.modal-header .close {
  /*position: absolute;
  right: -25px;
  top: -25px;*/
  border: 0;
  /*border-radius: 50%;
  background-color: #fff;
  box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 15%);*/
}
.modal .modal-body {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  overflow: hidden;
}
  .modal .modal-body iframe {
      max-height: 100%;
  }
    #popup .frame {
      padding: 0;
    }
        

/* 26 = MENUS
/* plan du site */
.frame-type-menu_sitemap .frame-inner > ul  {
    padding: 0;
}
    .frame-type-menu_sitemap .frame-inner > ul > li {
        background: none;
    }
        .frame-type-menu_sitemap .frame-inner > ul > li > a {
            display: none;
        }
        .rte-content .frame-type-menu_sitemap ul ul {
            margin: 0 0 0 3px;  
            padding: 10px 0 0;
            background: url("../Img/icons/sitemap-dot.png") 0 bottom repeat-y;
            list-style: none outside;
        }
            .frame-type-menu_sitemap ul ul ul {
                margin: 0 0 0 10px;
                padding: 0;
            }
                .frame-type-menu_sitemap li {
                    display: block;  
                    margin-left: 1px;
                    padding: 0 0 0 10px;
                    background: url("../Img/icons/sitemap-dot.png") 0 12px repeat-x;
                }
                    .frame-type-menu_sitemap a {
                        display: block;
                        border: 0;  
                        padding: 0 0 5px 24px;
                        background: url("../Img/icons/ico-page.png") 5px 6px no-repeat #FFF;
                        color: #333;
                        font-size: 16px;
                        font-weight: 700;
                        line-height: 24px;
                        text-transform: uppercase;
                    }
                    .frame-type-menu_sitemap a:hover {
                        background-size: inherit;
                    }
                        .frame-type-menu_sitemap ul ul ul a {
                            font-style: italic;
                            font-weight: 400;
                            text-transform: none;
                        }
                            .frame-type-menu_sitemap ul ul ul ul a {
                                font-size: 12px;
                                font-style: normal;
                            }


/* 29 = PRINT // Boilerplate v8.0.0 */
@media print,
    (-webkit-min-device-pixel-ratio: 1.25),
    (min-resolution: 1.25dppx),
    (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
    *,
    *::before,
    *::after {
        background: #fff !important;
        color: #000 !important;
        /* Black prints faster */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]::after {
        content: " (" attr(href) ")";
    }

    abbr[title]::after {
        content: " (" attr(title) ")";
    }

    /*
    * Don't show links that are fragment identifiers,
    * or use the `javascript:` pseudo protocol
    */
    a[href^="#"]::after,
    a[href^="javascript:"]::after {
        content: "";
    }

    pre {
        white-space: pre-wrap !important;
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
    * Printing Tables:
    * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
    */
    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


/* RESPONSIVE ********************************************************************************************* */
@media screen and (min-width: 576px) {/* MOBILE - Moyens  ************************************************ */

/* 04 = HEADER */
    /* 1er niveau */
    .header-menu .list-group-item .link {
        margin: 0 auto;
        max-width: 540px;
    }

/* 09 = AGENDA */
    /* Filtres */
    /* Calendrier */
    .calendar-render .thosedates {
        flex-direction: row;
    }
    /* Single */
    /* Galerie */
    .single-events .gallery-list .gallery-item {
      width: calc(50% - 10px);
    }
    .single-events .textmedia .gallery-list .gallery-item {
      width: inherit;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 2;
    }

}


@media screen and (min-width: 768px) {/* MOBILE - Grands  ************************************************ */

/* 01 = RESET : vérifier la pertinence de chaque ligne !!!!! */
    /* BOOTSTRAP */
    /* Blocs text & media */
    .textmedia-right .textmedia-item, .textmedia-right .textpic-item, .textmedia-left .textmedia-item, .textmedia-left .textpic-item, .textpic-right .textmedia-item, .textpic-right .textpic-item, .textpic-left .textmedia-item, .textpic-left .textpic-item {
        width: calc(50% - (30px / 2));/* Gap modifié à 30px */
    }

/* 04 = HEADER */
    /* 1er niveau */
    .header-menu .list-group-item .link {
        max-width: 720px;
    }

/* 16 = BREADCRUMBS */
    .site-main .breadcrumb {
        max-width: inherit;
    }
        .site-main .breadcrumb::before {
            display: none;
        }
        .rte-content ol.breadcrumb-list {
            overflow: visible;
            flex-wrap: wrap;
        }
            .breadcrumb .item, 
            .breadcrumb .link, 
            .breadcrumb .separator {
                white-space: normal;
            }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 3;
    }

/* 21 = MODALES */
  /* Ajouter à mon agenda */
  #modalShareAgenda .modal-dialog {
    position: absolute;
    left: 50%;
    top: 50%;
    margin: 0;
    max-width: inherit;
    transform: translate(-50%,-50%);
  }
    #modalShareAgenda .modal-content {
      min-width: 630px;
    }
      #modalShareAgenda .btn-adds {
        flex-direction: row;
      }
        #modalShareAgenda .btn-adds .adds-li {
          width: calc(25% - 10px);
        }
          #modalShareAgenda .btn-primary {
            margin: 0;            
          }

}


@media (max-width: 991px) {/* Éléments sous-menu navigation */

/* 04 = HEADER */
    /* 2ème niveau */
    .header-menu .dropdown-menu {
        position: static!important;
        margin: 0;
        transform: none!important;
        width: 100%;
    }
    .navbar-mainnavigation.navbar-default .dropdown-menu a:not(.active), 
    .navbar-mainnavigation.navbar-default-transition .dropdown-menu a:not(.active), 
    .navbar-mainnavigation.navbar-default-transition.navbar-transition .dropdown-menu a:not(.active) {
        border-bottom: 0;
    }

}


@media screen and (min-width: 992px) {/* TABLETTES  ************************************************ */

/* 04 = HEADER */
    .header-menu .navbar-collapse {
        height: auto;
        background-color: transparent;
    }
        .navigation .list-group-item .menu-background {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            top: 75px;
            display: none;
            content: '';
            background-color: rgba(0,0,0,.75);
            transition: top .3s;
        }
        .navigation .list-group-item .show + .menu-background {
            display: block;
        }
        .navbar-transition .navigation .list-group-item .menu-background {
            top: 50px;
        }

/* 06 = Accueil */
    /* Carousel */
    .carousel .carousel-control {
        display: flex;
    }

/* 07 = PAGE INTERNE */
    /* RTE */
    .rte-content h2 {
        font-size: 2.125em;
    }
    .rte-content h3 {
        font-size: 1.875em;
    }
    .rte-content h4 {
        font-size: 1.5em;
    }
    .rte-content h5 {
        font-size: 1.125em;
    }
    .rte-content h6 {
        font-size: 1em;
    }

/* 11 = RECHERCHE */
  .search-result .search-content {
    order: 1;
  }
  .search-result .search-filters {
    order: 2;
  }
    .col-droite .search-filters-list {
      flex-direction: column;
    }

/* 09 = AGENDA */
    /* Filtres */
    .filters .form-group {
        margin: 0;
        width: auto;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 4;
    }

}


@media screen and (min-width: 1200px) {/* DESKTOP - Grands  ************************************************ */

/* 01 = RESET */
    /* BOOTSTRAP */
    .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
        max-width: 1200px;/* Identique min-width: 1200px; pour s'aligner sur la grille maquette */
    }
    .frame-container-default {
        max-width: 1200px;
    }

/* 09 = AGENDA */
    /* Filtres : à vérifier !!!!! */
    .filters .col-xs-12 {
    padding: 0 5px;
    }

/* 20 = DIAPORAMA & GABARITS DE FICHIERS */
    /* GALERIE */
    .files-list-gallery .gallery-item {
        --gallery-columns: 5;
    }

}

@media (min-width: 1400px) {/* DESKTOP - Très grands  ************************************************ */

/* 01 = RESET */
    /* BOOTSTRAP */
    .container, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
        max-width: 1200px;/* Identique min-width: 1200px; pour s'aligner sur la grille maquette */
    }
    .frame-container-default {
        max-width: 1200px;/* Identique min-width: 1200px; pour s'aligner sur la grille maquette */
    }

}
