/* === ARIEL-IA — CSS nettoyé (Dark/Cyan) === */

:root{
  --cyan: #00ffff;
  --bg-dark: #0e0e0e;
  --panel: #1a1a1a;
  --panel-2: #111;
  --text-light: #f4f4f4;
  --text-muted: #ccc;
}

/* Reset */
*{ margin:0; padding:0; box-sizing:border-box; }

/* Base */
body{
  font-family: Arial, sans-serif;
  background-color: var(--bg-dark);
  color: var(--text-light);
  padding-top: 100px;   /* réserve navbar fixed */
  padding-bottom: 70px; /* réserve footer fixed */
  line-height: 1.8;
}

/* --- Liens : IMPORTANT (corrige le violet visited) --- */
a,
a:visited{
  color: var(--cyan);
  text-decoration: none;
}

a:hover{
  color: #ffffff;
  text-decoration: underline;
}

/* --- Navigation --- */
nav{
  position: fixed;
  top:0; left:0;
  width:100%;
  height:100px;
  padding: 0 2em;
  background-color: var(--panel);
  border-bottom: 2px solid var(--cyan);
  box-shadow: 0 2px 8px rgba(0,255,255,0.2);
  z-index: 1000;

  display:flex;
  align-items:center;
  justify-content:space-between;
}

.nav-left{
  display:flex;
  align-items:center;
  gap:1em;
}

.nav-left img{
  height:60px;
  border-radius:8px;
  box-shadow: 0 0 12px rgba(0,255,255,0.4);
}

.nav-links{
  display:flex;
  gap:1em;
}

.nav-links a{
  color: var(--cyan);
  text-decoration:none;
  padding: 1em 1.5em;
  font-weight:bold;
  position:relative;
  transition: color 0.2s ease;
}

.nav-links a::after{
  content:'';
  position:absolute;
  left:0;
  bottom:8px;
  width:100%;
  height:2px;
  background-color: var(--cyan);
  transform: scaleX(0);
  transition: transform 0.3s ease;
}

.nav-links a:hover::after{
  transform: scaleX(1);
}

.nav-links a:hover{
  color:#ffffff;
}

/* --- Main / sections --- */
main{
  width: 100%;
}

.hero--monia {
  display: block;
  outline: 3px solid red;
}


.hero{
  /* Le conteneur principal des pages */
  max-width: 1000px;
  margin: 2em auto;
  padding: 0 1rem;

  display:flex;
  gap: 2em;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start; /* évite l’effet “flottant” vertical */
}

.hero--stack {
  flex-direction: column;
  align-items: center;
}


/* IMPORTANT : on ne bride plus toutes les images de .hero */
/* Cette règle ne vise que les images "directes" si tu en as. */
.hero > img{
  width: 200px;
  height: auto;
}

/* Texte */
.hero-text{
  max-width: 800px; /* un peu plus large que 600 pour le confort lecture */
}

.hero-text h2{
  color: var(--cyan);
  margin-bottom: 0.5em;
}

/* Paragraphes (on supprime les conflits footer p vs p global) */
p{
  text-align: justify;
  text-indent: 0;
  margin-bottom: 1.2em;
  color: var(--text-muted);
}

/* Intro */
.intro{
  font-style: italic;
  color: var(--cyan);
  border-left: 4px solid var(--cyan);
  padding-left: 1em;
  margin: 2em 0;
}

/* Listes custom */
.custom-list{
  list-style-type: none;
  padding-left: 1.5em;
}

.custom-list li::before{
  content: '✔️ ';
  color: var(--cyan);
  font-weight: bold;
}

/* --- MONIA : bloc image grand + centré --- */
.monia-architecture {
  flex: 0 0 100%;
  width: 100%;
  margin: 1.8em 0 2.2em;
}

.monia-architecture img {
  display: block;
  margin: 0 auto;
  width: 100%;
  max-width: 1200px;
  height: auto;
}

/* --- Iframe (si utilisé dans d'autres pages) --- */
iframe{
  width:100%;
  height: calc(100vh - 170px);
  border:none;
}

/* --- Footer --- */
footer{
  position: fixed;
  bottom:0; left:0;
  width:100%;
  background-color: var(--panel-2);
  color: var(--text-muted);
  text-align:center;
  padding: 0.8em;
  font-size: 0.9em;
  border-top: 1px solid var(--cyan);
  z-index: 999;
}

/* Les <p> du footer ne doivent pas hériter du justify global */
footer p{
  text-align: center;
  text-indent: 0;
  margin: 0.2em 0;
  color: var(--text-muted);
}

/* --- Responsive --- */
@media (max-width: 768px){
  .hero{
    flex-direction: column;
    align-items: center;
  }

  .hero-text{
    max-width: 100%;
  }
}
/* --- Lien “annonce Microsoft” en fin de page --- */
.monia-source{
  text-align:center;
  margin: 2.5em 0 0;
}

.monia-source a,
.monia-source a:visited{
  color: var(--cyan);
  font-weight: bold;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,255,255,0.0);
  transition: border-color 0.2s ease, color 0.2s ease;
}

.monia-source a:hover{
  color: #ffffff;
  border-bottom: 1px solid var(--cyan);
  text-decoration: none;
}