/*
 * Spodná CTA a päta sa pri bežnej šírke natiahnu mierne za okraje
 * obrazovky, aby nevznikali biele bočné pásy. Pri silnom oddialení
 * zostanú zastropované a neroztiahnu sa cez celú širokú plochu.
 */
.final-cta,
.site-footer {
  width: min(calc(100vw + 2px), calc(var(--max) + 120px));
  max-width: none;
  position: relative;
  left: 50%;
  margin-inline: 0;
  transform: translateX(-50%);
}

/* Odstránenie svetlého deliaceho pásu medzi záverečnou CTA a pätou. */
.site-footer {
  border-top: 0 !important;
  margin-top: -1px;
}

/* Tri rovnocenné stĺpce: ľavý, stredný a pravý. */
.site-footer .footer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
  gap: 32px;
}

.site-footer .footer-copyright {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-self: start;
  color: #fff;
  text-align: left;
}

.site-footer .footer-copyright strong {
  font-weight: 900;
}

.site-footer .footer-copyright span {
  margin-top: 4px;
  font-size: 0.85rem;
}

.site-footer .footer-contact {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-self: center;
  text-align: center;
}

.site-footer .footer-links {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-self: end;
  text-align: right;
}

.site-footer .footer-links a {
  color: #fff;
  text-decoration: none;
}

.site-footer .footer-links a:hover {
  color: var(--yellow);
  text-decoration: underline;
}

@media (max-width: 700px) {
  .site-footer .footer-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .site-footer .footer-copyright,
  .site-footer .footer-contact,
  .site-footer .footer-links {
    align-items: center;
    justify-self: center;
    text-align: center;
  }
}
