@charset "iso-8859-1";

/* ----------------------------------------------------------------------------------------
Owl Carousel
-------------------------------------------------------------------------------------------*/
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; 
}
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ 
  }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; 
  }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); 
  }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); 
    }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; 
  }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; 
  }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; 
  }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; 
  }
  /*.owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,*/
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 ;
    font: inherit; 
  }
  .owl-carousel.owl-loaded {
    display: block; 
  }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; 
  }
  .owl-carousel.owl-hidden {
    opacity: 0; 
  }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; 
  }
  .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; 
  }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; 
  }
  .owl-carousel.owl-rtl {
    direction: rtl;
  }
  .owl-carousel.owl-rtl .owl-item {
    float: right; 
  }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
      transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-carousel .owl-nav {
  text-align: center;
  -webkit-tap-highlight-color: transparent; 
  }
  .owl-carousel .owl-nav button{
    display:block;
    width:32px;
    height:32px;
    position:absolute;
    z-index:21; 
    bottom:5px;   
  }
  .owl-carousel .owl-prev{
    left:10px;
    background:url(/images/owl-prev-blanc.svg) no-repeat center center;
  }
  .owl-carousel .owl-next{
    right:10px;
    background:url(/images/owl-next-blanc.svg) no-repeat center center;
  }  
  .owl-carousel .owl-nav button span {
    text-indent:-999em;
    display:block;
  }
  .owl-carousel .owl-item img{
    margin:0;
  }

  .owl-logos .owl-nav button{
    top:50%;
    margin-top:-16px;  
  }
  .owl-logos .owl-nav button:after{
    color:#7BCB97;
  }  
  .owl-logos .owl-prev{
    left:-40px;
    background:url(/images/owl-prev-noir.svg) no-repeat center center;
  }
  .owl-logos .owl-next{
    right:-40px;
    background:url(/images/owl-next-noir.svg) no-repeat center center;
  }
  
  
  .owl-slider .texteslider{
    position:absolute;
    width:100%;
    bottom:0;
    display:none;
  }
  .owl-slider .title{
    font-family:"montserrat";
  }
  .owl-slider .txtslider{
    padding:10px 50px;
    text-align:center;
  }
  .owl-slider .txtslider p{
    margin:0;
  }
  .owl-slider .txtslider strong{
    font-size:16px;
  }
  
  .owl-theme .owl-nav .disabled {
    opacity: 0.5;
    cursor: default;
  }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; 
}

.owl-slider .owl-dots {
  text-align: center;
  padding:15px 0;
  -webkit-tap-highlight-color: transparent;
  /*position:absolute;
  width:100%;
  bottom:10px;*/
}
.home .owl-slider .owl-dots{
  display:block;
}
  .owl-slider .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    width:16px;
    height:16px;
    margin:0 5px;
    transition:all 0.3s ease;
    background:#2B2B2B;
    position:relative;
    border-radius:50%;
    border:2px solid transparent;
  }
  .owl-slider .owl-dots .owl-dot.active,
  .owl-slider .owl-dots .owl-dot:hover{
    background:#DB0027;
    /*border:2px solid #FFF;*/
  }
    .owl-slider .owl-dots .owl-dot span {
      /*position:absolute;
      border-radius:50%;
      outline:none;
      width:100%;
      height:100%;
      top:0;
      left:0;
      transition:background-color 0.3s ease, transform 0.3s ease; */
    }
    .owl-slider .owl-dots .owl-dot.active span, .owl-slider .owl-dots .owl-dot:hover span {
      /*background-color:#FFF;
      transform:scale(0.4); */
    }

/* ----------------------------------------------------------------------------------------
Normalize
-------------------------------------------------------------------------------------------*/
* {
	border: 0;
	font-style: normal;
	margin: 0;
	padding: 0;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
em{
  font-style:italic;
}

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15; 
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; 
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/*.fieldset {
  padding: 0.35em 0.75em 0.625em;
}*/
legend {
  box-sizing: border-box; 
  color: inherit; 
  display: table; 
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; 
  padding: 0; 
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; 
}

details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
/* ----------------------------------------------------------------------------------------
POLICES
-------------------------------------------------------------------------------------------*/
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: auto;
  src: url("/images/webfonts/fa-solid-900.eot");
  src: url("/images/webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("/images/webfonts/fa-solid-900.woff2") format("woff2"), url("/images/webfonts/fa-solid-900.woff") format("woff"), url("/images/webfonts/fa-solid-900.ttf") format("truetype"), url("/images/webfonts/fa-solid-900.svg#fontawesome") format("svg"); }

.fa,
.fas {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; }

@font-face {
  font-family: 'Caveat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/images/webfonts/Caveat-Regular.woff2') format('woff2');
}

@font-face {
  font-display: swap; 
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  src: url('/images/webfonts/inter-v20-latin-300.woff2') format('woff2'); 
}

@font-face {
  font-display: swap; 
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url('/images/webfonts/inter-v20-latin-regular.woff2') format('woff2'); 
}

@font-face {
  font-display: swap; 
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url('/images/webfonts/inter-v20-latin-700.woff2') format('woff2');
}

@font-face {
  font-display: swap; 
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url('/images/webfonts/poppins-v24-latin-500.woff2') format('woff2'); 
}

@font-face {
  font-display: swap; 
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  src: url('/images/webfonts/poppins-v24-latin-700.woff2') format('woff2'); 
}


/* ----------------------------------------------------------------------------------------
BASES
-------------------------------------------------------------------------------------------*/
body{
	/*background: url(/images/fond-body.png) no-repeat right bottom #FFFFFF;*/
	font-family:'Inter',Helvetica,Arial,sans-serif;
	font-size:15px;
  line-height:1.7em;
	color:#2B2B2B;    
}
.clear {
	border:0;
	clear: both;
	height:0;
	line-height:0;
	visibility: hidden;
}
img{
  max-width:100%;
  vertical-align:middle;
}
#container img{
  border-radius:3px;
}
.pagepartenaires #container li img{
  border-radius:0;
}
/*Liens*/
em a{
  font-style:italic;
}
a,
a:visited,
a:hover,
a:active{
	color:#2B2B2B;
	text-decoration:none;
  outline:none;
  transition:all ease-in 0.1s;
}
article p a,
article li a,
.form_creator_header a{
  text-decoration:underline;
}
article a:hover,
.form_creator_header a:hover{
	color:#DB0027;
  text-decoration:underline;
}
.back a{
  display:inline-block;
  padding:8px 15px;
  background:#7BCB97;
  color:#FFF;
  text-transform:uppercase;
  text-decoration:none !important;
}
.back a:before{
  content:"\f053";
  font-family:'Font Awesome 5 Free';
  padding-right:10px;
}
.back a:hover{
  background:#DB0027;
  color:#FFFFFF;  
}
a.bouton,
.print a,
.addToCart a,
.proddevis a,
.inscriptioncpf a.liencpf{
  color:#FFFFFF;
  font-family:"Poppins";
  font-weight:bold;
  display:inline-block;
  overflow:hidden;
  padding:8px 24px 6px;
  font-size:16px;
  border-radius:6px;
  text-decoration:none;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
a.bouton,
.print a{
  background:#46B28B;
}
a.bouton:before,
.print a:before{
  background: #2F9B74;
}
a.bouton:before,
.print a:before,
.addToCart a:before,
.proddevis a:before,
.inscriptioncpf a.liencpf:before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
a.bouton:hover, a.bouton:focus, a.bouton:active,
.print a:hover, .print a:focus, .print a:active,
.addToCart a:hover, .addToCart a:focus, .addToCart a:active,
.proddevis a:hover, .proddevis a:focus, .proddevis a:active,
.inscriptioncpf a.liencpf:hover, .inscriptioncpf a.liencpf:focus, .inscriptioncpf a.liencpf:active{
  color:#FFF;
  text-decoration:none;
}
a.bouton:hover:before, a.bouton:focus:before, a.bouton:active:before,
.print a:hover:before, .print a:focus:before, .print a:active:before,
.addToCart a:hover:before, .addToCart a:focus:before, .addToCart a:active:before,
.proddevis a:hover:before, .proddevis a:focus:before, .proddevis a:active:before,
.inscriptioncpf a.liencpf:hover:before, .inscriptioncpf a.liencpf:focus:before, .inscriptioncpf a.liencpf:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
a.bouton:visited{
  color:#FFF;
}
a.boutonrouge{
  display:inline-block;
  position:relative;
  color:#FFF;
  background:#DB0027;
  text-decoration: none;
  font-size:1.01rem;
  border-radius: 5px;
  padding: 8px 24px;
  overflow: hidden;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  transition:color 0.3s ease-out;
}
a.boutonrouge:before{
  content:"";
  position: absolute;
  z-index: -1;
  inset:0;
  transform: scaleX(0);
  transition:transform 0.3s ease-out;
  background:#BD0122;
}
.boutonnoir,
a.boutonnoir{
  display:inline-block;
  color:#FFF;
  background:#000;
  text-decoration:none;
  font-size:1.01rem;
  border-radius:5px;
  padding:8px 24px;
  transition: background 0.4s ease, color 0.4s ease;
}
@media (hover: hover) and (pointer: fine) {
  a.boutonrouge:hover{
    color:#FFF;
    text-decoration:none;
  } 
  a.boutonrouge:hover::before{
    transform:scaleX(1);
  }
  a.boutonnoir:hover{
    color:#fff;
    text-decoration: none;
  }

}
a.backtotop{
  background:rgba(0,0,0,0.7);
  width:50px;
  height:50px;
  border-radius:50%;
  position:fixed;
  bottom:40px;
  left:20px;
  z-index:20;
  color:#FFF;
  display:none;
}
.backtotop:before{
  font-family:'Font Awesome 5 Free';
  content:"\f077";
  width:100%;
  display:block;
  text-align:center;
  line-height:50px;
  font-size:20px;
}
a.dl{
  text-decoration:underline;
  color:#DB0027 !important;
}
a.dl:before{
  display:inline-block;
  content:"\f019";
  font-size:18px;
  font-family:'Font Awesome 5 Free';
  padding-right:5px;
}
a.dl:hover{
  color:#2B2B2B;
}
.boutonmore{
  width:40px;
  height:40px;
  text-indent:-9999em;
  background:url(/images/bg-boutonmore.svg) no-repeat center center;
  display:inline-block;
  vertical-align: middle;
  text-align:left;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);  
}
.boutonmore:hover, .boutonmore:focus, .boutonmore:active{
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/*Titres*/
h1, h2, .h2, h3, .h3, h4, .h4, h5,
#heading .titreformulaire{
  line-height:1.5em;
  font-family:"Poppins", Helvetica, Sans-serif;
}
h1,
#container #forms .titreformulaire,
.h1{
  color:#000;
  font-size:30px;
  font-weight:bold;
  margin:20px 0 60px;
  margin:40px 0;
  text-align:center;
  background:url(/images/soulignement-rouge-titre.svg) no-repeat center bottom;
  padding-bottom:20px;
  width:100%;
  font-family:"Poppins";
}
h2, .h2{
	color:#2B2B2B;
  font-size:22px;
  font-weight:500;
  margin:40px 0 30px;
  text-align:center;
}
h3, .h3{
  color:#DB0027;
  font-size:20px;
  font-weight:500;
  margin:30px 0 20px;
}
h4, .h4{
  font-size:16px;
  font-weight:bold;
  color:#2B2B2B;
  margin:30px 0 20px;
}
.titre{
  color:#2B2B2B;
  font-weight:bold;
  text-transform:uppercase;
  font-size:18px;
  position:relative;
  padding-left:25px;
  margin:20px 0;
}
.titre:before{
  content:"";
  display:block;
  width:20px;
  height:4px;
  background:#DA002E;
  position:absolute;
  left:0;
  top:10px;
}

/*Textes, alignements, positionnements dans un article*/
#container ul li{
  padding:3px 0 3px 20px;
  position:relative;
}
#container ul li:before{
  display:block;
  position:absolute;
  left:0;
  top:12px;
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:#2B2B2B;
}
p{
  margin:20px 0;
}
ul{
  margin:20px 0;
  list-style:none;
}
ol{
  margin:20px 0 20px 17px;
}
u{
  text-decoration:underline;
}
.colleft,
.colright{
  padding:5px 0 10px;
}
.deux_colonnes img{
  margin:10px 0;
}

.above_left{text-align: left;}
.above_right{text-align: right;}
.above_center{text-align: center;}
.below_center{text-align: center;}
.below_right{text-align: right;}
.below_left{text-align: left;}
.above_center img, 
.above_right img, 
.above_left img, 
.below_center img, 
.below_right img, 
.below_left img{height:auto !important;float: none !important;}
.center{text-align: center;width:100%;}
.left{text-align: left;width:100%;}
.right{text-align: right;width:100%;}

.separateur{
  height:5px;
  background:url(/images/separateur.svg) no-repeat center center;
  visibility:visible;
  margin:30px 0;
}

iframe, embed, object{
  max-width:100%;
}

address{
  margin:10px 0;
}
blockquote{
  position:relative;
  background:url(/images/blockquote.svg) no-repeat 10px 25px #F7F7F7;
  border:1px solid #F0F0F0;
  border-radius:5px;
  padding:10px 20px 10px 55px;
  background-size:30px;
  font-family:"Caveat";
  font-size:24px;
  line-height:130%;
  font-weight:normal;
  margin:30px auto;
}
blockquote p{
  margin:5px 0;
}
blockquote strong{
  font-family:"inter";
  font-size:12px;
}
.print{
  text-align:center;
}
/*Tableaux------------------------------------------------------------------------*/
table{
	border-collapse:collapse;
	border-spacing:0;
	margin:auto;
	margin:20px 0;
  text-align:center;
  line-height:140%;
  display:inline-block;
  overflow:auto;
  width:100%;
}
th{
	border:1px solid #E3E3E3;
  background:#13A2C6;
  color:#FFF;
	font-weight:bold;
	padding:6px 10px;
}
td{
	border:1px solid #E3E3E3;
	padding:6px 10px;
}

/* ----------------------------------------------------------------------------------------
TARTE AU CITRON RECTIFS
-------------------------------------------------------------------------------------------*/
#tarteaucitronDot{
  display:none !important;
}
#tarteaucitronCookiesNumber{
  font-size:15px !important;
}
#tarteaucitronManager{
  background-image:url(/images/cookie.svg) !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  text-indent:-999em;
  padding:8px 15px !important;
}
#tarteaucitronAlertSmall{
  right:inherit !important;
  left:0;
  width:60px !important;
}
/* ----------------------------------------------------------------------------------------
NAVIGATION
-------------------------------------------------------------------------------------------*/
/*Ariane---------------------------------------------------------------------------*/
.breadcrumb{
  color:#727272;
  font-size:12px;
  display:none;
  text-align:center;
  margin-top:15px;
}
.breadcrumb a{
  color:#727272;
  text-decoration:none !important;
}
.breadcrumb span span:last-child a{
}
/*Pager---------------------------------------------------------------------------*/
.pager{
  text-align:center;
  margin:30px 0;
} 
  .pager a{
    display:inline-block;
    margin:5px;
    text-transform:uppercase;
    text-decoration:none !important;
    vertical-align: middle;
  }
  .pager .pager_default_page,
  .pager .pager_current_page{
    width:36px;
    height:36px;
    line-height: 36px;
    text-align: center;
    border-radius: 50%;
    transition: all ease 0.2s;
  }
  .pager .pager_default_page{
    color: #2b2b2b;
    border: 1px solid #db0027;
    color: #db0027;
  }
  .pager .pager_current_page{
    background-color: #db0027;
    color:#fff;
    font-weight: bold;
  }
  .pager .next,
  .pager .last{
    color:#db0027;
  }
  @media (hover: hover) and (pointer: fine) {
    .pager .pager_default_page:hover,
    .pager .pager_current_page:hover{
      transform: scale(1.1);
    } 
  }
  .pager .PagerPrevious,
  .pager .PagerNext{
    padding:4px 12px;
    border-radius: 5px;
    border:1px solid #2B2B2B;
    color:#2B2B2B;  
  }
  .pager .PagerPrevious:hover,
  .pager .PagerNext:hover{
    color:#FFFFFF;
    background:#2B2B2B;    
  }

.back{
  text-align:center;
  margin-top:30px;
}
/*Bouton nav responsive-----------------------------------------------------------*/
#navtop_bt{
  position:fixed;
  width:50px;
  height:50px;
  padding:18px 0 0;
  background:#46B28B;
  cursor:pointer;
  z-index:30;
  right:0;
  top:0;
  border:0;
  border-radius:0;
  transition: background-color 0.5s ease, border-radius 0.5s ease;
}
#navtop_bt.scrolled {
  background-color: #c92a31;
  border-radius:0 0 0 5px;
}
#navtop_bt span{
  position:relative;
}
#navtop_bt span,
#navtop_bt span:before,
#navtop_bt span:after {
	background: #FFFFFF;
	display:inline-block;
  vertical-align:top;
	height: 3px;
	width: 24px;
  border-radius:2px;
	-webkit-transition: all 0.25s ease;
	-moz-transition: all 0.25s ease;
	-ms-transition: all 0.25s ease;
	-o-transition: all 0.25s ease;
	transition: all 0.25s ease;
}
#navtop_bt span:before,
#navtop_bt span:after {
	content: '';
	position: absolute;
  left:0;
}
#navtop_bt span:before {
	top:-8px;
}
#navtop_bt span:after {
	top:8px;
}
#navtop_bt.navtop_bt_hover span {
     background: transparent;
}
#navtop_bt.navtop_bt_hover span:before {  
	top:0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
#navtop_bt.navtop_bt_hover span:after {
	top:0;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/*Nav principale------------------------------------------------------------------*/
.acacher{
  display:block;
}
#mainNav {
	position: fixed;
  overflow-y:auto;
	z-index: 25;
	width: 100%;
  height:100%;
	padding: 40px 20px;
	display: none;
	background: rgba(255,255,255,0.95);
	top: 0;
  left:0;
  text-align:center;
  font-weight:500;
  font-family:"Poppins", Helvetica, Sans-serif;
}
nav ul{
  margin:0;
}
#mainNav .firstLevel{
}
  #mainNav .sub-menu li.menueco > a > span:after,
  #headboxes li.menueco > a > span:after,
  #mainNav .sub-menu li.menufrancaisgeneral > ul > li:first-child > a span:after{
    content:"";
    display:inline-block;
    background:url(/images/menu-picto-ecoresp.svg) no-repeat center right;
    width:28px;
    height:20px;
    vertical-align:middle;    
  }
/*#mainNav .sub-menu li.menufrancaisgeneral > ul > li:nth-child(3) > a span:after,
  #mainNav .sub-menu li.menufrancaisculture > ul > li:nth-child(1) > a span:after{
    content:"";
    display:inline-block;
    background:url(/images/picto-JO2.svg) no-repeat right top;
    width:25px;
    height:20px;
    vertical-align:middle;    
}
  #mainNav .sub-menu li.menuprepaexam > ul > li:nth-child(2) > a span:after{
    content:"";
    display:inline-block;
    background:url(/images/picto-prepmyfuture.png) no-repeat center center;
    width:20px;
    height:20px;
    vertical-align:top;
    margin-left:4px;
    margin-top:2px;
  }*/
  #mainNav li a{
    color:#000;  
    cursor:pointer;
  }
  #mainNav .firstLevel > li{
    border-bottom:1px solid #D8D8D8;
  }
  #mainNav .firstLevel > li > a{
    padding:20px 15px;
    font-size:16px;
    display:block;
    text-transform:uppercase;
  }
  #mainNav .firstLevel > li.menu-rouge > a{
    color:#DB0027;
  }
  #mainNav .firstLevel > li.has-submenu > a span:after{
    background:url(/images/header-fleche-nav-noir.svg) no-repeat right center;
    content:"";
    width:20px;
    height:10px;
    display:inline-block;
  }
  #mainNav .firstLevel > li.has-submenu.menu-rouge > a span:after{
    background:url(/images/header-fleche-nav-rouge.svg) no-repeat right center;  
  }
  #mainNav .firstLevel > li.active > a{
  }
#mainNav .secondLevel {
  display:none;
  padding:0 0 20px 0;
}
  #mainNav .secondLevel li{
    margin:0 0 5px;
  }
  #mainNav .twosubs .secondLevel > li > a{
    font-weight:bold;   
  }
  #mainNav .twosubs .secondLevel > li > a span{
  }
  #mainNav .secondLevel > li > a,
  #mainNav .twosubs .thirdLevel > li > a{
    padding:10px 15px;
    display:block;
    font-size:16px;
    font-weight:normal;
    color:#0a0a0a;
    font-family: 'Inter';
  }
  #mainNav .secondLevel li.active > a,
  #mainNav .twosubs .thirdLevel li.active > a{
    text-decoration:underline;
  }
  #mainNav .twosubs .secondLevel > li.active > a{
    text-decoration:none;
  }
#mainNav .menudiplomes .thirdLevel,
#mainNav .menuculture .thirdLevel,
#mainNav .menuinscription .thirdLevel{
  display:none;
}

/*Nav rightbar---------------------------------------------------------------------------*/
#rightNav{
  margin:0 0 40px;
}
  #rightNav a{
    display:block;
    font-size:17px;
    position:relative;
  }
  #rightNav .firstLevel > li{
    border-bottom:2px solid #FFFFFF;
  }
  #rightNav .firstLevel > li > a{
    color:#282C2F;
    background:#EFEFEF;  
    padding:12px 20px 8px;
  }
  #rightNav .firstLevel > li.active a{
    color:#FFFFFF;
    background:#148DCE;
  }
  #rightNav .secondLevel > li > a{
    font-size:16px;
    padding:10px 20px 6px 35px;
  }
  #rightNav .secondLevel > li:last-child a{
    padding-bottom:15px;
  } 
  #rightNav .secondLevel > li.active > a:before{
    content:"";
    width:6px;
    height:6px;
    background:#FFFFFF;
    border-radius:50%;
    display:block;
    position:absolute;
    left:20px;
    top:16px;  
  }

/* ----------------------------------------------------------------------------------------
STRUCTURE
-------------------------------------------------------------------------------------------*/
.inner{
  padding:0 20px;
  max-width:1210px;
  margin:0 auto;
}
#page{
  overflow-x:hidden;
  overflow-y:hidden;
}
header{
  position:relative;
}
#head{
  position:absolute;
  z-index:5;
  width:100%;
}
  #head > .inner{
  }
  #headboxes{
    background:#2B2B2B;
    font-size:14px;
  }
  #logo{
    background:url(/images/bg-logo.svg) no-repeat center bottom;
    background-size:cover;
    height:140px;
    text-align:center;
    margin:0 -20px;
    padding:10px 0;
    transition:all ease 0.3s;
    /*background: rgba(219, 0, 30, 0.85);
    clip-path: polygon(100% 0%, 100% 92%, 0% 100%, 0% 0%);*/
  }
    .logoalliance{
      display:inline-block;
      color:#FFF;
    	/*width: 243px;
    	height: 68px;*/
      width:264px;
      height:74px;
    	background: url(/images/logo-Alliance-Normandie-horizontal-blanc.svg) no-repeat center center;
      background-size:contain;
      margin:10px 0;
    }
    .es .logoalliance{
      margin:15px 0;
    }
    .logoalliance span{
      display:none;
    }
