:root{
  --accent:#dc7907;

  /* DEFAULT = LIGHT */
  --bg:#ffffff; --text:#111; --muted:#555; --line:#e5e7eb;
  --header-bg:#fff; --card:#fff; --card-bg:#fff; --surface:#fafafa;
  --scroll-track:#f0f0f0; --scroll-thumb:#dc7907;
}

html[data-theme='dark']{
  --bg:#0d0d0d; --text:#f2f2f2; --muted:#b5b5b5; --line:#2a2a2a;
  --header-bg:#111; --card:#181818; --card-bg:#181818; --surface:#141414;
  --scroll-track:#1b1b1b; --scroll-thumb:#dc7907;
}


*{box-sizing:border-box;margin:0;padding:0;}
html{overflow-y:scroll;scrollbar-gutter:stable;}
::-webkit-scrollbar{width:16px;height:16px;}
::-webkit-scrollbar-track{background:var(--scroll-track);}
::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:10px;border:3px solid var(--scroll-track);}
::-webkit-scrollbar-thumb:hover{background:#dc7907;}
*{scrollbar-width:auto;scrollbar-color:var(--scroll-thumb) var(--scroll-track);}

body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;transition:background .3s,color .3s;}
a{color:var(--accent);text-decoration:none;}
.container{max-width:1080px;margin:0 auto;padding:0 16px;}

/* === HEADER === */
header{position:sticky;top:0;z-index:100;background:var(--header-bg);border-bottom:1px solid var(--line);transition:background .3s,border-color .3s;}
nav{display:flex;align-items:center;justify-content:space-between;height:100px;}
.brand img{height:80px;width:auto;object-fit:contain;display:block;transition:opacity .2s;}
.menu{display:flex;font-family:'Playfair Display',serif;font-weight:600;font-size:1.05rem;}
.menu a{color:var(--text);padding:0 16px;line-height:48px;border-bottom:2px solid transparent;transition:color .2s,border-bottom .2s;}
.menu a:hover{border-bottom:2px solid var(--accent);}
.menu a.active{color:var(--accent);}

.btn{display:inline-flex;align-items:center;border-radius:8px;padding:12px 18px;background:var(--accent);color:#fff;font-weight:500;border:none;cursor:pointer;transition:.2s;}
.btn:hover{opacity:.92;}

/* Bouton thème */
.theme-toggle{background:none;border:1px solid var(--line);border-radius:8px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;margin-left:12px;cursor:pointer;transition:background .3s,border-color .3s;}
.theme-toggle:hover{background:rgba(255,255,255,.06);border-color:var(--accent);}
.theme-toggle svg{width:22px;height:22px;display:block;}

/* === HERO VIDEO === */ .hero-video-section{position:relative;height:100vh;overflow:hidden;display:grid;place-items:center;text-align:center;color:#fff;isolation:isolate;} 
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;background:#000;} 
.hero-video-section::after{ content:""; position:absolute; inset:0; background:rgba(0,0,0,0.25); -webkit-backdrop-filter: blur(2px); backdrop-filter: blur(2px); z-index:-1; }


/* Anim + placement */
@keyframes fadeInBlur{
  0%{opacity:0;filter:blur(10px);transform:translateY(40px);}
  100%{opacity:1;filter:blur(0);transform:translateY(0);}
}
.hero-content{position:relative;z-index:1;padding:2rem;margin-top:-200px;animation:fadeInBlur .5s ease-out both;}
.hero-content h1{font-family:'Playfair Display',serif;font-size:clamp(36px,5vw,58px);margin:0 0 20px;color:#fff;text-shadow:0 3px 8px rgba(0,0,0,0.35);animation:fadeInBlur .5s ease-out both;}
.hero-content p{font-size:1.2rem;max-width:700px;margin:0 auto 32px;color:#a7a5a5;text-shadow:0 2px 4px rgba(0,0,0,0.3);animation:fadeInBlur .5s ease-out both;animation-delay:.3s;}
.hero-content .btn{animation:fadeInBlur .5s ease-out both;animation-delay:.5s;}

/* === SECTIONS === */
section.standard{padding:80px 0;text-align:center;background:var(--bg);color:var(--text);transition:background .3s,color .3s;}
section.standard h2{font-family:'Playfair Display',serif;font-size:clamp(24px,3vw,36px);margin-bottom:24px;}
section.standard p{max-width:800px;margin:0 auto;font-size:1.1rem;line-height:1.7;color:var(--muted);}

/* === Réseaux === */
.social-strip{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;text-align:center;transition:background .3s,border-color .3s;}
.social-link{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--card-bg);border:1px solid var(--line);transition:transform .15s,border-color .15s,background .15s;margin:0 8px;}
.social-link:hover{transform:translateY(-2px);border-color:var(--accent);}
.social-link svg{width:20px;height:20px;fill:var(--text);}

/* === Partenaires === */
.partners{background:var(--bg);border-top:1px solid var(--line);padding:80px 0;transition:background .3s,border-color .3s;}
.partners h2{font-family:'Playfair Display',serif;font-size:clamp(24px,3vw,36px);color:var(--text);text-align:center;margin-bottom:28px;}
.partners-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 6px 18px rgba(0,0,0,.06);transition:box-shadow .2s ease,border-color .3s;}
.partners-card:hover{box-shadow:0 10px 28px rgba(0,0,0,.10);border-color:var(--accent);}
.partner-logos{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));align-items:center;justify-items:center;}
.partner-logos img{display:block;max-width:200px;width:100%;height:90px;object-fit:contain;opacity:1;border-radius:12px;transition:transform .25s ease, box-shadow .25s ease;}
.partner-logos a:hover img{transform:translateY(-8px);box-shadow:0 6px 20px rgba(0,0,0,0.12);}

