/* Футер */
.ft{--f-bg:#101012;--f-card:#17171a;--f-line:#26262a;--f-text:#f2f2f2;--f-muted:#a8a8ae;--f-yellow:#ffd91a;--f-ink:#16130a;
  margin-top:72px;background:var(--f-bg);color:var(--f-text);border-top:1px solid var(--f-line);
  font-family:'Montserrat',system-ui,sans-serif;font-size:14px}
.ft *{box-sizing:border-box}
.ft a{color:inherit;text-decoration:none}
.ft ul{list-style:none;margin:0;padding:0}
.ft :focus-visible{outline:2px solid var(--f-yellow);outline-offset:2px}
.ft .ic{width:1em;height:1em;font-size:20px;flex-shrink:0}
.ft-wrap{max-width:1680px;margin:0 auto;padding-left:32px;padding-right:32px}

/* Преимущества */
.ft-perks{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding-top:34px;padding-bottom:34px;border-bottom:1px solid var(--f-line)}
.ft-perk{display:flex;gap:16px;align-items:flex-start}
.ft-perk__ico{display:grid;place-items:center;flex-shrink:0;width:50px;height:50px;border-radius:14px;
  background:rgba(255,217,26,.1);color:var(--f-yellow);border:1px solid rgba(255,217,26,.22)}
.ft-perk__ico .ic{font-size:26px}
.ft-perk b{display:block;font-size:16px;font-weight:800;margin-bottom:4px}
.ft-perk p{margin:0;color:var(--f-muted);line-height:1.5;font-size:13.5px}

/* Основная сетка */
.ft-main{display:grid;grid-template-columns:minmax(280px,1.15fr) repeat(3,minmax(0,1fr)) minmax(240px,1.1fr);gap:44px;padding-top:44px;padding-bottom:44px}
.ft h4{margin:0 0 18px;font-size:15px;font-weight:800;letter-spacing:.2px}
.ft-col li+li{margin-top:12px}
.ft-col li a{position:relative;color:var(--f-muted);transition:color .2s,padding-left .2s}
.ft-col li a:hover{color:var(--f-yellow);padding-left:6px}

/* Подписка */
.ft-sub{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:24px 22px 0;min-height:380px;border:1px solid var(--f-line);border-radius:20px;
  background:radial-gradient(90% 55% at 30% 100%,rgba(255,217,26,.16),transparent 70%),var(--f-card)}
.ft-sub h3{margin:0 0 6px;font-size:18px;font-weight:800;font-style:italic;letter-spacing:-.3px}
.ft-sub>p{margin:0 0 16px;color:var(--f-muted);font-size:13px;line-height:1.45}
.ft-sub__form{position:relative;z-index:2;display:flex;flex-direction:column;gap:10px}
.ft-sub__field{position:relative;display:block}
.ft-sub__field .ic{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--f-muted);pointer-events:none;transition:color .2s}
.ft-sub__field:focus-within .ic{color:var(--f-yellow)}
.ft-sub__field input{width:100%;height:46px;padding:0 14px 0 44px;background:#0b0b0d;color:var(--f-text);border:1px solid var(--f-line);
  border-radius:12px;font:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}
