/* FC Cheseaux — Bandeau sponsors défilant + pied de page */
.fcc-foot-wrap{ --navy:#002544; --blue:#0a66b0; --line:#e4e8ee; }

/* ---------- Bandeau sponsors ---------- */
.fcc-spb{ background:#fff; border-top:1px solid var(--line); border-bottom:1px solid var(--line);
	padding:20px 0; overflow:hidden; position:relative; }
.fcc-spb::before, .fcc-spb::after{ content:""; position:absolute; top:0; bottom:0; width:80px; z-index:2; pointer-events:none; }
.fcc-spb::before{ left:0; background:linear-gradient(90deg,#fff,rgba(255,255,255,0)); }
.fcc-spb::after{ right:0; background:linear-gradient(270deg,#fff,rgba(255,255,255,0)); }
.fcc-spb-track{ display:flex; align-items:center; gap:54px; width:max-content;
	animation-name:fcc-spb-scroll; animation-timing-function:linear; animation-iteration-count:infinite; }
.fcc-spb:hover .fcc-spb-track{ animation-play-state:paused; }
.fcc-spb-item{ flex:0 0 auto; display:flex; align-items:center; justify-content:center; opacity:.92; transition:opacity .2s, transform .2s; }
.fcc-spb-item:hover{ opacity:1; transform:scale(1.04); }
.fcc-spb-item img{ display:block; width:auto; object-fit:contain; }
.fcc-spb--premium img{ height:72px; }
.fcc-spb--partenaire img{ height:54px; }
.fcc-spb--supporter img{ height:42px; }
@keyframes fcc-spb-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion: reduce){ .fcc-spb-track{ animation:none; flex-wrap:wrap; justify-content:center; } }

/* ---------- Pied de page ---------- */
.fcc-foot{ background:var(--navy); color:#cdd7e2; font-family:inherit; }
.fcc-foot-in{ max-width:1140px; margin:0 auto; padding:48px 24px 34px;
	display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; }
.fcc-foot-col h4{ color:#fff; font-size:15px; letter-spacing:.04em; text-transform:uppercase; margin:0 0 16px; }
.fcc-foot-logo{ color:#fff; font-size:24px; font-weight:800; letter-spacing:.02em; }
.fcc-foot-tag{ margin:10px 0 0; font-size:14px; color:#9fb2c6; line-height:1.6; }
.fcc-foot-col ul{ list-style:none; margin:0; padding:0; }
.fcc-foot-coord li{ display:flex; align-items:flex-start; gap:10px; margin:0 0 12px; font-size:14px; line-height:1.5; }
.fcc-foot-coord .dashicons{ color:var(--blue); flex:0 0 auto; margin-top:1px; }
.fcc-foot-coord a{ color:#cdd7e2; text-decoration:none; }
.fcc-foot-coord a:hover{ color:#fff; }
.fcc-foot-nav li{ margin:0 0 10px; }
.fcc-foot-nav a{ color:#cdd7e2; text-decoration:none; font-size:14px; transition:color .15s, padding .15s; }
.fcc-foot-nav a:hover{ color:#fff; padding-left:4px; }
.fcc-foot-social{ display:flex; gap:12px; }
.fcc-foot-social a{ width:40px; height:40px; border-radius:50%; background:rgba(255,255,255,.08);
	display:flex; align-items:center; justify-content:center; color:#fff; text-decoration:none; transition:background .15s, transform .15s; }
.fcc-foot-social a:hover{ background:var(--blue); transform:translateY(-2px); }
.fcc-foot-social .dashicons{ font-size:20px; width:20px; height:20px; }
.fcc-foot-bottom{ border-top:1px solid rgba(255,255,255,.1); text-align:center;
	padding:16px 24px 20px; font-size:13px; color:#8fa1b4; display:flex; flex-direction:column; gap:5px; align-items:center; }
.fcc-foot-credit{ font-size:12px; color:#7d90a6; }
.fcc-foot-credit a{ color:#9fb2c6; text-decoration:none; }
.fcc-foot-credit a:hover{ color:#fff; text-decoration:underline; }

@media (max-width:900px){
	.fcc-foot-in{ grid-template-columns:1fr 1fr; gap:30px; }
}
@media (max-width:560px){
	.fcc-foot-in{ grid-template-columns:1fr; text-align:center; }
	.fcc-foot-coord li{ justify-content:center; }
	.fcc-foot-social{ justify-content:center; }
	.fcc-spb--premium img{ height:56px; }
	.fcc-spb--partenaire img{ height:44px; }
	.fcc-spb--supporter img{ height:36px; }
}

/* Masque le pied de page par défaut du thème Divi (remplacé par celui-ci) */
#main-footer{ display:none !important; }
