/* ===== FOOTER (premium, čist, responzivan) ===== */
.foot{
  --ink:#0f172a;
  --neutral-50:#f8fafc;
  --neutral-100:#f2f4f7;
  --neutral-200:#e6e9ee;
  --neutral-600:#475569;

  --card:#ffffff;

  --ring1:#c6ccd3;
  --ring2:#808797;
  --acc1:#4ecbff;
  --acc2:#007bbd;

  background: linear-gradient(180deg, var(--neutral-50), #fff);
  border-top: 1px solid var(--neutral-200);
  color: var(--ink);
}

.foot .foot-wrap{
  width:min(1100px, 92vw);
  margin: 0 auto;
  padding: clamp(28px, 4.8vw, 48px) 0;
}

/* Top: brend + CTA */
.foot .foot-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap: clamp(10px, 2vw, 20px);
  margin-bottom: clamp(18px, 3vw, 28px);
}

.foot .foot-brand{
  display:inline-flex; align-items:center; gap:10px;
  text-decoration:none; color: var(--ink);
  font-weight:800; letter-spacing:.2px;
  border-radius: 12px;
  padding: 8px 10px;
}
.foot .foot-brand .brand-ico{
  width:34px; height:34px; display:grid; place-items:center;
  border-radius:10px; color:#0b3a55;
  background: linear-gradient(180deg, rgba(139,209,255,.30), rgba(43,134,197,.14));
}
.foot .brand-name{ font-size: clamp(18px, 2.4vw, 22px); }

/* CTA dugmad */
.foot .foot-ctas{ display:flex; gap:10px; flex-wrap:wrap; }
.foot .cta-pill{
  position:relative; display:inline-flex; align-items:center; justify-content:center;
  padding: 10px 16px; border-radius:999px; text-decoration:none; font-weight:700; letter-spacing:.2px;
  transition: transform .35s cubic-bezier(.22,.61,.36,1), box-shadow .35s cubic-bezier(.22,.61,.36,1), background .25s ease;
}
.foot .cta-ghost{
  background: var(--neutral-100); color:#0e2a35;
}
.foot .cta-solid{
  background: #71BADA; color:#0e2a35;
}
.foot .cta-pill:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.06), 0 2px 6px rgba(0,0,0,.04);
}
.foot .cta-solid:hover{ background:#69c7e6; }

/* ring na CTA */
.foot .cta-pill::before{
  content:""; position:absolute; inset:0; border-radius:inherit; padding:1px;
  background: linear-gradient(90deg, var(--ring1), var(--ring2));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:0; transform:scale(1.06);
  transition: opacity .45s ease, transform .45s ease;
  pointer-events:none;
}
.foot .cta-solid::before{ background: linear-gradient(90deg, var(--acc1), var(--acc2)); }
.foot .cta-pill:hover::before{ opacity:1; transform:scale(1); }

/* Grid linkova */
.foot .foot-grid{
  display:grid;
  grid-template-columns: 1.05fr 1fr 1fr 1.2fr;
  gap: clamp(16px, 2.2vw, 28px);
  align-items:start;
  margin-bottom: clamp(18px, 3vw, 28px);
}
@media (max-width: 920px){
  .foot .foot-grid{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .foot .foot-grid{ grid-template-columns: 1fr; }
}

.foot .foot-col{
  background: linear-gradient(180deg, var(--card), var(--neutral-50));
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 1px 2px rgba(0,0,0,.04), 0 6px 14px rgba(0,0,0,.04);
  position:relative; overflow:hidden; transform:translateZ(0);
}
/* premium ring na koloni */
.foot .foot-col::before,
.foot .foot-col::after{
  content:""; position:absolute; inset:0; border-radius:inherit; padding:1px;
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:0; transform:scale(1.03);
  transition: opacity .45s ease, transform .45s ease;
  pointer-events:none;
}
.foot .foot-col::before{ background:linear-gradient(90deg, var(--ring1), var(--ring2)); }
.foot .foot-col::after{ background:linear-gradient(90deg, var(--acc1), var(--acc2)); }
.foot .foot-col:hover{ box-shadow: 0 10px 20px rgba(0,0,0,.06), 0 3px 10px rgba(0,0,0,.05); }
.foot .foot-col:hover::before{ opacity:.45; transform:scale(1.01); }
.foot .foot-col:hover::after{ opacity:1; transform:scale(1); }

.foot .foot-title{
  margin:0 0 10px; font-size:14px; text-transform:uppercase; letter-spacing:.12em; color:#0b3a55;
}
.foot .foot-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.foot .foot-list a{
  color: var(--ink); text-decoration:none; font-size:15px;
  display:inline-flex; align-items:center; gap:8px; border-radius:10px; padding:6px 8px;
  transition: background .25s ease, transform .25s ease;
}
.foot .foot-list a:hover{ background: var(--neutral-100); transform: translateX(2px); }

/* Social */
.foot .foot-social .social-row{ display:flex; gap:10px; flex-wrap:wrap; }
.foot .social-ico{
  width:38px; height:38px; border-radius:12px; display:grid; place-items:center;
  color:#0b3a55; text-decoration:none;
  background: linear-gradient(180deg, rgba(139,209,255,.26), rgba(43,134,197,.10));
  transition: transform .25s ease, box-shadow .25s ease;
}
.foot .social-ico:hover{
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(0,0,0,.06), 0 2px 6px rgba(0,0,0,.04);
}

/* Bottom bar */
.foot .foot-bottom{
  display:flex; justify-content:space-between; align-items:center; gap:16px;
  border-top: 1px solid var(--neutral-200);
  padding-top: 14px;
}
@media (max-width: 560px){
  .foot .foot-bottom{ flex-direction:column; align-items:flex-start; }
}
.foot .copy{ margin:0; color: var(--neutral-600); font-size: 13px; }
.foot .backtop{
  display:inline-flex; align-items:center; gap:8px; text-decoration:none; font-weight:600;
  color:#0b3a55; padding:6px 10px; border-radius:10px; background: var(--neutral-100);
  transition: transform .25s ease, box-shadow .25s ease;
}
.foot .backtop:hover{
  transform: translateY(-1px);
  box-shadow: 0 10px 20px rgba(0,0,0,.06), 0 2px 6px rgba(0,0,0,.04);
}

/* A11y fokus */
.foot a:focus-visible{
  outline: 4px solid rgba(0,0,0,.06);
  outline-offset: 2px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .foot *{ transition:none !important; animation:none !important; }
}
