.csc-footer{background:var(--csc-dark);color:var(--csc-dark-text-light);margin-top:0}.csc-footer__top{width:min(var(--csc-container),calc(100% - (var(--csc-gutter) * 2)));margin:auto;padding:64px 0 48px;display:grid;grid-template-columns:1.3fr .75fr .8fr 1.15fr;gap:54px}.csc-footer__brand img{width:220px;height:auto;filter:brightness(0) invert(1);opacity:.95}.csc-footer__brand p{margin:16px 0 0;font-size:16px;font-weight:700;color:var(--csc-dark-text)}.csc-footer__column{display:grid;align-content:start;gap:9px}.csc-footer__column h2{font-size:14px;text-transform:uppercase;letter-spacing:.12em;color:var(--csc-dark-text);margin:0 0 8px}.csc-footer__column a{color:var(--csc-dark-text-light);text-decoration:none;font-size:14px}.csc-footer__column a:hover{color:var(--csc-dark-text)}.csc-footer__local{display:grid;grid-template-columns:110px 1fr;gap:10px 18px;align-items:center}.csc-footer__local-icon{grid-row:1/4}.csc-footer__local-icon svg{width:110px;height:auto;fill:none;stroke:var(--csc-dark-text);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.csc-footer__local strong{font-size:18px;line-height:1.25;color:var(--csc-dark-text)}.csc-footer__local a{color:#8fd1f5;text-decoration:none;font-weight:800;font-size:13px}.csc-footer__bottom{border-top:1px solid rgba(255,255,255,.1);width:min(var(--csc-container),calc(100% - (var(--csc-gutter) * 2)));margin:auto;padding:18px 0 22px;display:flex;justify-content:space-between;gap:20px;align-items:center}.csc-footer__bottom p{margin:0;font-size:12px;color:var(--csc-dark-text-light)}.csc-footer__top-button{border:0;background:transparent;color:var(--csc-dark-text-light);font-weight:700;cursor:pointer;padding:8px 0}
@media(max-width:900px){.csc-footer__top{grid-template-columns:1fr 1fr}.csc-footer__local{grid-column:1/-1}}
@media(max-width:560px){.csc-footer__top{grid-template-columns:1fr;gap:34px;padding-top:46px}.csc-footer__local{grid-column:auto}.csc-footer__bottom{align-items:flex-start;flex-direction:column}.csc-footer__brand img{width:200px}}


/* CSC — mobile : logo pleine largeur, Explorer et Association sur 2 colonnes */
@media(max-width:560px){
 .csc-footer__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 15px}
 .csc-footer__brand,.csc-footer__local{grid-column:1/-1}
 .csc-footer__column{min-width:0;gap:11px}
 .csc-footer__column h2{font-size:12px;letter-spacing:.07em;overflow-wrap:anywhere}
 .csc-footer__column a{font-size:12px;line-height:1.45;overflow-wrap:anywhere}
}

/* CSC — composition mobile claire : identité / 2 colonnes / encart local */
@media (max-width: 560px) {
  .csc-footer .csc-footer__top {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 18px;
    align-items: start;
  }
  .csc-footer .csc-footer__brand {
    grid-column: 1 / -1;
    min-width: 0;
  }
  .csc-footer .csc-footer__brand img {
    display: block;
    width: min(220px, 100%);
    max-width: 100%;
    height: auto;
  }
  .csc-footer .csc-footer__brand p { margin: 14px 0 0; }
  .csc-footer .csc-footer__column {
    grid-column: span 1;
    min-width: 0;
    align-content: start;
  }
  .csc-footer .csc-footer__column h2 { overflow-wrap: normal; }
  .csc-footer .csc-footer__column a { overflow-wrap: anywhere; }
  .csc-footer .csc-footer__local {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 8px 16px;
    min-width: 0;
  }
  .csc-footer .csc-footer__local-icon { grid-row: 1 / span 2; align-self: center; }
  .csc-footer .csc-footer__local-icon svg { width: 70px; max-width: 100%; }
  .csc-footer .csc-footer__local strong { font-size: 17px; }
  .csc-footer .csc-footer__local a { grid-column: 2; }
}
