/* =============
   EFFET VERTICAL
   ================= */
   .jincarne-banner{
  display:block;
  margin:40px auto 20px;
  max-width:680px;
  width:100%;
  border-radius:20px;
  box-shadow:0 10px 30px rgba(0,0,0,0.15);
}

/* =============
   EFFET VERTICAL
   ================= */
.init-hero > *{
  position:relative;
  z-index:1;
}
.init-hero{
position:relative;
overflow:hidden; /* important pour éviter que le halo déborde */
}
.init-hero::before{
content:"";
position:absolute;
left:50%;
top:260px;      /* commence sous le sceau */
bottom:120px;   /* finit avant les commentaires */
width:2px;
transform:translateX(-50%);
background:linear-gradient(
to bottom,
rgba(255,210,120,0) 0%,
rgba(255,210,120,0.35) 45%,
rgba(255,210,120,0.35) 55%,
rgba(255,210,120,0) 100%
);
filter:blur(1px);
pointer-events:none;
opacity:1;
}
@keyframes energyFlow{
0%{opacity:.6}
50%{opacity:.9}
100%{opacity:.6}
}
.init-hero::before{
animation:energyFlow 6s ease-in-out infinite;
}
.init-hero::after{
  content:"";
  position:absolute;
  inset:-120px;           /* déborde un peu pour éviter les bords nets */
  pointer-events:none;
  z-index:0;              /* derrière tout */
  
  /* 2 couches : spotlight + vignette */
  background:
    radial-gradient(circle at 50% 260px,
      rgba(255,220,150,0.55) 0%,
      rgba(255,205,120,0.22) 22%,
      rgba(255,190,90,0.10) 38%,
      rgba(255,255,255,0.00) 62%
    ),
    radial-gradient(circle at 50% 260px,
      rgba(0,0,0,0.00) 0%,
      rgba(0,0,0,0.06) 65%,
      rgba(0,0,0,0.10) 100%
    );

  filter: blur(2px);
  opacity: .55; /* règle principale : 0.35 → 0.70 selon goût */
  mix-blend-mode: screen; /* donne le côté “lumière” (si ça te plaît) */
}
/* ==========================
   Sceau + ligne dorée + halo
   ============================= */
.init-seal-wrap{
  position: relative;
  width:min(240px,55vw);
  margin: 20px auto 18px;
  text-align: center;
  /* optionnel: pour que le halo soit bien rond */
  aspect-ratio: 1 / 1;
  z-index: 0;              /* important */
}

@keyframes seal-breath{
0%{
transform:translate(-50%,-50%) scale(1);
opacity:0.75;
}

50%{
transform:translate(-50%,-50%) scale(1.05);
opacity:1;
}

100%{
transform:translate(-50%,-50%) scale(1);
opacity:0.75;
}
}
.init-seal{
  display:block;
  position:relative;
  width:100%;
  height:100%;
  object-fit: contain; /* garde ton sceau entier */
  drop-shadow(0 0 18px rgba(255,210,120,0.45))
  drop-shadow(0 0 40px rgba(255,200,120,0.25));
  z-index: 2;              /* l’image au-dessus */
}
.init-seal-wrap::after{

animation:seal-breath 5s ease-in-out infinite;

}
/* ligne lumineuse derrière le sceau */
.init-seal-wrap::before{
  content:"";
  position:absolute;
  left:50%;
  top:58%;
  transform: translate(-50%, -50%);
  width: min(760px, 92vw);
  height: 2px;
  background: linear-gradient(to right,
    rgba(255,210,120,0) 0%,
    rgba(255,210,120,0.55) 20%,
    rgba(255,235,190,0.85) 50%,
    rgba(255,210,120,0.55) 80%,
    rgba(255,210,120,0) 100%
  );
  box-shadow: 0 0 16px rgba(255,215,150,0.18), 0 0 40px rgba(255,170,230,0.08);
  opacity: 0.95;
  z-index: 0;
  pointer-events:none;
}

/* halo doux */

.init-seal-wrap::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  width: 150%;
  height: 150%;
  border-radius: 999px;

  /* halo plus net au centre, fade doux */
background: radial-gradient(
  circle,
  rgba(255,215,120,0.95) 0%,     /* coeur doré très lumineux */
  rgba(255,200,90,0.85) 12%,     /* or chaud */
  rgba(255,180,60,0.55) 28%,     /* halo principal */
  rgba(255,200,120,0.30) 45%,    /* diffusion */
  rgba(255,220,160,0.15) 60%,    /* transition */
  rgba(255,255,255,0.00) 75%
);

filter: blur(2px);
  z-index:1;
  pointer-events:none;
}
.section-divider{
color: rgba(159, 0, 112, 0.78);
text-align:center;
font-size:18px;
opacity:0.6;
margin:30px 0;
}

/* ========
   Texte
   ======== */
