/* css/sections/footer.css */

/* =========================
   FOOTER
   ========================= */

.footer{
  background:linear-gradient(180deg,#1f4d38 0%,#234f3c 100%);
  color:#fff;
  padding:64px 0 32px;
}

.footer .container{
  max-width:1180px;
}

.footer__main{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:32px;
  align-items:stretch;
  margin-bottom:28px;
}

/* =========================
   COMMON CARD
   ========================= */

.footer__card{
  padding:22px;
  border-radius:18px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.18);
  backdrop-filter:blur(10px);
  display:flex;
  flex-direction:column;
  min-height:300px;
}

.footer__title{
  font-size:18px;
  font-weight:800;
  margin:0;
  text-align:center;
}

.footer__divider{
  height:1px;
  width:100%;
  background:rgba(255,255,255,0.14);
  margin:14px 0 16px;
}

/* =========================
   LEFT: BRAND
   ========================= */

.footer__logo{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:#fff;
  margin-bottom:10px;
}

.footer__logo-img{
  width:44px;
  height:44px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid rgba(255,255,255,0.25);
}

.footer__logo-text{
  font-size:20px;
  font-weight:800;
}

.footer__description{
  font-size:14px;
  line-height:1.55;
  color:rgba(255,255,255,0.85);
  margin:0;
}

.footer__meta{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:16px;
  margin-bottom:0;
}

.footer__chip{
  position:relative;
  padding:12px 14px 12px 42px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.08);
  font-size:14px;
  font-weight:650;
  color:#fff;
  transition:all 0.2s ease;
}

/* Курсор pointer для кликабельных чипов */
.footer__chip[data-copy] {
  cursor:pointer;
}

.footer__chip[data-copy]:hover {
  background:rgba(255,255,255,0.12);
  border-color:rgba(255,255,255,0.28);
}

.footer__chip::before{
  content:"";
  position:absolute;
  left:16px;
  top:50%;
  width:16px;
  height:16px;
  transform:translateY(-50%);
  background:#fff;
  opacity:.95;
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:contain;
}

.footer__chip--address::before{
  mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<path d='M21 10c0 7-9 13-9 13S3 17 3 10a9 9 0 0 1 18 0z'/>\
<circle cx='12' cy='10' r='3'/></svg>");
}

.footer__chip--time::before{
  mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<circle cx='12' cy='12' r='10'/>\
<path d='M12 6v6l4 2'/></svg>");
}

/* =========================
   CENTER: NAV (разлиновка)
   ========================= */

.footer__nav{
  display:flex;
  flex-direction:column;
  height:100%;
}

.footer__links{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  border:1px solid rgba(255,255,255,0.16);
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,0.04);
}

.footer__links li{
  margin:0;
  display:flex;
  border-bottom:1px solid rgba(255,255,255,0.12);
}

.footer__links li:nth-last-child(-n+2){
  border-bottom:none;
}

.footer__links li:nth-child(odd){
  border-right:1px solid rgba(255,255,255,0.12);
}

.footer__link{
  width:100%;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  text-decoration:none;
  color:rgba(255,255,255,0.92);
  font-size:14px;
  font-weight:650;
  line-height:1.25;
  min-height:52px;
  box-sizing:border-box;
}

.footer__link::before{
  content:"";
  width:14px;
  height:14px;
  flex:0 0 14px;
  background:#fff;
  opacity:.9;
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:contain;
  mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<path d='M10 7l6 5-6 5' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/>\
</svg>");
}

.footer__link:hover{
  background:rgba(255,255,255,0.06);
}

/* =========================
   RIGHT: CONTACTS
   ========================= */

.footer__contacts{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  height:100%;
}

.footer__btns{
  width:100%;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.footer__btn{
  width:100%;
  padding:14px 14px;
  border-radius:12px;
  border:2px solid rgba(255,255,255,0.25);
  background:rgba(255,255,255,0.10);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  text-align:center;
  transition:all 0.2s ease;
}

.footer__btn:hover{
  background:rgba(255,255,255,0.14);
  border-color:rgba(255,255,255,0.34);
}

.footer__contacts-bottom{
  margin-top:16px;
  width:100%;
}

.footer__call-label{
  margin:0;
  font-size:13px;
  color:rgba(255,255,255,0.75);
  font-weight:700;
}

.footer__phone{
  margin:8px 0 0;
  font-size:22px;
  font-weight:900;
  letter-spacing:0.2px;
}

.footer__phone a,
.footer__phone span {
  color:#fff;
  text-decoration:none;
}

/* Телефон - десктоп/мобайл */
.footer__phone-desktop {
  display:inline-block;
  cursor:pointer;
}

.footer__phone-mobile {
  display:none;
}

@media (max-width:768px) {
  .footer__phone-desktop {
    display:none;
  }
  
  .footer__phone-mobile {
    display:inline-block;
  }
}

.footer__phone a::before,
.footer__phone span::before {
  content:"";
  display:inline-block;
  width:18px;
  height:18px;
  margin-right:10px;
  transform:translateY(2px);
  background:#fff;
  opacity:.95;
  mask-repeat:no-repeat;
  mask-position:center;
  mask-size:contain;
  mask-image:url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'>\
<path d='M22 16.9v3a2 2 0 0 1-2.2 2A19.8 19.8 0 0 1 3.1 5.2 2 2 0 0 1 5.1 3h3a2 2 0 0 1 2 1.7c.1 1 .3 2 .6 2.9a2 2 0 0 1-.5 2.1L9 11a16 16 0 0 0 4 4l1.3-1.2a2 2 0 0 1 2.1-.5c.9.3 1.9.5 2.9.6a2 2 0 0 1 1.7 2z' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/>\
</svg>");
}

/* =========================
   BOTTOM BAR
   ========================= */

.footer__bottom{
  border-top:1px solid rgba(255,255,255,0.14);
  padding-top:20px;
  display:flex;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}

.footer__bottom p{
  font-size:13px;
  color:rgba(255,255,255,0.68);
  margin:0;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width:1000px){
  .footer__main{
    grid-template-columns:1fr;
  }
  .footer__card{
    min-height:auto;
  }
  .footer__links{
    grid-template-columns:1fr;
  }
  .footer__links li:nth-child(odd){
    border-right:none;
  }
  .footer__links li:nth-last-child(-n+2){
    border-bottom:1px solid rgba(255,255,255,0.12);
  }
  .footer__links li:last-child{
    border-bottom:none;
  }
}