@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Open+Sans');/*font-family: 'Open Sans', sans-serif;*/
@import url('https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300');/*font-family: 'Open Sans Condensed', sans-serif;*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300&display=swap');/*font-family: 'Poppins', sans-serif;*/
@import url('https://fonts.googleapis.com/css2?family=Yeseva+One&display=swap');/*font-family: 'Yeseva One', cursive;*/



/* HEADER */
/*#header { background:#fff; width: 100%; height: 200px; background-size:100%;}*/


/*HEADER VIDEO*/
#header { background:#fff; background-size: 100%; height: auto; color:#fff}
#logo {text-align:center; margin-top:10px}
#slogan p {font-size:20px; font-family: 'Poppins', sans-serif; margin-top:20px; color:#333333; line-height: 1.2em}
#slogan p a {color:#333333}
#slogan p a:hover {text-decoration: none}
#slogan .icone {text-align: right; padding:5px 0px}
#slogan .icone a {color:#fff}
#slogan .icone a:hover {text-decoration: none; color:#000}
#slogan .langue p  {text-align: center; font-size: 14px; margin-top:0px}



@media (max-width: 1024px) {
#header { background:#fff; background-size: 100%; height: auto; color:#fff}
#logo {text-align:center}
#slogan p {font-size:20px;text-align:center; margin-top:10px}
#slogan p a{}
#slogan .icone {text-align: center; padding-top: 15px}
#slogan .langue p  {text-align: center; font-size: 14px; margin-top:0px}
}
/*HEADER*/


/*MENU*/
.bg-light {
background-color: #31512c !important;
}

.navbar-brand {
	display: none!important
}
.navbar-brand.scrolled{
display: block!important
}

.navbar-nav { margin: 0 auto}

@media (max-width: 992px) {
.navbar-nav {margin: 20px 0px;}
.bg-light {background-color: #31512c !important;}
}

.navbar-nav.active { display: block}
.navbar-light .navbar-nav .active > .nav-link, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light .navbar-nav .show > .nav-link {
color: #31512c;
background-color:  #fff;
    border-radius:10px
}


.navbar-light .navbar-nav .nav-link {
    color: #fff;
	 font-family: 'Poppins', sans-serif;
	font-size:16px;
    border-radius:10px
}


.navbar-light .navbar-nav .nav-link:hover {
color: #31512c;
background-color:  #fff;
    border-radius:10px
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 1rem;
    padding-left: 1rem;
}

.dropdown-item {
    color:#000; font-family: 'Poppins', sans-serif;
	font-size:20px
}
.dropdown-item:focus, .dropdown-item:hover {
    color: #fff;
    background-color:#333333;
}

.navbar-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}


/*Custom ouverture menu mobile*/
@media (max-width: 992px) {
.navbar-collapse {
        position: absolute;
        top: 54px;
        left: 0;
        padding-left: 15px;
        padding-right: 15px;
        padding-bottom: 15px;
        width: 100%;
    }
.navbar-collapse.collapsing {
        height: auto;
        -webkit-transition: left 0.3s ease;
        -o-transition: left 0.3s ease;
        -moz-transition: left 0.3s ease;
        transition: left 0.3s ease;
        left: -100%;
    }
.navbar-collapse.show {
        left: 0;
        -webkit-transition: left 0.3s ease-in;
        -o-transition: left 0.3s ease-in;
        -moz-transition: left 0.3s ease-in;
        transition: left 0.3s ease-in;
		background-color:#31512c;height: 900px;
		text-align: center;
    }
 }
/*MENU*/



