/* ============================================================
   Centre Prophétique Réveil de l'Épouse — styles partagés
   Palette : aube, ivoire, or
   ============================================================ */

:root{
  --ivory:#FDFBF4;
  --parchment:#F8F1E1;
  --gold:#A0782B;
  --gold-deep:#7E5E1F;
  --gold-light:#D3B76E;
  --gold-pale:#EFE4C6;
  --ink:#2C2418;
  --ink-soft:#5F5443;
  --flame:#B4511F;
  --white:#FFFFFF;
  --shadow:0 18px 50px -22px rgba(126,94,31,.28);
  --radius:14px;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Lora',Georgia,serif;
  background:var(--ivory);
  color:var(--ink);
  line-height:1.75;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.15;color:var(--ink);}
h1{font-size:clamp(2.6rem,6vw,4.4rem);}
h2{font-size:clamp(2rem,4vw,3rem);}
h3{font-size:clamp(1.4rem,2.5vw,1.85rem);}

a{color:var(--gold-deep);text-decoration:none;transition:color .25s;}
a:hover{color:var(--flame);}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:3px;}

.eyebrow{
  font-family:'Jost',sans-serif;
  font-size:.78rem;
  letter-spacing:.32em;
  text-transform:uppercase;
  color:var(--gold);
  display:block;
  margin-bottom:1rem;
}

.wrap{max-width:1120px;margin:0 auto;padding:0 clamp(1.2rem,4vw,2.5rem);}
.narrow{max-width:780px;margin:0 auto;}

/* ---------- Navigation ---------- */
header.site{
  position:sticky;top:0;z-index:50;
  background:rgba(253,251,244,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--gold-pale);
}
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:.8rem clamp(1.2rem,4vw,2.5rem);
  max-width:1240px;margin:0 auto;
}
.brand{display:flex;align-items:center;gap:.7rem;}
.brand img{height:46px;width:auto;}
.brand-text{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.05rem;line-height:1.2;color:var(--ink);}
.brand-text small{display:block;font-family:'Jost',sans-serif;font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);}
nav.menu{display:flex;gap:clamp(.8rem,2vw,1.8rem);align-items:center;}
nav.menu a{
  font-family:'Jost',sans-serif;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-soft);padding:.4rem 0;border-bottom:2px solid transparent;
}
nav.menu a:hover{color:var(--gold-deep);}
nav.menu a.active{color:var(--gold-deep);border-bottom-color:var(--gold-light);}
.nav-toggle{display:none;background:none;border:none;font-size:1.6rem;color:var(--gold-deep);cursor:pointer;}

@media(max-width:840px){
  .nav-toggle{display:block;}
  nav.menu{
    display:none;position:absolute;top:100%;left:0;right:0;
    flex-direction:column;background:var(--ivory);
    border-bottom:1px solid var(--gold-pale);
    padding:1rem 2rem 1.5rem;gap:1rem;
  }
  nav.menu.open{display:flex;}
}

/* ---------- Héros ---------- */
.hero{
  position:relative;overflow:hidden;text-align:center;
  padding:clamp(4rem,9vw,7.5rem) 1.5rem clamp(4rem,8vw,6.5rem);
  background:
    radial-gradient(ellipse 90% 70% at 50% -10%, rgba(211,183,110,.38), transparent 60%),
    radial-gradient(ellipse 60% 50% at 50% 105%, rgba(180,81,31,.10), transparent 65%),
    linear-gradient(180deg,#FFFDF7 0%, var(--ivory) 100%);
}
.hero::before{
  content:"";position:absolute;inset:-40% -20% auto;height:120%;
  background:conic-gradient(from 178deg at 50% 0%,
    transparent 0deg, rgba(211,183,110,.16) 4deg, transparent 8deg,
    transparent 22deg, rgba(211,183,110,.13) 26deg, transparent 30deg,
    transparent 44deg, rgba(211,183,110,.16) 48deg, transparent 52deg,
    transparent 66deg, rgba(211,183,110,.12) 70deg, transparent 74deg,
    transparent 88deg, rgba(211,183,110,.16) 92deg, transparent 96deg,
    transparent 110deg, rgba(211,183,110,.13) 114deg, transparent 118deg,
    transparent 132deg, rgba(211,183,110,.16) 136deg, transparent 140deg,
    transparent 154deg, rgba(211,183,110,.12) 158deg, transparent 162deg,
    transparent 176deg, rgba(211,183,110,.16) 180deg, transparent 360deg);
  pointer-events:none;animation:dawn 26s linear infinite;transform-origin:50% 0%;
}
@keyframes dawn{to{transform:rotate(8deg);}}
@media(prefers-reduced-motion:reduce){
  .hero::before{animation:none;}
  *{transition:none!important;}
}
.hero>*{position:relative;}
.hero img.hero-logo{width:min(430px,78vw);height:auto;margin-bottom:1.6rem;filter:drop-shadow(0 14px 34px rgba(160,120,43,.25));}
.hero h1{margin-bottom:1rem;}
.hero .lead{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--ink-soft);max-width:640px;margin:0 auto 2.2rem;font-style:italic;}