#chapterpicture{
  position:relative;
  z-index:0;
}
  #chapterpicture img{
    position:relative;
    max-width:inherit;
    left:50%;
    transform:translateX(-50%);
  }
#wrapper{
  padding:50px 0 30px;
}
  #container{
  }
  #heading{
    position:relative;
    height:290px;
    overflow:hidden;
  }
  
  .bandeaufiltrerouge #heading{background:#DA002E;}
  .bandeaufiltrevert #heading{background:#7BCB97;}
  .bandeaufiltrebleu #heading{background:#13A2C6;}
  .bandeaufiltrejaune #heading{background:#EBC03D;}

  /*.catalogProductDetail #heading{background:#000;}*/
   
  .bandeaufiltrerouge #heading > img,
  .bandeaufiltrevert #heading > img,  
  .bandeaufiltrebleu #heading > img,
  .bandeaufiltrejaune #heading > img{
    opacity:0.6;  
    filter:grayscale(1) brightness(1) contrast(150%);
  }
  #heading > img{
    position:relative;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    max-width:inherit;
    max-height:100%;
  }
  /*.catalogProductDetail #heading > img{
    opacity:0.6;
    filter:inherit;  
  }*/
  #heading:after{
    content:"";
    height:100%;
    display:block;
    background:url(/images/oblique-blanc-bas-vers-haut.svg) no-repeat center bottom;
    background-size:100%;
    position:absolute;
    width:105%;
    bottom:-1px;
    left:0;
  }
  #headtitle{
    position:absolute;
    top:45%;
    transform:translateY(-50%);
    width:100%;
    text-align:center;
    z-index:2;
    padding:0 20px;
  }
  #mainboxes{
  }
#footer{
  overflow:hidden;
  position:relative;
  font-size:14px;
  padding-top:60px;
}
  #rightbar{
    position:relative;
    background:url(/images/bg-rightbar.svg) no-repeat center top #E8F6F9;
    background-size:contain;
  } 
  #rightbar:after{
  }
  #rightbar .inner{
  }
  #infooter{
    position:relative;
    padding:30px 0 0;
    z-index:1;
    color:#FFFFFF;
  }
  #infooter:after{
    content:'';
    background:url(/images/fond-footer.svg) no-repeat 90% 20% #353535;
    position:absolute; 
    z-index:-1;
    width:130%;
    height:150%;
    transform:rotateZ(-4deg);
    display:block;
    left:-5%;
    top:0; 
  }
/* ----------------------------------------------------------------------------------------
FORMULAIRES
-------------------------------------------------------------------------------------------*/
.formulaire{
}
#container #forms .titreformulaire{
  font-family:"Poppins";
  width:100%;
}
.formandfootform{
  margin:0 0;
  width:100%;
}
.form_creator_header{
  margin:0 0 30px;
  background:#F7F7F7;
  border:1px solid #F0F0F0;
  padding:1px 20px;
  border-radius:5px;
  width:100%;
}
.form_creator_footer{
  font-size:0.9em;
}
.form_creator_footer a{
  text-decoration:underline;
}
#container .form_creator_header h2{
  margin-top:0;
}
.form_creator_header p{
}
.row,
.block_row{
  margin:0 0 20px;
}
.row > label,
.block_row > label{
  font-weight:bold;
  padding:5px 0;
  display:block;
}
.row > div > select, 
.row > div > input[type=text],
.row > div > input[type=password],
.row > div > input[type=file],
.row > div > input[type=email],
textarea{
  width:100%;
}
input[type=text], input[type=password], input[type=file], input[type=email], select, textarea{
  border:1px solid #CCC;
  padding:8px 10px 8px 10px;
  background:#FFF;
}
input[type=checkbox]{
  float:left;
  margin:5px 5px 5px 0;
}
.formulaire .aide,
.formulaire .aide p{
  margin:5px 0;
  font-style:italic;
  color:#808080;
}
.group_multi_radio,
.multi_radio,
.group_multi_checkbox,
.multi_checkbox{
  display:block;
}
.multi_radio,
.multi_checkbox{
  padding:3px 0;
}
input[type=checkbox],
input[type=radio]{
  margin-right:5px;
}
.rowcheck{
  position:relative;
}
.rowcheck label{
  padding-left:20px;
}
.rowcheck .checkobligatory{
  position:absolute;
  top:2px;
  left:0;
}
.rowcheck p{
  margin:10px 0;
  font-style:italic;
}
.errorForm,
label.error,
.error{
  color:red;
}
.submit input{
  border: 0 none;
  color:#FFF;
  font-size:17px;
  background:#2B2B2B;
  padding:12px 30px;
  cursor:pointer;
  text-transform:uppercase;
  font-family:"Poppins", Helvetica, Sans-serif;
  font-weight:500;
} 
.submit input:hover{
  background-color:#DB0027;
}
.strength_password{
  display:none;
}
.equalpasswd{color:green;}
.notequalpasswd{color:red;}

#captcha{
  margin:0 0 15px;
}
  ::-webkit-input-placeholder {color:#3F4549;opacity:1;}
  ::-moz-placeholder          {color:#3F4549;opacity:1;} /* Firefox 19+ */
  :-moz-placeholder           {color:#3F4549;opacity:1;} /* Firefox 18- */
  :-ms-input-placeholder      {color:#3F4549;opacity:1;}
  :focus::-webkit-input-placeholder {opacity:0.4;}
  :focus::-moz-placeholder          {opacity:0.4;}
  :focus:-moz-placeholder           {opacity:0.4;}
  :focus:-ms-input-placeholder      {opacity:0.4;}

.row .fileInfos .imagePreview img{
  max-width: inherit;
}
/* ----------------------------------------------------------------------------------------
MAP
-------------------------------------------------------------------------------------------*/  
.map{
  margin:20px 0;
}
.map > div{
  position:relative;
  padding-bottom:60%;
  padding-top:30px;
  margin:0 auto !important;
  height:0 !important;
  overflow:hidden;
  width:100% !important;
}
.map iframe,
.map object,
.map embed{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}  
/* ----------------------------------------------------------------------------------------
WIDGETS
-------------------------------------------------------------------------------------------*/
/*Widgets header--------------------------------------------------------------*/
.bx-accroche{
  color:#FFF;
  font-family:"Caveat";
  font-size:20px;
  padding:0 10px;
  display:none;
}
.bx-accroche p,
.bx-villes ul{
  margin:0;
}
.bx-accroche a,
.bx-villes{
  color:#FFF;
}
#mainNav .bx-villes li a{
  color:rgba(100,175,141);
  text-transform:uppercase;
  padding:20px 15px;
  font-size:16px;
  display:block;
}
#mainNav .bx-villes li{
  border-bottom:1px solid #D8D8D8;
}
#headboxes .widget{
  display:inline-block;
  color:#FFFFFF;
  font-weight:500;
  line-height:50px;
}
#headboxes .widget a{
  color:#FFF;
  display:block;
}
#headboxes .widget p{
  margin:0;
}
.bx-compte a,
.bx-panier a,
.bx-contact a{
  width:34px;
  margin:0 15px 0 0;
  background-position:center center;
  background-repeat:no-repeat;
  text-align:left;
  text-indent:-999em;  
}
.bx-compte a{background-image:url(/images/picto-widget-moncompte.svg);background-size:22px;}
.bx-panier a{background-image:url(/images/picto-widget-panier.svg);background-size:26px;}
.bx-contact a{background-image:url(/images/picto-widget-contact.svg);background-size:24px;}

.bx-panier{
  position:relative;
}
.bx-panier .product_number{
  position:absolute;
  right:5px;
  text-indent:0;
  top:15px;
  background:#DB0027;
  color:#FFF;
  width:18px;
  height:18px;
  border-radius:50%;
  font-size:12px;
  display:inline-block;
  vertical-align:middle;
  text-align:center;
  line-height:18px;
  margin:-2px 2px 0 0;
}
.bx-lang{
  position:relative;
}
.bx-lang p{
  cursor:pointer;
}
.bx-lang .widgetContainer p:first-of-type:after{
  content:"";
  display:inline-block;
  width:15px;
  height:10px;
  background:url(/images/header-fleche-nav.svg) no-repeat right center;
}
.bx-lang img{
  display:inline-block;
  padding-right:5px;
  margin-top:-2px;
}
.bx-lang a{
  color:#FFF;
  display:block;
}
.bx-lang ul{
  display:none;
  position:absolute;
  width:100%;
  top:50px;
  left:0;
  margin:0;
  z-index:3;
  background:rgba(43,43,43,0.8);
}
.bx-lang li{
  padding:0 0;
  line-height:100%;
}
.bx-lang li a{
  display:block;
  padding:8px 5px 8px 13px;
}
.bx-lang li a:hover{
  background:#2B2B2B;
}
.bx-lang li img{
  max-width:24px;
}
.bx-labels{
  display:none;
}

/*Widgets contenu-------------------------------------------------------------*/
#mainboxes .bx-separateur{
  width:100% !important;
  padding-top:40px;
  padding-bottom:20px;
  margin-top:30px; 
  margin:30px 0 10px; 
}
#mainboxes .bx-separateur .widgetContainer{
  background:none;
  padding:0;
}
#mainboxes .bx-separateur p{
  display:none;
}
#mainboxes .bx-separateur hr{
  background:url(/images/separateur.svg) no-repeat center top;
  height:6px;  
}
#mainboxes .bx-instawidget{
  width:100% !important;
  padding-top:30px;
  background:url(/images/separateur.svg) no-repeat center top;
  margin-top:30px;
}
#mainboxes .bx-basdepage .widgetContainer{
  background:url(/images/picto-loupe-rouge.svg) no-repeat 15px center;
  border-radius:5px;
  padding:10px 15px 10px 90px;
}
.bx-basdepage{
  margin:10px 0;
}
.bx-basdepage p{
  margin:5px 0;
}
.bx-basdepage a{
  text-transform:uppercase;
  color:#545454;
  font-weight:bold;
  font-family:"Poppins";
  background-color:#F7F7F7;
  border:1px solid #F0F0F0;
  display:inline-block;
  padding:18px 25px;
  font-size:16px;
  border-radius:5px;
  width:100%;
}
.bx-important{
  background:#DA002E;
  color:#FFF;
  padding:7px 10px 10px;
  text-align:center;
  color:#FFF;
  border:2px solid #FFF;
}
.bx-important p{
  margin:0;
}
.bx-important a{
  text-decoration:underline;
  color:#FFF;
}
[class*="bx-short-"]{
  position:relative;
  margin:0 0 20px;
}
[class*="bx-short-"]::before{
  content:"";
  position:absolute;
  inset:0;
  background:url(/images/fond-bx-short.svg) no-repeat center center;
  background-size: cover;
  opacity:0.9;
  transition:opacity 0.3s ease;
  z-index:-1;
}
.bx-short-CPF::before{
  background-image:url(/images/fond-bx-short-CPF.svg);
}
[class*="bx-short-"] p{
  margin:0;
}
[class*="bx-short-"] a{
  display:block;
  font-size:1.3rem;
  font-family:"Poppins";
  font-weight:bold;
  padding:25px 60px 25px 90px;
  color:#FFF;
  position:relative;
  text-decoration:none;
}
[class*="bx-short-"] a:after{
  content:"+";
  display:block;
  font-size:2.5rem;
  font-family:"Poppins";
  font-weight:bold;
  transform: translateY(-50%);
  transition:transform 0.2s ease;
  transform-origin: center;
  position:absolute;
  right:20px;
  top:50%;
}
[class*="bx-short-"] a:before{
  display:block;
  content:"";
  position:absolute;
  left:15px;
  top:50%;
  transform: translateY(-50%);
  width:60px;
  height:60px;
  background-position:0 0;
  background-repeat:no-repeat;
  background-size:100%;
}
.bx-short-francais a:before{background-image:url(/images/picto-entreefrancais.svg);}
.bx-short-exam a:before{background-image:url(/images/picto-entreeexam.svg);}
.bx-short-profle a:before{background-image:url(/images/picto-entreeprofle.svg);}
.bx-short-resider a:before{background-image:url(/images/picto-entreeresider.svg);}
.bx-short-sejours a:before{background-image:url(/images/picto-entreesejours.svg);}
.bx-short-entreprise a:before{background-image:url(/images/picto-entreeentreprise.svg);}
.bx-short-univ a:before{background-image:url(/images/picto-entreeuniv.svg);}
.bx-short-CPF a:before{background-image:url(/images/picto-bxcpf.png);background-position:center;}


@media (hover: hover) and (pointer: fine) {
 [class*="bx-short-"] a:hover:after{
  transform: translateY(-50%) rotate(90deg);
  will-change: transform;
  backface-visibility: hidden;
 } 
 [class*="bx-short-"] a:hover{
  text-decoration:none;
  color:#FFF;
 }
 [class*="bx-short-"]:hover::before{
  opacity:1;
 }
}

.bx-chiffres{
  width:100%;
  margin:60px 0 0;
}
.bx-chiffres p{
  margin:0;
}
.bx-chiffres h4{
  color:#434343;
  font-size:1.6rem;
  font-weight:bold;
  margin:20px 0 60px;
  text-align:center;
  background:url(/images/soulignement-gris-titre.svg) no-repeat center bottom;
  padding-bottom:20px;
  text-transform:none; 
}
.bx-chiffres ul{
  display:flex;
  flex-wrap:wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin:0 0 20px;
}
.bx-chiffres li{
  display: block;
  width:152px;
  height:152px;
  font-weight:bold;
  background:#e5c157;
  border-radius:50%;
  margin:0 20px 20px;
  padding:35px 15px 15px;
}
.bx-chiffres li strong{
  display: block;
  font-family: "Poppins";
  font-size:2rem;
  padding:0 0 10px;
  color:#fff;
}
.bx-chiffres li:last-child{
  background-color: #99c455;
}
.bx-chiffres li:nth-of-type(-n + 3){
  background-color:#49a0c2;
}
.bx-organisez{
    margin: 80px auto 0;
    padding: 50px 0 20px;
    background: url(/images/bg-mainwidget.png) no-repeat center top;
    width: 100%;
    text-align: center;
}
.bx-organisez p:first-of-type strong{
    font-size: 18px;
    font-family:"Poppins";
}

.bx-linkedin{
  margin:60px 0;
  background:url(/images/separateur.svg) no-repeat center top;
  padding:60px 0 0;
}

/*Widgets leftbar------------------------------------------------------------*/
#leftbar {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
#leftbar .widget{
  margin-bottom:12px;
  text-align:left;
  width:100%;
}
#leftbar .widget p{
  margin:0;
}
#leftbar .widget a{
  display:block;
  color:#FFFFFF;
  font-family:"Poppins";
  font-weight:500;
  padding:15px 10px 12px 90px;
  text-transform:uppercase;
  border-radius:3px;
} 
.bx-brochures a{background:url(/images/picto-widget-brochures.png) no-repeat 10px center #ed7062;}                       
.bx-cpf a{background:url(/images/picto-bxcpf.png) no-repeat 10px center #164194;background-size:60px;}                       
.bx-niveau a{background:url(/images/picto-widget-bxniveau.png) no-repeat 10px center #7BCB97;}
.bx-question a{background:url(/images/picto-widget-bxquestion.png) no-repeat 10px center #13A2C6;}
.bx-monalliance a{background:url(/images/picto-widget-bxmonalliance.png) no-repeat 10px center #EBC03D;}

/*Widgets rightbar-------------------------------------------------------------*/
.bx-nl{
  position:relative;
  z-index:2;
  margin:-75px 0 60px;
  color:#FFF;
  text-align:center;
}
.bx-nl p{
  margin:0;
}
.bx-nl .formulaire{
  display:block;
}
.bx-nl .titreformulaire{
  text-transform:uppercase;
  color:#FFF;
  font-family:"Poppins";
  font-weight:bold;
  font-size:36px;
  line-height:120%;
  margin-bottom:15px;
}
.bx-nl .form_creator_header{
  font-weight:bold;
  margin-bottom:15px;
  background:none;
  border:0 none;
  padding:0;
}
.bx-nl form{
  margin-bottom:15px;
}
.bx-nl .formandfootform{
  margin:0;
}
.bx-nl fieldset{
  display:inline-block;
  vertical-align:middle;
}
.bx-nl label,
.bx-nl .submit,
.bx-nl .formulaire .row > div{
  display:inline-block;
  vertical-align:middle;
  margin-top:10px;
  margin-bottom:10px;
}
.bx-nl label,
.bx-nl fieldset{
  margin-right:10px;
}
.bx-nl .formulaire .row input{
  background:none;
  border:2px solid #FFF;
  font-size:15px;
}
.bx-nl .row{
  margin:0;
}
.bx-nl .submit input{
  padding:9px 20px;
  font-size:15px;
}
.bx-nl .form_creator_footer{
  font-size:12px;
  color:#2B2B2B;
  line-height:130%;
}
.bx-nl .form_creator_footer a{
  color:#2B2B2B;
  text-decoration:underline;
}
.bx-nl #formsThanks{
  text-align:center;
  padding:20px 0;
  font-weight:bold;
  font-size:18px;
}
.bx-nl .widgetFooter{
  clear:both;
}
.bx-confiance{
  padding:40px 0 140px;
  position:relative;
  margin:0 10px -100px;
  z-index:2;
}
.bx-confiance p{
  font-size:24px;
  line-height:1.3;
  font-family:"Poppins";
  font-weight:bold;
  text-align:center;
  margin:20px -20px 40px;
}
.bx-confiance .widgetContainer{
  margin:0 40px;
}

.owl-logos li{
  text-align:center;
  line-height:100px;
}
.owl-logos .owl-item img{
  max-height:100px;
  width:auto;
  max-width:90%;
  display:inline-block;
} 
/*Widgets footer--------------------------------------------------------------*/
#infooter{
  line-height:1.5;
}
#infooter a{
  color:#FFFFFF;
}
#infooter p,
#infooter ul{
  margin:5px 0;
}
.bx-logofooter,
.bx-coordonnees,
.bx-fondation{
  padding:10px 2.5%;
  text-align:center;
  border-bottom:1px solid #525252;
}
.bx-logofooter{
  font-family:"Caveat";
  font-size:20px;
  text-align:center;
  color:#FFF;
}
#infooter .bx-logofooter p{
  margin:5px 0 10px;
}
.bx-logofooter img{
  max-width:210px;
}
.bx-logofooter ul{
  text-align:center;
}
.bx-logofooter li{
  display:inline-block;
  vertical-align:bottom;
  padding:5px;
}
.bx-coordonnees{
}
.bx-fondation img{padding-bottom:5px;}

.bx-fondation{
}
.bx-asso{
  text-align:center;
  text-transform:uppercase;
  width:100%;
  padding:15px 0;
}
.bx-asso li{
  display:inline-block;
  padding:5px 2px 8px;
}
.bx-normandie{
  padding:0 0 25px;
  text-align:center;
  width:100%;
}
.bx-normandie img{
  max-width:200px;
}
.bx-mentions{
  width:100%;
  font-size:13px;
  text-align:center;
}
#infooter .bx-mentions a,
.bx-mentions{
  color:#868686;
}
.bx-mentions .widgetContainer{
  margin:0 -50vw;
  padding:15px 50vw 50px;
  background:#282828;
}
#infooter .bx-mentions p{
  margin-bottom:10px;
}
.bx-mentions li a{
  display:block;
  padding:10px 0;
}


/* ----------------------------------------------------------------------------------------
ARTICLES STANDARDS
-------------------------------------------------------------------------------------------*/
.fondgris{
  background: #F2F2F2;
  margin-left:-50vw;
  margin-right:-50vw;
  padding-left:50vw;
  padding-right:50vw;  
}

.pagepartenaires #container ul li{
  padding:15px 10px 20px;
  display:inline-block;
  width:49%;
  text-align:center;
}
.pagepartenaires #container ul li:before{
  display:none;
}
.pagepartenaires li img{
  max-height:100px;
}
#articlesList{}

#articlesList .chapo{
  margin:0 0 40px;
}
#articlesList h2{
  margin-bottom:15px;
}
#articlesList .chapoPicture{
}
#articlesList .description{
  margin:15px 0 0;
}
article #chapo{
  font-weight:bold;
  color:#3F4549;
}

/*Page millenium*/
.pagemillenium #heading{
  background:url(/images/motif-millenium.jpg) repeat;
}
.pagemillenium #logo{
  background: rgba(0, 0, 0, 0.85);
}
.pagemillenium #container .boutonrouge{
  font-family: "Poppins";
  font-weight: bold;
}

/* ----------------------------------------------------------------------------------------
PUBLICATIONS DE MEDIAS
-------------------------------------------------------------------------------------------*/
#zsearch{
  margin:0 0 30px;
}
.medianame{
  font-size:16px;
}
#mediaDownloads ul{
  text-align:center;
  display:flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top:40px;
}
#container #mediaDownloads li{
  padding:0;
  margin:15px;
  width: 270px; 
}
#container #mediaDownloads li:before{
  display:none;
}
#mediaDownloads li a{
  display:block;
  padding:20px 15px;
  background-color: #EFEFEF;
  font-size:1.1rem;
  border-radius:5px;
  transition:all ease-in 0.2s;
}
#mediaDownloads li a span{
  display:block;
  font-weight:bold;
  padding:5px 0 0;
  text-decoration: underline;
}
#mediaDownloads li a span:before{
  display:inline-block;
  content:"\f0ab";
  font-size:18px;
  font-family:'Font Awesome 5 Free';
  padding-right:10px;
}
@media (hover: hover) and (pointer: fine) {
  #mediaDownloads li a:hover{
    background:#164194;
    color:#FFF; 
  }  
}


/* ----------------------------------------------------------------------------------------
COMPTE
-------------------------------------------------------------------------------------------*/
/*Connexion / entree vers inscription aussi bien dans compte que dans le panier*/
#accountAuthentification{
  padding:40px 0 20px;
  max-width:560px;
  margin:0 auto;
}
#accountAuthentificationSubscription .aide{
  font-style:italic;
  color:#DB0027;
  font-size:0.9em;
  display:block;
  width:100%;
  text-align:center;
}
.cart .accountForm{
  max-width:560px;
  margin:30px auto;
}
.accountForm{
  background:#F2F2F2;
  padding:20px;
  margin:0 0 30px;
}
.accountForm .h2{
  margin:10px 0 25px;
}
.accountForm .row{
  margin-bottom:25px;
}
.accountForm .submit{
  margin-bottom:15px;
  text-align:center;
}
#accountAuthentificationForm{
}
#accountAuthentificationForm .error{
  padding:0 0 10px;
}
#accountAuthentificationForm .lostPassword{
  text-align:center;
  display:block;
}
#accountAuthentificationForm .lostPassword span{
  font-style:italic;
}
#accountAuthentificationForm .lostPassword:hover{
  text-decoration:underline;
}