@media(max-width:480px){
  .partners-card{padding:20px;}
  .partner-logos{gap:16px;grid-template-columns: repeat(auto-fit, minmax(120px,1fr));}
  .partner-logos img{max-width:150px;height:70px;}
}

/* === Footer === */
footer{border-top:1px solid var(--line);background:var(--surface);padding:40px 0;color:var(--muted);font-size:.95rem;transition:background .3s,color .3s;}


/* ===== Mission page =============================================================================================================================================== */
main{padding:80px 0;}
h1,h2,h3{font-family:'Playfair Display',serif;font-weight:600;color:var(--text);}
h1{font-size:clamp(28px,4vw,42px);margin:0 0 16px;}
h2{font-size:clamp(20px,2.6vw,28px);margin:28px 0 10px;color:var(--accent);}
p.lead{color:var(--muted);max-width:780px;}

.grid{display:grid;gap:20px;margin-top:14px;}
@media(min-width:768px){
  .grid.cols-3{grid-template-columns:repeat(3,1fr);}
  .grid.cols-2{grid-template-columns:repeat(2,1fr);}
}

.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:12px;
  padding:20px;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  transition:background .3s,border-color .3s,box-shadow .3s;
}
.card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08);}
.muted{color:var(--muted);}
ul.clean{padding-left:18px;margin:10px 0;}
ul.clean li{margin:6px 0;}

/* Mission: social list en flex + gap */
.social-list{display:flex;justify-content:center;gap:18px;}

/* ===== Gouvernance (cartes membres) ============================================================================================================================= */
.intro{color:var(--muted);max-width:900px;}

.member-grid{
  display:grid;
  gap:24px;
  margin-top:28px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
}

.member-card{
  position:relative;
  background:var(--card);
  border:2px solid var(--accent); /* bordure orange permanente */
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 6px 18px rgba(0,0,0,.06);
  transition:transform .2s, box-shadow .2s, background .3s, border-color .3s;
}
.member-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(0,0,0,.10);}

.member-photo-wrap{position:relative; overflow:hidden;}
.member-photo{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center;
  background:#f1f1f1;
}

/* Badge LinkedIn sur la photo */
.member-linkedin-badge{
  position:absolute;
  top:10px; right:10px;
  width:34px; height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:rgba(255,255,255,.92);
  border:1px solid var(--line);
  color:#0a66c2;
  box-shadow:0 6px 14px rgba(0,0,0,.14);
  backdrop-filter:saturate(1.1) blur(2px);
  transition:transform .15s, border-color .15s, background .15s, box-shadow .15s;
  z-index:2;
}
.member-linkedin-badge:hover{
  transform:translateY(-2px);
  border-color:var(--accent);
  box-shadow:0 10px 20px rgba(0,0,0,.18);
}
.member-linkedin-badge:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:2px;
}
.member-linkedin-badge svg{width:18px;height:18px;display:block;}
.member-linkedin-badge svg path{fill:currentColor;}

.member-bar{
  background:var(--accent);
  color:#fff;
  text-align:center;
  padding:14px 12px;
}
.member-name{
  font-family:'Playfair Display',serif;
  font-weight:700;
  font-size:1.05rem;
  margin:0;
}
.member-role{
  font-size:.92rem;
  opacity:.95;
  margin:4px 0 0;
  color:#000;
  font-weight:600;
}

/* (Optionnel) autres réseaux sous la carte */
.member-links{
  display:flex;
  gap:10px;
  justify-content:center;
  padding:12px;
  border-top:1px solid var(--line);
  background:var(--card);
}
.member-links a{
  width:36px;height:36px;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--card);
  color:var(--text);
  transition:transform .15s, background .15s, border-color .15s, color .15s;
}
.member-links a:hover{
  transform:translateY(-2px);
  background:transparent;
  border-color:var(--accent);
  color:var(--text);
}
.member-links a:focus-visible{outline:3px solid var(--accent);outline-offset:2px;}
.member-links a svg{width:18px;height:18px;display:block;}
.member-links a svg path,
.member-links a svg circle,
.member-links a svg rect,
.member-links a svg polygon{fill:currentColor;}


/* =========================
   CONTACT (page)
   ========================= */

.grid{display:grid;gap:24px;}
@media(min-width:768px){ .grid.cols-2{grid-template-columns:repeat(2,1fr);} }

.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:12px;
  padding:24px;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  transition:background .3s,border-color .3s,box-shadow .3s;
}
.card:hover{box-shadow:0 4px 14px rgba(0,0,0,.08);}

label{display:grid;gap:6px;margin-bottom:14px;font-size:.95rem;}

input, textarea, select{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:8px;
  padding:10px 12px;
  color:var(--text);
  width:100%;
  font-family:inherit;
  outline:none;
  transition:border-color .2s,box-shadow .2s,background .3s,color .3s;
}
input:focus, textarea:focus, select:focus{
  border-color:var(--accent);
  box-shadow:0 0 0 2px rgba(220,121,7,0.15);
}


/* Le container large pour la page événements */
body.page-template-page-evenements .container{
  max-width: 1400px;
  padding-left: 24px;
  padding-right: 24px;
}

/* MAIS on annule pour le header */
body.page-template-page-evenements header .container{
  max-width: 1080px;
  padding-left: 16px;
  padding-right: 16px;
}
