/* ===== FOOTER CASCIANA ===== */
.csc-ft{ background:#3183ba; color:#fff; }
.csc-ft__grid{ display:grid; grid-template-columns:1fr; gap:40px; padding-top:40px; padding-bottom:40px; }
@media(min-width:768px){ .csc-ft__grid{ grid-template-columns:repeat(3,1fr); gap:32px; padding-top:56px; padding-bottom:56px; } }
@media(min-width:1024px){ .csc-ft__grid{ gap:48px; } }

.csc-ft__logo img{ height:40px; width:auto; margin-bottom:16px; display:block; filter:brightness(0) invert(1); }
@media(min-width:768px){ .csc-ft__logo img{ height:48px; } }
.csc-ft__info{ margin-bottom:24px; font-size:14px; }
.csc-ft__info p{ margin:0 0 4px; color:rgba(255,255,255,.75); }
.csc-ft__company{ color:#fff !important; font-weight:500; }
.csc-ft__info a{ color:inherit; text-decoration:none; }
.csc-ft__info a:hover{ text-decoration:underline; }

.csc-ft__social{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.csc-ft__social a{ width:32px; height:32px; border:1px solid rgba(255,255,255,.5); border-radius:8px; display:flex; align-items:center; justify-content:center; color:#fff; transition:background .2s; }
.csc-ft__social a:hover{ background:rgba(255,255,255,.1); }
.csc-ft__social svg{ width:16px; height:16px; }

.csc-ft__sedi{ padding-top:0; }
@media(min-width:768px){ .csc-ft__sedi{ padding-top:48px; } }
.csc-ft__sedi h4{ font-size:14px; font-weight:600; color:#fff; margin:0 0 24px; }
.csc-ft__sede{ margin-bottom:20px; font-size:14px; }
.csc-ft__sede p{ margin:0; color:rgba(255,255,255,.75); }
.csc-ft__sede-city{ color:#fff !important; font-weight:500; }

.csc-ft__loop{ display:flex; align-items:center; justify-content:center; }
@media(min-width:768px){ .csc-ft__loop{ justify-content:flex-end; } }
.csc-ft__loop img{ width:100%; max-width:180px; opacity:.5; }
@media(min-width:1024px){ .csc-ft__loop img{ max-width:220px; } }

.csc-ft__bottom{ border-top:1px solid rgba(255,255,255,.1); }
.csc-ft__bottom-inner{ padding-top:16px; padding-bottom:16px; display:flex; flex-direction:column; align-items:center; justify-content:space-between; gap:16px; }
@media(min-width:640px){ .csc-ft__bottom-inner{ flex-direction:row; } }
.csc-ft__bottom-inner p{ font-size:12px; color:rgba(255,255,255,.5); margin:0; text-align:center; }
.csc-ft__legal{ display:flex; gap:16px; }
.csc-ft__legal a{ font-size:12px; color:rgba(255,255,255,.5); text-decoration:none; transition:color .2s; }
.csc-ft__legal a:hover{ color:rgba(255,255,255,.75); }
