/* Footer unificato – stesso aspetto della homepage */
html body footer{
  border-top:1px solid rgba(255,210,0,.22);
  padding:60px 0 0;
  margin-top:80px;
  color:#e2d8bd;
  background:linear-gradient(180deg,#07080b 0%,#0e1015 100%) !important;
  position:relative;
}

html body footer::before{
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,210,0,.45),transparent);
  opacity:.35;
  pointer-events:none;
}

html body footer .wrap{
  width:min(1200px,94vw) !important;
  max-width:none;
  margin:0 auto !important;
  padding:0 24px !important;
}

html body footer .grid-3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}

html body footer .muted,
html body footer p{
  color:#d6cdb7 !important;
}

html body footer a{
  color:#ffd86d;
  text-decoration:none;
}

html body footer a:hover{
  color:#ffe7a4;
}

html body footer .footer-logo{
  height:32px;
  width:auto;
  display:block;
  opacity:.9;
  transition:opacity .3s ease,transform .3s ease;
}

html body footer .footer-logo:hover{
  opacity:1;
  transform:scale(1.05);
}

html body footer .btn{
  appearance:none;
  border-radius:999px;
  padding:12px 28px;
  font-weight:600;
  font-size:15px;
  line-height:1.2;
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  text-decoration:none;
  transition:all .3s ease;
  white-space:nowrap;
  cursor:pointer;
  width:auto;
  min-height:44px;
}

html body footer .btn-ghost{
  border:1px dashed rgba(255,210,0,.28);
  background:rgba(255,255,255,.06);
  color:#f3ead4 !important;
}

html body footer .btn-ghost:hover{
  border-color:rgba(255,210,0,.55);
  background:rgba(255,210,0,.12);
  color:#ffd200 !important;
  box-shadow:none;
  transform:translateY(-1px);
}

html body footer .footer-bottom{
  text-align:center;
  margin-top:40px;
  padding:24px 0 40px;
  border-top:1px solid rgba(255,210,0,.18);
}

html body footer .footer-bottom p{
  font-size:13px;
  margin:0;
  color:#d6cdb7 !important;
}

html body footer .footer-bottom a{
  color:#ffd200;
  font-weight:500;
  text-decoration:none;
}

html body footer .footer-bottom a:hover{
  color:#ffe7a4;
}

@media(max-width:768px){
  html body footer{
    padding-top:40px;
    margin-top:60px;
  }

  html body footer .grid-3{
    grid-template-columns:1fr;
    gap:32px;
  }

  html body footer .wrap{
    padding:0 16px !important;
  }

  html body footer .btn{
    width:100%;
    justify-content:flex-start;
  }
}

@media(max-width:640px){
  html body footer{
    padding-top:32px;
    margin-top:48px;
  }

  html body footer .grid-3{
    gap:24px;
  }

  html body footer .footer-bottom{
    padding-bottom:32px;
  }
}
