:root{
  /* Couleurs principales */
  --parme: #4c3a63;
  --parme-2: #5a4476;
  --aqua: #6fc6c3;            /* vert d'eau */
  --aqua-2: #8bd9d6;

  /* Mélange parme + aqua (pour la nav) */
  --nav-mix-1: #503f6b;
  --nav-mix-2: #4a5d74;
  --nav-mix-3: #3f6e73;

  /* Accents */
  --ink: #241b22;
  --rose: #e07898;
  --rose-soft: #f2b7c8;
  --gold: #c9a86a;

  /* Fond crème dégradé */
  --cream-1: #fff6ea;
  --cream-2: #f7efe6;
  --cream-3: #efe6f2;

  --shadow: 0 18px 60px rgba(0,0,0,.14);
  --radius: 18px;
  --max: 1120px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;

  /* FOND ARGENT (métallique) + reflets doux */
  background:
    /* reflets rose/or très subtils (signature féérique) */
    radial-gradient(900px 520px at 70% 18%, rgba(224,120,152,.10), transparent 60%),
    radial-gradient(900px 520px at 25% 85%, rgba(201,168,106,.08), transparent 55%),

    /* reflets froids argentés */
    radial-gradient(900px 520px at 55% 55%, rgba(120,140,160,.12), transparent 62%),
    radial-gradient(900px 520px at 35% 35%, rgba(210,220,230,.16), transparent 62%),

    /* dégradé principal argent (effet métal) */
    linear-gradient(135deg,
      #f7f7f8 0%,
      #eceef1 18%,
      #f9f9fa 38%,
      #dfe3e8 58%,
      #f6f6f7 78%,
      #e6e9ee 100%);

  color: var(--ink);
  font-family: "Cormorant Garamond", serif;
  letter-spacing:.2px;
  overflow-x:hidden;
  background-attachment: fixed;
}
a{color:inherit; text-decoration:none}
.container{width:min(var(--max), 92vw); margin:0 auto}

/* ===== CANVAS ÉTOILES ===== */
#stars{
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  mix-blend-mode: soft-light;
  opacity: .55;
}


/* ===== HEADER / NAV : MIX PARME + VERT D'EAU ===== */
.site-header{
  position: sticky;
  top: 0;
  z-index: 50;
  background:
    linear-gradient(135deg,
      rgba(80,63,107,.96),
      rgba(74,93,116,.92) 45%,
      rgba(63,110,115,.90));
  border-bottom: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(10px);
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  padding: 12px 0;
  position: relative;
  z-index: 2;
}
.logo{
  height: 100px;
  width: auto;
  display:block;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  border: 1px solid rgba(242,183,200,.25);
}

/* Navigation */
.nav{
  display:flex;
  align-items:center;
  gap: 16px;
  flex-wrap:wrap;
  justify-content:flex-end;
  color: rgba(255,255,255,.92);
  font-size: 18px;
}
.nav a{opacity:.92}
.nav a:hover{
  opacity:1;
  text-decoration: underline;
  text-decoration-color: rgba(242,183,200,.70);
  text-underline-offset: 6px;
}

/* Boutons */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid rgba(242,183,200,.35);
  background: rgba(255,255,255,.22);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
  font-size: 17px;
  white-space:nowrap;
}
.btn:hover{
  transform: translateY(-1px);
  border-color: rgba(242,183,200,.72);
  box-shadow: 0 14px 40px rgba(0,0,0,.10);
}
.btn-primary{
  background: linear-gradient(135deg, rgba(224,120,152,.36), rgba(201,168,106,.18));
  border-color: rgba(224,120,152,.62);
}
.btn-ghost{background: rgba(255,255,255,.16)}
.btn-small{padding: 8px 12px; font-size: 16px}

/* Main */
main{position: relative; z-index: 2}

/* Hero */
.hero{padding: 64px 0 26px}
.hero-grid{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 22px;
  align-items: start;
}
.kicker{
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  opacity:.86;
  margin: 0 0 8px;
}
.kicker-gold{color: rgba(201,168,106,.95)}
.hero h1{
  font-family: "UnifrakturCook", serif;
  font-size: clamp(44px, 5.2vw, 76px);
  line-height: 1.02;
  margin: 0 0 10px;
  color: rgba(36,27,34,.95);
  text-shadow:
    0 18px 45px rgba(224,120,152,.14),
    0 6px 18px rgba(76,58,99,.10);
}
.lead{
  margin: 0 0 18px;
  font-size: 21px;
  line-height: 1.5;
  color: rgba(36,27,34,.78);
  max-width: 58ch;
}
.hero-cta{display:flex; gap: 12px; flex-wrap:wrap; margin-top: 8px}
.sigils{
  margin-top: 18px;
  display:flex;
  gap: 10px;
  color: rgba(201,168,106,.85);
  font-size: 18px;
}

