body {
    font-family: Poppins, Roboto, 'Helvetica Neue', Arial, sans-serif;
    background-color: #f7f4f2
}

h1 {
    font-weight: 900;
    font-style: normal;
    color: #4967a0;
    opacity: .9;
    letter-spacing: 1rem
}

h1.headline {
    font-family: "Work Sans", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-size: 22vw;
    line-height: 1;
    text-align: center;
    margin-top: 0;
    text-indent: 1rem
}

p {
    color: #333
}

.bold___stretch {
    font-family: "work sans", Roboto, "Helvetica Neue", Arial, sans-serif;
    letter-spacing: 5vw;
    font-size: 1.2rem;
    font-weight: 700;
    color: #4967a0;
    text-align: center;
    text-indent: 5vw;
    margin-bottom: -2rem
}

.bold_semi_stretch {
    font-size: 1.2rem;
    color: #4967a0;
    text-align: center;
    text-transform: uppercase
}

.standfirst p {
    font-size: 1.6rem;
    line-height: 2.8rem;
    text-align: justify
}

.year {
    letter-spacing: 10px;
    color: #4967a0
}

a {
    text-decoration-thickness: 1px;
    text-underline-offset: 0.25em;
    color: #000
}

a:hover {
    text-decoration-thickness: 2px;
    color: #a08249
}

#site-navigation {
    position: fixed;
    top: 0;
    z-index: 1000
}

#page {
    margin-top: 40vh;
    margin-bottom: 40vh
}

#footer {
    position: fixed;
    bottom: 0
}

header.headline {
    margin-top: 30vh;
    margin-bottom: 15vh
}

.standfirst {
    margin-bottom: 3rem
}

.rounded {
    border-radius: .5rem;
    margin-bottom: 3rem
}

a.button {
    background-color: #000 !important;
    border: none !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    color: #fff !important;
    cursor: pointer;
    height: auto;
    padding: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    text-decoration: none
}

.route___info {
    margin-bottom: 3rem
}

.shell_route {
    position: relative;
    margin-bottom: 8rem
}

.shell_route img {
    padding-top: 50px;
    max-width: 50%
}

.label {
    position: absolute;
    text-transform: uppercase;
    color: #4967a0;
    letter-spacing: 3px;
    font-size: .85rem
}

.left {
    top: 40%;
    left: 20%
}

.top {
    top: 0;
    left: 46%
}

.right {
    top: 40%;
    right: 20%
}

.reveal {
    --animationSpeed: 1000ms;
  opacity: 0;
  transform: translateY(32px);
  transition: opacity var(--animationSpeed) ease, transform var(--animationSpeed) ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

@media screen and (max-width:992px) {
    header.headline {
        margin-bottom: 14rem
    }

    h1 {
        font-size: 4.5rem;
        line-height: 4rem
    }

    .bold___stretch {
        margin-bottom: 0
    }

    .standfirst p {
        text-align: center
    }

    .shell_route img {
        padding-top: 50px;
        max-width: 85%
    }

    .label {
        font-size: .7rem
    }

    .left {
        top: 15%;
        left: 5%
    }

    .top {
        left: 40%
    }

    .right {
        top: 15%;
        right: 5%
    }

    #footer {
        position: relative
    }
}

@media screen and (min-width:1200px) {
    .left {
        left: 15%
    }

    .top {
        left: 50%
    }

    .right {
        right: 15%
    }
}