/* =================================================================
   PAGE PROJET — Camille de Montaigne
   ================================================================= */

/* couleur d'accent pilotée par body.accent-* */
body.accent-orange{--accent:var(--orange);--accent-ink:#fff}
body.accent-blue{--accent:var(--blue);--accent-ink:var(--ink)}
body.accent-wine{--accent:var(--wine);--accent-ink:var(--peach)}
body.accent-peach{--accent:var(--peach);--accent-ink:var(--ink)}

#projet{padding-top:0}

/* ---------- HERO ---------- */
.pj-hero{
  background:
    radial-gradient(circle at 15% 20%, var(--peach), transparent 48%),
    var(--cream);
  padding:clamp(120px,16vw,180px) 0 clamp(40px,6vw,70px);
  border-bottom:var(--bd);
}
.pj-hero__in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,52px);align-items:center}
.pj-back{
  display:block;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.06em;
  color:var(--wine);margin-bottom:1.4rem;transition:transform .2s var(--ease);
}
.pj-back:hover{transform:translateX(-4px)}
.pj-sector{
  display:inline-block;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--orange);margin-bottom:.6rem;
}
.pj-title{font-family:var(--font-display);font-weight:700;font-size:clamp(2.6rem,7vw,5.2rem);line-height:.98;letter-spacing:-.02em;margin-bottom:1rem}
.pj-tagline{font-size:clamp(1.05rem,1.8vw,1.35rem);color:#403a35;max-width:42ch;margin-bottom:1.6rem}
.pj-missions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:1rem}
.pj-badge{
  font-family:var(--font-mono);font-size:.74rem;letter-spacing:.05em;text-transform:uppercase;
  background:var(--accent);color:var(--accent-ink);border:var(--bd);
  padding:.4em .9em;border-radius:40px;
}
.pj-period{font-family:var(--font-mono);font-size:.84rem;color:var(--wine)}
.pj-hero__visual{
  border:var(--bd);border-radius:var(--r-lg);overflow:hidden;
  box-shadow:var(--shadow-lg);aspect-ratio:4/3;background:var(--accent);
}
.pj-hero__visual img{width:100%;height:100%;object-fit:cover}

/* ---------- BODY ---------- */
.pj-body{padding:clamp(50px,8vw,90px) 26px}
.pj-sec{margin-bottom:clamp(40px,6vw,70px)}
.pj-h2{
  font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);
  letter-spacing:-.01em;margin-bottom:1.2rem;color:var(--ink);
  display:inline-block;position:relative;
}
.pj-h2::after{
  content:"";display:block;width:46px;height:5px;border-radius:40px;
  background:var(--accent);margin-top:.5rem;
}
.pj-p{font-size:1.05rem;color:#3c3631;max-width:64ch;margin-bottom:.9rem}
.pj-p strong{color:var(--wine)}

.pj-list{display:flex;flex-direction:column;gap:.5rem;max-width:60ch}
.pj-list li{
  position:relative;padding-left:1.6em;font-size:1.02rem;color:#3c3631;
}
.pj-list li::before{
  content:"✦";position:absolute;left:0;color:var(--orange);font-size:.85em;top:.15em;
}

/* actions en cartes */
.pj-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.pj-action{
  background:var(--white);border:var(--bd);border-radius:var(--r);
  padding:26px 26px 28px;box-shadow:var(--shadow-sm);
}
.pj-action__t{font-family:var(--font-display);font-weight:600;font-size:1.2rem;margin-bottom:.8rem;color:var(--wine)}

/* résultats */
.pj-results{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.pj-result{
  background:var(--cream);border:var(--bd);border-radius:var(--r);
  padding:24px 24px;box-shadow:var(--shadow-sm);
}
.pj-result__t{font-family:var(--font-display);font-weight:500;font-size:1.15rem;color:var(--ink);line-height:1.3}

/* galerie */
.pj-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pj-shot{border:var(--bd);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm);aspect-ratio:4/3}
.pj-shot img{width:100%;height:100%;object-fit:cover}

/* citation */
.pj-quote{
  background:var(--wine);color:var(--peach);border:var(--bd);border-radius:var(--r-lg);
  box-shadow:var(--shadow);padding:clamp(30px,5vw,52px);margin:0 0 clamp(40px,6vw,70px);
}
.pj-quote blockquote{font-family:var(--font-display);font-weight:500;font-size:clamp(1.3rem,2.4vw,1.9rem);line-height:1.3;color:var(--white)}
.pj-quote figcaption{font-family:var(--font-mono);font-size:.84rem;color:var(--blue);margin-top:1rem;letter-spacing:.04em}

/* CTA */
.pj-cta{
  text-align:center;background:var(--cream);border:var(--bd);border-radius:var(--r-lg);
  box-shadow:var(--shadow);padding:clamp(40px,6vw,64px) 26px;
  display:flex;flex-direction:column;align-items:center;gap:18px;
}
.pj-cta__t{font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3.4vw,2.6rem);letter-spacing:-.01em;margin-bottom:.4rem}
.pj-cta .btn+.btn{margin-top:-4px}

.pj-empty{text-align:center;padding:160px 26px 40px;font-size:1.2rem}
#projet > .pj-empty + .btn{display:block;width:max-content;margin:0 auto 120px}

/* ---------- RESPONSIVE ---------- */
@media (max-width:900px){
  .pj-hero__in{grid-template-columns:1fr;gap:32px}
  .pj-hero__visual{max-width:520px}
  .pj-actions,.pj-results{grid-template-columns:1fr}
  .pj-gallery{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:560px){
  .pj-gallery{grid-template-columns:1fr}
}