.ft-sub__field input::placeholder{color:#62626a}
.ft-sub__field input:focus{outline:0;border-color:var(--f-yellow);box-shadow:0 0 0 4px rgba(255,217,26,.14)}
.ft-sub__form button{height:46px;border:0;border-radius:12px;background:var(--f-yellow);color:var(--f-ink);font:inherit;font-size:15px;font-weight:800;
  cursor:pointer;box-shadow:0 8px 22px rgba(255,217,26,.2);transition:transform .15s,box-shadow .2s,filter .2s}
.ft-sub__form button:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 12px 28px rgba(255,217,26,.32)}
.ft-sub__form button:disabled{opacity:.6;pointer-events:none}
.ft-sub__msg{position:relative;z-index:2;margin:10px 0 0;font-size:13px;font-weight:600}
.ft-sub__msg.is-ok{color:#4cd98a}.ft-sub__msg.is-err{color:#ff6b5b}
.ft-sub__mascot{display:block;width:calc(100% + 44px);max-width:none;height:200px;margin:auto -22px 0;object-fit:cover;object-position:50% 9%;
  -webkit-mask-image:linear-gradient(transparent,#000 30%);mask-image:linear-gradient(transparent,#000 30%);pointer-events:none}

/* Контакты */
.ft-phone{display:block;font-size:24px;font-weight:800;color:var(--f-yellow);letter-spacing:-.3px;line-height:1.25;transition:filter .2s}
.ft-phone:hover{filter:brightness(1.15)}
.ft-hours,.ft-mail{display:flex;align-items:center;gap:9px;margin:10px 0 0;color:var(--f-muted)}
.ft-hours .ic,.ft-mail .ic{font-size:17px}
.ft-mail{transition:color .2s}.ft-mail:hover{color:var(--f-yellow)}
.ft .ft-msg{margin-top:22px}
.ft-msg li+li{margin-top:10px}
.ft-msg a{display:flex;align-items:center;gap:12px;font-weight:600;transition:color .2s}
.ft-msg__ico{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#222226;color:var(--f-yellow);transition:background .2s,color .2s,transform .2s}
.ft-msg__ico .ic{font-size:17px}
.ft-msg a:hover{color:var(--f-yellow)}
.ft-msg a:hover .ft-msg__ico{background:var(--f-yellow);color:var(--f-ink);transform:scale(1.08)}

/* Категории */
.ft-cats{display:flex;gap:16px;align-items:flex-start;padding-top:28px;padding-bottom:30px;border-top:1px solid var(--f-line)}
.ft-cats__label{flex-shrink:0;padding-top:8px;font-weight:800}
.ft-chips{display:flex;flex-wrap:wrap;gap:10px}
.ft-chip{display:inline-flex;align-items:center;height:34px;padding:0 16px;color:var(--f-muted);border:1px solid #33333a;border-radius:17px;
  font-size:13px;font-weight:600;transition:color .2s,border-color .2s,background .2s,transform .15s}
.ft-chip:hover{color:var(--f-ink);background:var(--f-yellow);border-color:var(--f-yellow);transform:translateY(-1px)}

/* Низ */
.ft-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;padding-bottom:26px;
  border-top:1px solid var(--f-line);color:var(--f-muted);font-size:13px}
.ft-bottom__slogan{margin-left:auto;font-weight:700;color:var(--f-text)}
.ft-bottom__slogan::first-letter{color:var(--f-yellow)}
.ft-up{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid #33333a;color:var(--f-yellow);transition:background .2s,color .2s,transform .2s}
.ft-up:hover{background:var(--f-yellow);color:var(--f-ink);transform:translateY(-2px)}

@media (max-width:1280px){
  .ft-perks{grid-template-columns:repeat(2,1fr)}
  .ft-main{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ft-sub{grid-column:1/-1;min-height:0;padding-bottom:24px}
  .ft-sub__mascot{display:none}
  .ft-sub__form{flex-direction:row;max-width:520px}
  .ft-sub__field{flex:1}
  .ft-sub__form button{padding:0 24px}
}
@media (max-width:820px){
  .ft{margin-top:48px}
  .ft-wrap{padding-left:16px;padding-right:16px}
  .ft-perks{grid-template-columns:1fr;gap:20px;padding-top:26px;padding-bottom:26px}
  .ft-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px;padding-top:32px;padding-bottom:32px}
  .ft-contacts{grid-column:1/-1}
  .ft-sub__form{flex-direction:column;max-width:none}
  .ft-cats{flex-direction:column;gap:12px}
  .ft-cats__label{padding-top:0}
  .ft-bottom{flex-wrap:wrap}
  .ft-bottom__slogan{margin-left:0;order:3;width:100%}
  .ft-up{margin-left:auto}
}
@media (max-width:480px){.ft-main{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.ft *{transition:none!important}}
