@charset "utf-8";
/* CSS Document */

html {
    scroll-behavior: smooth;
  }

header h1 {
  font-size: 2.5em;
  text-align: center;
  margin-bottom: 0.5em;
}

.intro {
  text-align: center;
  font-style: italic;
  color: #555;
  margin-bottom: 2em;
}

.bloc {
  margin-bottom: 3em;
  padding: 1.5em;
  border-left: 4px solid #ccc;
  background-color: #fafafa;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  opacity: 0;
  transform: translateY(20px);
  animation: fadeIn 1.2s ease-out forwards;
}

.bloc h2 {
  margin-top: 0;
}

/* Section colors */
.peur { border-color: #e74c3c; }
.fantasme { border-color: #9b59b6; }
.createurs { border-color: #f39c12; }
.espoir {
  border-color: #27ae60;
  background-color: #f0fff4;
}
.questions_reponses{
  border-color: #27ae60;
  background-color: #f0fff4;
}

.interview{ border-color: #e74c3c; }

.dialogues{ border-color: #9b59b6; }

. interdit{ border-color: #f39c12; }

.fragment{ border-color: #e74c3c; }

 .terrain{ border-color: #f0fff4; }

.bloc {
  opacity: 0;
  transform: translateY(20px);
  animation: fadeIn 1.2s ease-out forwards;
}

@keyframes fadeIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.nebulo-echo {
  font-style: italic;
  color: #7f8c8d;
  text-align: right;
  margin-top: 1em;
}

.cognacnebula {
  background: linear-gradient(90deg, #8e44ad, #f39c12, #3498db);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: nebuloPulse 4s infinite ease-in-out;
  text-shadow: 0 0 8px rgba(255, 255, 255, 0.2);
}

@keyframes nebuloPulse {
  0% { text-shadow: 0 0 8px rgba(255, 255, 255, 0.2); }
  50% { text-shadow: 0 0 16px rgba(255, 255, 255, 0.4); }
  100% { text-shadow: 0 0 8px rgba(255, 255, 255, 0.2); }
}

 .menu-card { background:rgba(20,20,30,0.92); border-left:4px solid #f39c12; }

html {
  scroll-behavior: smooth;
}

.mot-cle-card {
  background-color: #f9f9fc;
  border-left: 4px solid #a29bfe;
  padding: 1.5em;
  margin: 1.5em 0;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.mot-cle-titre {
  font-family: 'Georgia', serif;
  font-size: 1.5em;
  color: #4b4b7e;
  margin-bottom: 0.5em;
}

.mot-cle-texte {
  font-size: 1em;
  line-height: 1.6;
  color: #333;
}

.mot-cle-card::before {
  content: "★";
  font-size: 1.2em;
  color: #ff7675;
  margin-right: 0.5em;
}

/* Responsive */
@media screen and (max-width: 600px) {
 
  main {
    padding: 1em;
  }

  header h1 {
    font-size: 1.8em;
  }

  .bloc {
    padding: 1em;
  }
}

/* Cognacnebula effect */
.cognacnebula {
  background: linear-gradient(90deg, #8e44ad, #f39c12, #3498db);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: nebuloPulse 4s infinite ease-in-out;
  text-shadow: 0 0 8px rgba(255, 255, 255, 0.2);
}

/* Pulsation */
@keyframes nebuloPulse {
  0% { text-shadow: 0 0 8px rgba(255, 255, 255, 0.2); }
  50% { text-shadow: 0 0 16px rgba(255, 255, 255, 0.4); }
  100% { text-shadow: 0 0 8px rgba(255, 255, 255, 0.2); }
}

/* Fade-in animation */
@keyframes fadeIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.haut{
	display:none
}

.cognacnebula2 {
      background: linear-gradient(90deg, #8e44ad, #f39c12, #3498db);
      background-clip: text;
      -webkit-background-clip: text;
      color: transparent;
      animation: nebuloPulse 4s infinite ease-in-out;
      text-shadow: 0 0 8px rgba(255, 255, 255, 0.2);
    }
    @keyframes nebuloPulse2 {
      0% { text-shadow: 0 0 8px rgba(255,255,255,0.2); }
      50% { text-shadow: 0 0 16px rgba(255,255,255,0.4); }
      100% { text-shadow: 0 0 8px rgba(255,255,255,0.2); }
    }
	
	.element {
    border-top: 3px #EB5353 dotted;
    border-right: 3px #F9D923 double;
    border-bottom: 3px #36AE7C dashed;
    border-left: 3px #187498 solid;
}

.element_footer {
    border-top: 3px #36AE7C dotted;
	padding-bottom:20px;}
	
	
.element_img {
	font-size: 25px;
	background-color: #FF9;
	border-radius: 10px;
	box-shadow: 6px 6px 25px rgba(0, 0, 0, 0.5);
	padding: 50px;
	max-width:inherit;
}

h1 {
    font-size: 50px;
    text-shadow: 3px 3px 0px rgba(0,0,0,0.2);
    padding: 100px;
}

.cartes_liens{
	color:#FFF;}
	
ul {
  list-style-type : none;
}
.tableau2{padding-top:30px;}

}
.tableau3{padding:30px;}


.serment blockquote {
    border-left: 5px solid #00bfff; /* Bleu quantique */
    padding: 10px 20px;
    margin: 10px 0;
    background-color: rgba(0, 191, 255, 0.1); /* Fond léger glow */
    color: #fff;
  }
  .serment a {
    color: #00bfff;
    text-shadow: 0 0 5px #00bfff; /* Glow sur liens */
  }
  #serments-gardiens ul li a {
    color: #00bfff;
    text-shadow: 0 0 5px #00bfff;
  }


/* The actual timeline (the vertical ruler) */
.main-timeline-2 {
  position: relative;
}

/* The actual timeline (the vertical ruler) */
.main-timeline-2::after {
  content: "";
  position: absolute;
  width: 3px;
  background-color: #26c6da;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -3px;
}

/* Container around content */
.timeline-2 {
  position: relative;
  background-color: inherit;
  width: 50%;
}

/* The circles on the timeline */
.timeline-2::after {
  content: "";
  position: absolute;
  width: 25px;
  height: 25px;
  right: -11px;
  background-color: #26c6da;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
}

/* Place the container to the left */
.left-2 {
  padding: 0px 40px 20px 0px;
  left: 0;
}

/* Place the container to the right */
.right-2 {
  padding: 0px 0px 20px 40px;
  left: 50%;
}

/* Add arrows to the left container (pointing right) */
.left-2::before {
  content: " ";
  position: absolute;
  top: 18px;
  z-index: 1;
  right: 30px;
  border: medium solid white;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent white;
}

/* Add arrows to the right container (pointing left) */
.right-2::before {
  content: " ";
  position: absolute;
  top: 18px;
  z-index: 1;
  left: 30px;
  border: medium solid white;
  border-width: 10px 10px 10px 0;
  border-color: transparent white transparent transparent;
}

/* Fix the circle for containers on the right side */
.right-2::after {
  left: -14px;
}

/* Media queries - Responsive timeline on screens less than 600px wide */
@media screen and (max-width: 600px) {
  /* Place the timelime to the left */
  .main-timeline-2::after {
    left: 31px;
  }

  /* Full-width containers */
  .timeline-2 {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }

  /* Make sure that all arrows are pointing leftwards */
  .timeline-2::before {
    left: 60px;
    border: medium solid white;
    border-width: 10px 10px 10px 0;
    border-color: transparent white transparent transparent;
  }

  /* Make sure all circles are at the same spot */
  .left-2::after,
  .right-2::after {
    left: 18px;
  }

  .left-2::before {
    right: auto;
  }

  /* Make all right containers behave like the left ones */
  .right-2 {
    left: 0%;
  }
}
