/*PARTIE GALERIE + MENTIONS + COOKIE*/
@font-face {
  font-family: "Yusei Magic";
  src: url("fonts/YuseiMagic-Regular.ttf") format("truetype");
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "YuseiMagic";
}

:root {
  --dark-color: #1c3246;
  --light-color: #ede4d9;
  --mid-color: #e5b385;
  --yellow-color: #e6ba3b;
  --darkorange-color: #dd481f;
  --midorange-color: #ea6737;
  --yusei-magic: "Yusei Magic", sans-serif;
}

html
{  
 scroll-behavior: smooth;
}

body{
   position:relative;
}

.home-body{
	background-color: #e5b385;
}

.galery-light-bg {
  background-color: var(--light-color);
}

.galery-dark-bg {
  background-color: var(--dark-color);
}

.galery-mid-bg {
  background-color: var(--mid-color);
}

.galery-yellow-bg {
  background-color: var(--yellow-color);
}

.galery-darkorange-bg {
  background-color: var(--darkorange-color);
}

.galery-midorange-bg {
  background-color: var(--midorange-color);
}

.galery-light-color {
  color: var(--light-color) !important;
}

.galery-dark-color {
  color: var(--dark-color);
}

.galery-mid-color {
  color: var(--mid-color);
}

.galery-yellow-color {
  color: var(--yellow-color);
}

.galery-darkorange-color {
  color: var(--darkorange-color);
}

.galery-midorange-color {
  color: var(--midorange-color);
}

.navbar{
   box-shadow:
      0px 0px 1px -1px var(--darkorange-color),
      0px 1px 1px -1px var(--darkorange-color),
      0px 2px 1px -1px var(--darkorange-color),
      0px 3px 1px -1px var(--darkorange-color),
      0px 4px 1px -1px var(--darkorange-color),
      0px 5px 1px -1px var(--darkorange-color);
      position:relative;
      z-index: 2;
}

.navbar-toggler-icon {
  filter: invert(1);
}

.nav-link {
  transition: border 0.125s ease-in-out;
  border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
}
.nav-link:hover {
  border-bottom: 5px solid var(--light-color);
  padding-left: 0.5em;
}

.galery-main-content {
  width: 100vw;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: stretch;
  align-items: stretch;
}

.galery-sections {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0.5em;
}

.galery-sections-title {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  color: var(--light-color);
  text-shadow: 2px 1px 1px var(--dark-color);
  font-family: var(--yusei-magic);
}

.galery-grid-container {
  width: 100%;
  min-height: 100vh;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  grid-auto-rows: auto;
  grid-auto-flow: dense;
  gap: 2em;
}

.galery-grid-container figure{
   width:100%;
   max-height:200px;
   display:flex;
   justify-content:center;
   align-items:center;
   flex-wrap:wrap;
   position:relative;
   z-index:1;
   overflow:hidden;
   border-radius:5px;
   box-shadow: 0px 0px 4px -1px var(--dark-color),
     0px 2px 2px -1px var(--dark-color);
}

.galery-grid-container figure figcaption{
   display:flex;
   text-align:center;
   flex-wrap:wrap;
   font-size:2em;
   color: var(--light-color);
   text-shadow: 1px 1px 1px var(--dark-color);
   font-family: var(--yusei-magic);
   position:absolute;
   bottom:0;
   right:0;
   padding:0.25em;
   border-top-left-radius:12.5px;
   background-color:var(--dark-color);
   pointer-events:none;
   opacity:0;
   transition:opacity 0.175s ease-in-out;
}

.galery-grid-container figure img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center;
  transition: border 0.175s ease-in-out;
  margin: 0 auto;
  border:1em solid transparent;
  border-radius:5px;
  background:var(--midorange-color);
}
.galery-grid-container figure img:hover{
   border:0 solid transparent;
   box-shadow: none;
}.galery-grid-container figure img:hover + figcaption{
   opacity:1;
}.galery-grid-container figure img:active + figcaption{
   width:100%;
   height:100%;
   border-radius:5px;
   opacity:1;
}