/*Inscription*/
.accountSubscriptionInfoMsg,
.confirmation_subscription .log{
  font-style:italic;
  background:#F6F6F6;
  padding:10px;
  text-align:center;
}
.confirmation_subscription .log{
  margin:30px 0;
  padding:30px;
}
.accountform .formulaire{
  max-width:560px;
  margin:0 auto;
}
.accountform .formulaire .submit{
  text-align:center;
}
.accountform .formandfootform{
  width:100%;
}
.accountform fieldset{
  background:#F7F7F7;
  border:1px solid #F0F0F0;
  border-radius:5px;
  padding:10px 20px 10px;
  position:relative;
  margin:30px 0;
}
.accountform legend{
  font-family:"Poppins";
  font-weight:bold;
  text-transform:uppercase;
  font-size:20px;
}
.accountform fieldset .description p{
  margin:0 0 20px;
}
/*Accueil compte quand connect�*/
#accountActions ul{
  max-width:400px;
  margin:0 auto;
} 
#container #accountActions ul li:before{
  display:none;
}
#container #accountActions ul li{
  margin:20px 0;
  padding:0;
}
#accountActions li a{
  background:#EFEFEF;
  border-bottom:1px solid #2B2B2B;
  padding:20px;
  display:block;
  font-family:"Poppins";
  font-weight:500;
  text-transform:uppercase;
}
#accountActions li a:hover{
  background:#DB0027;
  color:#FFF;
}
#accountActions li a:before{
  font-family:'Font Awesome 5 Free';
  padding-right:10px;
  display:inline-block;
  font-size:18px;
}
.lilogout a:before{content:"\f2f5";}
#accountActionsGeneralDatas a:before,
#accountActionsPassword a:before,
#accountActionsAdress a:before{content:"\f303";}
#accountActionsOrder a:before{content:"\f0ca";}
#accountActionsUnsubscribe a:before{content:"\f506";}

/*modification parametres*/

/*modification ou reinitialisation du mot de passe*/
.Passwordcontent{
  text-align:center;
}
.Passwordcontent .submit{
  margin-top:20px;
}
#accountChangePassword .formulaire,
#accountReinitPassword .formulaire{
  max-width:560px;
  margin:30px auto;
}
#accountNewPassword .formulaire{
  max-width:400px;
  margin:30px auto;
}
#accountChangePassword .formulaire form,
#accountReinitPassword .formulaire form,
#accountNewPassword .formulaire form{
  width:100%;
}
#accountChangePassword .formulaire fieldset,
#accountReinitPassword .formulaire fieldset,
#accountNewPassword .formulaire fieldset{
  background:#F7F7F7;
  border:1px solid #F0F0F0;
  border-radius:5px;
  padding:10px 20px;
}
#accountChangePassword .formulaire .row > span,
#accountReinitPassword .formulaire .block_row > span,
#accountNewPassword .formulaire .row > span{
  display:block;
}
#accountChangePassword .formulaire .row > span input,
#accountReinitPassword .formulaire .block_row > span input,
#accountNewPassword .formulaire .row > span input{
  width:100%;
}
#accountChangePassword .submit,
#accountNewPassword .submit{
  text-align:center;
  margin-top:30px;
}

/*gestion des adresses*/
.addresslist {
  text-align:center;
}
.addresslist li{
  text-align:left;
  background:#F7F7F7;
  margin:20px 0;
}
#container .addresslist li{
  padding:20px;  
}
#container .addresslist li:before{
  display:none;
}
.addresslist dt{
  font-weight:bold;
  text-transform:uppercase;
  font-size:1.1em;
}
.addresslist span{
  display:block;
  padding:3px 0;
}
.addresslist a{
  display:inline-block;
  padding:3px 5px;
  color:#000;
}
.addresslist a:before{
  font-family:'Font Awesome 5 Free';
  padding-right:5px;  
}
.addressListTitleEdit a:before{
  content:"\f044";
}
.addressListTitleDelete a:before{
  content:"\f2ed";
}
.addressAdd{
  text-align:center;
}
#accountAddress .accountform form{
  width:100%;
}
#accountAddress .accountform fieldset{
  margin-top:20px;
}
/*desinscription*/
#account_unsubscribe{
  font-style:italic;
  background:#F6F6F6;
  padding:10px;
  text-align:center;
  margin:30px 0;
}
/*Liste des commandes*/
.noorders{
  text-align:center;
  padding:20px 0;
  font-weight:bold;
}
#accountPendingOrders,
#accountHistoryOrders{
  text-align:center;
}
#accountPendingOrders table{
}
#accountPendingOrders thead,
#accountHistoryOrders thead{
  display:none;
}
#accountPendingOrders tbody,
#accountHistoryOrders tbody{
  display:inline-block;
  width:100%;
}
#accountPendingOrders tr,
#accountHistoryOrders tr{
  display:inline-block;
  vertical-align:top;
  border:1px solid #E3E3E3;
  padding:20px;
  margin:0 0 15px;
  min-width:250px;
}
#accountPendingOrders td,
#accountHistoryOrders td{
  display:block;
  border:0 none;
  padding:2px 0;
}
#accountPendingOrders td.orderdetail,
#accountHistoryOrders td.orderdetail{
  display:inline-block;
}
#accountPendingOrders .orderdetail a,
#accountHistoryOrders .orderdetail a{
  display:inline-block;
  background:#FF4B3C;
  color:#FFF;
  border-radius:5px;
  margin:10px 0 0;
  padding:10px 15px;
}
/*Facture commande*/
.invoicedetail{
  max-width:900px;
  margin:0 auto;
}
.invoicepayment h2{
  display:none;
}
.invoiceinfos{
  background:#EAEAEA;
  padding:20px;
  margin:20px 0;
}
.invoicecustomer{
  border:1px solid #EAEAEA;
  padding:1px 20px 10px;
  margin:20px 0;
}
.invoicepayment{
  border:1px solid #EAEAEA;
  padding:1px 20px 10px;
  margin:20px 0;  
}

/*Detail d'une commande ET presentation confirmation panier derniere etape*/
#orderdetailleft{
  background:#2B2B2B;
  padding:30px 150px;
  margin:0 -150px;
  transform:rotate(-4deg);
  color:#FFF;
  text-align:left;
}
.inorderleft{
  transform:rotate(4deg);
  padding:10px 0;
}
#orderdetailleft p{
  margin:0;
}
#orderdetailleft h2,
#orderdetailleft h3{
  color:#FFF;
  text-align:left;
  margin:25px 0 10px;
  font-size:18px;
}
#orderdetailleft .address{
  background:none;
  margin:0;
  padding:0;
}
#orderdetailright{
  padding:20px 0 0;
}

/* ----------------------------------------------------------------------------------------
EVENEMENTS
-------------------------------------------------------------------------------------------*/
#headevents{
  text-align:center;
  max-width:1100px;
  margin:0 auto 60px;
}
#container .event_picture img{
  width:100%;
  border-radius:6px 6px 0 0;
}
.eventsaison .event_picture,
.eventsaison .chapoPicture{
  position:relative;
}
.eventsaison .event_picture:before,
.eventsaison .chapoPicture:before{
  content:"";
  display:block;
  width:220px;
  height:60px;
  background:url(/images/logo-saisonafricaine.png) no-repeat center center #FFF;
  position:absolute;
  bottom:-30px;
  left:50%;
  transform: translateX(-50%);
  border-radius:6px;
  box-shadow:0 0 5px rgba(0,0,0,0.3);
}
#event_list .event{
  margin:0 auto 30px;
  max-width:600px;
  background:#bddfe0;
  border-radius:6px;
}
#event_list .eventsaison{
  background:#ffebb1;  
}
.event h3{
  margin:10px 0;
  color:#126a6d;
}
.eventsaison h3{
  color:#db0027;
}
.event_resume{
  padding:20px;
}
.eventsaison .types{
  padding-top:30px;
}
#event.eventsaison .types{
  padding-top:0;
}
.event .types span,
#event .types span{
  display:inline-block;
  background:#8abec0;
  font-size:0.75rem;
  text-transform:uppercase;
  padding:0 8px;
  margin:0 5px 0 0;
  border-radius:5px;
}
.eventsaison .types span,
#event.eventsaison .types span{
  background:#f9d15a;
}
.event .date{
  font-weight:bold;
  text-transform: uppercase;
}
.event .chapo{
  padding-bottom:10px;
}
.event .chapo p{
  margin:0 0 10px;
}
.event .boutonrouge{
  background: #126a6d;
}
.eventsaison .boutonrouge{
  background: #db0027;
}
.event .boutonrouge:before{
  background:#003f41;
}
.eventsaison .boutonrouge:before{
  background:#BD0122;
}
#event .boutoninscription{
  background:#126a6d;
  color:#fff;
  display:inline-block;
  position:relative;
  text-decoration: none;
  border-radius: 5px;
  padding: 8px 54px 8px 24px;
  transition: background 0.2s ease;
}
#event .boutoninscription:after{
  content:"+";
  display:block;
  font-size:2.2rem;
  font-family:"Poppins";
  font-weight:bold;
  transform: translateY(-50%);
  transition:transform 0.2s ease;
  transform-origin: center;
  position:absolute;
  right:15px;
  top:50%;  
}
@media (hover: hover) and (pointer: fine) {
  #event .boutoninscription:hover::after{
    transform: translateY(-50%) rotate(90deg);
    will-change: transform;
    backface-visibility: hidden;
  }
  #event .boutoninscription:hover{
    background:#003f41;
  }
  #event.eventsaison .boutoninscription:hover{
    background:#BD0122;
  }
}
#event.eventsaison .boutoninscription{
  background-color: #db0027;
}
.event .chapo .boutoninscription{
  display:none;
}
/*Detail d'un evenement*/
#event #chapo{
  max-width:600px;
  margin:0 auto;
  padding:0 0 40px;
}
#event .chapoPicture{
  margin:0 0 30px;
}
#event.eventsaison .chapoPicture{
  margin-top:70px;
}
.eventsaison .chapoPicture:before{
  bottom:inherit;
  top:-30px;
}
#event .types span{
  padding:2px 12px;
  background:#bddfe0;
  color:#126a6d;
}
#event.eventsaison .types span{
  color: #2b2b2b;
}
#event .date{
  color:#126a6d;
  font-size:1.2rem;
  padding:15px 0 0;
  font-weight:bold;
}
#event .date::first-letter {
  text-transform: uppercase;
}
#event.eventsaison .date,
#event.eventsaison h3{
  color:#db0027;
}
#event .chapo_description,
#event h3{
  color:#126a6d;
}
#event.eventsaison .chapo_description{
  color:#2B2B2B;
}
#event .chapo_description p{
  margin:0 0 15px;
}
#event #text{
  background:url(/images/fleche-blanche.png) no-repeat center top #F2F2F2;
  margin:0 -50vw;
  padding:50px 50vw;

}#event #text > div{
  max-width:600px;
  margin-right:auto;
  margin-left:auto;
}
#event.eventsaison #text{
  background-color:#ffebb1;
}
#event .simpleText,
#event .textAndImages{
  margin-top:30px;
  margin-bottom:30px;
}
#event .textAndImages{
  padding:30px 0 0 30px;
  background:url(/images/cadre-haut-gauche.png) no-repeat left top;
}
#event #text blockquote{
  max-width:none;
  background-image:none;
  font-family:"inter";
  font-size:1rem;
  line-height:inherit;
}
#event #text blockquote strong{
  font-size:1rem;
}
#event #text blockquote p{
  margin:20px 0;
}
#event #text .separateur{
  margin:30px 0 60px;
}

/* ------------------------------------------------------------
CROPPER ?
--------------------------------------------------------------- */

.imagePreview {
	overflow: hidden;
	width: 200px;
	height: 200px;
}

.imagePreview img {
	max-width: none;
}

.imagePreviewCropLayer {
	position: fixed;
	top: 50%;
	margin-top: -25%;
	z-index: 5000;
	width: 600px;
	height: auto;
	padding: 10px;
	background: #fff;
	border: solid 1px #ced4da;
	text-align: right;
}

.datasFile {
	text-align: left;
}

#fd_noir {
	display: none;
	background: rgba(0, 0, 0, 0.8);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 5000;
}

.imagePreviewCropLayer > span {
	cursor: pointer;
	background: #34a0da;
	color: #fff;
}
.imagePreviewCropLayer > span:hover {
	background: #1e75a4;
}


/* ----------------------------------------------------------------------------------------
ALLIANCE FRANCAISE DE ROUEN NORMANDIE - preformate 11 et 26
-------------------------------------------------------------------------------------------*/
.alfrpage{
}
.alfrl1{
}
.alfrl3 .colright{
  text-align:center;
}
.alfrl3{
  padding:20px 0;
}
.allianceville{
  margin:0 0 20px;
  position:relative;
  overflow:hidden;
  background:#2B2B2B;
  border-radius:4px;
}
.allianceville a:hover{text-decoration:none;}
.allianceville img{
  width:100%;
}
.allnomville{
  background:url(/images/bg-allnomville.png) no-repeat 20px center #DA002E;
  color:#FFF;
  padding:10px 20px 10px 70px;
  text-align:right;
  text-transform:uppercase;
  font-size:16px;
}
.allnomville p{
  margin:0;
}


/* ----------------------------------------------------------------------------------------
POURQUOI APPRENDRE AF ROUEN - preformate 12
-------------------------------------------------------------------------------------------*/
.raison1, .raison3, .raison5{
  padding:20px 0;
}
.raisonimg{
  text-align:center;
}
.raison2, .raison4{
  padding-top:20px;
  padding-bottom:20px;
}
.raison2 .raisonimg, 
.raison4 .raisonimg{
  overflow:hidden;
}
.raison2 .raisonimg img, 
.raison4 .raisonimg img{
  max-width:inherit;
  width:120%;
  left:-15%;
  position:relative;
}
.videotemoignage{
  padding:10px 0 20px;
}

/* ----------------------------------------------------------------------------------------
NIVEAUX ET PROGRAMMES - preformate 13
-------------------------------------------------------------------------------------------*/
.niveauxintro{
  padding:0 0 5px;
}
.niveauxtableau{
  margin-top:40px;
  margin-bottom:60px;
  padding-top:10px;
  padding-bottom:20px;
  text-align:center;
}
.niveauxtableau table{
  max-width:800px;
  width:auto;
  margin:0 0 30px;
}
.niveauxtableau table td{
  background:#FFF;
}
.niveauxblocs h2{
  margin-bottom:30px;
}
.niveau{
  display:flex;
  padding:15px 0;
}
.niveauimg{
  width:80px;
  margin:0 10px 0 -10px;
}
.niveautxt{
  flex:1;
}
.niveau h3{
  margin-top:10px;
}

/* ----------------------------------------------------------------------------------------
L'EQUIPE - preformate 14
-------------------------------------------------------------------------------------------*/
.membre{
  text-align:center;
  padding:15px;
}
.membre p{
  margin:5px 0;
}
.equipephoto{
  width:211px;
  height:211px;
  overflow:hidden;
  border-radius:50%;
  display:inline-block;
}
.bureauadmin{
  background: #F2F2F2;
  margin-top:30px;
  margin-bottom:20px;
  padding-top:10px;
  padding-bottom:10px;
}
.short_equipe .picture{
  display:none;
}
.picture2026{
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.equipeCA .picture2026{
  display:none;
}
.short_equipe:is(:nth-child(1), :nth-child(8), :nth-child(10), :nth-child(13)) .picture2026{
  border-radius:0 30% 30% 30%;
}
.short_equipe:is(:nth-child(2), :nth-child(5), :nth-child(11), :nth-child(14)) .picture2026{
  border-radius: 30% 30% 0 30%;
}
.short_equipe:is(:nth-child(3), :nth-child(6), :nth-child(12), :nth-child(15)) .picture2026{
  border-radius:30% 0 30% 30%;
}
.short_equipe:is(:nth-child(4), :nth-child(7), :nth-child(9), :nth-child(16)) .picture2026{
  border-radius:30% 30% 30% 0;
}
  /* Important : la première image reste en flux */
  .picture2026 .photo1 img {
      display: block;
      width: 100%;
      height: auto;
  }

  /* La seconde se superpose */
  .picture2026 .photo2 {
      position: absolute;
      inset: 0;
  }

  .picture2026 .photo2 img {
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
  }

  /* ---- EFFET REVEAL ---- */
  .picture2026 .photo2 {
      clip-path: inset(0 0 100% 0);
      transition: clip-path 0.5s ease;
  }

  /* Desktop */
  @media (hover: hover) {
      .picture2026:hover .photo2 {
          clip-path: inset(0 0 0 0);
      }
  }

  /* Mobile */
  @media (hover: none) {
      .picture2026:active .photo2,
      .picture2026:focus-within .photo2 {
          clip-path: inset(0 0 0 0);
      }
  }

/* ----------------------------------------------------------------------------------------
REJOIGNEZ-NOUS - preformate 15
-------------------------------------------------------------------------------------------*/
.navrejoindre{
  text-align:center;
  margin-bottom:30px;
}
#container .navrejoindre li{
  padding:0;
}
#container .navrejoindre li:before{
  display:none;
}
#container .navrejoindre li a{
  display:block;
  padding:5px 10px;
  margin:10px;
  background:#FF675B;
  color:#FFF;
  border-radius:5px;
  text-decoration:none;
}
#container .navrejoindre li a:hover{
  background:#FF4B3C;  
}
.navrejoindre li{
  display:inline-block;
}
.engagement{
  padding-top:5px;
  padding-bottom:30px;
}
.engagementimg{
  text-align:center;  
}
/* ----------------------------------------------------------------------------------------
PAGES HEBERGEMENTS - preformate 16
-------------------------------------------------------------------------------------------*/
.lignehebergement:nth-child(even) {
	background: #F2F2F2;
	margin-left: -50vw;
	margin-right: -50vw;
	padding-left: 50vw;
	padding-right: 50vw;
}
.lignehebergement {
	padding-top: 30px;
	padding-bottom: 30px;
}
.lignehebergement p,
.lignehebergement table{
    margin:0 0 20px;
}
.hebergimg,
.lignehbgtvisuels{
    text-align:center;
}
.lignehbgtvisuels img{
    padding:5px 0;
}
/* ----------------------------------------------------------------------------------------
PAGES A ONGLETS - preformate 17
-------------------------------------------------------------------------------------------*/
.navtabs{
    margin-top:40px;
    margin-bottom:-1px;
}
.navtabs li{
    display:none;
}
.navtabs li a{
    background:#FF675B;
    color:#FFF;
    padding:14px 20px;
    display:block;
    border:1px solid transparent;
    text-decoration:none;
    border-radius:5px 5px 0 0;
    font-weight:bold;
    text-transform:uppercase;
    font-family:"Poppins";
}
.navtabs li a:hover{
    text-decoration:none;
    color:#FFF;
    background:#FF4B3C;
}
.navtabs li a.active,
.navtabs li a.active:hover{
    color:#2B2B2B;
    background:#F8F8F8;
    border-right-color:#F0F0F0;
    border-left-color:#F0F0F0;
    border-top-color:#F0F0F0;
}
#container .navtabs li{
    padding:0;
    display:none;
}
#container .navtabs li:before{
    display:none;
}
.togglebox{
    margin:0 0 15px;
}
.tabname{
  color:#FFF;
  font-family:"Poppins";
  font-weight:bold;
  text-transform:uppercase;
  margin:0 0 10px;
  cursor:pointer;
}
.tabname a{
  display:block;
  padding:12px 20px;
  color:#FFF;
  background:#FF675B;
}
.tabname a:hover{
  text-decoration:none;
  color:#FFF;
}
.active .tabname{
    margin:0;
}
.tabcontent{
    background:#F8F8F8;
    border:1px solid #F0F0F0;
    border-radius:0 0 5px 5px;
    padding:5px 20px;
    display:none;
} 
  

/* ----------------------------------------------------------------------------------------
ENTREE VERS SOUS-RUBRIQUES - preformate 19
-------------------------------------------------------------------------------------------*/
.entrees{
  margin-top:30px;
}
.entreessrub{
  position:relative;
  overflow:hidden;
  margin:0 0 20px;
}
.entreessrub a{
  display:block;
}
.entreetitre{
  background:#DB0027;
  color:#FFF;
  padding:15px 20px;
  font-family:"Poppins";
  text-transform:uppercase;
  font-weight:bold;
  position:absolute;
  top:50%;
  left:50%;
  max-width:90%;
  transform:translate(-50%,-50%);
  z-index:2;
  text-align:center;
  font-size:18px;
  border-radius:4px;  
}
/* ----------------------------------------------------------------------------------------
CONTENUS EN TELECHARGEMENT - preformate 20 (exemple tarifs et brochures)
-------------------------------------------------------------------------------------------*/
.pagetelechargements{
  text-align:center;
}
.bloctelechargement{
  margin:20px 0;
  display:inline-block;
  padding:0 30px;
}
.fondgris .h2{
  padding-top:40px;
  margin-top:0;
}
.bloctelechargement img{
  transition:all ease-in 0.2s;
}
.bloctelechargement img:hover{
  transform:scale(1.05);
}
/* ----------------------------------------------------------------------------------------
SEJOURS LINGUISTIQUES - preformate 21
-------------------------------------------------------------------------------------------*/
.pagesejourslinguistiques{}
.introsejourlinguistique h2{
  text-align:left;
  margin-top:20px;
}
.pagesejourslinguistiques .h3{
  text-transform:none;
  margin-top:20px;
}
.introsejourlinguistique .colright img{
  margin:0;
}
.stepssejourcontainer{
  margin:30px 0 50px;
}
.stepsejour{
  background:#F2F2F2;
  position:relative;
  padding:10px 20px 10px 60px;
  margin:20px 0;
}
.stepsejour .owl-dots{
  display:none;
}
.stepsejour:before{
  display:block;
  width:34px;
  height:34px;
  background:#FF4B3C;
  color:#FFF;
  border-radius:50%;
  position:absolute;
  left:15px;
  top:15px;
  line-height:34px;
  text-align:center;
  font-family:"Poppins";
  font-weight:bold;
  font-size:16px;
}
.stepsejour1:before{content:"1";}
.stepsejour2:before{content:"2";}
.stepsejour3:before{content:"3";}
.stepsejour p{
  margin:10px 0;
}
.stepsejour strong{
  font-family:"Poppins";
  font-weight:bold; 
  font-size:17px; 
}
.temoignage{
  border-top:3px solid #DA002E;
  padding:145px 0 30px;
  color:#6F6F6F;
  position:relative;
}
.temoignage p{
  margin:10px 0;
}
.deux_colonnes .temoignage img{
  position:absolute;
  max-width:115px;
  border-radius:50%;
  top:20px;
  left:50%;
  margin:0 0 0 -58px;
}
.temoignage strong{
  color:#2B2B2B;
}
.pagesejourslinguistiques .formulaire{
  display:block;
}
.pagesejourslinguistiques .formandfootform{
  width:100%;
}
.pagesejourslinguistiques .titreformulaire{
  display:none;
}
.pagesejourslinguistiques .multi_checkbox{
  display:inline-block;
  width:49%;
}
/* ----------------------------------------------------------------------------------------
LA NORMANDIE - preformate 22
-------------------------------------------------------------------------------------------*/
#incontournables {
	margin: 0 -10px;
}
.normantodo{
  padding:10px;
}
.normantodo a{
  display:block;
  position:relative;
  text-decoration:none;
  overflow:hidden;
}
.normantodo a span{
  position:absolute;
  z-index:2;
  background:#FD8A25;
  color:#FFF;
  font-size:26px;
  line-height:100%;
  top:20%;
  left:0;
  display:inline-block;
  padding:10px 20px;
  font-family:"Poppins";
  font-weight:500;
}
/* ----------------------------------------------------------------------------------------
CULTURE - preformate 23
-------------------------------------------------------------------------------------------*/
#agendaaf{
  text-align:center;
}
#agendaaf > div {
	height: 200px;
	margin: 0 0 100px;
}
#agendaaf > div > div a{
  font-weight:bold;
  color:#DA002E;
}
.navculture{
  text-align:center;
  margin-bottom:0;
}
#container .navculture li{
  padding:0;
  display:inline-block;
}
#container .navculture li:before{
  display:none;
}
#container .navculture li a{
  display:block;
  padding:8px 15px;
  margin:10px;
  font-size:16px;
  background:#FF675B;
  color:#FFF;
  border-radius:5px;
  text-decoration:none;  
}
#container .navculture li a:hover{
  background:#FF4B3C;  
}
.obliquetop,
.obliquebottom{
  margin:0 -50vw;
  position:relative;
}
.obliquetop img,
.obliquebottom img{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:768px;
  height:54px;
  z-index:2;
  max-width:inherit;
} 
.obliquebottom img{
  top:-51px;
}  
#musees{
  background:url(/images/bg-musees-small.jpg) no-repeat center top;
  color:#FFF;
  position:relative;
  padding-top:30px;
  padding-bottom:50px;
}
#musees h2,
#container #musees a{color:#FFF;}

