/* Ajout police SofadiOne-Regular */
@font-face {
    font-family:'SofadiOne-Regular';
    src: url('SofadiOne-Regular.eot');
	src: url('SofadiOne-Regular.eot?#iefix') format('embedded-opentype'),
	url('SofadiOne-Regular.woff2') format('woff2'),
	url('SofadiOne-Regular.woff') format('woff'),
	url('SofadiOne-Regular.otf') format('opentype'),
	url('SofadiOne-Regular.svg#SofadiOne-Regular') format('svg');
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    unicode-range: U+0020-00FC;
}
/* Ajout police sari-regular */
@font-face {
    font-family:'sari-regular';
    src: url('sari-regular.ttf');
    src: url('sari-regular.otf');
}


/* Ajout police sari-extrabold */
@font-face {
    font-family:'sari-extrabold';
    src: url('sari-extrabold.ttf');
    src: url('sari-extrabold.otf');
}

/* Ajout police terminal-dosis */
@font-face {
    font-family:'terminal-dosis';
    src: url('terminal-dosis-extralight.ttf');
    src: url('terminal-dosis-light.ttf');
    src: url('terminal-dosis-regular.ttf');
}

/* Ajout police Lobster */
@font-face {
    font-family:'lobster-regular';
    src: url('lobster-regular.woff');
    src: url('lobster-regular.ttf');
}

/* div logo */
.logo {
	z-index:999;
	position: absolute;
}

/* Styles pour les zones de modules */
.modulehaut, .modulebas {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 10px;
}

.modulehaut > div, .modulebas > div {
    flex: 1 1 250px; /* Largeur minimale de 250px */
}

.footer {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 10px;
}

.footer > div {
    flex: 1 1 333px; /* Largeur minimale de 333px */
}

.colonnegauche {
	float: left;
}

.content {
	padding:15px;
}

.colonnedroite {
	float: right;
}

.copyright {
	 clear:both;
	 margin-left :auto; 
	 margin-right :auto;
	 text-align: center;
	 bottom: 0;
}

/* css permettant de coller le footer en bas d'écran quand le contenu est trop petit */	 
html, body {
  box-sizing: border-box;
  height: 100%;
  padding: 0;
  margin: 0;
}
#pageglobale {
  box-sizing: border-box;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}

.pageWrapper {
  flex-grow: 1;
} 

/* suppression des cadres et centrage vertical automatique des contenus dans l'affichage "GRID" */

.auto {

border : 0px solid transparent !important;

margin-top: auto !important;

margin-bottom: auto !important;

margin-left: auto !important;

margin-right: auto !important;

padding: 0 30px !important;

}

@media (max-width: 960px) {

	.cont_auto {

        display: flex !important;

        flex-wrap: wrap !important;

}

.cont_auto>* {

flex: 1fr 1fr 1fr 1fr 1fr 400px;

}

}
/* Version responsive - adaptation pour petits écrans */
@media (max-width: 768px) {
    .main {
        flex-direction: column;
    }
    .colonnegauche,
    .colonnedroite {
        width: 100% !important;
        display: block !important;
        order: initial;
    }
    .content {
        margin-left: 0 !important;
        margin-right: 0 !important;
        order: 2;
    }
}
/* PLUGIN CANEVAS - Styles (layouts et responsive) */
.canevas-row {
  display: grid;
  gap: 20px;
  margin-bottom: 30px;
  width: 100%;
}

.canevas-col {
  min-height: 100px;
  padding: 15px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
}

/* Layouts */
.canevas-1col { grid-template-columns: 1fr; }
.canevas-2col { grid-template-columns: repeat(2, 1fr); }
.canevas-3col { grid-template-columns: repeat(3, 1fr); }
.canevas-4col { grid-template-columns: repeat(4, 1fr); }
.canevas-2-1 { grid-template-columns: 2fr 1fr; }
.canevas-1-2 { grid-template-columns: 1fr 2fr; }

/* RESPONSIVE - MOBILE */
@media (max-width: 768px) {
  .canevas-row, .canevas-1col, .canevas-2col, .canevas-3col,
  .canevas-4col, .canevas-2-1, .canevas-1-2 {
    grid-template-columns: 1fr !important;
    gap: 15px !important;
  }
  .canevas-col {
    width: 95% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* RESPONSIVE - TABLETTE */
@media (min-width: 769px) and (max-width: 1024px) {
  .canevas-3col, .canevas-4col {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

/* Support des contenus */
.canevas-col img { max-width: 100%; height: auto; }
.canevas-col p { margin-bottom: 1em; }
.canevas-col p:last-child { margin-bottom: 0; }
.canevas-col h1, .canevas-col h2, .canevas-col h3,
.canevas-col h4, .canevas-col h5, .canevas-col h6 { margin-top: 0; }
.canevas-col ul, .canevas-col ol { padding-left: 20px; }