:root{
    --red:#B10C2A;
    --black:#30303A;
    --shade:#676061;
    --white:#ffffff;
    --soft:#f7f7f4;
  }

  .vitrier-footer{
    position:relative;
    background:#fff;
    border-top:1px solid rgba(48,48,58,.10);
    overflow:hidden;
  }

  .vitrier-footer::after{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:0;
    height:0;
    border-top:54px solid var(--red);
    border-left:54px solid transparent;
  }

  .vitrier-footer-main{
    padding:42px 0 30px;
    display:grid;
    grid-template-columns:1.6fr .8fr 1fr 1.1fr;
    gap:34px;
    align-items:start;
    position:relative;
    z-index:2;
  }

  .vitrier-footer-brand img{
    height:58px;
    width:auto;
    margin-bottom:14px;
  }

  .vitrier-footer-brand p{
    color:var(--shade);
    font-size:14px;
    line-height:1.7;
    max-width:430px;
    margin:0;
  }

  .vitrier-footer h4{
    color:var(--black);
    font-size:13px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.12em;
    margin-bottom:15px;
  }

  .vitrier-footer h4::after{
    content:"";
    display:block;
    width:28px;
    height:3px;
    background:var(--red);
    margin-top:8px;
  }

  .vitrier-footer ul{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }

  .vitrier-footer ul a{
    color:var(--shade);
    text-decoration:none;
    font-weight:700;
    font-size:13.5px;
    transition:.22s ease;
  }

  .vitrier-footer ul a:hover{
    color:var(--red);
    padding-left:5px;
  }

  .vitrier-footer-contact{
    display:grid;
    gap:9px;
  }

  .vitrier-footer-contact div{
    display:flex;
    align-items:flex-start;
    gap:9px;
    color:var(--shade);
    font-weight:700;
    font-size:13.5px;
  }

  .vitrier-footer-contact i{
    color:var(--red);
    margin-top:3px;
    min-width:16px;
  }

  .vitrier-footer-contact a{
    color:var(--shade);
    text-decoration:none;
    transition:.22s ease;
  }

  .vitrier-footer-contact a:hover{
    color:var(--red);
  }

  .vitrier-footer-bottom{
    position:relative;
    z-index:2;
    padding:16px 0;
    border-top:1px solid rgba(48,48,58,.10);
    color:rgba(48,48,58,.66);
    font-size:12.5px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
  }

  .vitrier-footer-credit{
    margin-left:auto;
    text-align:right;
  }

  .vitrier-footer-credit a{
    color:var(--black);
    text-decoration:none;
    font-weight:800;
    transition:.22s ease;
  }

  .vitrier-footer-credit a:hover{
    color:var(--red);
  }

  @media(max-width:991px){
    .vitrier-footer-main{
      grid-template-columns:1fr 1fr;
      padding:36px 0 26px;
      gap:28px;
    }
  }

  @media(max-width:576px){
    .vitrier-footer-main{
      grid-template-columns:1fr;
      gap:24px;
    }

    .vitrier-footer-brand img{
      height:52px;
    }

    .vitrier-footer::after{
      border-top-width:42px;
      border-left-width:42px;
    }

    .vitrier-footer-bottom{
      flex-direction:column;
      align-items:flex-start;
    }

    .vitrier-footer-credit{
      margin-left:0;
      text-align:left;
    }
  }