/* Hero card */
.hero-card{
  background: linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.40));
  border: 1px solid rgba(255,255,255,.62);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: var(--shadow);
  position: relative;
  overflow:hidden;
}
.hero-card::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(420px 220px at 30% 20%, rgba(224,120,152,.16), transparent 60%),
    radial-gradient(380px 240px at 70% 70%, rgba(76,58,99,.12), transparent 60%),
    radial-gradient(380px 240px at 50% 85%, rgba(111,198,195,.10), transparent 60%),
    radial-gradient(380px 240px at 40% 85%, rgba(201,168,106,.10), transparent 60%);
  opacity:.95;
  pointer-events:none;
}
.hero-card > *{position:relative; z-index:1}

.pill-list{
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
  display:grid;
  gap: 8px;
}
.pill-list li{
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(224,120,152,.14);
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 17px;
  color: rgba(36,27,34,.86);
}
.divider{
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(224,120,152,.55), transparent);
  margin: 14px 0;
}
.soft{
  color: rgba(36,27,34,.74);
  font-size: 18px;
  line-height: 1.45;
}
.mini-cta{display:flex; gap: 10px; flex-wrap:wrap; margin-top: 12px}

/* Sections */
.section{padding: 34px 0}
.section-head h2{
  margin: 0 0 6px;
  font-size: 34px;
  color: rgba(36,27,34,.95);
}
.section-head p{
  margin: 0;
  color: rgba(75,1,58,1);
  font-size: 19px;
  max-width: 72ch;
}