#salles{
  margin:0 0 60px;
}
.unesalle{
  margin:0 0 20px;
}
.unesalle a{
  display:block;
  position:relative;
}
.unesalle a span{
  display:block;
  position:absolute;
  z-index:2;
  text-align:center;
  background:#DA002E;
  font-family:"Poppins";
  font-weight:500;
  font-size:16px;
  color:#FFF;
  padding:5px 10px;
  top:50%;
  left:10%;
  width:80%;
  transform:translateY(-50%);
  border-radius:5px;
}
.autresactivites{
  padding:1px 0 40px;
}
#sortir,
#depenser{
  padding:0 0 40px;
  border-bottom:1px solid #000;
}
.imgactivite{
  text-align:center;
}

/* ----------------------------------------------------------------------------------------
VILLES activites tourisme - preformate 24
-------------------------------------------------------------------------------------------*/
.citycitations{
  margin:40px 0;
}
.cityactivities{
  margin-top:40px;
} 
.cityactivities .h4{
  margin:20px 0 10px;
  text-transform:uppercase;
}
.cityactivities p{
  margin:0;
}
.activity{
  margin:0 0 30px;
  background:#F2F2F2;
}
.activitext{
  padding:0 15px 20px;
}
/* ----------------------------------------------------------------------------------------
ancien ACCUEIL - preformate 25
-------------------------------------------------------------------------------------------*/

/* ----------------------------------------------------------------------------------------
ALLIANCE FRANCAISE - VILLES - preformate 27 ancien
-------------------------------------------------------------------------------------------*/

/* ----------------------------------------------------------------------------------------
ENGAGEMENTS - preformate 28
-------------------------------------------------------------------------------------------*/
.engagebox{
  position:relative;
  margin:40px 0;
}
.engageimg{
  width:145px;
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  text-align:center;
}
.engageimg img{
  border-radius:0;
}
.engagetext{
  background:url(/images/fond-dechire-small-vert.svg) no-repeat left top;
  background-size:cover;
  padding:10px 20px 20px 90px;
  margin-left:80px;
  min-height:130px;
}
.engagetext h3{
  text-transform:none;
  color:#101010;
  font-weight:500;
  font-size:20px;
  margin:20px 0 10px;
}
.engagetext p{
  margin:10px 0;
}
/* ----------------------------------------------------------------------------------------
ACCUEIL 22 - preformate 29 ancien
-------------------------------------------------------------------------------------------*/

/* ----------------------------------------------------------------------------------------
Equipe 2023 - preformate 31
-------------------------------------------------------------------------------------------*/
.shortsequipe{
  padding-bottom:30px;
}
.short_equipe{
  text-align:center;
  padding:15px;
}
.short_equipe .picture{
  overflow:hidden;
  border-radius:50%;
  display:inline-block;
  width:210px;
  height:210px;
}
.short_equipe h3{
  color:#2B2B2B;
  font-size:15px;
  font-weight:bold;
  margin:10px 0 0;
}
.short_equipe p{
  margin:5px 0;
}
.equipelieu{
  color:#868685;
  font-weight:300;
  font-size:14px;
}
.equipelieu ul{
  margin:0;
  padding:2px 0 2px 22px;
  display:inline-block;
  background:url(/images/picto-lieu-equipe.svg) no-repeat left center;
  background-size:20px;
}
#container .equipelieu ul li{
  padding:0;
  display:inline-block;
}
#container .equipelieu ul li:after{
  content:",";
  padding-right:3px;
}
#container .equipelieu ul li:last-child:after{
  content:"";
  padding-right:0;
}
#container .equipelieu ul li:before{
  display:none;  
}
.textesequipe{
  text-align:left;
  padding:0 15px 0;
}
#pagequipe h2{
  text-align:left;
  font-size:24px;
}
.equipeCA .short_equipe{
  padding:10px;
  background:url(/images/fond-dechire-small-grisclair.svg);
  background-size:cover;
  margin-bottom:5px;
}
.equipeCA .short_equipe .short_product_container{  
}
.equipeCA .short_equipe h3{
  margin-bottom:5px;
}


/* ----------------------------------------------------------------------------------------
Accueil 2026 - preformate 33
-------------------------------------------------------------------------------------------*/
.home #heading,
.home .breadcrumb{
  display:none;
}
.home #container > .inner{
  max-width:inherit;
  padding:0;
}
.innerhome{
  padding:0 20px;
  max-width:1210px;
  margin:0 auto; 
}
#hometop{
  position:relative;
  margin:0 0 40px;
  height:622px;
}
/*#hometop:after{
  content:"";
  display:block;
  height:22px;
  background:url(/images/fleche-header.png) no-repeat center bottom;
  width:100%;
}*/
#hometop .flechedeco{
  height:22px;
  background:url(/images/fleche-header.png) no-repeat center bottom;
  width:100%;  
}
#hometop .owl-dots,
#hometop .owl-nav,
#hometop .texteslider{
  display:none;
}
.home #hometop .owl-stage-outer::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%; /* hauteur de l’ombre */
  pointer-events: none; /* pour ne pas bloquer les clics */
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0,0,0,0.2) 20%,
    rgba(0,0,0,0.5) 70%,
    rgba(0, 0, 0, 0.9) 100%
  );  
}
.home .owl-slider .owl-item{
  overflow:hidden;
  position:relative;
}

#hometop .owl-slider:not(.owl-loaded) { display: block; } 
#hometop .owl-slider:not(.owl-loaded) .slide:not(:first-child) { display: none; }

#hometop .owl-slider,
#hometop .owl-slider .owl-item .mainImage{
  position:relative;
  height:600px;
}
#hometop .owl-slider .owl-item img{
  width:inherit;
  max-width:inherit;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  position:relative;
  z-index:1;
  height:600px;
}
#hometop .innerhome{
  position:absolute;
  bottom:0;
  z-index:2; 
  width:100%; 
}
#hometop .introhome{
  /*background:rgba(0,0,0,0.8);*/
  color:#FFF;
  padding:0 0 70px;
  text-align:center;
}
#hometop .introhome h1{
  font-size:2.3rem;
  font-weight:normal;
  text-transform:none;
  margin:0 0 15px;
  color:#FFF;
  background:none;
  padding-bottom:0;
}
#hometop .introhome p{
  margin:0px;
}
#entrees{
}
.entreecata{
  /*width:31%;*/
  position: relative;
  overflow: hidden;
  margin:0 0 30px;
}
.contententree{
  position: relative;
  z-index: 3;
  padding:5px 30px 15px;
  text-align:center;
}
.entreecata .plus{
  display:none;
  font-family: "Poppins";
  font-weight: bold;
  position: absolute;
  right: 25px;
  bottom: 42px;
  font-size: 2.5rem;
  color:#FFF;
  z-index: 3;
  transition: color 0.4s ease, transform 0.2s ease;
}
.entreecata h2{
  font-family: "Poppins";
  font-weight: bold;
  font-size:1.55rem;
  color:#FFF;
  transition: color 0.4s ease;
  margin:20px -10px 10px;
}
.entreecata h2 span{
  transition: background 0.4s ease;
  background-position:0 0;
  background-repeat: no-repeat;
  background-size:100%;
  display:block;
  vertical-align:middle;
  width:60px;
  height:60px;
  margin:0 auto 10px;
}
.entreefrancais h2 span{background-image:url(/images/picto-entreefrancais.svg);}
.entreeexamen h2 span{background-image:url(/images/picto-entreeexam.svg);}
.entreeprofle h2 span{background-image:url(/images/picto-entreeprofle.svg);}
.entreeresider h2 span{background-image:url(/images/picto-entreeresider.svg);}
.entreesejours h2 span{background-image:url(/images/picto-entreesejours.svg);}
.entreeentreprise h2 span{background-image:url(/images/picto-entreeentreprise.svg);}

.entreecata .boutonnoir{
}
.bg-normal, .bg-hover {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transition: opacity 0.4s ease;
}
/* Image normale */
.bg-normal {
  background-image: url(/images/fond-entrees.svg);
  z-index: 1;
  opacity:1;
}
/* Image hover */
.bg-hover {
  opacity: 0;
  z-index: 2;
}
.entreefrancais .bg-hover{background-image: url(/images/fond-entreefrancais.svg);}
.entreeexamen .bg-hover{background-image: url(/images/fond-entreeexam.svg);}
.entreeprofle .bg-hover{background-image: url(/images/fond-entreeprofle.svg);}
.entreeresider .bg-hover{background-image: url(/images/fond-entreeresider.svg);}
.entreesejours .bg-hover{background-image: url(/images/fond-entreesejours.svg);}
.entreeentreprise .bg-hover{background-image: url(/images/fond-entreeentreprise.svg);}

@media (hover: hover) and (pointer: fine) {
  /* Au survol on révèle la 2e */
  .entreecata:hover .bg-hover {
    opacity: 1;
  }
  .entreecata:hover .bg-normal {
    opacity: 0;
  }
  .entreecata:hover .plus{
    transform: rotate(90deg);
  }
  .entreefrancais:hover .plus {color:#0c8e18;} 

  .entreefrancais:hover h2,
  .entreefrancais:hover .plus{color:#0c8e18;}

  .entreeexamen:hover h2,
  .entreeexamen:hover .plus {color:#1396c6;}

  .entreeprofle:hover h2,
  .entreeprofle:hover .plus {color:#e15646;}

  .entreeresider:hover h2 {color:#FFF;}
  .entreesejours:hover h2 {color:#FFF;}

  .entreeentreprise:hover h2,
  .entreeentreprise:hover .plus {color:#e15646;}

  .entreecata:hover h2 span{
    background-position:0 -60px;
  }
  .entreefrancais:hover .boutonnoir{background-color:#0c8e18;}
  .entreeexamen:hover .boutonnoir{background-color:#1396c6;}
  .entreeprofle:hover .boutonnoir{background-color:#e15646;}
  .entreeresider:hover .boutonnoir{background-color:#FFF;color:#64b0ad;}
  .entreesejours:hover .boutonnoir{background-color:#FFF;color:#ed7062;}
  .entreeentreprise:hover .boutonnoir{background-color:#e15646;}

}

#zonerouge,
#zonepourquoi,
#zonenormandie,
.home .bx-instawidget{
  margin-top:60px;
}

#zonerouge{
  color:#fff;
  background: #AA2D26; 
  background: linear-gradient(90deg,rgba(170, 45, 38, 1) 40%, rgba(135, 33, 27, 1) 100%);
  padding:40px 0 160px;
}
#zonerouge .video{
  padding:20px;
  background:url(/images/cadre-haut-gauche-blanc.png) no-repeat left top;
  max-width:600px;
  margin:0 auto;
}
#zonerouge .content{
  max-width:600px;
  margin:0 auto;
}
#zonerouge .bienvenue{
  padding:0 20px;
}
#zonerouge h3{
  color: #fff;
  font-weight: bold;
  font-size: 1.8rem;
}
#container #zonerouge .bienvenue li:before{
  background:#fff;
  width: 10px;
  height: 10px;
}
#zonerouge h4{
  font-size:1.4rem;
  color:#FFF;
}
#zonerouge .lienscentres{
  padding:0 20px;
}
#zonerouge .boutonnoir{
  overflow: hidden;
  z-index: 0;
  overflow: hidden;
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  transition:color 0.3s ease-out;
}
#zonerouge .boutonnoir:before{
  content:"";
  position: absolute;
  z-index: -1;
  inset:0;
  transform: scaleX(0);
  transition:transform 0.3s ease-out;
  background:#2B2B2B;
}
#container #zonerouge .lienscentres li::before{
  display:none;
}
#container #zonerouge .lienscentres li{
  padding:0;
  margin:0 10px 10px 0;
  display: inline-block;
}
#zoneactus{
  background:url(/images/bg-zoneactus.svg) no-repeat center top;
  background-size: 100%;
  padding: 100px 0 0;
  margin:-120px 0 0;
  position: relative;
}
#zoneactus:after{
  content:"";
  display: block;
  background:url(/images/oblique-blanc-bas-vers-haut.svg) no-repeat center bottom;
  background-size: 100%;
  bottom: -1px;
  position: absolute;
  z-index: 1;
  left: 0;
  width:101%;
  height:200px;
}
#zoneactus .contentactus{
  background:#efefef;
  padding-bottom:100px;
}
#zoneactus .innerhome{
}
#zoneactus .h1{
  margin-top:0;
}
.widgetprog{
  max-width: 600px;
  margin:0 auto 50px;
}
.widgetprog .title{
  color:#126a6d;
  font-size: 1.5rem;
  font-family: "Poppins";
  font-weight: bold;
  margin:0 0 20px;
}
#container .widgetprog .widgetLastElementsPicture img{
  border-radius: 0;
  width: 100%;;
}
.widgetprog .content{
  background-color: #126a6d;
  color:#FFF;
  padding:20px;
}
.widgetprog .content .h3{
  margin:0;
  color:#fff;
  font-size:1.2rem;
  font-family: "Inter";
  font-weight:bold;
}
.widgetprog .content .date{
  font-size:1.1rem;
}
.widgetprog .widgetLastElementsDescription p{
  display:none;
  margin:0;
  font-size:0.9rem;
}
.widgetprog .widgetLastElementsDescription p:first-of-type{
    display: block;
}
.widgetprog .liensaison{
  background-color: #126a6d;
  padding:0 20px 30px;
}
.widgetprog .liensaison a{
  background:#003f41;
  color:#d4e7e8;
  font-weight: bold;
  font-size:1.05rem;
  border-radius: 6px;
  display: inline-block;
  padding:8px 45px 8px 24px;
  position: relative;
  transition: all ease 0.2s;
}
.widgetprog .liensaison a:after{
  content:"+";
  display:block;
  position: absolute;
  right:10px;
  top:8px;
  font-size:2rem;
  color: #d4e7e8;
  transition:transform 0.2s ease;
  transform-origin: center;
}

.homeactus{
  margin:0 auto 50px;
  max-width:600px;
}
.homeactus .owl-stage-outer{
  background:#FFF;
  border-radius: 6px;
}
.homeactus .slide{
    padding:20px;
}
.homeactus .titreactu{
  color:#DB0027;
  font-weight: bold;
  font-size:1.4rem;
  margin:20px 0;
}
.actuautres{
}
.liendelf,
.lienagenda{
  max-width:325px;
  z-index: 2;
  position: relative;
  margin: 0 auto 30px;
}
.liendelf p,
.lienagenda p{
  margin: 0;
}
.liendelf a,
.lienagenda a{
  display: block;
  height:145px;
  font-size: 1.4rem;
  font-family: "Poppins";
  text-decoration: none;
  font-weight: bold;
  padding-top:20px;
  padding-left: 20px;
  line-height: 1.6em;
  position: relative;
  transition:all ease-in 0.3s;
}
.liendelf a{
  background:url(/images/logo-delfdalfblanc.png) no-repeat 90% center #1e3261;
  color:#9ab7d1 !important;
  padding-right: 140px;
}
.lienagenda a{
  background:url(/images/bg-agendaetudiants.webp) no-repeat center center;
  background-size: 100%;
  color:#fff !important;
  padding-right: 60px;
  position: relative;
}
.lienagenda a:after{
  content:"+";
  display:block;
  position: absolute;
  right:20px;
  top:55px;
  font-size:2.2rem;
  color: #FFF;
  transition:transform 0.2s ease;
  transform-origin: center;
}
.liendelf a:hover,
.lienagenda a:hover{
  text-decoration:none !important;
}
.liensreseaux{
  position: relative;
  z-index: 2;
  text-align: center;
}
.liensreseaux a{
  display: inline-block;
  margin:0 5px;
  transition:transform ease-in 0.5s;
}
@media (hover: hover) and (pointer: fine){
  .liensreseaux a:hover{
    transform:rotate(-360deg);
    transition:transform ease-in 0.5s;
  }
  .liendelf a:hover{
    background-color:#0d1f48;
  }
  .lienagenda a:hover{
    background-size:110%;
  }
  .widgetprog .liensaison a:hover::after,
  .lienagenda a:hover::after{
    transform: rotate(90deg);
    will-change: transform;
    backface-visibility: hidden;
  }
  .widgetprog .liensaison a:hover{
    background-color:#003234;
    text-decoration: none;
  }
  #zonerouge .boutonnoir:hover::before{
    transform:scaleX(1);
  }
}

#zonepourquoi{
  background: #2B2B2B;
  color:#fff;
  padding:10px 0 30px;
  font-family: "Poppins";
}
#zonepourquoi h2{
  font-weight: bold;
  color:#fff;
  background:url(/images/soulignement-rouge-titre.svg) no-repeat center bottom;
  padding-bottom:30px;
  margin:40px 0;
  font-size:1.5rem;
}
.parcequelist{
  margin:0 auto;
  max-width:260px;
  text-align: center;
  font-weight:bold;
}
.parceque{
    margin:0 0 30px;
    color:#fff;
}
.parceque a{
  color:#fff !important;
}

#zonenormandie{
}
.normandieimg img{
  border-radius:5px; 
}
.normandiepresentation{
  color:#FFF;
  max-width:588px;
  margin:20px auto 0;
}
.topnormandiepresentation,
.bottomnormandiepresentation{
  height:10px;
}
.topnormandiepresentation{
  background:url(/images/fond-normandie-top.svg) no-repeat left 1px;
  background-size:cover;
}
.bottomnormandiepresentation{
  background:url(/images/fond-normandie-bottom.svg) no-repeat left top;
  background-size:cover;
}
.innormandiepresentation{
  background:url(/images/fond-normandie-centre.svg) repeat-y left top;
  background-size:100%;
  padding:20px 30px;
}
.normandiepresentation .h3{
  color:#FFF;
  font-size:24px;
  font-weight:bold;
  text-transform:none;
  margin:0 0 20px;
  max-width: 380px;
}
.normandiepresentation p em{
  font-family:"Caveat";
  font-size:26px;
}
.normandielien a{
  display:block;
  font-family:"poppins";
  font-weight:bold;
  position: relative;
}
.normandielien a:after{
  content:"+";
  display:block;
  position: absolute;
  right:0;
  top:5px;
  font-size:2rem;
  color: #fff;
  transition:transform 0.2s ease;
  transform-origin: center;
}
@media (hover: hover) and (pointer: fine) {
 .normandielien a:hover::after{
  transform: rotate(90deg);
  will-change: transform;
  backface-visibility: hidden;
 }
 .normandielien .boutonnoir:hover{
  background:#7e1402;
 }
}

/* ----------------------------------------------------------------------------------------
Accueil Centres - preformate 32
-------------------------------------------------------------------------------------------*/
.homecentre #heading{
  height:600px;
}
.homecentre .breadcrumb{
  display:none;
}
.homecentre #heading:after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 80%; /* hauteur de l’ombre */
  pointer-events: none; /* pour ne pas bloquer les clics */
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0,0,0,0.2) 20%,
    rgba(0,0,0,0.5) 70%,
    rgba(0, 0, 0, 0.9) 100%
  );  
}
.presentationville{
  background:#F2F2F2;
  margin:60px -50vw;
  padding:50px 50vw 0;
}
.presentationville h2{
  font-size:1.6rem;
  font-weight:bold;
  margin:0 0 40px;
  background:url(/images/soulignement-rouge-titre.svg) no-repeat left bottom;
  padding-bottom:30px;
  text-align:left;
}
.linkcentres{
  margin:20px 0;
}
.linkcentres ul{
  margin:0;
}
.linkcentres li{
  display: inline-block;
}
#container .linkcentres ul li:before{
  display:none;
}
#container .linkcentres ul li{
  padding:0;
  margin:20px 15px 0 0;
}
.presentationville .villeright{
  margin:60px -30px 0;
}
.carteville{
  text-align:center;
  position:relative;
  padding:0 15px;
}
.carteville .oblique{
  height:72px;
  position:absolute;
  width:110%;
  bottom:-1px;
  left:-5%;
  background:url(/images/oblique-gris-bas-vers-haut.svg) no-repeat center bottom;
}
.pourquoiville{
  background:#2B2B2B;
  color:#FFF;
  padding:40px 30px 20px;
}
.titrepourquoi,
.titrecontact{
  font-family:"Poppins";
  font-size:1.3rem;
  font-weight:bold;
  line-height:1.4em;
}
.pourquoiville a,
.pourquoiville a:visited{
  color:#FFF;
}
.pourquoiville a:hover{
  color:#2B2B2B;
}
#container .pourquoiville ul li{
  padding:6px 0 6px 25px;
}
#container .pourquoiville ul li:before{
  content:"+";
  border-radius:0;
  background:none;
  color:#FFF;
  width:auto;
  height:auto;
  top:8px;
  font-family:"Poppins";
  font-size:25px;
  font-weight:bold;
}
.bottomville .villeleft{
  margin: 0 0 40px;
}
.bottomville .villeright{
  background:url(/images/cadre-haut-gauche.png) no-repeat left top;
  position:relative;
  padding:20px;
  text-align:center;
  margin:0 auto;
  max-width:400px;
}
.bottomville .villeright:after{
  content:"";
  width:101px;
  height:117px;
  position:absolute;
  right:0;
  bottom:0;
  display:block;
  background:url(/images/cadre-bas-droite.png) no-repeat right bottom;
}
.titrecontact{
  color:#DB0027;
  margin:10px 0 20px;
}
.bottomville .villeright p:last-child{
  margin-bottom:0;
}

/* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
PARTIE CATALOGUE
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*.pagediplomes #heading{
  background:url(/images/bandeau-diplomes-et-tests2.jpg) no-repeat center center;
  background-size:cover;
}
.pagediplomes.catalogProductDetail #heading{
  background:#000;
}*/
.catalogProductDetail #mainboxes{
  display:none;
}
.produitssejours.catalogProductDetail #mainboxes{
  display:block;
}
/* ----------------------------------------------------------------------------------------
LISTE DES FAMILLES
-------------------------------------------------------------------------------------------*/
.families{
  margin:40px auto;
  max-width:680px;
}
.accueilformations .families{
  margin-top:60px;
}
.accueildiplomes .shortproducts{
  max-width:900px;
  display:block;
  margin:50px auto 40px;  
} 
.accueilcours .familly{
  background:url(/images/bg-picto-famille.png) no-repeat center top;
  padding-top:110px;
  position:relative;
}
.accueilcours .familly:before{
  content:"";
  position:absolute;
  width:94px;
  height:94px;
  display:block;
  left:50%;
  transform:translateX(-50%);
  top:0;
  background-repeat:no-repeat;
  background-position:center center;
}
.familly.francaisgeneral:before{background-image:url(/images/famille-francaisgeneral.svg)}
.familly.prepaexams:before{background-image:url(/images/famille-prepaexams.svg)}
.familly.ateliersfrancais:before{background-image:url(/images/famille-ateliersfrancais.svg)}
.familly.objectifsspe:before{background-image:url(/images/famille-objectifsspe.svg)}
.familly.francaisculture:before{background-image:url(/images/famille-francaisculture.svg)}
.familly.coursparticuliers:before{background-image:url(/images/famille-coursparticuliers.svg)}
.familly.coursdusoir:before{background-image:url(/images/famille-coursdusoir.svg)}
.familly.cycleenseignement:before{background-image:url(/images/famille-enseignement.svg)}
.familly.cyclepilotage:before{background-image:url(/images/famille-pilotage.svg)}

.famillyContainer,
.accueildiplomes .short_product{
  background:url(/images/separateur-familles.svg) no-repeat center bottom;
  padding:0 0 30px;
  margin:0 0 30px;
  text-align:center;
  width:auto;
}
.accueildiplomes .short_product .specialRate{
  display:none;
}
.familly:last-child .famillyContainer,
.accueildiplomes .short_product:last-child{
  background:none;
}
.accueilcours .infamillyContainer{
  padding:0 0 10px;
  text-align: center;
}
.accueilformations .infamillyContainer h2{
  text-align: center;
}
.accueilformations .familly > img{
  margin:0 0 20px;
}
.famillyContainer h2{
  margin:0 0 10px;
}
.famillyContainer h2 a{
  color:#2B2B2B;
}
.famillyContainer h2 a:hover{
  color:#67C1A2;
}
#famillyDescription p{
  margin:0;
}
/* ----------------------------------------------------------------------------------------
FICHES RESUMEES
-------------------------------------------------------------------------------------------*/
.descriptionmethodCat{
  max-width:950px;
  margin:0 auto;
}
.catalogProductsList.sousfamillediplomes #heading{
  background:url(/media/bandeau-examens-2023.jpg) no-repeat center center;
}
.catalogProductsList.produitscours .catalog > h1:after,
.catalogProductsList.produitsformations .catalog > h1:after{
  content:"";
  display:inline-block;
  vertical-align:middle;
  width:50px;
  height:45px;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:contain;
  margin-left:20px;
}
.catalogProductsList.francaisgeneral .catalog > h1:after{background-image:url(/images/famille-francaisgeneral.svg)}
.catalogProductsList.prepaexams .catalog > h1:after{background-image:url(/images/famille-prepaexams.svg)}
.catalogProductsList.ateliersfrancais .catalog > h1:after{background-image:url(/images/famille-ateliersfrancais.svg)}
.catalogProductsList.objectifsspe .catalog > h1:after{background-image:url(/images/famille-objectifsspe.svg)}
.catalogProductsList.francaisculture .catalog > h1:after{background-image:url(/images/famille-francaisculture.svg)}
.catalogProductsList.cycleenseignement .catalog > h1:after{background-image:url(/images/famille-enseignement.svg)}
.catalogProductsList.cyclepilotage .catalog > h1:after{background-image:url(/images/famille-pilotage.svg)}

.catalogProductsList.coursparticuliers .catalog > h1:after{background-image:url(/images/famille-coursparticuliers.svg)}
.catalogProductsList.coursdusoir .catalog > h1:after{background-image:url(/images/famille-coursdusoir.svg)}

#famillyPresentation{
  text-align:center;
  margin-bottom:40px;
}
.familly #famillyDescription a{
  text-decoration:none;
}
#famillyDescription a{
  text-decoration:underline;
}
#famillyDescription a:hover{
  color:#DB0027;
}
.sousfamillediplomes #famillyPicture{
  padding:0 0 25px;
}
.sousfamillediplomes #famillyPicture img{
  max-width:300px;
}
.short_product{
  margin:30px auto;
  max-width:680px;
  padding:10px 25px 20px;
  position:relative;
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
}
.produitscours .short_product{background-image:url(/images/fond-produitscours.svg);}
.produitsformations .short_product{background-image:url(/images/fond-produitsformations.svg);}
.produitsdiplomes .short_product{background-image:url(/images/fond-produitsdiplomes.svg);}
.produitscpf .short_product{background-image:url(/images/fond-produitscours.svg);}
.produitscpf .shortdiplome{background-image:url(/images/fond-produitsdiplomes.svg);}

.short_product .new{
  height:24px;
  width:80px;
  background-repeat:no-repeat;
  background-size:contain;
  display:inline-block;
  vertical-align:middle;
  background-position:center center;
  margin-left:5px;
}
#product .new{
  height:30px;
  width:100%;
  vertical-align:middle;
  background-repeat:no-repeat;
  background-position:center center;
  margin:30px 0 -10px;
}
.fr .short_product .new,
.fr #product .new{background-image:url(/images/picto-nouveau.gif);}
.en .short_product .new,
.en #product .new{background-image:url(/images/picto-new.gif);}
.es .short_product .new,
.es #product .new{background-image:url(/images/picto-nuevo.gif);}
.cn .short_product .new,
.cn #product .new{background-image:url(/images/picto-newcn.gif);}

 .short_product .pictocpf{
  display:none;
 }
.fr .short_product .pictocpf{
  display:block;
  width:35px;
  /*background:none;*/
}

.shortprodimg{
  position:relative;
  text-align:center;
}
.shortdiplome .shortprodimg{
}
.shortdiplome .shortprodimg img{
  display:none;
}
.accueildiplomes .shortdiplome .shortprodimg{
  padding:10px 0 25px;
  text-align:center;
}
.accueildiplomes .shortdiplome .shortprodimg img{
  display:inline-block;
  max-width:300px;
}
.accueildiplomes .shortinfocentre{
  display:none;
}
.shortquickinfos,
.shortinfocentre{
  margin:0;
  font-size:13px;
  padding-right:35px;
}
.shortquickinfos ul,
.shortinfocentre ul{
  margin:0;
}
#container .shortquickinfos li:before,
#container .shortinfocentre li:before{ 
  display:none;
}
#container .shortquickinfos li,
.shortinfocentre ul{
  padding:2px 8px 2px 28px;
}
#container .shortinfocentre li{
  padding:0;
}
.shortinfocentre ul li{
  display:inline-block;
}
.shortinfocentre li:after{
  content:",";
  display:inline-block;
  padding:0 2px 0 0;
}
.shortinfocentre li:last-child:after{
  display:none;
}
.shortquickinfos li,
.shortinfocentre ul{
  margin:5px 3px 0 0;
  display:inline-block;
  background-repeat:no-repeat;
  background-position:5px center;
  border-radius:5px;  
}
.shortinfocentre ul{
  background-image:url(/images/picto-localisation.svg);
  background-size:16px; 
}

.produitscours .shortquickinfos li,
.produitscours .shortinfocentre li,
.produitscours .shortinfocentre ul,
.produitscpf .shortquickinfos li{background-color:#BCD9A1;}
.produitsformations .shortquickinfos li,
.produitsformations .shortinfocentre ul{background-color:#FABDBD;}
.produitsdiplomes .shortquickinfos li,
.produitsdiplomes .shortinfocentre ul,
.produitscpf .shortdiplome .shortinfocentre ul{background-color:#BDDAED;}

.shortquickinfos li.shortvolume{background-image:url(/images/picto-duree.svg);background-size:16px;}
.shortquickinfos li.shortnb{background-image:url(/images/picto-etudiants.svg);background-size:20px;}

.shortdescription{
  margin-bottom:10px;
}
.shortdescription p{
  margin:0;
}
.shortdescription h2{
    margin:10px 0 10px;
    color:#2B2B2B;
    font-size:18px;
    text-align:left;
    font-weight:bold;
}
.accueildiplomes .shortdescription h2{
  text-align:center;
  margin:0 0 10px;
  font-size:22px;
  font-weight:500;
}
.accueildiplomes .shortdescription h2 a:hover{
  color:#DB0027;
}
.shortdescription h2 a{
  color:#2B2B2B;
  padding-right:5px;
  display:inline-block;
  transform-origin:left center;
  transform: perspective(1px) translateZ(0);
}
.shortdescription h2 a:hover{
  transform:scale(1.05);  
}
.shortview{
  position:absolute;
  right:15px;
  bottom:15px;
}
.accueildiplomes .shortview{
  position:relative;
  right:inherit;
  bottom:inherit;
}
/* ----------------------------------------------------------------------------------------
FICHES DETAILLEES
-------------------------------------------------------------------------------------------*/
.catalogProductDetail .h1searchcata{
  display:none;
}
.imgpicto{
  text-align:center;
  display:block;
  width:100%;
  margin:-15px 0 0;
}
.productcoursenligne{
  position:relative;
}
.productcoursenligne .new{
 position:absolute;
 right:0;
 top:0;
 width:100px !important;
}
.productcoursenligne .introcours{
  text-align:center;
  width:100%;
}
.productcoursenligne .introcours a{
  text-decoration:underline;
}
.productcoursenligne .introcours a:hover{
  color:#DB0027;
}
#prodpresta{
  text-align:center;
  padding:30px 0;
  max-width:80%;
  margin:0 auto;
  font-size:1.1em;
  line-height:160%;
}
#products > h1:first-of-type{
  display:none;
}
#product{
}
.diplomeimg{
  text-align:center;
  position:relative;
}
.diplomeimg img{
  max-width:300px;
}
#prodpictos{
  width:100%;
}
  #prodpictos a{
    color:#686868 !important;
  }
  #prodpictos strong{
    font-size:15px;
  }
  #prodpictos p,
  #prodpictos ul{
    margin:0;
  }
  #prodpictos > ul{
    padding:0 0;
    text-align:center;
  }
  #container #prodpictos > ul > li{
    padding:0 10px; 
  }
  #prodpictos > ul > li{
    min-height:76px;
    margin-bottom:20px;
    display:inline-block;
    vertical-align:top;
    width:190px;
    text-align:center;   
  }
  #container #prodpictos ul ul li:before{
    display:none;
  }
  #container #prodpictos ul ul li{
    padding:0;
    display:inline-block;
  }
  #prodpictos ul ul li:after{
    content:",";
    display:inline-block;
    padding-right:4px;
  }
  #prodpictos ul ul li:last-child:after{
    display:none;
  }
  #container #prodpictos > ul > li:before{
    width:76px;
    height:76px;
    background-color:#7BCB97;
    background-position:center center;
    background-repeat:no-repeat;
    border-radius:50%;
    display:inline-block;
    position:relative;
    left:inherit;
    margin:0 0 10px;
  }
  .produitscours #container #prodpictos > ul > li:before{background-color:#E2F1D3;}
  .produitsformations #container #prodpictos > ul > li:before{background-color:#F6D3D3;}
  .produitsdiplomes #container #prodpictos > ul > li:before,
  .accueildiplomes #container #prodpictos > ul > li:before{background-color:#D2EAF9;}
  
  .produitsformations #container #prodpictos li.pictoprofle:before{background-image:url(/images/picto-profle2026.svg);/*background-color:#2B2B2B;*/}
  #container #prodpictos li.pictolocalisation:before{background-image:url(/images/picto-localisation.svg);}
  #container #prodpictos li.pictocomodalite:before{background-image:url(/images/picto-comodalite.svg);background-size:65%;background-color:#DA002E;}
  #container #prodpictos li.pictoduree:before{background-image:url(/images/picto-duree.svg);}
  #container #prodpictos li.pictoniveaux:before{background-image:url(/images/picto-niveau.svg);}
  #container #prodpictos li.pictoetudiants:before{background-image:url(/images/picto-etudiants.svg);}
  #container #prodpictos li.pictoquoi:before{background-image:url(/images/picto-quoi.svg);}
  #container #prodpictos li.pictoreussite:before{background-image:url(/images/picto-reussite.svg);}
  #container #prodpictos li.pictotarif:before{background-image:url(/images/picto-prix.svg);}

#prodleft{
  padding:30px 0 0;
}
.bloctxt{
  padding:0;
}
  .bloctxt .bouton{
    margin:10px 0;
  }
  .bloctxt p{
    margin:10px 0;
    text-align:justify;
  }
  .bloctxt a,
  .bloctxt a:visited,
  .bloctxt a:hover,
  .bloctxt a:active{
    color:#2B2B2B;
    text-decoration:underline;
  }
  .bloctxt ul{
    margin:7px 0;
  }
  .bloctxt .title{
    margin:0 0 15px;
    font-size:20px;
    font-family:"Poppins";
    font-weight:bold;
  }
  .bloctxt table{
    margin:5px 0 10px;
    font-size:14px;
    text-align:left;
  }
  .bloctxt th{
    background:#F8F8F8;
    color:#2B2B2B;  
  }
.principaltxt{
  background:url(/images/fond-texteprincipal-products.svg) no-repeat left top;
  background-size:cover;
  padding:30px 20px 15px;
}
.secondairetxt{
  padding:40px 20px 0;
}
.principaltxt blockquote{
  border-top:3px dotted #2B2B2B;
  border-bottom:3px dotted #2B2B2B;
  background:none;
  max-width:inherit;
  padding:10px 0 10px 0;
  font-family:inherit;
  font-size:inherit;
  line-height:inherit;
  border-radius:0;
}
.principaltxt blockquote strong{
  font-size:15px;
  font-size:inherit;
}
#container .principaltxt blockquote ul li:before{

}
.pictoscomplementaires{
  border-top:1px solid #DFDFDF;
  border-bottom:1px solid #DFDFDF;
  margin:40px 20px 0;
  font-size:14px;
  line-height:1.5em;
  color:#686868;
}
.pictoscomplementaires p{
  margin:0;
}
.pictoscomplementaires p strong,
.pictoscomplementaires p b{
  font-size:15px;
  color:#2B2B2B;
}
  #container .pictoscomplementaires > ul > li{
    padding:20px 0 20px 75px; 
  }
  #container .pictoscomplementaires > ul > li:before{
    width:70px;
    height:64px;
    background-color:transparent;
    background-position:center center;
    background-repeat:no-repeat;
    top:10px;
  }   
  #container .pictoscomplementaires li.pictoadmission:before{background-image:url(/images/picto-admission.svg);}
  #container .pictoscomplementaires li.pictomanuel:before{background-image:url(/images/picto-manuel.svg);}
  #container .pictoscomplementaires li.pictoclassevirtuelle:before{background-image:url(/images/picto-classevirtuelle.svg);}
  #container .pictoscomplementaires li.pictocertificat:before{background-image:url(/images/picto-certificat.svg);}
  
#prodright{
  padding:40px 0;
  position:relative;
  max-width:500px;
  margin:0 auto;
}
#prodright .specialRate{
  margin:0 0 40px;
}
#prodright .specialRate span{
  position:absolute;
  right:0;
  top:5px;
}
.short_product .specialRate,
.short_product .specialRate{
  position:absolute;
  right:-15px;
  top:-15px;
}
.shortprodimg .specialRate{
  line-height:100%;
}
#product h1 .pictoeco{
  padding-left:5px;
}
#product h1 > .specialRate{
  display:inline-block;
  margin:-4px 0 0 10px;
}
.specialRate span{
  display:inline-block;
  background:#DA002E;
  color:#FFF;
  font-weight:bold;
  font-family:"Poppins";
  font-size:18px;
  text-align:center;
  width:60px;
  line-height:60px;
  border-radius:50%;
}
.prodshare{
  text-align:center;
  font-size:14px; 
}
  .prodshare p{
    font-style:italic;  
  }
  .prodshare ul,
  .prodshare p{
    margin:10px 0;
  }
  #container .prodshare ul li:before{
    display:none;
  }
  #container .prodshare ul li{
    padding-left:0;
    padding-right:0;
    margin:0 5px;
    display:inline-block;
  }
.diplomeimg,
.blocinscription,
.prodfocus,
.proddecouvrez{
  margin:20px 0;
}
.blocinscription{
  background:#DA002E;
  color:#FFF;
  padding:20px;
}
  .titreinscription{
    font-size:30px;
    font-weight:normal;
    font-family:"Caveat";
    margin:0 0 20px;
  }
  .blocinscription label{
    font-weight:normal;
  }
  .blocinscription .row input,
  .blocinscription select{
    border:0 none;
  }
  .blocinscription .row > label{
    font-weight:normal;
    display:block;
    padding:0;
  }
  .blocinscription .row select{
    width:100%;  
  }
  .blocinscription select,
  .blocinscription input{
    background:#FFF;
  }
  .blocinscription .row{
    margin:0;
  }
  .blocinscription .row select{
    margin:5px 0 10px;
  }
  .prodprix{
    margin-bottom:10px;
  }
  .defautprice{
    display:none;
  }
  .defautprice.old_price{
    display:inline-block;
    text-decoration:line-through;
    opacity:0.8;
  }
  .total_price{
    font-weight:bold;
    font-size:18px;
  }
  .prodcours .blocinscription .rowqte{
    display:none;
  }
  .blocinscription .rowqte{
    display:inline-block;
    vertical-align:middle;
    margin:0 10px 0 0;
  }
  .blocinscription .rowqte > label{
    display:inline-block;
    margin:0 5px 0 0;
  }
  .blocinscription .rowqte select{
    display:inline-block;
    width:auto;
  }
  .blocinscription .panier{
    vertical-align:middle;
    display:inline-block !important;
  }
  .addToCart{
    margin:20px 0 0;
  }
  .addToCart a{
    background:#A00122;
    text-transform:uppercase;
  }
  .addToCart a:before{
    background:#89011D;
  }
  .blocinscription .stock_in{
    display:none;
  }
  .blocinscription .stock_out{
    font-style:italic;
    margin:15px 0 10px;
    display:block;
    border:1px solid #FFF;
    padding:5px;
  }
  #prodright .customisedfieldset,
  #prodright .datechoisie{
    display:none;
  }
  #prodright .ville_choisie{
    display:none;
  }  
  #prodright .customisedfieldset,
  #prodright .datechoisie{
    display:none;
  }
.proddevis{
  background:#2B2B2B;
  width:100%;
  margin:0 0 30px;
  color:#FFF;
  padding:20px;
}
  .proddevis p,
  .proddevis ul{
    margin:15px 0;
  }
  .proddevis p:first-child{
    margin-top:5px;
  }
  .proddevis p:last-child{
    margin-bottom:5px;
  }
  .proddevis p strong{
    font-size:26px;
    font-weight:normal;
    font-family:"Caveat";
  }
  .proddevis a{
    background:#DCDBDB;
    color:#2B2B2B !important;
    margin-top:5px;
  }
  .proddevis a:before{
    background:#F1F0F0;
  }
.inscriptioncpf{
  background:url(/images/picto-bloccpf.png) no-repeat 95% 13px #164194;
  background-size:70px;
  color:#FFF;
  padding:20px;
  margin:20px 0;
}
.inscriptioncpf p{
  margin:10px 0;
}
.inscriptioncpf p a{
  color:#FFF;
  text-decoration:underline;
  font-style:italic;
}
.inscriptioncpf .row{
  margin:10px 0;
}
.inscriptioncpf .row label{
  font-weight:normal;
  padding:0 0 5px;
}
.inscriptioncpf .row select{
  width:100%;
  border:0 none;
}
.inscriptioncpf a.liencpf{
  background:#011F5B;
}
.inscriptioncpf a.liencpf:before{
  background:#022771;
}
.liencpfdiplome{
  display:none;
  margin:25px 0 5px;  
}
.inscriptioncpf .liencpfunique{
  margin:10px 0;
}
#prodright .lienscomplementaires .title{
  margin:40px 0 20px;
  padding-bottom:20px;
  background:url(/images/soulignement-gris-titre.svg) no-repeat center bottom;
  font-size:20px;
  font-family:"Poppins";
  Font-weight:bold;
  text-align:center;  
}
#prodright .lienscomplementaires p{
  margin:0 0 15px;
}
#prodright .lienscomplementaires a{
  background:url(/images/fond-dechire-small-bleuclair.svg) no-repeat center bottom;
  background-size:cover;
  display:block;
  padding:10px 20px;
  text-align:center;  
}
#prodright .lienscomplementaires a:hover,
#prodbottom .lienscomplementaires p:hover{
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}
#prodbottom{
  width:100%;
}
#prodbottom .title{
  margin:20px 0 40px;
  font-size:20px;
  font-family:"Poppins";
  Font-weight:bold;
  text-align:center;
}
#prodbottom .lienscomplementaires{
  background:url(/images/separateur.svg) no-repeat center top;
  padding-top:30px;
  padding-bottom:30px;
}
#prodbottom .lienscomplementaires p{
  background:url(/images/fond-dechire-small-grisclair.svg) no-repeat left top;
  background-size:cover;
  text-align:center;
  transition:all ease-in 0.1s;
}
#prodbottom .lienscomplementaires p a{
  display:block;
  padding:10px 20px;
}
.prodreferencement{
  color:#6F6F6F;
  width:100%;
  font-size:14px;
  font-style:italic;
  text-align:center;  
}
.prodtemoignage{
  margin-top:30px;
  padding:20px;
  text-align:center;
  background:url(/images/cadre-haut-gauche.png) no-repeat left top;
  position:relative;
}
.prodtemoignage:after{
  background:url(/images/cadre-bas-droite.png) no-repeat center center;
  width:101px;
  height:117px;
  content:"";
  position:absolute;
  z-index:-1;
  right:0;
  bottom:0;
  display:block;  
}
.inprodtemoignage{
  background:#F4F4F4;
  padding:40px 30px 30px;
}
#prodbottom .prodtemoignage .title{
  margin:0 0 30px;
}
.letemoignage{
  font-size:14px;
}
.prodtemoignage p{
  margin:10px 0;
  font-style:italic;
}
.prodtemoignage p strong{
  font-style:inherit;
}
.prodtemoignage img{
  margin:0 0 10px 0;
}
.prodtemoignage img{
  border-radius:50%;
  max-width:150px;
}
/*Cours en ligne*/
#produitsAssocies{
  width:100%;
  margin:30px 0 20px;
  background:#F7F7F7;
  padding:20px 20px 1px;
}
#produitsAssocies .h3{
  color:#2B2B2B;
  margin-top:0;
}
#produitsAssocies .shortprodimg h2{
  font-size:18px;
}

