/* Единый подвал публичных страниц сайта Молодцовых */
.footer,
.footer *{box-sizing:border-box}
.footer{
  width:min(100%,834px);
  margin:40px auto 0;
  border:0;
  padding:26px clamp(16px,5.7vw,48px) calc(30px + env(safe-area-inset-bottom,0px));
  background:#fff;
  color:#2a251e;
  font-family:'Manrope',system-ui,sans-serif;
  text-align:left;
}
.footer__links{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:22px;
  padding-bottom:22px;
  border-bottom:1px solid rgba(0,0,0,.08);
}
.foot-item{
  display:flex;
  align-items:center;
  gap:14px;
  flex:1;
  min-width:0;
  color:#2a251e;
  text-decoration:none;
}
.foot-item__ico{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:none;
  width:52px;
  height:52px;
  border:1px solid rgba(176,140,84,.28);
  border-radius:14px;
  background:#fefdfb;
}
.foot-item__ico .ico{
  display:block;
  width:22px;
  height:22px;
  background-color:#b08c54;
}
.ico-foot-phone{
  -webkit-mask:url(../assets/icons/foot-phone.svg) center/contain no-repeat;
  mask:url(../assets/icons/foot-phone.svg) center/contain no-repeat;
}
.ico-foot-mail{
  -webkit-mask:url(../assets/icons/foot-mail.svg) center/contain no-repeat;
  mask:url(../assets/icons/foot-mail.svg) center/contain no-repeat;
}
.foot-item__text{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.foot-item__value{
  overflow:hidden;
  color:#2a251e;
  font-size:16px;
  font-weight:700;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.foot-item__label{
  color:#8a8175;
  font-size:13px;
  font-weight:500;
}
.footer__divider{
  align-self:stretch;
  flex:none;
  width:1px;
  background:rgba(0,0,0,.08);
}
.footer__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px 24px;
  padding-top:20px;
}
.footer__brand{
  display:flex;
  align-items:center;
  flex:none;
  min-width:0;
}
.footer__logo{
  display:block;
  width:230px;
  max-width:100%;
  height:auto;
}
.footer__mark{
  display:block;
  flex:none;
  width:39px;
  height:39px;
  overflow:hidden;
}
.footer__mark img{
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  margin:auto;
  object-fit:contain;
}
.footer__sep{
  flex:none;
  width:1px;
  height:39px;
  background:rgba(0,0,0,.15);
}
.footer__name{
  display:flex;
  flex-direction:column;
  gap:4px;
  width:178px;
  min-width:0;
}
.footer__name-main{
  color:#171512;
  font:600 22px/1 'Canela',Georgia,serif;
  letter-spacing:.02em;
  text-transform:uppercase;
  white-space:nowrap;
}
.footer__name-sub{
  display:block;
  width:100%;
  color:#b08c54;
  font-size:10.5px;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}
.footer__legal{display:contents}
.footer__policy{
  display:inline-flex;
  align-items:center;
  color:#746c62;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap;
}
.footer__policy:hover{text-decoration:underline}
.footer__policy-ico{
  flex:none;
  width:16px;
  height:16px;
  margin-right:7px;
}
.footer__copy{
  color:#8a8175;
  font-size:14px;
  font-weight:500;
  white-space:nowrap;
}

@media(max-width:820px){
  .footer__bottom{align-items:center;gap:clamp(8px,2vw,24px)}
  .footer__legal{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:6px;
    text-align:right;
  }
  .footer__mark{
    width:clamp(30px,7vw,39px);
    height:clamp(30px,7vw,39px);
  }
  .footer__sep{height:clamp(30px,7vw,39px)}
  .footer__logo{width:clamp(150px,42vw,230px)}
  .footer__name{width:clamp(118px,29.7vw,178px)}
  .footer__name-main{font-size:clamp(14px,3.6vw,22px)}
  .footer__name-sub{font-size:clamp(7.5px,1.9vw,10.5px);letter-spacing:.02em}
  .footer__policy,
  .footer__copy{font-size:clamp(10px,2.7vw,14px)}
  .footer__policy-ico{
    width:clamp(13px,3.4vw,16px);
    height:clamp(13px,3.4vw,16px);
    margin-right:6px;
  }
}

@media(max-width:520px){
  .footer{padding-left:clamp(16px,5vw,20px);padding-right:clamp(16px,5vw,20px)}
  .footer__links{flex-direction:row;align-items:center;gap:clamp(6px,2vw,10px)}
  .footer__divider{width:1px;height:auto;align-self:stretch}
  .foot-item{gap:clamp(6px,2vw,8px);width:auto}
  .foot-item__ico{width:34px;height:34px;border-radius:10px}
  .foot-item__ico .ico{width:16px;height:16px}
  .foot-item__value{font-size:clamp(10px,3vw,12px)}
  .foot-item__label{font-size:clamp(9px,2.6vw,11px)}
  .footer__bottom{flex-direction:row;align-items:center;gap:8px}
  .footer__logo{width:clamp(138px,42vw,180px)}
  .footer__mark{width:clamp(24px,7vw,30px);height:clamp(24px,7vw,30px)}
  .footer__sep{height:clamp(24px,7vw,30px)}
  .footer__name{width:clamp(86px,29.7vw,118px);gap:3px}
  .footer__name-main{font-size:clamp(11px,3.6vw,14px)}
  .footer__name-sub{font-size:clamp(5.7px,1.9vw,7.5px);letter-spacing:.01em;transform:none}
  .footer__legal{width:auto;align-items:flex-end;gap:5px;text-align:right}
  .footer__policy,
  .footer__copy{font-size:clamp(8.5px,2.7vw,11px)}
  .footer__policy-ico{width:clamp(10px,3vw,13px);height:clamp(10px,3vw,13px);margin-right:4px}
  .footer__mark img{width:90%;height:90%}
}

@media(max-width:360px){
  .foot-item{gap:4px}
  .foot-item__ico{width:28px;height:28px;border-radius:8px}
  .foot-item__ico .ico{width:14px;height:14px}
  .foot-item__value{font-size:9px}
  .foot-item__label{font-size:8.5px}
  .footer__brand{gap:4px}
  .footer__mark{width:22px;height:22px}
  .footer__sep{height:22px}
  .footer__name{width:78px;gap:2px}
  .footer__name-main{font-size:10.5px}
  .footer__name-sub{font-size:5.2px}
}

@media(max-width:480px){
  .footer__name-sub{transform:scaleX(.92);transform-origin:left center}
}
