@layer pages {
    .intro {
        background: var(--theme-color-main-dark);
        color: #fff;
        padding: 3rem 0 8rem;
    }

    .intro h1 {
        font-size: 2.5rem;
        letter-spacing: -0.04rem;
        margin: 0;
        line-height: 1;
    }

    .intro h2 {
        font-size: 1.5rem;
        font-weight: 200;
        text-transform: none;
        letter-spacing: -0.06rem;
        margin: 0;
    }

    .intro__container {
        text-align: center;
    }

    .intro__row {
        align-items: center;
    }

    .heading {
        padding: 0 30px;
        margin: 1.5rem 0;
    }

    .soon__heading {
        text-align: center;
    }

    .services__row--centred {
        justify-content: center;
    }

    .home-info {
        margin-bottom: var(--space-4);
    }

    @media (min-width: 768px) {
        .intro__container {
            text-align: left;
        }
    }

    @media (min-width: 992px) {
        .home-info {
            margin-bottom: var(--space-5);
        }
    }

    .services {
        margin: -3rem 0 2rem;
    }

    .box {
        margin-bottom: 65px;
    }

    .box-inner {
        background: #fff;
        border-top: 8px solid;
        text-align: center;
        height: 100%;
        padding: 0 1.5rem 1rem;
    }

    .box-icon {
        padding: 1rem;
        background: var(--theme-color-dark);
        display: inline-block;
        border-radius: 50%;
        margin-top: -55px;
    }

    .box-icon .svgicon {
        width: 50px;
        height: 50px;
        color: white;
        display: block;
    }

    .box h2 {
        margin-bottom: 1.25rem;
    }

    .box h2,
    .box .lead {
        font-size: 1rem;
    }

    .info-box {
        padding: 3.5rem 2rem;
        background: white;
        position: relative;
        line-height: 1.65;
    }

    .info-box::before {
        content: '';
        display: block;
        width: 1.35rem;
        height: 1.75rem;
        background: var(--theme-color-main-dark);
        position: absolute;
        top: 0;
        left: 2rem;
        transform: translateY(-50%);
        border-radius: 4px;
    }

    .info-box p {
        margin-bottom: 2rem;
    }

    .info-box p > a {
        font-weight: 400;
    }

    .info-box .headline {
        font-weight: 500;
        font-size: 1.25rem;
    }

    .info-box .headline::after,
    .info-box .headline::before {
        content: '';
        display: table;
        width: 2rem;
        background: var(--theme-color-main);
        height: 2px;
    }

    .info-box .headline::before {
        margin-bottom: 1rem;
    }

    .info-box .headline::after {
        margin-top: 1rem;
    }

    @media (min-width: 768px) {
        .intro h1 {
            font-size: 2.75rem;
        }
    }

    @media (min-width: 768px) {
        .intro h2 {
            font-size: 1.75rem;
        }
    }

    @media (min-width: 768px) {
        .info-box {
            padding: 4rem 3.5rem;
        }
    }

    @media (min-width: 992px) {
        .intro h1 {
            font-size: 3rem;
        }
    }

    @media (min-width: 992px) {
        .intro h2 {
            font-size: 2rem;
        }
    }

    @media (min-width: 992px) {
        .box-icon .svgicon {
            width: 60px;
            height: 60px;
        }
    }

    @media (min-width: 992px) {
        .info-box {
            padding: 4rem 5rem;
        }
    }

    .box .button {
        font-size: .8125rem;
        padding: 0.5rem 0.758rem;
        letter-spacing: 0.05em;
    }

    img.soon {
        max-height: 250px;
    }

    div.soon {
        margin-bottom: 4rem;
    }

    .intro.soon {
        padding: 2rem 0 6rem;
    }
}