/*Sejours*/
.produitssejours .catalog .short_product{}
.produitssejours .catalog .prodsejour .short_product_container{
  background:url(/images/fond-produitsejour.svg) no-repeat center center;
  background-size:cover;
  position:relative;
  padding:20px 30px 40px;
  margin-top:-8px;
}
.prodsejour{
  padding:0;
}
.prodsejour .picture img{
  width:100%;
}
/*.shortorganisez{
  background:url(/images/fond-shortorganisez.svg) no-repeat center;
  background-size:cover;
  position: relative;
  padding:0;
}
.shortorganisez .widgetContainer{
  padding:10px 50px 10px 30px;
}
.shortorganisez a{
  display:block;
  font-family:"Poppins" ;
  font-size:1.15rem;
  font-weight: bold;
  transform-origin: left center;
  transform:perspective(1px) translateZ(0);
  position:relative;
  z-index: 1;
}
.shortorganisez .widgetContainer:after{
  content:"+";
  display: block;
  position: absolute;
  right: 20px;
  bottom: 30px;
  font-family:"Poppins" ;
  font-size: 2.3rem;
  font-weight: bold;
  z-index: 3;
  transition: color 0.4s ease, transform 0.1s ease;
  width:30px;
  height:30px;
  text-align:center;
  line-height:30px;
  z-index: 0;
}
@media (hover: hover) and (pointer: fine) {
  .shortorganisez a:hover{
    transform:scale(1.05);
  }
  .shortorganisez .widgetContainer:hover:after{
     transform:scale(1.4);   
  }
}*/
.productsejour #introprod{
  text-align:center;
}
.productsejour .h2{
  text-align:left;
  font-weight:bold;
  margin: 0 0 20px;
}
.sejourresume{
  background:#fbefc9;
  padding: 30px 30px 20px 30px;
}
.sejourresume .title{
  font-family: "Poppins";
  font-size:1.3rem;
}
.sejourdesc p{
  font-style: italic;
}
.texte2{
  margin: 40px 0;
}
.blocgroupe{
  background: #2B2B2B;
  color:#FFF;
  padding:20px;
  margin:0 0 30px;
}
.blocgroupe p,
.blocgroupe ul{
  margin:10px 0;
}
#container .blocgroupe li::before{
  background:#FFF;
}
.productsejour #produits_associes .short_product{
  padding:0;
}
.productsejour .blocinscription{
  margin:0 0 30px;
}
/*Hebergements*/
.producthebergement{
  text-align:center;
  max-width:600px;
  margin:0 auto;
}
.producthebergement .boutonrouge{
  margin:20px auto;
}
.producthebergement .description{
  width: 100%;
}
#product .prodhotel .new{
  height:24px;
  width:80px;
  margin:0;
}
#container .prodhotel .pictureContainer img{
  border-radius:5px 5px 0 0;
  width:100%;
  transition: all ease-in-out 0.2s;
}
.prodhotel .picture{
  position: relative;
  overflow:hidden;
  border-radius:5px 5px 0 0;
}
@media (hover: hover) and (pointer: fine) {
  .prodhotel .pictureContainer a:hover img{
    scale: 1.1;
  }
}
.prodhotel .short_product_container{
  background:#F2F2F2;
  padding:20px;
  border-radius:0 0 5px 5px;
  position:relative;
}
.prodhotel .h3{
  margin:0 0 10px;
}
.prodhotel .h3 span{
  display: block;
}
.prodhotel .description{
  padding-right:40px;
}
.prodhotel .description p{
  margin:10px 0;
}
.prodhotel .boutonmore{
  position:absolute;
  right:10px;
  bottom:10px;
}

/* ----------------------------------------------------------------------------------------
AJOUT AU PANIER
-------------------------------------------------------------------------------------------*/
#overDiv{
  background:#FFF;
  padding:20px 20px 5px;
  box-shadow:0 0 5px rgba(0,0,0,0.5);
  font-size:18px;
  line-height:170%;
  min-width:300px;
  margin:-150px 0 0 -20px;
}
#overDiv p,
#overDiv ul{
  margin:0 0 10px;
}
.overlibcaption,
#overlibfooter{
  display:none;
}
.overlibclose{
  text-align:right;
}
.overlibclose a{
  display:inline-block;
  width:30px;
  height:30px;
  background:#2B2B2B;
  color:#FFF;
  text-align:center;
  font-size:20px;
  line-height:26px;
  border-radius:50%;
}
.overlibclose a:hover{
  color:#FFF;
}
#overlibcontent a{
  display:inline-block;
  font-family:"Poppins";
  text-transform:uppercase;
  color:#FFF;
  margin:8px 10px 8px 0;
  padding:8px 15px;
  font-weight:bold;
}
#overlibcontent a.add2cartConfirmationBack{
  background:#A00122;
}
#overlibcontent a.add2cartConfirmationCart{
  background:#DA002E;
}

/* ----------------------------------------------------------------------------------------
PANIER
-------------------------------------------------------------------------------------------*/
#emptyCart{
  text-align:center;
  font-weight:bold;
}
/*Steps*/
#container #steps{
  text-align:center;
  margin-bottom:30px;
}
#container #steps li{
  display:none;
  line-height:30px;
  height:30px;
  padding:0 0 0 40px;
  margin:0 20px 10px 0;
  opacity:0.4;
}
#container #steps li:before{
  width:30px;
  height:30px;
  border-radius:50%;
  background:#2B2B2B;
  line-height:30px;
  color:#FFF;
  top:0;
  left:0;
  text-align:center;
  font-family:"Poppins";
}
#container .step1:before{content:"1";}
#container .step2:before{content:"2";}
#container .step3:before{content:"3";}
#container .step4:before{content:"4";}
#container .step5:before{content:"5";}

#container #steps li.active{
  opacity:1;
  font-weight:bold;
  display:inline-block;
}
#container #steps li.active:before{
  background:#DA002E;
}

/*Elements communs*/
.selectacacher,
#del_adhesion,
#formcart .ordersActions .sign, #cart_payment_confirmation .sign,
#formcart table input.field, /*input quantit�*/
.supprimerinscription, /*Cacher le bloc inscription*/
.qte_adhesion select{
  display:none;
}
.cart table{
  display:table;
  max-width:900px;
  margin:30px auto 40px;
}
.cart table td,
.cart table th{
  padding:15px 10px;
  border:0 none;
}
.cart table th.thqte,
.cart table td.tdqte{
  padding:15px 0;
}
.cart table tr{
  border:1px solid #E3E3E3;
}
.cart table .infosenvoi td{
  text-align:left;
}
.cart .envoiintro{
  margin:0 0 10px;
}
.cart .envoiintro p{
  margin:5px 0;
  font-style:italic;
  font-size:0.95em;
}
.cart .envoiintro p u{
  font-style:italic;  
}
.cart .dhinfosenvoi p,
.cart .dhbothinfosenvoi p{
  font-style:italic;
  color:#DA002E;
  margin: 0 0 10px;  
}
.cart table p.info_envoi,
.cart table p.info_alliance{
  font-style:italic;
  color:#DA002E;
  padding:10px 0 0;
}
.cart table td p{
  margin:0;
}
.cart table th,
.trth td{
  background:#EAEAEA;
  color:#000;
}
.tdalignleft,
.tddelete{
  text-align:left;
}
.tdaligncenter{
  text-align:center;
}
a.deleteProduct{
  font-size:20px;
}
a.deleteProduct:before{
  font-family:'Font Awesome 5 Free';
  content:"\f2ed";
}
.cart table .trseparator,
.trseparator td{
  border-right-color:#FFF;
  border-left-color:#FFF;
}
#formcart .submit{
  text-align:center;
}
.amount .tdprice,
.ordersActions .tdprice{
  font-weight:bold;
  font-size:1.1em;
}
.acamount .tdleftotal{
  font-weight:bold;
  color:#DB0027;
}
.acamount .tdprice{
  color:#DB0027;
}
.currentcoupon{
  color:#13A2C6;
  font-weight:bold;
}
.submit .updatecartsubmit{
  background-image:url(/images/bg-updatecartsubmit.svg);
}
.submit .deletecartsubmit{
  background-image:url(/images/bg-deletecartsubmit.svg);
}
.submit .updatecartsubmit,
.submit .deletecartsubmit{
  background-size:20px;
  background-repeat:no-repeat;
  background-position:15px center;
  padding:10px 20px 10px 45px;
  font-size:14px;
  margin:0 5px 10px;
}
.submit .validcartsubmit{
  margin:20px 0 0;
  background-color:#DB0027;
}
/*specif lignes au style th*/
.trth td{
  text-align:left;
  font-weight:bold;
}
.trth .tdprice{
  text-align:right;
}
/*specif coupon*/
.tdcoupon{
  text-align:right;
}
.tdcoupon .row{
  margin-bottom:0;
}
.tdcoupon .row,
.tdcoupon .submit{
  display:inline-block;
}
.tdcoupon .row input{
  max-width:100px;
  padding:5px 10px;
}
.tdcoupon .submit input{
  padding:8px 12px;
  font-size:14px;
}
/*Colonne nom produit*/
.thproduct{
  text-align:left;
}
.tdproduct .row{
  margin-bottom:0;
}
.tdproduct .infoscustomised .label,
.tdproduct .row label{
  margin-top:5px;
}
.tdproduct .label,
.tdproduct .row label{
  font-weight:normal;
  padding:0;
}
.tdproduct .infoscustomised span,
.tdproduct .label,
.tdproduct .row label,
.tdproduct .row span{
  display:inline-block;
  margin-top:5px;
  vertical-align:top;
}
.tdproductname{
  font-weight:bold;
  text-transform:uppercase;
}
/*Colonne prix*/
.tdprice,
.thprice{
  text-align:right;
}
.tdprice .normalPrice{
  text-decoration:line-through;
  opacity:0.7;
}
/*Ligne hebergement*/
.infosheb{
  text-align:left;
}
.infosheb fieldset{
  max-width:600px;
}
.infosheb fieldset .row{
  margin-bottom:15px;
}
.infosheb label em{
  font-weight:normal;
  display:block;
}
#formcart .infosheb .submit{
  text-align:left;
  padding-bottom:20px;
}
.infosheb .submit input{
  padding:10px 20px 10px 45px;
  font-size:14px;
  background:url(/images/bg-check.svg) no-repeat 15px center;
  background-size:20px;
  background-color:#2B2B2B;
}
.infoscustomised.detailheb{
  display:block !important;
}
/*inscription dans le panier*/
.cart .accountform .formandfootform{
  margin-top:0;
}
/*etape 3 adresses*/
.address{
  background:#F2F2F2;
  max-width:560px;
  margin:30px auto;
  padding:20px 20px;
}
.address .h2{
  margin-top:10px; 
}
.address a{
  display:block;
  text-decoration:underline;
}
.address a:hover{
  text-decoration:underline;
  color:#DA002E;
}
#cartAddress .submit{
  text-align:center;
}
.manage_address h3{
  text-align:center;
}
#adresseselectionform fieldset{
  text-align:center;
}
#adresseselectionform .row.adresses{
  background:#F2F2F2;
  margin:0 0 20px;
  text-align:left;
  padding:20px 20px 20px 40px;
  position:relative;
}
#adresseselectionform .row.adresses input{
  position:absolute;
  top:29px;
  left:15px;
}
#adresseselectionform .row.adresses label{
  text-transform:uppercase;
  font-size:1.1em;
}
#adresseselectionform .row.adresses a:before{  
  font-family:'Font Awesome 5 Free';
  padding-right:5px;
  content:"\f044";  
}
#adresseselectionform .submit{
  margin:10px 0 30px;
}
.manage_address .accountform fieldset{
  margin-top:20px;
}
/*etape 4 selection paiement*/
#cartleft table{
  margin:20px 0 30px;
}
#cartleft .address h3{
  color:#2B2B2B;
  margin-top:5px;
}
#cartleft .bouton{
  padding:10px 16px;
}
#cart_order_confirmation .address{
  max-width:inherit;
  margin:40px auto 20px;
}
#cartright .row label{
  cursor:pointer;
}
#acompte_module input[type=radio],
#payment_module input[type=radio]{
  float:left;
  margin:10px 0 0;
} 
#acompte_module {
	background: #2B2B2B;
	padding: 5px 20px 10px;
	color: #FFF;
	margin-bottom: 20px;
}
#payment_module {
	background: #7BCB97;
	padding: 5px 20px 10px;
	color: #FFF;
}
#payment_module .row,
#acompte_module .row{
  margin-bottom:10px;
}
#acompte_module h3,
#payment_module h3 {
	color: #FFF;
	margin-top: 20px;
}
#cartright .submit input{
  background:#DB0027;
  transition:all ease-in 0.1s;
  padding:18px 30px;
  margin-top:10px;
}
#cartright .submit input:hover{
  transform:scale(1.05);
}
.cgvacceptation{
  margin:20px 0;
}
.condition_label,
.condition_label p,
.condition_label a{
  font-style:italic;
  margin:0;
}
.condition_label a{
  text-decoration:underline;
}
/*etape 5 confirmation*/
#payment_actions{
  text-align:center;
  background:#F2F2F2;
  padding:30px 20px;
}
#payment_actions h2{
  margin-top:0;
}
.confirmpaymentmethod{
  display:inline-block;
  text-transform:uppercase;
  color:#FFF;
  padding:14px 25px;
  font-family:"Poppins";
  font-weight:500;
  margin:0 0 20px;
  background:#DB0027;
  font-size:18px;
  transition:all ease-in 0.1s;
  cursor:pointer;
}
.confirmpaymentmethod:hover{
  color:#FFF;
  transform:scale(1.05);
}
.changepaymentmethod{
  text-decoration:underline;
  display:inline-block;
  font-weight:bold;
}
#cart_payment_confirmation #orderdetailleft{
  margin-top:60px;
}
#cart_footer{
  padding:15px 20px;
  text-align:center;
  background:#F2F2F2;
  line-height:160%;
  font-size:17px;  
}

/* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
RESPONSIVE
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

@media only screen and (min-width:425px){
/*--------------STRUCTURE--------------*/
  #logo{
    height:160px;
  }
/*--------------WIDGETS--------------*/
  .bx-accroche{
    display: block;
  }
/*--------------PREFORMATES--------------*/
/*Accueil centre 2026*/
  .homecentre #heading:after,
  .home #hometop .owl-stage-outer::after{
  height: 70%; /* hauteur de l’ombre */ 
  }
}

@media only screen and (min-width:480px){
/*--------------STRUCTURE--------------*/
  #logo{
    height:190px;
    width:320px;
    margin:0 auto;
    background: rgba(219, 0, 30, 0.85);
    clip-path: polygon(100% 0%, 100% 89%, 0% 100%, 0% 0%);
    background-size: inherit;
  }
  .logoalliance{
    margin:25px 0 0;
  }
  .inner,
  .innerhome{padding:0 30px;}

  #headboxes .inner{
    padding:0 20px;
  }
  /*--------------PRODUITS--------------*/
  .fr .shortview{
    text-align:center;
  }
  .prodpictos > ul{
    display:flex;
    flex-flow:row wrap;
  }
  .prodpictos > ul > li{
    width:50%;
  }
  #container .prodpictos > ul > li:nth-child(odd){
    padding-right:20px;
  }
/*--------------PANIER--------------*/
  #container #steps li{
    display:inline-block;
    width:30px;
    overflow:hidden;
  }
  #container #steps li.active{
    width:auto;
  }
/*--------------PREFORMATES--------------*/
  /*page equipe*/
  .membres,
  .shortsequipe{
    display:flex;
    flex-wrap:wrap;
  }
  .membre,
  .short_equipe{
    width:50%;
  }
  .equipephoto,
  .short_equipe .picture{
    width:180px;
    height:180px;
  }
  .equipeCA .short_equipe{
    width:47%;
    margin:0 1.5% 10px;
  }
  /*Accueil centre 2026*/
  .bottomville .villeright{
    padding:20px 35px;
  }
}


@media only screen and (min-width:550px){
/*--------------BASES--------------*/
  blockquote{
    padding:10px 20px 10px 80px;
    background-position:15px 25px;
    background-size:45px;
    max-width:90%;
  }
/*--------------ARTICLES--------------*/
  .pagepartenaires #container ul li{
    width:32%;
  }
/*--------------STRUCTURE--------------*/

/*--------------WIDGETS--------------*/
  /*header*/

  /*Footer*/
  .bx-confiance{
    padding:40px 0 140px;
    margin:0 20px -100px;
  }
  .bx-confiance p{
    margin:20px 0 40px;
  }
/*--------------PREFORMATES--------------*/
  /*page niveaux*/
  .niveauimg{
    width:120px;
    margin:0 20px 0 0;
  }
  /*page equipe*/
  .equipephoto,
  .short_equipe .picture{
    width:210px;
    height:210px;
  }
  /*page nous rejoindre*/
  #engagement5 .engagementimg{
    display:flex;
    flex-wrap:wrap;
  }
  .ambassadeurimg{
    width:50%;
  }
  /*sejours linguistiques*/
  .stepsejour{
    padding:10px 20px;
    margin:20px 0 20px 70px;
  }
  .stepsejour:before{
    left:-70px;
    top:10px;
    width:44px;
    height:44px;
    line-height:44px;
    font-size:19px;
  }
  .temoignage{
    padding:20px 0 30px 135px;
  }
  .deux_colonnes .temoignage img{
    left:0;
    margin-left:0;
    top:30px;
  }
  /*Page culture*/
  #musees{
    padding-top:50px;
  }
  .lessalles{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
  }
  .unesalle{
    width:48%;
  }
  /*Accueil centre 2026*/
  .bottomville .villeright{
    padding:35px;
  }
  .bottomville .invilleright{
    background:#F2F2F2;
    padding:20px;
  }
  /*Accueil 2026*/
  #zonepourquoi{
    padding:30px 0;
  }
  #zonepourquoi h2{
    margin:40px 0 60px;
  }
  .parcequelist{
    display:flex;
    flex-wrap:wrap;
    max-width: inherit;
  }
  .parceque{
    width:50%;
    padding:0 2%;
  }
  .illusnormandiepresentation{
      background:url(/images/fond-zonenormandie.png) no-repeat right top;
    }
/*--------------CATALOGUE--------------*/

/*--------------PANIER--------------*/
  #overDiv{
    width:350px;
    font-size:16px;
    min-width:inherit;
  }
  #adresseselectionform .row.adresses{
    display:inline-block;
    min-width:300px;
    vertical-align:top;
    margin:0 10px 20px;
  }
/*--------------GESTION DE COMPTE--------------*/
  .addresslist li{
    display:inline-block;
    vertical-align:top;
    min-width:300px;
    margin:20px 10px;
  }
}


@media only screen and (min-width:650px){
  .breadcrumb{
    display:block;
  }
  h1,
  #container #forms .titreformulaire{
    margin:20px 0 50px;
  }
/*--------------WIDGETS--------------*/
 .home .bx-villes{
    text-align:center;
    margin:0 0 30px;
  }
  .home .bx-villes li a{
    background:rgba(201,42,49,0.9);
    /*background:c92a31;*/
    text-decoration:none !important;
    text-transform:uppercase;
    display:block;
    padding:3px;
    border-radius:5px;
    width:112px;
    text-align:center;
    font-size:13px;
    color:#FFF;
  }
  #container .bx-villes ul li{
    padding:0;
    display:inline-block;
    margin:0 4px;
  }
  #container .bx-villes ul li:before{
    display: none;
  }
/*--------------STRUCTURE--------------*/
  #logo{
  }
  #logo a{
  }
  #leftbar{
    padding-top:12px;
  }
  #leftbar .widget{
    width:49%;
  }
/*--------------CATALOGUE--------------*/
  /*Liste familles*/
  .accueilcours .familly{
    padding:0;
    background-position:left top;
  }
  .accueilcours .familly:before{
    left:0;
    transform:none;
  }
  .famillyContainer h2{
    text-align:left;
  }
  .famillyContainer{
    display:flex;
    align-items:center;
  }
  .accueilformations .famillyContainer{
  }
  .accueilcours .infamillyContainer{
    padding:0 10px 0 120px;
    text-align:left;
  }
  .infamillyContainer{
    flex:1;
  }
  .productsejour #produits_associes .content{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .productsejour #produits_associes .short_product{
    max-width: inherit;
    margin:20px 0;
    width:47%;
  }
/*--------------PRODUITS--------------*/
  /*Detail*/
  #prodleft{
  }
  #prodright{
    padding:60px 0 40px;
  }
  #prodright .specialRate{
    width:100%;
    margin:0 0 10px;
  }
  .diplomeimg,
  .blocinscription,
  .inscriptioncpf{
    margin:0 0 30px;
  }
  #prodright .prodshare{
    width:100%;
    margin:15px 0 0;
  }
  #prodbottom .lienscomplementaires .title{
    width:100%;
    margin:20px 0;
  }
  #prodbottom .lienscomplementaires{
    display:flex;
    flex-wrap:wrap;
  }
  #prodbottom .lienscomplementaires p{
    width:48%;
    margin:10px 1%;
    display:flex;
    align-items:center;
    justify-content:center;
  }
  #prodbottom .lienscomplementaires p a{
    width:100%;
  }
  /*#produitsAssocies {
  	width: 100%;
  }
  #produitsAssocies .h3 {
  	text-align: center;
  }
  #produitsAssocies .short_product {
  	max-width: 500px;
  	margin: 25px auto;
  }*/