.init-intro{
  text-align: justify;
  max-width:650px;
  margin:0 auto;
  padding:0 3vw;
}
.init-intro h2{
  font-family: 'Cinzel', serif;
  color: rgba(159, 0, 112, 0.78);
  font-size: 28px;
  text-align: left;
  margin-bottom: 30px;
}
.init-intro .lead{
  font-size: 20px;
  line-height: 1.6;
  text-align: justify;
  margin-bottom: 30px;
}
.dropcap:first-letter{
float:left;
font-family:'Cinzel',serif;

font-size:3.4rem;
line-height:0.9;

padding-right:10px;
padding-top:4px;

color:rgba(159,0,112,0.78);
}
.init-intro p{
  line-height: 1.7;
  margin-bottom:1.2em;
}
.init-intro blockquote{
  margin:28px auto;
  padding:14px 18px;
  border-left:3px solid rgba(180,120,180,.6);
  font-style:italic;
  text-align:center;
  color:#6a4a6a;
  background:rgba(255,255,255,.25);
  border-radius:8px;
  max-width:520px;
}
.init-intro p:last-of-type{
margin-top:1.6em;
font-style:italic;
}

/* ============
   RÉSA
   ============== */
/* bloc résa : simple, aérien, "sacré" */
.init-reserve{
  max-width: 560px;
  margin: 46px auto 20px;
  padding: 10px 12px 6px;
  text-align: center;
}

/* séparateurs */
.init-sep{
  font-family: 'Cinzel', serif;
  letter-spacing: .28em;
  font-size: .95rem;
  color: rgba(var(--accent), .55);
  margin: 18px 0;
}

/* titre */
.init-reserve-title{
  font-family: 'Cinzel', serif;
  font-size: clamp(1.15rem, 1.7vw, 1.35rem);
  letter-spacing: .08em;
  margin: 0 0 14px;
  color: rgba(var(--accent), .92);
}

/* lignes */
.init-reserve-lines{
  display: grid;
  gap: 6px;
  margin: 0 0 18px;
  color: rgba(var(--accent), .92);
  font-size: 1.2rem;
}

.init-reserve-lines .label{
  font-size: 1.3rem;
  color: rgba(var(--accent), .75);
}

.init-reserve-lines .muted{
  opacity: .75;
  font-style: italic;
}

/* centre le CTA dans ce bloc */
.init-reserve-cta{
  display:flex;
  justify-content:center;
  margin-top:14px;
}

/* skin spécial UNIQUEMENT dans la zone "init-reserve" */
.init-reserve .init-actions input.paypal-link,
.init-reserve .init-actions a.paypal-link{
  appearance:none;
  -webkit-appearance:none;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  padding:10px 18px;
  border-radius:999px;

  font-family:'Cinzel',serif;
  letter-spacing:.06em;
  font-size:0.95rem;

  color: rgba(120, 40, 140, 0.85);
  text-decoration:none;

  /* doré doux + léger glacé */
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.75) 0%, rgba(255,255,255,0) 35%),
    linear-gradient(180deg, rgba(255,241,201,.95) 0%, rgba(255,223,160,.92) 55%, rgba(255,236,205,.92) 100%);

  border: 1px solid rgba(195, 140, 55, 0.55);

  box-shadow:
    0 10px 22px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.85),
    inset 0 -10px 20px rgba(255,170,80,.10);

  cursor:pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

/* hover : élévation + brillance */
.init-reserve .init-actions input.paypal-link:hover,
.init-reserve .init-actions a.paypal-link:hover{
  transform: translateY(-2px);
  filter: brightness(1.04) saturate(1.05);
  box-shadow:
    0 14px 30px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.90),
    inset 0 -10px 20px rgba(255,170,80,.14);
}

/* focus clavier propre */
.init-reserve .init-actions input.paypal-link:focus-visible,
.init-reserve .init-actions a.paypal-link:focus-visible{
  outline: 2px solid rgba(120, 40, 140, 0.35);
  outline-offset: 3px;
}

/* option : mini éclat périphérique "rituel" */
.init-reserve .init-actions input.paypal-link{
  box-shadow:
    0 0 0 4px rgba(255,210,120,0.12),
    0 10px 22px rgba(0,0,0,.10),
    inset 0 1px 0 rgba(255,255,255,.85),
    inset 0 -10px 20px rgba(255,170,80,.10);
}

/* ============
   BACK INITS
   ============== */
.back-init{
margin-top:0px;
text-align:right;
font-size:1.1rem;
opacity:.85;
}

.back-init a{
text-decoration:none;
color:rgba(var(--accent),0.65);
}

.back-init a:hover{
opacity:1;
text-decoration:underline;
}

/* ============
   MÉDIAS
   ============== */
@media (max-width: 480px){
  .init-seal-wrap{
    position: relative;
    width:min(240px,55vw);
    margin: 2vw auto 1vw;
  }
  .section-divider{
	margin:10px 0;
  }
  .init-intro{
    padding:0 3vw;
  }
  .init-seal{
    width:70%;
    max-width:220px;
	margin:0 auto;
  }
}