/* =========================================================
   MAGAZINE THEME — FOOTER
========================================================= */

.premium-site-footer{
  position:relative;

  margin-top:70px;
  padding:46px 0 26px;

  border-top:8px solid var(--mag-red);

  color:var(--footer-text);
  background:#101010;
}


/* =========================================================
   BRAND
========================================================= */

.premium-site-footer::before{
  content:"TECNOLOGIADIGITALE";

  display:block;

  width:min(var(--maxw), calc(100% - 42px));
  margin:0 auto 30px;

  color:#fff;

  font-family:var(--font-title);
  font-size:clamp(28px, 5vw, 68px);
  font-weight:950;
  line-height:.85;

  letter-spacing:-.07em;
  overflow-wrap:anywhere;
}


/* =========================================================
   GRID
========================================================= */

.premium-footer-grid{
  display:grid;
  gap:26px;
}

.premium-footer-grid.cols-1{
  grid-template-columns:1fr;
}

.premium-footer-grid.cols-2{
  grid-template-columns:repeat(2, minmax(0,1fr));
}

.premium-footer-grid.cols-3{
  grid-template-columns:repeat(3, minmax(0,1fr));
}


/* =========================================================
   CARDS
========================================================= */

.premium-footer-card{
  min-width:0;
  min-height:160px;

  padding-top:14px;

  border-top:1px solid rgba(255,255,255,.28);

  background:transparent;
}

.premium-footer-title,
.premium-footer-card .site-footer-title{
  margin:0 0 14px;

  color:#fff;

  font-size:11px;
  font-weight:950;
  line-height:1.3;

  letter-spacing:.12em;
  text-transform:uppercase;
}


/* =========================================================
   CONTENT
========================================================= */

.premium-footer-html,
.premium-footer-card .site-footer-html{
  color:rgba(255,255,255,.64);

  font-family:var(--font-serif);
  font-size:14px;
  line-height:1.65;
}

.premium-footer-html a,
.premium-footer-card .site-footer-html a{
  color:#fff;

  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;

  transition:color .2s ease;
}

.premium-footer-html a:hover,
.premium-footer-card .site-footer-html a:hover{
  color:var(--mag-red);
}

.premium-footer-html ul,
.premium-footer-card .site-footer-html ul{
  margin:0;
  padding:0;

  list-style:none;
}

.premium-footer-html li,
.premium-footer-card .site-footer-html li{
  margin:7px 0;
}


/* =========================================================
   BOTTOM
========================================================= */

.premium-footer-bottom{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:16px;

  margin-top:30px;
  padding-top:18px;

  border-top:1px solid rgba(255,255,255,.15);

  color:rgba(255,255,255,.45);

  font-size:11px;
  line-height:1.5;
}

.premium-footer-bottom-right{
  color:rgba(255,255,255,.65);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:900px){

  .premium-footer-grid.cols-2,
  .premium-footer-grid.cols-3{
    grid-template-columns:1fr;
  }

  .premium-footer-card{
    min-height:0;
  }
}


@media (max-width:600px){

  .premium-site-footer{
    margin-top:54px;
    padding:38px 0 22px;
  }

  .premium-site-footer::before{
    width:calc(100% - 40px);
    margin-bottom:24px;

    font-size:clamp(27px, 11vw, 42px);
    line-height:.9;
  }

  .premium-footer-bottom{
    flex-direction:column;

    margin-top:24px;
  }
}