/*--------------PREFORMATES--------------*/
  /*page niveaux*/
  .niveauimg{
    width:120px;
    margin:0 20px 0 0;
  }
  /*page equipe*/
  .bureauadmin{
    display:flex;
  }
  .bureauadmintxt,
  .bureauadminimg{
    width:50%;
  }
  .bureauadmintxt{
    padding:0 20px 0 0;
  }
  .bureauadminimg{
    padding:20px 0 0;
  }
  /*page nous rejoindre*/
  .ambassadeurimg{
    width:33.33%;
  }
  /*page entree sous rubriques*/ 
  .entrees{
    display:flex;
    flex-flow:row wrap;
  }
  .entreessrub{
    width:48%;
    margin:20px 1% 0;
  }
  /*page la normandie*/
  .normantodo{
    padding:15px;
  }
  #incontournables{
    margin:0 -15px;
    display:flex;
    flex-wrap:wrap;
  }
  #incontournables .col25,
  #incontournables .col50{
    width:50%;
  }
  /*page culture*/
  #agendaaf > div {
  	height: 300px;
  }
  /*Pages Ville (activites)*/
  .cityactivities{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
  }
  .activity{
    width:48%;
  }
 
  /*Accueil 2026*/
  #hometop .introhome{
    margin:0 auto;
    max-width:690px;
  } 
  #zonerouge{
    padding:60px 0 160px;
  }
  .normandiepresentation{
    margin-top:-40px;
    position:relative;
  }
/*--------------COMPTE--------------*/
/*Liste des commandes*/
  #accountPendingOrders tr{
    width:46%;
    margin:0 1.5% 20px;
  }                                                                                                 
}


@media only screen and (min-width:768px){
/*--------------BASES--------------*/
  .deux_colonnes{
    display:flex;
    justify-content:space-between;
    padding:20px 0;
  }
  #event .deux_colonnes{
    display:block;
  }
  .colleft,
  .colright{
    width:47%;
    padding:0;
  }
  #event .deux_colonnes .colleft,
  #event .deux_colonnes .colright{
    width:100%;
  }
  .deux_colonnes img{
    margin:0;
  }
  blockquote{
    max-width:70%;
  }
/*--------------ARTICLES--------------*/
  .pagepartenaires #container ul li{
    width:24%;
  }
/*--------------FORMULAIRES--------------*/
  .formulaire{
    display:flex;
    flex-flow:row wrap;
    justify-content:space-between;
    align-items:flex-start;
  }
  .formandfootform{
    width:60%;
    order:1;
    margin:30px 0 0;
  }
  .form_creator_header{
    width:35%;
    order:2;
  }
/*--------------STRUCTURE--------------*/
  #logo{
    margin:0;
  }
  #headboxes{
    float:right;
    padding-right:50px;
    border-radius:0 0 0 5px;
  }
  #headboxes .widget{
    line-height:42px;  
  }
  #heading > img{
    max-height:150%;
  }
  #infooter{
    padding:50px 0 0;
  }
  #infooter:after{
    width:110%;
    left:-5%; 
  }
  #infooter .inner{
    display:flex;
    flex-wrap:wrap;
  }
  #wrapper{
    padding:0 0 50px;
  }
/*--------------WIDGETS--------------*/
  /*header*/
  .bx-lang ul{
    top:42px;
    width:75px;
    left:-9px;
  }
  .bx-lang p img{
    max-width:28px;
  }
  .bx-compte a,
  .bx-panier a,
  .bx-contact a{
    background-size:inherit;
    margin:0 10px 0 0;
  }
  /*Contenu*/
  #mainboxes .inner{
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
  }
  .bx-basdepage{
    width:48%;
  }
  #mainboxes [class*="bx-short-"]{
    width:48.5%;
    align-content:center;
  }
  /*rightbar*/
  .bx-nl{
    margin:-40px 0 60px;
    text-align:left;
  }
  .bx-nl .titreformulaire{
    font-size:40px;
    width:30%;
    float:left;
    text-align:right;
    margin:0;
  }
  .bx-nl .form_creator_header,
  .bx-nl .formandfootform{
    width:65%;
    float:right;
  }
  .bx-nl .form_creator_header{
    margin-top:0;
  }
  .bx-nl label,
  .bx-nl .submit,
  .bx-nl .formulaire .row > div{
    margin-top:0;
    margin-bottom:0;
  }
  .bx-confiance{
    padding:60px 0 140px;
  }
  /*leftbar*/
  /*footer*/
  .bx-logofooter,
  .bx-coordonnees,
  .bx-fondation{
    padding:5px 2.5% 0;
    border-bottom:none;
  }
  .bx-logofooter img{
    max-width:280px;
  }
  .bx-logofooter{
    width:40%;
    order:1;
    border-left:1px solid #525252;
    border-right:1px solid #525252;
  }
  .bx-coordonnees{
    width:30%;
    order:0;
    text-align:right;
    align-self:center;
  }
  .bx-fondation{
    width:30%;
    order:2;
    text-align:left;
    align-self:center;
  }
  .bx-asso{
    padding:40px 0 20px;
    order:3;
  }
  .bx-normandie{
    order:4;
  }
  .bx-mentions{
    order:5;
  }
  #infooter .bx-mentions p{
    margin-bottom:5px;
  }
  .bx-mentions li{
    display:inline-block;
  }
  .bx-mentions li:after{
    display:inline-block;
    content:"-";
    padding:0 2px 0 5px;
  }
  .bx-mentions li:last-child:after{
    display:none;
  }
  .bx-mentions li a{
    display:inline;
  }
/*--------------NAVIGATION--------------*/
  #navtop_bt{
    width:42px;
    height:42px;
    padding-top:16px;
  }

/*--------------PREFORMATES--------------*/
  /*page af rouen*/
  .alfrpage .deux_colonnes img{
    width:100%;
  }
  .alfrl3 .colright img{
    margin-top:10px;
  }
  .alfrl3 .colright{
    text-align:left;
  }
  .alfrl2{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    padding:20px 0 0;
  }
  .allianceville{
    width:48%;
    margin:0 0 30px;
  }
  .allienville:before{
    background:url(/images/picto-allienville.svg) no-repeat center center;
    width:40%;
    height:40%;
    content:"";
    position:absolute;
    top:45%;
    left:50%;
    transform:translate(-50%,-50%);
    opacity:0;
    z-index:2;
    transition:all ease-in 0.2s;
  }
  .allienville img{
    transition:all ease-in 0.2s;
  }
  .allienville:hover img{
    opacity:0.5;
    filter:grayscale(1)
  }
  .allienville:hover:before{
    opacity:1;
  }
  /*page pourquoi apprendre a rouen*/
  .raison{
    display:flex;
    align-items:center;
  }
  .raisonimg,
  .raisontxt{
    width:50%;
  }
  .raisontxt{
    padding:0 20px;
  }
  .raison2, .raison4{
    padding-top:0;
    padding-bottom:0;
  }
  .raison2 .raisontxt, .raison4 .raisontxt{
    order:1;
  }
  .raison2 .raisonimg, .raison4 .raisonimg{
    order:2;
  }
  .raison2 .raisonimg, 
  .raison4 .raisonimg{
    margin-right:-50vw;
    overflow:inherit;
  }
  .raison2 .raisonimg img, 
  .raison4 .raisonimg img{
    width:auto;
    min-height:100%;
    left:0;
  }
  .videotemoignage{
    max-width:650px;
    margin:0 auto;
  }
  /*page niveaux*/
  .niveauimg{
    width:150px;
  }
  /*page equipe*/
  .membre,
  .short_equipe{
    width:33.33%;
  }
  .equipeCA .short_equipe{
    width:30.33%;
    margin:0 1.5% 15px;
  }
  /*page type hebergement*/
  .lignehebergement{
      display:flex;
  }
  .lignehbgt1 .hebergtxt,
  .lignehbgt3 .hebergtxt{
      padding-right:30px;
  }
  .lignehbgt2 .hebergimg{
      order:1;
  }
  .lignehbgt2 .hebergtxt{
      order:2;
      padding-left:30px;
  }
  .hebergtxt{
      min-width:60%;
  }
  .hebergimg{
      min-width:40%;
  }
  .lignehbgtvisuels{
      flex-wrap:wrap;
      justify-content:space-between;
  }
  .lignehbgtvisuels img{
      max-width:31%;
  }
  .lignehbgttarif{
      display:block;
  }
  /*page a onglets*/
  .navtabs{
      margin-bottom:-1px;
  }
  #container .navtabs li{
      display:inline-block;
  }
  .tabname{
      display:none;
  }
  .active .tabcontent{
    display:block;
  } 
  /*sejours linguistiques*/
  .pagesejourslinguistiques .deux_colonnes{
    padding:5px 0;
  }
  .introsejourlinguistique .colright img{
    margin-top:20px;
  }
  .stepsejour{
    padding:10px 20px 10px 60px;
    margin:20px 0;
  }
  .stepsejour:before{
    left:15px;
    top:15px;
    width:34px;
    height:34px;
    line-height:34px;
    font-size:16px;
  }
  .temoignage{
    padding:135px 0 30px 0;
  }
  .deux_colonnes .temoignage img{
    left:50%;
    margin-left:-58px;
    top:20px;
  }
  /*Page culture*/
  .obliquetop img,
  .obliquebottom img{
    width:1920px;
    height:135px;
  }
  .obliquebottom img{
    top:-130px;
  }
  #musees{
    background:url(/images/bg-musees-tall.jpg) no-repeat center center;
    padding-top:90px;
    padding-bottom:90px;  
  }
  #musees .deux_colonnes{
    align-items:center;
  }
  .unesalle{
    margin:0 0 30px;
  }
  .contentactivite{
    display:flex;
    justify-content:space-between;
  }
  .imgactivite{
    min-width:45%;
    max-width:45%;
    margin:15px 0 0 30px;
  }

  /*accueil 26*/
  #entrees{
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between;
  }
  .entreecata{
  width:48%;
  }
  #zoneactus{
    padding:120px 0 0;
  }
  #zoneactus .contentactus{
    padding-bottom: 120px;
  }
  .widgetprog{
    margin:0 auto 70px;
  }
  .actuautres{
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .liensreseaux{
    width: 100%;
  }
  .parceque{
    width:33.3%;
    padding:0 4%;
  }
  .normandiepresentation{
    margin-top:-150px;
  } 
  /*Accueil centres 2026*/
  .homecentre #heading:after,
  .home #hometop .owl-stage-outer::after {
  height: 250px;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0) 0%,
    rgba(0,0,0,0.5) 30%,
    rgba(0, 0, 0, 0.9) 100%
  );
  }
  .centrerouen #entreeswidgets{
    width:48%;
  }
  #entreeswidgets{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
  }
  #entreeswidgets [class*="bx-short-"]{
    width:48%;
    align-content:center;
  }
  .centrerouen #entreeswidgets [class*="bx-short-"]{
    width:100%;
  }
  .centrerouen .entreeprofle,
  .centrerouen #entreeswidgets [class*="bx-short-"]:last-child{
    margin-bottom:0;
  }
  .presentationville{
    padding:60px 50vw 0;
    background-image:url(/images/af-filigrane-gris-5.png);
    background-repeat: no-repeat;
    background-position: 50% 10%;
    background-size:auto;
  }
  .bottomville .villeright{
    max-width:500px;
  }
  .pourquoiville{
    text-align:center;
  }
  #container .pourquoiville ul li{
    padding:6px 0;
  }
  #container .pourquoiville ul li:before{
    display:inline-block;
    position:relative;
    top:2px;
    margin:0 10px 0 0;
  }
/*--------------FAMILLES--------------*/
  .accueildiplomes .short_product .short_product_container{
    display:flex;
    align-items:center;
  }
  .accueildiplomes .short_product{
    margin:0 auto 30px;
    text-align:left;
  }
  .accueildiplomes .shortdiplome .shortprodimg{
    width:280px;
    padding:0 20px 0 0;
  }
  .accueildiplomes .shortdiplome .shortprodimg img{
    max-width:100%;
  }
  .accueildiplomes .shortdescription{
    flex:1;
    padding-right:10px;
  }
  .accueildiplomes .shortdescription h2{
    text-align:left;
  }
  .accueildiplomes .shortview{
    width:40px;
  }
/*--------------PRODUITS--------------*/
  .prodtemoignage{
    text-align:left;
  }
  .letemoignage{
    padding-left:170px;
    position:relative;
  }
  .prodtemoignage img{
    position:absolute;
    left:0;
    top:0;
  }
  .productsejour #prodright{
    display:flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: inherit;
  }
  .productsejour .blocinscription,
  .productsejour .blocgroupe{
    width:47%;
    margin:0 0 40px;
  }
  .productsejour .blocdiaporama{
    width: 100%;
  }
/*--------------PANIER--------------*/
  #container #steps li{
    display:inline-block;
    width:auto;
  }
  .dhbothinfosenvoi .row{
    display:inline-block;
    width:45%;
    margin-right:2.3%;
  }
  .dhbothinfosenvoi .row textarea{
    min-height:120px;
  }
/*--------------GESTION DU COMPTE--------------*/ 
  #accountModify .back,
  #accountChangePassword .back,
  #accountAddress .back,
  #accountOrdersList .back{
    margin-top:0;
  }
/*--------------EVENEMENTS--------------*/
  #event_list{
    display:flex;
    flex-wrap: wrap;
  }
  #event_list .event{
    width:46%;
    margin:0 2% 30px;
  }
}

@media only screen and (min-width:850px){
/*--------------WIDGETS--------------*/
  /*Header*/
  .bx-compte a,
  .bx-panier a,
  .bx-contact a{
    width:auto;
    margin:0 15px 0 0;
    background-position:right center;
    text-indent:0;  
  } 
  .bx-compte a{background-size:11px; padding-right:18px}
  .bx-panier a{background-size:15px;padding-right:22px}
  .bx-contact a{background-size:14px;padding-right:21px;}
  .bx-panier .product_number{
    position:relative;
    right:inherit;
    top:inherit;
  } 

/*--------------CATALOGUE--------------*/
  /*Liste des familles*/
/*--------------PRODUITS--------------*/
  /*Resume*/
  #famillyPresentation{
    margin-bottom:20px;
  }
  .shortproducts{
    display:flex;
    flex-wrap:wrap; 
    justify-content: center;
  }
  .accueilsejours .shortproducts{
    justify-content:center;
  }
  .methodCatPredefined.shortproducts{
    justify-content:center;
  }
  .short_product{
    width:47%;
    margin:25px 1.5% 10px;
    max-width:inherit;
    padding-bottom:70px;
    padding-top:15px;
  } 
  .shortquickinfos,
  .shortinfocentre{
    position:absolute;
    left:0;
    bottom:20px;
    width:100%;
    padding:0 55px 0 20px;
  }
  .prodsejour{
    padding:0;
  }
  /*Detail*/
  #container .pictoscomplementaires > ul > li{
    padding:30px 0 30px 75px; 
  }
  #container .pictoscomplementaires > ul > li:nth-child(odd){
    padding-right:15px;
  }
  #container .pictoscomplementaires > ul > li:before{
    top:20px;
  }
  .pictoscomplementaires > ul > li{
    display:inline-block;
    vertical-align:top;
    width:49.5%;
  }
/*--------------PANIER--------------*/
/*etape 4 paiement*/
  #cart_order_confirmation #cart_detail{
    display:flex;
    justify-content:space-between;
  }
  #cartleft{
    width:54%;
    margin-top:-20px;
  }
  #cartright{
    width:42%;
  }
  #acompte_module{
    margin-top:52px;
  }
  #payment_module{
  }
/*--------------COMPTE--------------*/
/*Liste des commandes*/
  #accountPendingOrders tr,
  #accountHistoryOrders tr{
    width:30%;
    margin:0 1% 25px;
  }
/*detail d'une commande*/
  #orderdetailleft{
    background:url(/images/oblique-blanc-inverse-bas-vers-haut.svg) no-repeat center -1px #2B2B2B;
    background-size:105%;
    width:36%;
    margin:0;
    padding:46px 0 0 0;
    transform:none;
    float:left;
  }
  .inorderleft{
    transform:none;
    padding:0 20px 25px;
  }
  #orderdetailright{
    float:right;
    width:60%;
    padding-top:0;
  }
  #orderdetailright table{
    margin-top:0;
  }
  #accountOrderDetail .back{
    clear:both;
  } 
  /*Factures*/
  .invoicehead{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
  }
  .invoicemarchand,
  .invoiceinfos{
    width:48%;
  } 
  .invoiceinfos{
    margin:40px 0 0;
  }
/*--------------PANIER--------------*/
/*Etape 5*/
  #cart_payment_confirmation #orderdetailleft,
  #cart_payment_confirmation #orderdetailright{
    margin-top:70px;
  }
/*--------------PREFORMATES--------------*/
/*page villes AF */
  .pageallianceville{
    /*display:flex;
    justify-content:space-between;*/
  }
  /*Accueil 26*/
  .normandiepresentation{
    float:right;
    margin-top:-175px;
  } 
  #zonerouge .video,
  #zonerouge .content{
    max-width:820px;
  }
}


@media only screen and (min-width:990px){
/*--------------FAMILLES--------------*/
  .accueildiplomes .shortdiplome .shortprodimg{
    width:330px;
    padding:0 40px 0 0;
  }
/*--------------PRODUITS--------------*/
  /*Resume*/
  .sousfamillediplomes #famillyPresentation{
    display:flex;
    text-align:left;
  }
  .sousfamillediplomes #famillyPicture{
    width:330px;
    text-align:center;
    padding:10px 0 0;
  }
  .sousfamillediplomes #famillyDescription{
    flex:1;
    padding-left:15px;  
  }
  .sousfamillediplomes #famillyArticle{
    width:100%;
  }
  /*Detail*/
  #product{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    padding-top:10px;
    flex-wrap:wrap;
  }
  .prodpictos{
    transform:none;
    background:#FFFFFF;
    margin-right:20px;
    font-size:14px;
    color:#686868;
  }
  .prodpictos strong{
    color:#2B2B2B;
  }
  .prodpictos > ul{
    padding:0 20px 15px 0;
    display:block;
  }
  .prodpictos > ul > li{
    width:100%;
  }
  #container .prodpictos > ul > li:nth-child(odd){
    padding-right:0;
  }
  #prodleft{
    width:62.35%;
    margin:0;
    padding:40px 0 60px 0;
    transform:none;
  }
  .logoprofle{
    padding:0 20px 10px;
    margin-top:-10px;
    text-align:right;
    transform:none;
  }
  #prodright{
    width:34.68%;
    padding:43px 0 60px;
    background:none;
    margin:0;
  }
  .diplomeimg img{
    max-width:97%;
  }
  #prodbottom .lienscomplementaires p{
    width:31%;
    margin:10px 1%;
  }
  #prodbottom .lienscomplementaires p a{
    padding:15px 20px;
  }
  .inprodtemoignage{
    padding-left:80px;
    padding-right:80px;
  }
  /*#produitsAssocies{
    margin:20px 0;
  }
  #produitsAssocies .h3 {
  	text-align: left;
  }
  #produitsAssocies .short_product {
  	max-width: inherit;
  }*/
  .productsejour #produits_associes .short_product{
    width:31%;
    margin:20px 1.5%;
  }
  .productsejour #produits_associes .content{
    flex-wrap: nowrap;
    margin:0 -1.5%;
  }
  .productsejour #prodright{
    display:block;
    justify-content: inherit;
    flex-wrap: inherit;
  }
  .productsejour .blocinscription,
  .productsejour .blocgroupe{
    width:100%;
    margin:0 0 30px;
  }
/*--------------PREFORMATES--------------*/
  /*page nous rejoindre*/
  .engagement{
    display:flex;
    align-items:flex-start;
  }
  .engagementtxt,
  .engagementimg{
    width:50%;
  }
  .engagementtxt{
    padding-right:20px;
  }
  .engagementimg{
    padding-top:20px;
    padding-left:20px;
  }
  .ambassadeurimg{
    width:50%;
  }
  .ambassadeurimg:last-child{
    display:none;
  }
  /*page la normandie*/
  #incontournables{
    display:flex;
    flex-wrap:wrap;
    margin:0 -20px;
  }
  #incontournables .col25{
    width:25%;
  }
  #incontournables .col50{
    width:50%;
  }
  .normantodo{
    padding:20px;
  }
  .normantodo img{
    transition:all ease-in 0.2s;
    width:100%
  }
  .normantodo a:hover img{
    transform:scale(1.1);
  }
  /*page culture*/
  #agendaaf > div {
  	height: 400px;
  }
  #salles{
    margin:0 0 80px;
  }
  .unesalle{
    width:23%;
    overflow:hidden;
    margin-bottom:0;
  }
  .unesalle img{
    transition:all ease-in 0.2s;
  }
  .unesalle a:hover img{
    transform:scale(1.1);
  }
  .autresactivites{
    display:flex;
    justify-content:space-between;  
  }
  .autresactivites > div{
    width:30%;
  }
  .contentactivite{
    display:block;
  }
  .imgactivite{
    min-width:inherit;
    max-width:inherit;
    margin:0;
  }
  #sortir,
  #depenser{
    padding:0;
    border-bottom:0;
  }
  /*Pages engagement*/
  .engagelist{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:center;
  }
  .engagebox{
    width:47%;
  }
  /*Pages Ville (activites)*/
  .cityactivities{
    justify-content:inherit;
    margin-top:50px;
  }
  .activity{
    width:30%;
    margin:0 1.5% 30px;
  }
  .cityintro{
    margin:0 1.5%;
  }
  /*accueil 26*/
  #hometop{
    margin:0 0 70px;
  }
  .entreecata{
    width:31%;
  }
  /*Accueil centres 2026*/
 
  #accueilcentre .entreecata{
    margin:0;
  }
  /*.centrerouen #accueilcentre .entreecata{
    width:48%;
    margin:0 0 30px;
  }
  .centrerouen #accueilcentre .entreeprofle{
    margin-bottom:0;
  }*/
  .centrerouen #entreeswidgets{
    margin:30px 0 10px;
    width:100%;
  }
  .centrerouen #entreeswidgets [class*="bx-short-"]{
    width:31%;
    margin:0;
  }
  .centrerouen #entreeswidgets [class*="bx-short-"]:last-child{
  }
  #entreeswidgets{
    width:31%;
  }
  #entreeswidgets [class*="bx-short-"]{
    width:100%;
    align-content: center;
    margin:0 0 30px;
  }
  #entreeswidgets [class*="bx-short-"]:last-child{
    margin:0;
  }
  .presentationville{
    margin-top:80px;
  }
/*--------------EVENEMENTS--------------*/
  #event_list .event{
    margin:0 2% 40px;
  }
  #event #chapo{
    display:flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    max-width:inherit;
    align-items:center;
    padding-bottom:60px;
  }
  #event .chapoPicture{
    width:52%;
  }
  #event.eventsaison .chapoPicture{
    margin-top:35px;
  }
  #event .eventchapo{
    width:44%;
  }
  #event #text > div{
    max-width:1150px;
  }
  #event #text .deux_colonnes{
    max-width:inherit;
  }
  #event .textAndImages{
    display:flex;
    flex-wrap: nowrap;
  }
  #event .textAndImages img{
    max-width:300px;
  }
   #event .textAndImages .structured_text_semantique_text{
    padding-left:40px;
   }
  #event .textAndImages .structured_text_semantique_text h2:first-of-type,
  #event .textAndImages .structured_text_semantique_text h3:first-of-type,
  #event .textAndImages .structured_text_semantique_text h4:first-of-type{
    margin-top:0;
  }
}