.cookies-container{
   width:100%;
   max-width:100%;
   display:flex;
   justify-content:center;
   align-items:center;
   flex-wrap:wrap;
   text-align:center;
   overflow-y:auto;
   word-wrap:break-word;
   position:fixed;
   bottom:0;
   background-color:var(--dark-color);
   color:var(--light-color);
   z-index:9999999;
   padding:0.5em;
   box-shadow:
    0px 1px 2px -1px var(--light-color),
    0px 2px 2px -1px var(--light-color),
    0px 3px 2px -1px var(--light-color),
    0px -1px 2px -1px var(--light-color),
    0px -2px 2px -1px var(--light-color),
    0px -3px 2px -1px var(--light-color);
}
.cookies-container h2{
   width:100%;
   font-size:1.4em;
   display:flex;
   justify-content:center;
   align-items:center;
   flex-wrap:wrap;
   margin:0 auto;
}
.cookies-container p{
   width:calc(100% - 1em);
   font-size:0.95em;
   display:flex;
   justify-content:center;
   align-items:center;
   flex-wrap:wrap;
   text-align:center;
   margin:0.15em auto;
   word-wrap:break-word;
}
.cookies-container p a{
   display:flex;
   justify-content:center;
   align-items:center;
   margin:0 0.2em;
   color:var(--yellow-color);
   transition:color 0.125s ease-in-out;
}
.cookies-container p a:hover,
.cookies_container p a:focus,
.cookies-container p a:visited,
.cookies-container p a:visited:hover,
.cookies-container p a:visited:focus{
   cursor:pointer;
   color:var(--midorange-color);
   font-style:italic;
}
.cookies-container p a:active{
   color:var(--yellow-color);
}
.cookies-cta-line{
  width:100%;
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:0.25em;
  grid-auto-rows:auto;
  grid-auto-flow:row dense;
  padding:0.5em;
}
#cookies-cta{
   display:flex;
   justify-content:center;
   align-items:center;
   text-align:center;
   margin:0 auto;
   font-size:1em;
   padding:0.15em 0.25em;
   background-color:var(--yellow-color);
   color:var(--dark-color);
   border:none;
   font-family:var(--yusei-magic);
   grid-column:3/4;
}
#cookies-cta:hover{
   background-color:var(--darkorange-color);
   color:var(--light-color);
}
#cookies-cta-refuse{
   display:flex;
   justify-content:center;
   align-items:center;
   text-align:center;
   margin:0 auto;
   font-size:1em;
   padding:0.15em 0.25em;
   background-color:var(--mid-color);
   color:var(--dark-color);
   border:none;
   font-family:var(--yusei-magic);
   grid-column:4/5;
}
#cookies-cta-refuse:hover{
   background-color:var(--darkorange-color);
   color:var(--light-color);
}

.main-sections-content{
  font-family:system-ui,sans-serif;
  font-weight:400;
  color:var(--dark-color);
}
.main-sections-content b,
.main-sections-content b span{
  font-family:var(--yusei-magic);
}

.main-sections-content a{
  font-size:1.05em;
  color:var(--darkorange-color);
  font-weight:500;
  text-decoration:none;
}.main-sections-content a:hover{
  color:var(--midorange-color);
}

@media all and (max-width: 1210px){
  .cookies-cta-line{
    grid-template-columns:repeat(4,1fr);
  }
  #cookies-cta{
    grid-column:2;
  }
  #cookies-cta-refuse{grid-column:3;}
}

@media all and (max-width: 966px) {
  .nav-link {
    border-bottom: none;
    border-left: 5px solid transparent;
  }
  .nav-link:hover {
    border-bottom: none;
    border-left: 5px solid var(--light-color);
    padding-left: 0.5em;
  }
}

@media all and (max-width: 820px){
  .galery-sections-title {
    font-size:1.2em;
  }
  .galery-grid-container {
    grid-template-columns:1fr;
  }
  .cookies-cta-line{
    grid-template-columns:repeat(2,1fr);
    gap:0.5em;
  }
  #cookies-cta{
    grid-column:1/-1;
  }
  #cookies-cta-refuse{grid-column:1/-1;}
}
/*********************** CSS de la page A propos  */
.apropos{
    background-color: #ede4d9;
}
.indent_aPropos{
    text-indent: 5%;
}
.citation_aPropos{
    background-color:#e5b385 ; 
    padding: 5%;
    border-radius: 10%;
}
.galerie_aPropos{
    background-color:#ede4d9;
    z-index:1;
}

/****************** Fin du CSS de la page A propos */

/*CSS PARTIE HOME*/
.carousel-inner img {
  height: 250px;
}
#banner
{
 position: absolute;
 width: 100%;
 top:50%;
 transform: translateY(-50%);
 left: 0;
 flex-direction: column;
 justify-content:space-between;
 align-items:center;
 display: flex;
 gap:1.5em;
 padding: 0.5em;
 background-color: rgba(255,255,255,0.3);
 
}
.aIcon
{
 color: var(--light-color);
 text-shadow: 0px 2px 0px var(--dark-color),
 0px 3px 0px var(--dark-color),
 0px 4px 0px var(--dark-color),
 0px 5px 0px var(--dark-color);
}
.aIcon i
{
 animation-name:boom;
 animation-duration:1s;
 animation-timing-function:ease;
 animation-iteration-count:infinite;
 color: #1C3246;
}
#banner h1
{
 color: var(--dark-color);
 font-family:var(--yusei-magic);
 font-size: 4em;
 font-weight: 700;
}
#imgFluid
{
height:100vh; 
object-fit:cover;
}
@keyframes boom{ 
 0%{
    transform: scale(1);
 }
 40%{
    transform: scale(0.2);
 } 
 60%{
    transform: scale(1.2);
 }
 100%{
    transform: scale(1);
    }
}
/*END CSS PARTIE HOME*/
/********************************** CSS du footer  */
#footer{
    background-color:#1c3246 ;
}
/****************** Fin du CSS du footer */