header {
    background-color: #25394b;
    padding: 36px 0 24px
}

    header .header {
        display: flex;
        flex-direction: column-reverse;
        width: 100%
    }

    header .logo-title {
        flex: 1;
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center
    }

    header .header-links {
        margin-top: -24px;
        margin-bottom: 24px;
        position: relative;
        text-align: right;
        margin-bottom: -12px
    }

        header .header-links a {
            color: #fcfcfc;
            font-size: 14px;
            line-height: 24px;
            font-weight: 400;
            margin: 0;
            padding: 0
        }

    header .branding {
        display: flex;
        flex: 1;
        align-self: center;
        justify-content: center;
        margin-bottom: 18px;
        transform: scale(4); /* scales the logo to 2x its size */
        transform-origin: left center; /* keeps the logo anchored to the left */
        margin-left: -100px; /* Move left (negative value) */
        margin-top: 20px; /* Move down */
    }

    header .title {
        display: flex;
        flex: 1;
        align-self: center;
        justify-content: center;
        text-align: center
    }

        header .title h1 {
            color: #fcfcfc;
            margin: 0;
            line-height: 1;
            font-size: 26px
        }

    header img.logo {
        height: 60px
    }

@media only screen and (min-width: 768px) {
    header {
        padding: 36px 0
    }

        header .logo-title {
            flex-direction: row
        }

        header .title h1 {
            font-size: 36px;
            text-align: right
        }

        header .title p {
            text-align: right
        }

        header .branding {
            justify-content: flex-start;
            align-self: flex-start;
            margin-bottom: 0
        }

        header .title {
            justify-content: flex-end;
            align-self: flex-end
        }

        header img.logo {
            height: 80px
        }
}

input[type="submit"] {
    color: #fcfcfc;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
    padding: 12px 24px;
    border-radius: 28px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    background: #047eaf;
    transition: all 200ms ease-in-out 0s;
    border: none;
    margin-bottom: 24px
}

    input[type="submit"]:hover {
        background: #45b7e6
    }

    input[type="submit"]:focus {
        outline: -webkit-focus-ring-color auto 1px !important
    }

.button {
    display: flex;
    flex: 1;
    margin: 12px auto;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
    padding: 12px 24px;
    border-radius: 28px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    background: #047eaf;
    transition: all 200ms ease-in-out 0s;
    border: none
}

    .button:hover, .button:focus {
        background: #45b7e6;
        color: #fff;
        text-decoration: none
    }

    .button.btn-ghost {
        background: none;
        color: #047eaf;
        border: 1px solid #047eaf
    }

        .button.btn-ghost:hover, .button.btn-ghost:focus {
            background: none;
            color: #45b7e6;
            border-color: #45b7e6;
            text-decoration: none
        }

.search {
    text-align: right
}

.help {
    display: flex;
    color: #fcfcfc;
    flex: 1;
    justify-content: flex-end
}

    .help i {
        font-size: 22px
    }

    .help:hover {
        color: rgba(252,252,252,0.7);
        text-decoration: none
    }

body {
    color: #2f3235;
    font-family: Figtree, Arial, sans-serif !important;
    font-style: normal;
    font-weight: 500;
    line-height: 32px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

a {
    color: #047eaf
}

    a:hover, a:focus {
        color: #45b7e6
    }

.hero {
    width: 100%;
    height: 200px;
    position: relative;
    display: flex;
    align-items: flex-end;
    margin-bottom: 72px
}

    .hero:before {
        background-image: url(../img/preston.webp);
        background-size: cover;
        background-position: 50%;
        z-index: -2
    }

    .hero:after, .hero:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%
    }

    .hero:after {
        background-color: rgba(0,0,0,0.55);
        z-index: -1
    }

.hero-title {
    color: #fcfcfc;
    font-size: 62px;
    font-size: calc(19.14286px + 2.97619vw);
    line-height: 1.1;
    padding: 36px 0;
    font-weight: 700;
    width: 100%;
    margin: 0 auto
}

@media screen and (min-width: 768px) {
    .hero-title {
        font-size: 44px
    }
}

@media screen and (min-width: 768px) and (orientation: portrait) {
    .hero {
        min-height: 20vh
    }
}

@media screen and (min-width: 768px) and (orientation: landscape) {
    .hero {
        min-height: 30vh
    }
}

@media screen and (min-width: 1134px) {
    .hero {
        min-height: 30vh
    }

    .hero-title {
        font-size: 44px
    }
}

@media screen and (min-width: 1336px) {
    .hero {
        min-height: 40vh
    }

    .hero-title {
        font-size: 62px
    }
}

.margin-bottom {
    margin-bottom: 72px
}

.phone-book {
    margin-bottom: 72px
}

    .phone-book .title {
        background: #047eaf;
        color: #fcfcfc;
        margin-bottom: 36px;
        padding: 6px 18px;
        display: flex;
        justify-content: center;
        align-items: center;
        flex: 1
    }
    .phone-book .no_style {
        text-align: center !important
    }

footer {
    background: #34516c;
    padding: 24px 0;
    color: #fcfcfc
}

@media (min-width: 1024px) {
    .modal-dialog {
        max-width: 900px;
        margin: 1.75rem auto
    }
}

.modal-backdrop.show {
    opacity: 0.8;
    filter: alpha(opacity=80)
}

.modal-body {
    padding: 2rem
}

    .modal-body ul {
        padding-left: 1.25rem
    }

.close {
    float: right;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: #fcfcfc;
    text-shadow: 0 1px 0 #000;
    opacity: 1
}

    .close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover {
        color: #fcfcfc;
        text-decoration: none;
        opacity: 0.5
    }

.modal-content {
    border-radius: 0
}

.modal-header {
    background: #25394b;
    color: #fcfcfc;
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

/*# sourceMappingURL=phone-book.min.css.map */