@media only screen and (min-width:1024px){
/*--------------STRUCTURE--------------*/
  #heading{
    height:320px;
  }
/*--------------ARTICLES--------------*/
  .pagepartenaires #container ul li{
    width:19%;
  }
/*--------------NAVIGATION--------------*/
  #mainNav{
    text-align:right;
  }
  #mainNav .firstLevel > li > a{
    padding:20px 10px;
  }
  #mainNav .secondLevel > li > a,
  #mainNav .twosubs .thirdLevel > li > a{
    padding:6px 10px;
  }
  #mainNav .twosubs .secondLevel > li > a{
    font-weight:normal;
  }
  #mainNav .twosubs .thirdLevel{
    display:none;
  }

/*--------------WIDGETS--------------*/
  /*header*/
  .bx-lang img{
    max-width:22px;
  }
  .bx-tel a:hover,
  .bx-contact a:hover,
  .bx-faq a:hover{
    color:#DB0027;
  }
  /*Centre*/
  .bx-basdepage a:hover{
    background:#545454;
    color:#FFF;
  }
  /*leftbar*/
  #leftbar{
    padding:0;
    display:block;
    position:fixed;
    top:50%;
    right:-230px;
    transform:translateY(-50%) /*rotateZ(-4deg)*/;
    z-index:4;
    width:310px;
  }
  #leftbar .widget{
    width:inherit;
    margin-bottom:6px;
  }
  #leftbar .widget a{
    position:relative;
    left:0;
    transition:all 0.5s;
    font-size:15px;
    padding:12px 20px 12px 80px;
    border-radius:3px 0 0 3px;
  }
  #leftbar .widget a:hover{
    left:-230px;
  }
  /*footer*/
  #infooter a:hover{
    color:#DB0027;
  }
/*--------------PREFORMATES--------------*/
  /*page alliance francaise*/
  .alfrpage .deux_colonnes{
    padding:30px 0 40px;
  }
  /*page equipe*/
  .membre,
  .short_equipe{
    width:25%;
  }
  .equipeCA .short_equipe{
    width:23%;
    margin:0 1% 15px;
  }
  /*page entree sous rubriques*/ 
  .entreessrub{
    width:23%;
    margin:20px 1% 0;
  }
  .entreessrub img{
    transition:all ease-in 0.2s;
  } 
  .entreessrub a:hover img{
    transform:scale(1.1);
  }
  .entreetitre{
    font-size:16px;
  }
  /*sejours linguistiques*/
  .stepsejour{
    padding:10px 20px;
    margin:20px 0 20px 70px;
  }
  .stepsejour:before{
    left:-70px;
    top:10px;
    width:44px;
    height:44px;
    line-height:44px;
    font-size:19px;
  }
  .temoignage{
    padding:20px 0 30px 135px;
  }
  .deux_colonnes .temoignage img{
    left:0;
    margin-left:0;
    top:30px;
  }
  /*Accueil 2026*/
  .parceque{
    width:20%;
    padding:0 2%;
  }
  #zonerouge{
    margin-top:80px;
  }
  #zonerouge .innerhome{
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  #zonerouge .video{
    width:35%;
    max-width:inherit;
    margin:0;
    padding:20px 0 0 20px;
  }
  #zonerouge .content{
    width:60%;
    margin:0;
  }
  #zonerouge .bienvenue,
  #zonerouge .lienscentres{
    padding:0;
  }
  #zonepourquoi,
  #zonenormandie{
    margin-top:100px;
  }
  #zonerouge{
    padding:80px 0 180px;
  }
  #zoneactus{
    padding:140px 0 0;
  }
  #zoneactus .h1{
    margin-bottom:60px;
  }
  #zoneactus .innerhome{
    display: flex;
    flex-wrap: wrap;
  }
  #zoneactus .h1{
    width: 100%;
  }
  .widgetprog{
    width: 46%;
    margin:0 auto 50px;
    max-width: inherit;
  }
  .homeactus{
    width: 46%;
    margin:45px auto 50px;
    max-width: inherit;  
  }
  .actuautres{
    width: 100%;
    justify-content:center;
  }
  .liendelf,
  .lienagenda{
    margin:0 20px 30px;
  }
  .home .bx-chiffres{
    margin-top:80px;
  }
  /*Accueil centres 2026*/
  .presentationville{
    display:flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 0;
    background-position: 40% center;
  }
  .presentationville .villeleft{
    width:60%;
    margin:0 0 50px;
  }
  .presentationville .villeright{
    width:35%;
    margin:0;
  }
  .carteville .oblique{
    width:100%;
    left:0;
  }
  .pourquoiville{
    text-align:left;
    padding:40px 30px 30px;
  }
  #container .pourquoiville ul li{
    padding:6px 0 6px 25px;
  }
  #container .pourquoiville ul li:before{
    display:block;
    position:absolute;
    top:8px;
    margin:0;
  }
  .bottomville{
    display:flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;  
    align-items: start;
  }
  .bottomville .villeleft{
    width: 60%;
    padding:80px 0 0;
    margin-bottom:0;
  }
  .bottomville .villeright{
    width:35%;
    max-width: inherit;
    background: #2B2B2B;
    color: #FFF;
    text-align: left;
    padding:0;
    margin:0;
  }
  .bottomville .invilleright{
    background:none;
    padding:40px 30px 30px;
  }
  .titrecontact{
    color:#FFF;
  }
  .bottomville .villeright:after{
    background:none;
    height: 0;
    width: 0;
    display: none;
  }
   .bottomville .villeright:before{
    content:"";
    display: block;
    position:absolute;
    top:-5px;
    width: 100%;
    height:7px;
    background:url(/images/soulignement-blanc-titre.svg) no-repeat center center;

   }
/*--------------CATALOGUE--------------*/
  /*sejours*/
  .productsejour #introprod{
    display:flex;
    flex-wrap: nowrap;
    text-align:left;
    align-items: center;
  }
  .productsejour #productPicture{
    width:30%;
  }
  .productsejour .sejourdesc{
    padding-left:5%;
    flex:1;
  }

/*--------------COMPTE--------------*/
  #accountAuthentification{
    max-width:50%;
  }
  .accountForm .row{
    display:flex;
  }
  .accountForm .row > label{
    width:30%;
  }
  .accountForm .row > div{
    width:70%;
  }
}


@media only screen and (min-width:1120px){
  /*--------------FAMILLES--------------*/
  .accueilformations .families{
    max-width: inherit;
  }
  .accueilformations .familly{
    display:flex;
    margin:0 0 40px;
    align-items: center;
  }
  .accueilformations .familly > img{
    max-width: 50%;
    margin:0;
  }
  .accueilformations .infamillyContainer,
  .accueilformations .infamillyContainer h2{
    text-align:left;
  }
  .accueilformations .infamillyContainer h2{
    margin-top:10px;
  }
  .accueilformations .famillyContainer{
    padding:0 20px 0 30px;
    margin:0;
    background:none;
    display:block;
    text-align:left;
  }
  .accueilformations #famillyDescription *{
    text-align: left !important;
  }
  /*--------------PRODUITS--------------*/
  /*Resume*/
  .short_product{
    width:31%;
    margin:25px 1.16% 10px;
    padding-bottom:85px;
  }
  .sousfamillediplomes #famillyPresentation{
    padding:15px 30px;
  }
  .prodsejour, .shortorganisez{
    width:46%;
    padding:0;
  }
  /*Detail*/
  #prodleft{
    width:66.32%;
  }
  #prodright{
    width:29.74%;
  }
  .proddiplome #prodleft,
  .proddiplome #prodright{
    padding-top:20px;
  }
  .productsejour #prodleft{
    width:65%;
    padding-bottom:20px;
  }
  .productsejour #prodright{
    width:31%;
    padding-bottom:20px;

  }
/*--------------PREFORMATES--------------*/
  /*page alliance francaise*/
  .alfrls{
    display:flex;
    flex-wrap:nowrap;
    justify-content: space-between;
    align-items:center;
  }
  .alfrl1{
    width:30%;
    text-align:left;
  }
  .alfrl1 h2{
    text-align:left;
  }
  .alfrl2{
    width:65%;
    padding-top:30px;
  }
  /*Accueil 2026*/
  .normandiepresentation{
    margin-top: -300px;
  }

/*--------------EVENEMENTS--------------*/
  #event_list .event{
    width:30%;
    margin:0 1.6% 40px;
  }
}


@media only screen and (min-width:1260px){
/*--------------ARTICLES--------------*/
  article h1{
    max-width:1000px;
    margin-right:auto;
    margin-left:auto;
  }
/*--------------STRUCTURE--------------*/
  #logo{
    width:290px;
    height:240px;
    clip-path: polygon(100% 0%, 100% 92%, 0% 100%, 0% 0%);

  }
  .logoalliance{
    margin:50px 0 0;
  }
  #heading{
    height:352px;
  }
  #heading > img{
    max-height:inherit;
    max-width:100%
  }
  #head > .inner{
    max-width:inherit;
  }
  #headboxes{
    padding:0;
  }
/*--------------NAVIGATION--------------*/  
  #navtop_bt{
    display:none;
  }
  #mainNav{
    position:absolute;
    display:block;    
    background:none;
    padding:0;
    top:140px;
    left:inherit;
    right:20px;
    margin:0;
    height:auto;
    width:auto;
    overflow:visible;
    z-index:15; 
    text-align:inherit;
  }
  .fixedNav #mainNav{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    padding:10px 0;
    margin:0;
    background:url(/images/Logo-AF-Normandie-reduit.svg) no-repeat 20px center #FFFFFF;
    background-size:120px;
    box-shadow:0 0 5px rgba(0,0,0,0.5);
  }
  .fixedNav #mainNav .firstLevel{
    float:right;
    position:relative;
  }
  .fixedNav #mainNav .firstLevel > li > a{
    font-size:14px;
  }
  .fixedNav #mainNav .secondLevel{
  }
  .fixedNav #mainNav .firstLevel > li.has-submenu:hover{
    padding-bottom:0;
  }
  #mainNav .firstLevel{
    transition:all ease-in-out 0.2s;
  }
  #mainNav .firstLevel > li{
    border-bottom:0 none;
    margin:0 0 0 10px;
    background:#FFF;
    border-radius:5px; 
    float:left;
  } 
  #mainNav .firstLevel > li:first-child{
    margin-left:0;
  }
  #mainNav .firstLevel > li.has-submenu:hover{
    padding-bottom:15px;
    border-radius:5px 5px 0 0;
  }
  #mainNav .firstLevel > li > a{
    padding:7px 10px;
    font-size:15px;
    text-transform:none;
  }
  #mainNav .firstLevel > li > a:hover{
  }

  #mainNav .firstLevel > li.has-submenu > a span:after{
    display:none;
  }         
  #mainNav .secondLevel{
    display:none;
    position:absolute;
    top:98%;
    left:auto;
    z-index:20;
    background-color:#FFFFFF;
    background-repeat:no-repeat;
    background-position:right top;
    text-align:left;
    width:40%;
    padding:15px 0 10px;
    border-radius:3px;
    box-shadow:0 5px 5px rgba(0,0,0,0.2);
  }
  #mainNav .menuinscription .secondLevel,
  #mainNav .menuecole .secondLevel,
  #mainNav .menuetudiants .secondLevel{
    right:0;
  }
  #mainNav .twosubs .secondLevel{
    left:0;
    width:100%;
  }
  #mainNav .twosubs .secondLevel > li{
    float:left;
  }
  #mainNav .menu-2cols.twosubs .secondLevel > li{
    width:50%;
  }
  #mainNav .menu-2cols.twosubs .secondLevel > li:nth-child(3),
  #mainNav .menu-2cols.twosubs .secondLevel > li:nth-child(5){
    clear:left;
  } 
  #mainNav .menu-3cols.twosubs .secondLevel > li{
    width:33.3%;
  }
  #mainNav .menu-3cols.twosubs .secondLevel > li:nth-child(4),
  #mainNav .menu-3cols.twosubs .secondLevel > li:nth-child(7){
    clear:left;
  }  
  #mainNav .menu-4cols.twosubs .secondLevel > li{
    width:25%;
  }
  #mainNav .menu-4cols.twosubs .secondLevel > li:nth-child(5){
    clear:left;
  }  
  #mainNav .twosubs .secondLevel > li > a{
    font-size:15px;
    font-weight:bold;
    font-family:"inter";
    padding:0 15px;
  }
  #mainNav .twosubs .secondLevel > li > a span{
    display:inline-block;
    padding:0 0 6px 0;
    background:url(/images/soulignement-noir-menu.svg) no-repeat center bottom;
  }
  #mainNav .secondLevel > li > a,
  #mainNav .twosubs .thirdLevel > li > a{
    font-size:14px;
    padding:0 15px;
  }
  #mainNav .twosubs .secondLevel > li > a{
    font-weight:bold;
  }
  #mainNav .twosubs .thirdLevel{
    display:block;
  }
  #mainNav .secondLevel li a:hover{
    color:#DB0027;
  }
  #mainNav .twosubs .thirdLevel{
    padding:5px 0 15px;
  }
/*--------------WIDGETS--------------*/
  .bx-confiance{
    padding:80px 0 150px;
  }
  .fixedNav .bx-villes{
    display:none;
  }
  .home.fixedNav .bx-villes{
    display:block;
  }
  .bx-villes{
    font-size:13px;
    margin-top:15px;
    position:absolute;
    top:40px;
  }
  .home .bx-villes{
    position:relative;
    top:inherit;
  }
  .bx-villes li{
    display:inline-block;
    margin:0 8px 0 0;
  }
  #mainNav .bx-villes li{
    border:inherit;
  }
  #mainNav .bx-villes li a,
  .bx-villes li a{
    background:rgba(70,178,139,0.9);
    color:#FFF;
    text-transform: uppercase;
    display:block;
    padding:3px;
    border-radius:5px;
    width:112px;
    text-align:center;
    font-size:13px;
    font-weight:normal;
    transform-origin: center center;
  }
  #mainNav .bx-villes li a:hover{
    background:rgba(201,42,49,0.9);
    transform:scale(1.05);
  }
  .home .bx-villes li a{
    transform-origin: center center;
  }
  .home .bx-villes li a:hover{
    transform:scale(1.05);
    background:rgba(70,178,139,0.9);

  }
  #headboxes .menu-ecole{
    display:inline-block;
    position:relative;
    line-height:42px;
  }
  #headboxes .menu-ecole > a{
    color:#FFF;
    display:block;
    padding-right:15px;
    background:url(/images/header-fleche-nav.svg) no-repeat right center;
    font-weight:500;
    margin-right:20px;
    cursor:pointer;
  }
  #headboxes .menu-ecole ul{
    display:none;
    position:absolute;
    left:-20px;
    top:42px;
    background:rgba(43,43,43,0.8);
    margin:0;
    line-height:120%;
    width:320px;
    padding:0;
    z-index:16;
  }
  #headboxes .menu-ecole ul a{
    display:block;
    padding:5px 20px;
    color:#FFF;
  }
  #headboxes .menu-ecole ul li:first-child a{
    padding-top:15px;
  }
  #headboxes .menu-ecole ul li:last-child a{
    padding-bottom:15px;
  }
  #headboxes .menu-ecole ul a:hover{
    background:#2B2B2B;
  }
  .bx-compte a,
  .bx-panier a,
  .bx-contact a{
    margin:0 20px 0 0;
  } 
  #mainboxes [class*="bx-short-"]{
    width:31.5%;
    margin:0 0 25px;
  }
/*--------------PREFORMATES--------------*/
  /*page nous rejoindre*/
  .engagement{
    align-items:center;
  } 
  /*page equipe*/ 
  .picture2026{
    margin:0 15px;
  }
  /*Accueil 2026*/
  #hometop .innerhome{
    left:48%;
    transform:translateX(-50%);
    width:1210px;
  }
  .home #entrees{
    align-items:flex-start;
    padding:50px 0 0;
  }
  .home .entreeexamen,
  .home .entreesejours{
    margin-top:-40px;
  }
  .entreecata h2{
    margin:20px -20px 10px;
    line-height: 1em;
  }
  #zonerouge{
    background:url(/images/bg-zonerouge.webp) no-repeat center bottom;
    background-size: 120%;
  }
  #zonerouge .bienvenue{
    padding-right: 100px;
  }
  #zoneactus{
    padding:160px 0 0;
  }
  #zoneactus .contentactus{
    padding-bottom: 140px;
  }
  #zoneactus .innerhome{
    justify-content: space-between;
    align-items:center;
    position:relative;
    z-index:2;
  }
  #zoneactus .contentactus{
    background-image: url(/images/af-filigrane-gris-5.png);
    background-repeat: no-repeat;
    background-position: left top;
  }
  #zoneactus .owl-slider .owl-dots{
    margin-bottom:0;
  }
  #zoneactus .h1{
    margin-bottom: 80px;
  }
  .widgetprog,
  .actuautres{
    max-width:325px;
    margin:0;
  }
  .homeactus{
    width:34%;
    margin:0;
  }
  .actuautres{
    display:block;
  }
  .liendelf, .lienagenda{
    margin:0 0 30px;
  }
  .liensreseaux{
    text-align: right;
  }
  /*Accueil centre 2026*/
  .homecentre #heading img{
    max-height:inherit;
    max-width:inherit;  
  }
  .homecentre #heading:after{
    height:250px;
  }
/*--------------PRODUITS--------------*/
  /*Resume*/
  .short_product{
    width:30%;
    margin:25px 1.66% 20px;
  }
  .productsejour #produits_associes .short_product{
    width:30%;
  }
  .prodsejour, .shortorganisez{
    width:46%;
    margin:25px 2% 20px;
  }
/*--------------EVENEMENTS--------------*/
  #event #chapo{
    max-width:1150px;
  }
}


@media only screen and (min-width:1360px){
/*--------------STRUCTURE--------------*/
  #logo{
    width:348px;
    height:280px;
  }
  .logoalliance{
    width:300px;
    height:82px;
    margin:75px 0 0;
  }
  .es .logoalliance{
    margin:30px 0;
  }
/*--------------WIDGETS--------------*/
  #mainNav .bx-villes{
    font-size:14px;
  }
  .bx-villes{
    top:45px;
  }
/*--------------FAMILLES--------------*/
  .accueilformations .familly > img{
    max-width: 45%;
  }
/*--------------PREFORMATES--------------*/
  /*Accueil 22*/
  #hometop{
    height:722px;
  }
  #hometop .owl-slider,
  #hometop .owl-slider .owl-item .mainImage{
    height:700px;
  }
  #hometop .owl-slider .owl-item img{
    height:700px;
  }
  /*Accueil centre 2026*/
  .homecentre #heading{
    height:700px;
  }
  .presentationville{
    background-position: 30% center;
  }
    /*page alliance francaise*/
  .alfrls{
    align-items:start;
  }
  .alfrl2{
    width:60%;
  }
}


@media only screen and (min-width:1440px){
  /*--------------STRUCTURE--------------*/
  .inner,
  .innerhome{max-width:1360px;}
  /*--------------NAVIGATION--------------*/
  #mainNav .firstLevel > li{
    margin:0 0 0 13px;
  }
  #mainNav .firstLevel > li > a{
    padding:7px 15px;
  }
/*--------------WIDGETS--------------*/
  #mainNav .bx-villes li a{
    font-size:14px;
  }
  #mainboxes [class*="bx-short-"]{
    margin:0 0 30px;
  }
/*--------------PREFORMATES--------------*/
/*Activites*/
  .activity{
    margin:0 1.5% 40px;
  } 
/*Accueil 26*/ 
  .home .entreecata:nth-of-type(-n + 3){
    margin-bottom:50px;
  }
  .entreecata .plus{
    display:block;
  }
  .entreecata h2 span{
    display:inline-block;
    margin:0 10px 0 0;
  }
  #hometop{
    margin:0 0 80px;
  }
  #zonerouge{
    padding-bottom: 220px;
    background-size: auto;
  }
  #zonerouge .video{
    width:45%;
    padding:25px 0 0 25px;
  }
  #zonerouge .content{
    width:50%;
    padding-right:100px;
  }
  #zonerouge .bienvenue{
    padding:0;
  }
  #zoneactus{
    padding:180px 0 0;
    margin-top:-180px;
  }
  #zoneactus .contentactus{
    padding-bottom: 160px;
  }
  .normandiepresentation{
    max-width:650px;
  }
  /*Accueil centre 2026*/
  .centrerouen #entreeswidgets{
    margin:50px 0 0;
  }
  .presentationville{
    margin-top:100px;
    padding-top:80px;
  }
  .presentationville .villeleft{
    margin:0 0 70px;
  }
  .presentationville .villeright,
  .bottomville .villeright{
    width:32%;
  }
  .bottomville .villeleft{
    padding-top:100px;
  }
/*--------------EVENEMENTS--------------*/
  #event_list .event{
    margin:0 1.6% 50px;
  }
  #event .deux_colonnes{
    display: flex;
    justify-content: space-between;
  }
  #event .deux_colonnes .colleft,
  #event .deux_colonnes .colright{
    width:47%;
  }
  #event .deux_colonnes .textAndImages img{
    max-width:200px;
  }
}


@media only screen and (min-width:1550px){
/*--------------STRUCTURE--------------*/
  .inner,
  .innerhome{max-width:1390px;}

  #head > .inner{
    max-width:1210px;
    position:relative;
  }
  #logo{
    margin-left:-150px;
  }
  #headboxes{
    position:relative;
    z-index:16;
  }
/*--------------NAVIGATION--------------*/
  #mainNav{
    right:-100px;
  }
  .es #mainNav{
    right:-150px;
  }
  #mainNav .firstLevel > li{
  }
  #mainNav .firstLevel > li > a{
    font-size:16px;
    padding:9px 15px;
  }
}


@media only screen and (min-width:1640px){
  #heading{
    height:400px;
  }
/*--------------PREFORMATES--------------*/
  /*Accueil 26*/
  #hometop{
    height:822px;
  }
  #hometop .owl-slider,
  #hometop .owl-slider .owl-item .mainImage{
    height:800px;
  }
  #hometop .owl-slider .owl-item img{
    height:800px;
    top:0;
    transform:translateX(-50%);
  } 
}


@media only screen and (min-width:1900px){
  #heading > img{
    max-width:inherit;
    width:100%;
  }
/*--------------PREFORMATES--------------*/
  /*Accueil 26*/
  #hometop .owl-slider .owl-item img{
    width:100%;
    height:auto;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
  }
  #zonerouge{
    background-size: 100%;
  }
}