body {
    width: 100%;
    height: 100%;
}

/* Share qr code */
.qr-code img {
    width: 100%;
}

/* Base animation */
.altum-animate {
    -webkit-animation-duration:1s;
    animation-duration:1s;
}

.altum-animate-fill-both {
    -webkit-animation-fill-mode:both;
    animation-fill-mode:both;
}

.altum-animate-fill-none {
    -webkit-animation-fill-mode:none;
    animation-fill-mode:none;
}

@-webkit-keyframes fadeIn{
    0% {
        opacity:0
    }
    to {
        opacity:1
    }
}
@keyframes fadeIn{
    0% {
        opacity:0
    }
    to {
        opacity:1
    }
}
.altum-animate-fade-in {
    -webkit-animation-name:fadeIn;
    animation-name:fadeIn
}

/* Images, icons */
.svg-sm, .svg-sm svg {
    width: 1rem;
    height: 1rem;
}

.svg-md, .svg-md svg {
    width: 1.25rem;
    height: 1.25rem;
}

.svg-lg, .svg-lg svg {
    width: 1.5rem;
    height: 1.5rem;
}

/* Modals */
.modal-header {
    padding: 1rem;
    border-bottom: 0;
}

.modal-subheader {
    padding: 0 1rem;
    border-bottom: 0;
    margin: 0;
}

.modal-content {
    padding: 1rem;
    border: none;
    box-shadow: none;
    -webkit-box-shadow: none;
}

/* New york */
.new-york-logo {
    width: 110px;
    height: 110px;
    object-fit: cover;
    border-radius: 50rem;
    background: var(--white);
    position: absolute;
    top: -3.2rem;
    border: 2px solid var(--white);
}

.new-york-cover {
    width: 100%;
    height: 200px;
    object-fit: cover;
    background: var(--white);
    position: absolute;
    top: -13.2rem;
    border: 2px solid var(--white);
}

/* San Francisco */
.san-francisco-logo {
    width: 100px;
    height: 100px;
    object-fit: cover;
    border-radius: .25rem;
    background: var(--white);
    border: 2px solid var(--gray-100);
}

.san-francisco-button {
    display: block;
    padding: .5rem .75rem;
    margin: .5rem 0;
    transition: .3s background;
    word-break: break-all;
}

.san-francisco-button:hover {
    background: var(--gray-100);
    border-radius: .25rem;
}

.san-francisco-button .icon {
    width: 2.5rem;
    height: 2.5rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
    background: var(--gray-100);
    transition: .3s background;
}
.san-francisco-button:hover .icon {
    background: var(--gray-200);
}

.san-francisco-card {
    padding: 2.25rem;
}

/* Los Angeles */
.los-angeles-logo {
    width: 125px;
    height: 125px;
    object-fit: cover;
    border-radius: 50rem;
    background: var(--white);
    border: 2px solid var(--gray-100);
}

.los-angeles-button {
    display: block;
    padding: .5rem .75rem;
    margin: .5rem 0;
    transition: .3s background;
    background: var(--gray-100);
    border-radius: .25rem;
    word-break: break-all;
}

.los-angeles-button:hover {
    background: var(--gray-200);
}

.los-angeles-button .icon {
    width: 2.5rem;
    height: 2.5rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
    transition: .3s background;
}

.los-angeles-card {
    padding: 2rem;
}

/* Chicago */
.chicago-logo {
    width: 75px;
    height: 75px;
    object-fit: cover;
    /*border-radius: 50rem;*/
    background: var(--white);
}

.chicago-button {
    display: block;
    padding: .5rem .75rem;
    margin: .5rem 0;
    transition: .3s background;
    background: var(--gray-100);
    word-break: break-all;
}

.chicago-button:hover {
    background: var(--gray-200);
}

.chicago-button .icon {
    width: 2.5rem;
    height: 2.5rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
    transition: .3s background;
}
.chicago-button:hover .icon {
}

.chicago-card {
    padding: 2rem;
}


@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

@keyframes color {
  0%, 25% {
    --bg: var(--c3);
  }
  26%, 50% {
    --bg: var(--c1);
  }
  51%, 75% {
    --bg: var(--c3);
  }
  76%, 100% {
    --bg: var(--c2);
  }
}

@keyframes gradient {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

@keyframes color {
  0%, 25% {
    --bg: var(--c3);
  }
  26%, 50% {
    --bg: var(--c1);
  }
  51%, 75% {
    --bg: var(--c3);
  }
  76%, 100% {
    --bg: var(--c2);
  }
}

@keyframes position {
  0% {
    background-position: 
      calc(var(--p) *  1) calc(var(--p) *  0), 
      calc(var(--p) * -1) calc(var(--p) *  1), 
      calc(var(--p) *  1) calc(var(--p) * -1), 
      calc(var(--p) * -1) calc(var(--p) *  0);
  }
  25% {
    background-position: 
      calc(var(--p) *  1) calc(var(--p) *  4), 
      calc(var(--p) * -1) calc(var(--p) *  5), 
      calc(var(--p) *  1) calc(var(--p) *  3), 
      calc(var(--p) * -1) calc(var(--p) *  4);
  }
  50% {
    background-position: 
      calc(var(--p) *  3) calc(var(--p) * 8), 
      calc(var(--p) * -3) calc(var(--p) * 9), 
      calc(var(--p) *  2) calc(var(--p) * 7), 
      calc(var(--p) * -2) calc(var(--p) * 8);
  }
  75% {
    background-position: 
      calc(var(--p) *  3) calc(var(--p) * 12), 
      calc(var(--p) * -3) calc(var(--p) * 13), 
      calc(var(--p) *  2) calc(var(--p) * 11), 
      calc(var(--p) * -2) calc(var(--p) * 12);
  }
  100% {    
    background-position: 
      calc(var(--p) *  5) calc(var(--p) * 16), 
      calc(var(--p) * -5) calc(var(--p) * 17), 
      calc(var(--p) *  5) calc(var(--p) * 15), 
      calc(var(--p) * -5) calc(var(--p) * 16);
  }
}


.main__bg {
            background-image: linear-gradient(-60deg, #646fd45e 50%, #e8a0bf1f 50%);
            animation: slide 3s ease-in-out infinite alternate;
            position: fixed;
            top:0;
            bottom: 0;
            left: -50%;
            right: -50%;
            opacity: 0.5;
            z-index: -1;
        }
        .layer1 {
            animation-direction: alternate-reverse;
            animation-duration: 4s;
        }
        .layer2 {
            animation-duration: 5s;
        }
        @keyframes slide {
            0% {
                transform: translateX(-25%);
            }
            100% {
                transform: translateX(25%);
            }
        }