/* =========================================================
   ДАРСИ — подвал. Тёмная тема, крупный заголовок,
   контакты и навигация.
   ========================================================= */

.ft{
  --f-ink:#0B0B0C;
  --f-muted:rgba(255,255,255,.58);
  --f-line:rgba(255,255,255,.12);
  --f-rose:#E3A9BA;

  position:relative; overflow:hidden;
  padding:clamp(56px,7vw,110px) var(--pad-x) clamp(26px,2.4vw,36px);
  background:
    radial-gradient(72% 60% at 50% -6%, rgba(227,169,186,.13) 0%, rgba(227,169,186,0) 62%),
    var(--f-ink);
  color:#fff;
  letter-spacing:-.022em;
}
.ft__inner{width:100%; max-width:var(--maxw); margin:0 auto}

/* =========================================================
   ВЕРХ: заголовок + действия
   ========================================================= */
.ft__top{
  display:flex; align-items:flex-end; justify-content:space-between;
  gap:clamp(24px,3vw,56px);
  padding-bottom:clamp(34px,3.6vw,56px);
  border-bottom:1px solid var(--f-line);
}
.ft__title{
  font-family:var(--f-head); font-weight:400;
  font-size:clamp(32px, 4.6vw, 74px); line-height:.98; letter-spacing:-.02em;
  margin:0; max-width:16ch;
}
.ft__title span{
  display:block;
  background:linear-gradient(90deg,#FFFFFF 0%, #F6D6DE 46%, #E3A9BA 100%);
  -webkit-background-clip:text; background-clip:text; color:transparent;
}

.ft__cta{flex:0 0 auto; display:flex; flex-direction:column; gap:12px; align-items:flex-end}
.ft__btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  height:clamp(50px,3.4vw,58px); padding:0 clamp(24px,2vw,34px);
  background:var(--accent-grad); color:var(--accent-ink);
  font-family:var(--f-body); font-size:15px; font-weight:400; letter-spacing:-.03em;
  transition:background .25s ease, transform .2s ease;
}
.ft__btn:hover{background:var(--accent-grad-hi); transform:translateY(-1px)}
.ft__btn svg{width:15px; height:15px; fill:currentColor; transition:transform .25s ease}
.ft__btn:hover svg{transform:translateX(3px)}
.ft__cta-note{margin:0; font-size:12.5px; color:var(--f-muted); text-align:right}

/* =========================================================
   СЕРЕДИНА: бренд / навигация / контакты
   ========================================================= */
.ft__grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.05fr);
  gap:clamp(24px,3vw,56px);
  padding:clamp(34px,3.6vw,56px) 0;
}

.ft__brand-logo{
  display:block; width:clamp(130px,10vw,168px); height:auto; margin:0 0 16px;
}
.ft__about{
  margin:0 0 18px; max-width:34ch;
  font-size:clamp(13px,.95vw,14.5px); line-height:1.55; color:var(--f-muted);
}
.ft__stats{display:flex; gap:26px; margin:0; padding:0; list-style:none}
.ft__stats li{display:flex; flex-direction:column; gap:3px}
.ft__stats b{
  font-family:var(--f-head); font-weight:400;
  font-size:clamp(20px,1.7vw,27px); line-height:1; letter-spacing:-.01em;
}
.ft__stats span{font-size:11.5px; letter-spacing:.04em; text-transform:uppercase; color:rgba(255,255,255,.42)}

