/*
 * The footer.
 *
 * Edit this file. It is served as it is — nothing compiles it, and the
 * order it loads in is set in resources/css/order.php.
 */

.footer {
  background-color:#181818;
  margin-top:96px;
  overflow:hidden;
  position:relative;
}

@media screen and (max-width:1440px) {

  .footer {
    margin-top:72px;
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer {
    margin-top:48px;
  }
}

.footer__inner {
  color:#fff;
  padding:44px var(--offset-x) 26px;
}

@media screen and (max-width:1440px) {

  .footer__inner {
    padding:38px var(--offset-x) 24px;
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__inner {
    padding:34px var(--offset-x) 22px;
  }
}

.footer__top {
  align-items:flex-end;
  display:flex;
  gap:calc(var(--grid-column-width)*2);
  justify-content:space-between;
}

@media screen and (max-width:1199px) {

  .footer__top {
    gap:calc(var(--grid-column-width)*1.5);
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__top {
    align-items:flex-start;
    flex-direction:column;
    gap:40px;
  }
}

.footer__cta {
  align-items:flex-start;
  display:flex;
  flex-direction:column;
  gap:22px;
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__cta {
    gap:18px;
  }
}

.footer__headline {
  font-size:clamp(34px,-6px + 3.125vw,54px);
  font-weight:600;
  letter-spacing:-.04em;
  line-height:.95;
  text-transform:none;
}

@media screen and (max-width:1199px) {

  .footer__headline {
    font-size:40px;
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__headline {
    font-size:34px;
  }
}

.footer-contact__button {
  align-items:center;
  background-color:#e1251b;
  display:flex;
  height:48px;
  justify-content:center;
  transition:opacity .3s ease;
  width:calc(var(--grid-column-width)*2.5 + var(--grid-gap)*1.5);
}

@media screen and (max-width:1440px) {

  .footer-contact__button {
    height:44px;
    width:calc(var(--grid-column-width)*3 + var(--grid-gap)*2);
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer-contact__button {
    height:48px;
  }

  .footer__cta .footer-contact__button {
    width:calc(var(--grid-column-width)*11 + var(--grid-gap)*10);
  }
}

@media(any-hover:hover),(hover:hover)and (pointer:fine) {

  .footer-contact__button:not(:disabled):hover {
    opacity:.9;
  }
}

.footer__organiser {
  display:flex;
  flex-direction:column;
  padding-bottom:6px;
  width:calc(var(--grid-column-width)*8 + var(--grid-gap)*7);
}

@media screen and (max-width:1440px) {

  .footer__organiser {
    width:calc(var(--grid-column-width)*9 + var(--grid-gap)*8);
  }
}

@media screen and (max-width:1199px) {

  .footer__organiser {
    width:calc(var(--grid-column-width)*11 + var(--grid-gap)*10);
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__top .footer__organiser {
    width:100%;
  }
}

.footer__label {
  color:#e1251b;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.footer__label,
.footer__org-name {
  font-weight:500;
  margin-bottom:8px;
}

.footer__org-name {
  font-size:17px;
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__org-name {
    font-size:16px;
  }
}

.footer__org-text {
  color:#ffffff9e;
  font-size:13px;
  line-height:1.45;
  max-width:56ch;
}

.footer__divider {
  background-color:#ffffff29;
  height:1px;
  margin:30px 0 20px;
  width:100%;
}

@media screen and (max-width:1440px) {

  .footer__divider {
    margin:26px 0 18px;
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__divider {
    margin:26px 0 18px;
  }
}

.footer__bar {
  align-items:center;
  display:flex;
  gap:40px;
  justify-content:space-between;
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__bar {
    align-items:flex-start;
    flex-direction:column;
    gap:22px;
  }
}

.footer__logo {
  display:block;
  flex-shrink:0;
}

.footer__logo-img {
  display:block;
  height:54px;
  width:auto;
}

@media screen and (max-width:1440px) {

  .footer__logo-img {
    height:48px;
  }
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__logo-img {
    height:46px;
  }
}

.footer__copyright {
  align-items:center;
  display:flex;
  gap:32px;
}

@media (max-width:900px)and (orientation:landscape),screen and (max-width:767px) {

  .footer__copyright {
    gap:20px;
  }
}

.footer__copyright-item {
  align-items:center;
  color:#ffffff80;
  display:flex;
  font-size:12px;
  gap:6px;
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}

.footer__copyright-item--link {
  transition:color .3s ease;
}

@media(any-hover:hover),(hover:hover)and (pointer:fine) {

  .footer__copyright-item--link:not(:disabled):hover {
    color:#ffffffe6;
  }
}

.footer__copyright-item--chipsa {
  transition:color .3s ease;
}

@media(any-hover:hover),(hover:hover)and (pointer:fine) {

  .footer__copyright-item--chipsa:not(:disabled):hover {
    color:#ffffffe6;
  }
}