/*INTEGRATION*/
a, a:hover {color:#000; text-decoration: none}

#section1 {background: none}
#section1 h1 {color:#333333; line-height: 1.4em}
#section1 h2 {color:#333333 !important; line-height: 1.4em}
#section1 h3  {color:#333333 !important; line-height: 1.4em}
#section1 h4 {color:#333333 !important; line-height: 1.4em}
#section1 h5 {color:#333333 !important; line-height: 1.4em}
#section1 h4 {color:#333333 !important; line-height: 1.4em}
#section1 p {color:#0A0A0A;}

#section2 {background: url("../../../assets/theme1/charte/back-section2.webp") no-repeat; background-color : #0A0A0A; background-size: 100%}
#section2 h1 {color:#fff; line-height: 1.4em}
#section2 h2, h3,  h5 {color:#fff !important; line-height: 1.4em}
#section2  h4 {color:#fff !important; line-height: 1.4em}
#section2 p {color:#fff;}
#section2 i {color:#fff;}

#section3 {background: none}
#section3 h1 {color:#333333; line-height: 1.4em}
#section3 h2, h3, h4, h5 {color:#333333 !important; line-height: 1.4em}
#section3 h5 {color:#333333 !important; line-height: 1.4em}
#section3 p {color:#000;}

#section4 {background: none}
#section4 h1 {color:#333333; line-height: 1.4em}
#section4 h2, h3, h4, h5 {color:#333333 !important; line-height: 1.4em}
#section4 p {color:#000;}

#section5 {background: #31512c}
#section5 h1 {color:#fff; line-height: 1.4em}
#section5 h2 {color:#fff; line-height: 1.4em}
#section5 h3, h4 {color:#fff !important; line-height: 1.4em}
#section5 h5 {color:#fff !important; line-height: 1.4em}
#section5 p {color:#fff;}


#section-parallax img {padding-top:150px;}
#section-parallax h2 { color:#000; text-align: center }

@media (max-width: 1400px) {
    #section-parallax h2 {padding-top:50px}
    #section-parallax img {padding-top:50px;}
}


@media (max-width: 992px) {
    #section-parallax h2 {padding-top:50px}
    #section-parallax img {padding-top:50px;}
}

.parallax {
    /* The image used */
    background-image: url("../../../assets/theme1/charte/img-parallax.webp");
    /* Set a specific height */
    height:600px;
    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media only screen and (max-device-width: 1366px) {
    .parallax {
        background-attachment: scroll;
        height:500px;
    }
}
/*boutons custom bootstrap*/
.btn-custom {
	color: #fff;
    background-color: #333;
    border-color: #333;
}
.btn-custom:hover, .btn-custom:focus, .btn-custom:active, .btn-custom.active, .open>.dropdown-toggle.btn-custom {
    color: #fff;
    background-color: #333;
    border-color: #333; /*set the color you want here*/
}
/*fin boutons custom bootstrap*/


/*boutons custom bootstrap*/
.button {
  flex: 1 1 auto;
  margin: 0px;
  padding: 20px;
  border: 2px solid #fff;
  text-align: center;
  text-transform: uppercase;
  position: relative;
  overflow: hidden;
  transition: 0.3s; color:#000; background:#fff;   border-radius: 30px;
}
.button:after {
  position: absolute;
  transition: 0.3s;
  content: "";
  width: 0;
  left: 50%;
  bottom: 0;
  height: 3px;
  background: #000;
}
.button:hover:nth-of-type(1) {
  border-radius: 30px; margin-left:20px
}
.button:hover:nth-of-type(1):after {
  width: 0%;
}
.button:hover {
  cursor: pointer;
}
.button:hover:after {
  width: 100%;
  left: 0;
}
/*Fin Boutons*/




/*boutons custom bootstrap*/
.button2 {
    flex: 1 1 auto;
    margin: 0px;
    padding: 20px;
    border: 2px solid #31512c;
    text-align: center;
    text-transform: uppercase;
    position: relative;
    overflow: hidden;
    transition: 0.3s; color:#fff; background:#31512c;   border-radius: 30px;
}
.button2:after {
    position: absolute;
    transition: 0.3s;
    content: "";
    width: 0;
    left: 50%;
    bottom: 0;
    height: 3px;
    background: #000;
}
.button2:hover:nth-of-type(1) {
    border-radius: 30px; margin-left:20px
}
.button2:hover:nth-of-type(1):after {
    width: 0%;
}
.button2:hover {
    cursor: pointer;
}
.button2:hover:after {
    width: 100%;
    left: 0;
}
/*Fin Boutons*/

/*survol sur le photobox*/
.survol {color:#fff}
/*survol sur le photobox*/


/*FIN INTEGRATION*/


/*FOOTER*/
footer {
background: #fff;
padding: 20px;
min-height: 100px;
}
footer h2 {color: #333333; font-size:18px}
footer p {color: #333333; font-size:14px}
footer p a {color: #333333; }
footer p a:hover {color:#333333; text-decoration: none}
footer hr {border-color:#333333;margin: 0rem 0 !important;}
footer ul.list-unstyled li a {color: #333333}
footer .rubrique { color: #333333}
/*FOOTER*/


.encart { background-color: #9e9e9e;border: 1px solid #eee; padding:20px; border-radius: 10px}



/*3 BLOCS*/
:root{
    --moss-dark:#223420;
    --paper:#F3EFE2;
    --moss:#4F6B45;
    --bark:#8A6E4E;
    --straw:#D8CBA0;
}

.process-section{
    background:var(--paper);
    color:var(--moss-dark);
    font-family:'Work Sans', sans-serif;
    padding:96px 0 104px;
}

.process-eyebrow{
    display:flex; align-items:center; gap:12px;
    font-size:13px; letter-spacing:.16em; text-transform:uppercase;
    color:var(--bark); margin-bottom:18px;
}
.process-eyebrow::before{ content:""; width:28px; height:1px; background:var(--bark); }

.process-title{

    font-weight:500;
    font-size:clamp(30px, 4vw, 50px);
    line-height:1.1;
    letter-spacing:-.01em;
    max-width:16ch;
    margin-bottom:18px;
}
.process-title em{ font-style:italic; color:var(--moss); }

.process-lede{
    max-width:50ch;
    font-size:16px;
    line-height:1.65;
    color:#3d4a37;
    margin-bottom:56px;
}

/* --- stage card --- */
.stage-card{ height:100%; }

.stage-photo{
    position:relative;
    border-radius:6px;
    overflow:hidden;
    aspect-ratio:4/5;
    background:var(--straw);
}
.stage-photo img{
    width:100%; height:100%;
    object-fit:cover;
    display:block;
}
.stage-photo::after{
    content:"";
    position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(34,52,32,0) 55%, rgba(34,52,32,.35) 100%);
}

.stage-index{
    position:absolute;
    top:16px; right:16px;
    z-index:2;
    width:52px; height:52px;
    border-radius:50%;
    background:var(--paper);
    display:flex; align-items:center; justify-content:center;

    font-style:italic;
    font-size:19px;
    color:var(--moss-dark);
    box-shadow:0 2px 10px rgba(34,52,32,.18);
}

.stage-name{

    font-weight:500;
    font-size:22px;
    margin:22px 0 10px;
}

.stage-text{
    font-size:15px;
    line-height:1.65;
    color:#3d4a37;
    margin-bottom:0;
}

@media (max-width:767.98px){
    .process-section{ padding:72px 0 88px; }
}
/*3 BLOCS*/

/* --- Emplacements images / pictos istock à intégrer --- */
.media-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    width:100%;
    height:100%;
    min-height:320px;
    padding:1.25rem;
    background:#f2f4f1;
    border:2px dashed #31512c;
    border-radius:8px;
    color:#31512c;
}
.media-placeholder__inner{ display:block; }
.media-placeholder i{ display:block; font-size:2rem; margin-bottom:.5rem; }
.media-placeholder__label{ display:block; font-weight:600; }
.media-placeholder__ref{ display:block; font-size:.8rem; opacity:.75; margin-top:.15rem; }

.media-placeholder--picto{
    width:110px;
    height:110px;
    min-height:110px;
    margin:0 auto;
    border-radius:50%;
    padding:.5rem;
}
.media-placeholder--picto i{ font-size:1.5rem; margin-bottom:.15rem; }
.media-placeholder--picto .media-placeholder__ref{ font-size:.6rem; line-height:1.1; }

/* --- Accueil : zone 5 (horaires + réseaux sociaux sur fond photo) --- */
/* EMPLACEMENT PHOTO : fond = photo istock n°93269460 + filtre
   (à placer dans assets/theme1/charte/zone5-bg.webp) */
.zone5{
    position:relative;
    background:url("../../../assets/theme1/charte/back1.webp") center center / cover no-repeat;
}
.zone5::before{
    content:"";
    position:absolute; inset:0;
}
.zone5 > .container{ position:relative; z-index:1; }
.zone5__panel{
    background:rgba(0,0,0,.38);
    border:1px solid rgba(255,255,255,.18);
    border-radius:8px;
    padding:2rem;
    height:100%;
    color:#fff;
}
.zone5__panel h2,
.zone5__panel h3,
.zone5__panel p,
.zone5__panel td,
.zone5__panel a{ color:#fff !important; }
.zone5__panel table td{ padding:.35rem .5rem; border:0; }
.zone5__social a{ font-size:2.2rem; }

/* --- Accueil : zone 3 (boutons services sur une ligne) --- */
.services-buttons{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:1rem;
}