.ft__cap{
  margin:0 0 16px; font-size:11.5px; letter-spacing:.12em;
  text-transform:uppercase; color:rgba(255,255,255,.4);
}
.ft__list{margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:11px}
.ft__list a{
  position:relative; display:inline-block;
  font-size:clamp(13.5px,1vw,15px); color:rgba(255,255,255,.82);
  transition:color .25s ease;
}
.ft__list a::after{
  content:''; position:absolute; left:0; bottom:-3px; width:0; height:1px;
  background:var(--f-rose); transition:width .3s cubic-bezier(.2,.7,.3,1);
}
.ft__list a:hover{color:#fff}
.ft__list a:hover::after{width:100%}

/* ---------- контакты ---------- */
.ft__phone{
  display:inline-flex; align-items:center; gap:10px; margin:0 0 6px;
  font-family:var(--f-head); font-weight:400;
  font-size:clamp(22px,1.9vw,30px); line-height:1.1; letter-spacing:-.015em;
  color:#fff; transition:color .25s ease;
}
.ft__phone:hover{color:var(--f-rose)}
.ft__phone i{
  width:7px; height:7px; flex:0 0 auto; border-radius:50%;
  background:#4CD97B; box-shadow:0 0 0 0 rgba(76,217,123,.6);
  animation:ftPulse 2.4s ease-out infinite;
}
@keyframes ftPulse{
  0%{box-shadow:0 0 0 0 rgba(76,217,123,.55)}
  70%,100%{box-shadow:0 0 0 9px rgba(76,217,123,0)}
}
.ft__mail{
  display:inline-block; margin:0 0 18px;
  font-size:clamp(14px,1.05vw,16px); color:rgba(255,255,255,.82);
  border-bottom:1px solid rgba(255,255,255,.22);
  transition:color .25s ease, border-color .25s ease;
}
.ft__mail:hover{color:#fff; border-color:var(--f-rose)}

/* ---------- соцсети ---------- */
.ft__socrow{
  display:flex; align-items:center; justify-content:space-between;
  gap:clamp(16px,2vw,40px); flex-wrap:wrap;
  padding:clamp(20px,2vw,28px) 0; border-top:1px solid var(--f-line);
}
.ft__socials{display:flex; gap:10px; flex-wrap:wrap}
.ft__soc{
  width:clamp(42px,3vw,50px); height:clamp(42px,3vw,50px);
  display:grid; place-items:center; overflow:hidden;
  background:rgba(255,255,255,.07); border:1px solid var(--f-line); color:#fff;
  transition:background .25s ease, border-color .25s ease, transform .25s ease, color .25s ease;
}
.ft__soc:hover{
  background:rgba(227,169,186,.16); border-color:rgba(227,169,186,.55);
  color:var(--f-rose); transform:translateY(-2px);
}
.ft__soc svg{width:19px; height:19px; display:block; flex:0 0 auto; grid-area:1/1}
.ft__soc{position:relative}
.ft__ast{
  position:absolute; top:5px; right:7px;
  font-style:normal; font-size:11px; line-height:1;
  color:rgba(255,255,255,.4);
}

.ft__note{
  margin:0; flex:1 1 auto; min-width:0; text-align:right; white-space:nowrap;
  font-size:11px; line-height:1.4; color:rgba(255,255,255,.3);
}

.ft__addr{margin:0; font-size:clamp(13px,.95vw,14.5px); line-height:1.5; color:var(--f-muted); font-style:normal}
.ft__addr b{display:block; color:#fff; font-weight:600; margin-bottom:3px}

/* =========================================================
   НИЗ
   ========================================================= */
.ft__bottom{
  display:flex; align-items:center; justify-content:space-between;
  gap:16px; flex-wrap:wrap;
  padding-top:clamp(20px,2vw,28px); border-top:1px solid var(--f-line);
  font-size:12.5px; color:rgba(255,255,255,.42);
}
.ft__bottom a{color:rgba(255,255,255,.62); transition:color .25s ease}
.ft__bottom a:hover{color:#fff}
.ft__legal{display:flex; gap:20px; flex-wrap:wrap}
.ft__req{display:flex; flex-direction:column; gap:5px}

.ft__up{
  display:inline-flex; align-items:center; gap:9px;
  color:rgba(255,255,255,.62); transition:color .25s ease;
}
.ft__up:hover{color:#fff}
.ft__up span{
  width:30px; height:30px; display:grid; place-items:center;
  border:1px solid var(--f-line); transition:border-color .25s ease, transform .25s ease;
}
.ft__up:hover span{border-color:var(--f-rose); transform:translateY(-3px)}
.ft__up svg{width:13px; height:13px; fill:currentColor}

/* =========================================================
   АДАПТИВ
   ========================================================= */
@media (max-width:1200px){
  .ft__grid{grid-template-columns:repeat(2, minmax(0,1fr)); gap:34px}
}

@media (max-width:900px){
  .ft__top{flex-direction:column; align-items:flex-start; gap:24px}
  .ft__cta{align-items:flex-start; width:100%}
  .ft__btn{width:100%}
  .ft__cta-note{text-align:left}
}

@media (max-width:900px){
  .ft__socrow{flex-direction:column; align-items:flex-start; gap:14px}
  .ft__note{text-align:left; flex:0 0 auto; white-space:normal}
}

@media (max-width:720px){
  .ft{padding-bottom:calc(var(--bar-h, 0px) + 14px + env(safe-area-inset-bottom))}
  .ft__grid{grid-template-columns:1fr; gap:30px}
  /* ссылки в две колонки — иначе подвал растягивается на два экрана */
  .ft__list{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px 16px}
  .ft__list a{padding:10px 0}
  /* почта — отдельной строкой под телефоном */
  .ft__phone{display:flex; width:fit-content}
  .ft__mail{display:block; width:fit-content}
  .ft__phone{padding:9px 0}
  .ft__mail{padding:9px 0}
  .ft__bottom a{padding:10px 0}
  .ft__about{max-width:none}
  .ft__bottom{flex-direction:column; align-items:flex-start; gap:14px}
}

@media (prefers-reduced-motion:reduce){
  .ft__phone i{animation:none}
}
