.site-footer{
  position:relative;z-index:2;
  border-top:1px solid var(--border);
  padding:56px 5% 28px;
}

.site-footer__top{
  display:flex;flex-direction:column;gap:18px;
  max-width:420px;
  margin-bottom:48px;
}
.site-footer__brand{
  display:flex;align-items:center;gap:16px;
}
.site-footer__logo{
  font-family:'Anton',sans-serif;font-size:22px;letter-spacing:0.03em;color:var(--white);
}
.site-footer__logo span{color:var(--red);margin-left:4px;}
.site-footer__social{
  width:34px;height:34px;border-radius:50%;
  border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  color:var(--white);
  transition:border-color .3s,color .3s;
}
.site-footer__social:hover{border-color:var(--red);color:var(--red);}
.site-footer__social svg{width:16px;height:16px;}

.site-footer__tagline{font-size:14px;color:var(--grey);line-height:1.6;}

.site-footer__contact-form{display:flex;flex-direction:column;gap:10px;}
.site-footer__contact-form input,
.site-footer__contact-form textarea{
  width:100%;
  background:rgba(255,255,255,0.02);
  border:1px solid var(--border);
  color:var(--white);
  padding:13px 16px;
  font-family:'Archivo',sans-serif;font-size:13px;
  resize:vertical;
}
.site-footer__contact-form textarea{min-height:80px;}
.site-footer__contact-form input::placeholder,
.site-footer__contact-form textarea::placeholder{color:var(--grey);}
.site-footer__contact-form input:focus,
.site-footer__contact-form textarea:focus{outline:none;border-color:var(--white);}
.site-footer__contact-form button{
  align-self:flex-start;
  background:var(--white);border:1px solid var(--white);color:var(--black);
  padding:13px 24px;
  font-family:'Archivo',sans-serif;font-size:12px;font-weight:700;letter-spacing:0.06em;
  cursor:pointer;transition:background .3s,color .3s,border-color .3s;
}
.site-footer__contact-form button:hover{background:var(--red);border-color:var(--red);color:var(--white);}
.site-footer__contact-form button.sent{background:var(--red);border-color:var(--red);color:var(--white);}

.site-footer__cols{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
  margin-bottom:48px;
}
.site-footer__col{display:flex;flex-direction:column;gap:14px;}
.site-footer__col h4{
  font-family:'Anton',sans-serif;font-size:12px;letter-spacing:0.1em;color:var(--white);
  margin-bottom:2px;
}
.site-footer__col a{
  font-size:13px;color:var(--grey);
  transition:color .3s;
  width:fit-content;
}
.site-footer__col a:hover{color:var(--white);}
.site-footer__col-bold{
  font-family:'Anton',sans-serif;font-size:12px;letter-spacing:0.08em;color:var(--white) !important;
  margin-top:6px;
}
.site-footer__label{font-size:11px;letter-spacing:0.06em;color:var(--grey);text-transform:uppercase;}
.site-footer__col--contacts a{font-family:'Anton',sans-serif;font-size:14px;color:var(--white);}
.site-footer__col--contacts a:hover{color:var(--red);}
.site-footer__hours{font-size:13px;color:var(--grey);margin-top:-8px;}

.site-footer__bottom{
  display:flex;align-items:center;gap:10px;
  padding-top:20px;border-top:1px solid var(--border);
  font-size:12px;color:var(--grey);
}

@media (max-width:800px){
  .site-footer__cols{grid-template-columns:1fr 1fr;row-gap:36px;}
  .site-footer__col--contacts{grid-column:1/3;}
}
@media (max-width:520px){
  .site-footer__subscribe{flex-direction:column;}
  .site-footer__cols{grid-template-columns:1fr;}
  .site-footer__col--contacts{grid-column:auto;}
}