.btn{
  display:inline-block;font-family:'Jost',sans-serif;font-size:.85rem;
  letter-spacing:.18em;text-transform:uppercase;
  padding:.95rem 2.2rem;border-radius:100px;transition:all .25s;
}
.btn-gold{
  background:linear-gradient(135deg,var(--gold) 0%,var(--gold-deep) 100%);
  color:#FFF8E8;box-shadow:0 10px 26px -10px rgba(126,94,31,.55);
}
.btn-gold:hover{color:#fff;transform:translateY(-2px);box-shadow:0 16px 32px -10px rgba(126,94,31,.6);}
.btn-line{border:1.5px solid var(--gold-light);color:var(--gold-deep);margin-left:.8rem;}
.btn-line:hover{background:var(--gold-pale);color:var(--gold-deep);}
@media(max-width:520px){.btn-line{margin-left:0;margin-top:.8rem;}}

/* ---------- Ornement flamme ---------- */
.ornament{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin:0 auto;padding:2.6rem 0;color:var(--gold-light);}
.ornament::before,.ornament::after{
  content:"";height:1px;width:min(160px,26vw);
  background:linear-gradient(90deg,transparent,var(--gold-light));
}
.ornament::after{background:linear-gradient(90deg,var(--gold-light),transparent);}
.ornament svg{width:26px;height:34px;flex:none;}

/* ---------- Sections ---------- */
section.block{padding:clamp(3.2rem,7vw,5.5rem) 0;}
section.block.alt{background:linear-gradient(180deg,var(--parchment),#FBF6E9);}
.section-head{text-align:center;max-width:720px;margin:0 auto clamp(2.2rem,5vw,3.5rem);}
.section-head p{color:var(--ink-soft);margin-top:1rem;}

/* ---------- Verset enluminé ---------- */
.verse{
  position:relative;max-width:760px;margin:0 auto;text-align:center;
  padding:2.6rem clamp(1.5rem,5vw,3.5rem);
}
.verse p.text{
  font-family:'Cormorant Garamond',serif;font-size:clamp(1.5rem,3vw,2.1rem);
  font-style:italic;line-height:1.45;color:var(--gold-deep);
}
.verse .ref{font-family:'Jost',sans-serif;font-size:.78rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-top:1.1rem;display:block;}
.verse::before,.verse::after{
  content:"";position:absolute;width:54px;height:54px;
  border:1.5px solid var(--gold-light);
}
.verse::before{top:0;left:0;border-right:none;border-bottom:none;}
.verse::after{bottom:0;right:0;border-left:none;border-top:none;}

/* ---------- Cartes ---------- */
.cards{display:grid;gap:1.6rem;}
.cards.c3{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));}
.cards.c2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.card{
  background:var(--white);border:1px solid var(--gold-pale);
  border-radius:var(--radius);padding:2rem 1.8rem;box-shadow:var(--shadow);
}
.card h3{margin-bottom:.7rem;color:var(--gold-deep);}
.card p{color:var(--ink-soft);font-size:.98rem;}
.card .num{
  font-family:'Cormorant Garamond',serif;font-size:2.6rem;color:var(--gold-light);
  line-height:1;display:block;margin-bottom:.6rem;
}

/* ---------- Chemin / étapes ---------- */
.path{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;align-items:center;margin:2rem auto;}
.path .step{
  font-family:'Cormorant Garamond',serif;font-size:clamp(1.2rem,2.4vw,1.7rem);
  color:var(--gold-deep);padding:.5rem 1.2rem;background:var(--white);
  border:1px solid var(--gold-pale);border-radius:100px;box-shadow:var(--shadow);
}
.path .arrow{color:var(--gold-light);font-size:1.3rem;}

/* ---------- Tableaux modules ---------- */
.table-wrap{overflow-x:auto;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--gold-pale);background:var(--white);}
table.modules{width:100%;border-collapse:collapse;min-width:560px;}
table.modules th{
  font-family:'Jost',sans-serif;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  background:linear-gradient(135deg,var(--gold) 0%,var(--gold-deep) 100%);
  color:#FFF6E0;text-align:left;padding:1rem 1.3rem;
}
table.modules td{padding:1rem 1.3rem;border-top:1px solid var(--gold-pale);vertical-align:top;font-size:.96rem;color:var(--ink-soft);}
table.modules td.mois{font-family:'Cormorant Garamond',serif;font-size:1.25rem;color:var(--gold-deep);white-space:nowrap;}
table.modules td.mod{color:var(--ink);font-weight:600;}
table.modules tr:nth-child(even) td{background:#FCF8EE;}

/* ---------- Listes dorées ---------- */
ul.gold{list-style:none;}
ul.gold li{position:relative;padding-left:1.7rem;margin-bottom:.65rem;color:var(--ink-soft);}
ul.gold li::before{
  content:"";position:absolute;left:0;top:.62em;width:9px;height:9px;
  background:linear-gradient(135deg,var(--gold-light),var(--gold));
  transform:rotate(45deg);
}

/* ---------- Citation encadrée ---------- */
.quote-panel{
  background:linear-gradient(135deg,#FFFDF6,#FBF3DE);
  border:1px solid var(--gold-pale);border-left:4px solid var(--gold);
  border-radius:0 var(--radius) var(--radius) 0;
  padding:1.8rem 2.2rem;margin:2rem 0;
  font-style:italic;color:var(--ink-soft);font-size:1.05rem;
}

/* ---------- Bandeau appel ---------- */
.cta-band{
  text-align:center;
  background:
    radial-gradient(ellipse 70% 100% at 50% 120%, rgba(180,81,31,.14), transparent 60%),
    linear-gradient(135deg,#3A2E15 0%,#57431C 55%,#3A2E15 100%);
  color:#F6EBD2;padding:clamp(3.5rem,7vw,5.5rem) 1.5rem;
}
.cta-band h2{color:#FBF2DC;}
.cta-band p{color:#E4D3AB;max-width:620px;margin:1rem auto 2rem;}

/* ---------- Pied de page ---------- */
footer.site{
  background:#241C0E;color:#CBB98F;
  padding:3rem 1.5rem 2rem;text-align:center;
  font-size:.9rem;
}
footer.site img{height:60px;width:auto;margin-bottom:1rem;opacity:.95;}
footer.site .foot-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:1.4rem;margin:1.2rem 0 1.8rem;}
footer.site .foot-nav a{color:#D8C79C;font-family:'Jost',sans-serif;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;}
footer.site .foot-nav a:hover{color:#F3E6C4;}
footer.site .verse-line{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.15rem;color:#E8D8AC;margin-bottom:1.4rem;}
footer.site small{color:#8F7F5C;display:block;margin-top:1rem;}

/* ---------- En-tête de page interne ---------- */
.page-head{
  text-align:center;
  padding:clamp(3.5rem,7vw,5.5rem) 1.5rem clamp(2.5rem,5vw,4rem);
  background:
    radial-gradient(ellipse 80% 90% at 50% -20%, rgba(211,183,110,.3), transparent 60%),
    linear-gradient(180deg,#FFFDF7,var(--ivory));
}
.page-head p{max-width:680px;margin:1.2rem auto 0;color:var(--ink-soft);font-style:italic;font-size:1.08rem;}

/* ---------- Deux colonnes ---------- */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center;}
@media(max-width:820px){.split{grid-template-columns:1fr;}}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}

/* ---------- Lien d'évitement (accessibilité clavier) ---------- */
.skip-link{
  position:absolute;left:1rem;top:-4rem;z-index:100;
  background:var(--gold-deep);color:var(--ivory);
  font-family:'Jost',sans-serif;font-size:.85rem;letter-spacing:.1em;
  padding:.7rem 1.2rem;border-radius:0 0 10px 10px;
  transition:top .2s ease;
}
.skip-link:focus{top:0;color:var(--ivory);}

/* ---------- Respect de « mouvement réduit » ---------- */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  .reveal{opacity:1;transform:none;transition:none;}
  a,.btn,.card{transition:none;}
}

/* ---------- Filiation Centre Liberté / Centre Prophétique ---------- */
.filiation{max-width:720px;margin:2.4rem auto 0;display:grid;gap:1px;
  background:var(--gold-pale);border:1px solid var(--gold-pale);border-radius:var(--radius);overflow:hidden;}
.filiation > div{background:var(--white);padding:1.15rem 1.5rem;
  display:flex;flex-wrap:wrap;gap:.2rem .7rem;align-items:baseline;}
.filiation dt{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.3rem;
  font-weight:600;color:var(--gold-deep);}
.filiation dt::after{content:' —';color:var(--gold-light);font-weight:400;}
.filiation dd{color:var(--ink-soft);font-style:italic;}
@media(max-width:560px){.filiation > div{display:block;}}

/* Devise de l'œuvre, en exergue */
.devise{max-width:760px;margin:2.6rem auto 0;text-align:center;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:clamp(1.35rem,2.6vw,1.85rem);line-height:1.4;color:var(--ink);}
.devise::before,.devise::after{content:'';display:block;width:64px;height:1px;
  background:var(--gold-light);margin:1.4rem auto;}

/* Mention d'héritage dans le pied de page */
footer.site .heritage{font-family:'Jost',sans-serif;font-size:.78rem;
  letter-spacing:.18em;text-transform:uppercase;color:var(--gold);
  margin-top:-.4rem;margin-bottom:1.1rem;}