/* Cards univers */
.cards{
  margin-top: 16px;
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.card{
  background: linear-gradient(180deg, rgba(255,255,255,.60), rgba(255,255,255,.36));
  border: 1px solid rgba(255,255,255,.62);
  border-radius: var(--radius);
  padding: 16px;
  box-shadow: 0 16px 50px rgba(0,0,0,.10);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
  position: relative;
  overflow:hidden;
  min-height: 150px;
}
.card::after{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(300px 180px at 20% 20%, rgba(201,168,106,.12), transparent 60%),
    radial-gradient(360px 220px at 80% 70%, rgba(224,120,152,.14), transparent 60%),
    radial-gradient(360px 220px at 55% 55%, rgba(76,58,99,.10), transparent 62%),
    radial-gradient(360px 220px at 35% 40%, rgba(111,198,195,.10), transparent 62%);
  opacity:.85;
  pointer-events:none;
}
.card > *{position:relative; z-index:1}
.card:hover{
  transform: translateY(-2px);
  border-color: rgba(224,120,152,.34);
  box-shadow: 0 22px 60px rgba(0,0,0,.12);
}
.card h3{margin: 0 0 8px; font-size: 22px; color: rgba(36,27,34,.95)}
.card p{margin: 0 0 12px; color: rgba(75,1,58,1); font-size: 18px}
.card-link{
  color: rgba(224,120,152,.92);
  font-size: 17px;
  text-decoration: underline;
  text-underline-offset: 5px;
}

/* ===== GUIDANCES 2 PERSONNES ===== */
.split-guidances{padding-top: 18px}

.duo{
  margin-top: 16px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.persona{
  border-radius: var(--radius);
  overflow:hidden;
  box-shadow: 0 22px 70px rgba(0,0,0,.12);
  border: 1px solid rgba(255,255,255,.55);
  position: relative;
}

/* Aéloria : parme */
.persona-aeloria{
  background: linear-gradient(135deg, rgba(76,58,99,.96), rgba(255,255,255,.96));
  color: rgba(255,255,255,.92);
}

/* Brisylis : vert d'eau */
.persona-brisylis{
  background: linear-gradient(135deg, rgba(111,198,195,.92), rgba(139,217,214,.88));
  color: rgba(19,24,28,.92);
}

.persona-media{
  position: relative;
  height: 500px;
  overflow:hidden;
}
.persona-media img{
  width:100%;
  height:100%;
  object-fit: cover;
  object-position: center center; /* âÂÂÂÂÂÂÂÂ centre l'image dans le cadre */
  display:block;
  filter: contrast(1.03) saturate(1.03);
}

/* Voile mystique sur les photos (léger) */
.persona-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(600px 300px at 25% 20%, rgba(255,255,255,.18), transparent 55%),
    radial-gradient(600px 320px at 75% 80%, rgba(201,168,106,.12), transparent 60%),
    linear-gradient(to bottom, rgba(0,0,0,.12), rgba(0,0,0,.10));
  mix-blend-mode: soft-light;
  pointer-events:none;
}

.persona-content{
  padding: 16px 16px 18px;
}

.tag{
  margin: 0 0 6px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: 12px;
  opacity: .9;
}

.persona h3{
  margin: 0 0 8px;
  font-size: 26px;
  font-family: "Cormorant Garamond", serif;
}
.persona-text{
  margin: 0 0 12px;
  font-size: 18px;
  line-height: 1.5;
  opacity: .92;
}

.persona-list{
  margin: 0 0 14px;
  padding-left: 18px;
  font-size: 17px;
  opacity: .95;
}
.persona-cta{display:flex; gap: 10px; flex-wrap:wrap}

/* Boutons dans les blocs persona : un peu plus lisibles selon le fond */
.persona-brisylis .btn{
  border-color: rgba(76,58,99,.20);
  background: rgba(255,255,255,.22);
}
.persona-aeloria .btn{
  border-color: rgba(242,183,200,.25);
  background: rgba(255,255,255,.10);
}

.subtle-note{
  margin-top: 14px;
  background: rgba(255,255,255,.45);
  border: 1px dashed rgba(201,168,106,.38);
  border-radius: var(--radius);
  padding: 12px 14px;
}

/* Panels */
.panel{
  margin-top: 16px;
  background: linear-gradient(180deg, rgba(255,255,255,.60), rgba(255,255,255,.36));
  border: 1px solid rgba(255,255,255,.62);
  border-radius: var(--radius);
  padding: 16px;
  box-shadow: 0 18px 60px rgba(0,0,0,.10);
}

/* Posts */
.posts{
  margin-top: 16px;
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.post{
  background: rgba(255,255,255,.52);
  border: 1px solid rgba(255,255,255,.62);
  border-radius: var(--radius);
  padding: 16px;
  box-shadow: 0 14px 46px rgba(0,0,0,.10);
}
.post h3{margin:0 0 8px; font-size: 21px; color: rgba(36,27,34,.95)}
.post p{margin:0 0 12px; color: rgba(36,27,34,.74); font-size: 18px}
.post-meta{font-size: 16px; color: rgba(224,120,152,.92)}

/* Contact */
.contact-grid{
  margin-top: 16px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.contact-actions{display:flex; gap: 10px; flex-wrap:wrap; margin-top: 10px}

.section-last{padding-bottom: 48px}

/* Footer : reprend la teinte nav (mix) */
.site-footer{
  background: linear-gradient(135deg,
    rgba(80,63,107,.96),
    rgba(74,93,116,.92) 45%,
    rgba(63,110,115,.90));
  color: rgba(255,255,255,.84);
  border-top: 1px solid rgba(255,255,255,.16);
  position: relative;
  z-index: 2;
}
.footer-inner{
  padding: 16px 0;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap: 10px;
}
.footer-links a{color: rgba(242,183,200,.95)}
.footer-links a:hover{text-decoration:underline; text-underline-offset: 5px}

/* Responsive */
@media (max-width: 980px){
  .hero-grid{grid-template-columns: 1fr}
  .cards{grid-template-columns: 1fr 1fr}
  .duo{grid-template-columns: 1fr}
  .posts{grid-template-columns: 1fr}
  .contact-grid{grid-template-columns: 1fr}
}
@media (max-width: 520px){
  .nav{font-size: 16px}
  .logo{height: 50px}
  .cards{grid-template-columns: 1fr}
}
/* ðÂÂ¿ Section Arbre de Vie */
.section-tree-of-life {
  padding: 80px 0;
  text-align: center;
  position: relative;

  /* âÂÂ fond conservé et cohérent */
  background: linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.40));
}


body {
    /* L'image qui apparaîtra DANS les lettres */
    /* Note : Utilise le lien complet pour être sûr que ça charge partout */
    background-image: url("images/tree-of-life.png") !important;
    
}

/* --- TEXTE PLUS FONCÉ PARTOUT --- */
 p, li, .lead, .persona-text, .soft, .tag {
    color: #591349 !important; /* Ton noir/parme très foncé pour la lisibilité */
    -webkit-text-fill-color: initial !important; /* On annule la transparence ici */
    background: none !important; /* Pas d'image dans les petits textes */
}

/* On s'assure que les sous-titres des cartes et sections sont bien foncés aussi */
.section-head p, .card p, .persona-text {
    opacity: 1 !important;
    color: #591349 !important;
    font-weight: 500;
}   
.hero-copy{
  background: linear-gradient(180deg, rgba(255,255,255,.64), rgba(255,255,255,.40));
  border: 1px solid rgba(255,255,255,.62);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: var(--shadow);
  position: relative;
  overflow:hidden;
}
.hero-copy::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:
    radial-gradient(420px 220px at 30% 20%, rgba(224,120,152,.16), transparent 60%),
    radial-gradient(380px 240px at 70% 70%, rgba(76,58,99,.12), transparent 60%),
    radial-gradient(380px 240px at 50% 85%, rgba(111,198,195,.10), transparent 60%),
    radial-gradient(380px 240px at 40% 85%, rgba(201,168,106,.10), transparent 60%);
  opacity:.95;
  pointer-events:none;
}
/* Style des icônes réseaux dans la nav */
.nav-socials {
    display: flex;
    gap: 15px;
    margin: 0 10px;
    align-items: center;
}

.nav-socials i {
    font-size: 20px; /* Taille des icônes */
    transition: transform 0.2s ease, color 0.2s ease;
    color: rgba(255, 255, 255, 0.9); /* Blanc pour aller avec ton menu */
}

.nav-socials a:hover i {
    transform: scale(1.2); /* Petit effet de zoom au survol */
    color: var(--rose-soft); /* Change de couleur au survol (ton rose doux) */
}

/* Responsive : alignement sur mobile */
@media (max-width: 520px) {
    .nav-socials {
        margin: 10px 0;
        justify-content: center;
        width: 100%;
    }
}