:root {
    --color-light-gray-rgb-values: 210,210,210;
    --font-size-10px: 10px;
    --font-size-20px: 20px;
    --font-size-95em: .95em;
    --font-size-1em: 1.00em;
    --font-size-125em: 1.25em;
    --font-size-150em: 1.50em;
    --letter-spacing-14: 1.4px;
    --spacer-5px: 5px;
    --spacer-15px: 15px;
    --dark-bg: #243748;
    --sub-bg: #d1f5ff;
    --light-gray: rgb(var(--color-light-gray-rgb-values));
}

body, html {
    font-family: 'Lato', sans-serif;
    height: 100%;
}

article.hl-card {
    width: calc(100%);
    max-width: 225px;
    border: solid 1px #999;
}

    article.hl-card img {
        width: calc(100%);
        height: calc(100%);
    }

article.hl-card {
    opacity: 100%;
}

    article.hl-card img:hover {
        opacity: 65%;
        /* animation: col 1s infinite; */
        transition: opacity .35s ease-in-out;
    }

    article.hl-card .title {
        padding: 4px 5px;
        color: #fff;
        background-color: var(--dark-bg);
        text-transform: uppercase;
        text-align: center;
        font-size: .85em;
      
    }

a.hl-card-wrapper {
    text-decoration: none;
}

.hl-search input {
    width: 200px;
    max-width: 400px;
    transition: width .35s ease-in-out;
}

    .hl-search input:focus {
        width: 400px;
        transition: width .35s ease-in-out;
    }

.hl-search-result .search-term {
    text-transform: capitalize;
    font-size: var(--font-size-20px);
}

.hl-search-result .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: var(--spacer-15px);
    border-bottom: 1px solid var(--light-gray);
}

.hl-search-result .subset-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: var(--spacer-15px);
    border-top: 1px solid var(--light-gray);
}

.hl-search-result .subset-header:nth-of-type(1) {
    border: none;
} 


    .hl-search-result .results {
        /*padding-top: var(--spacer-15px);
    padding-bottom: var(--spacer-15px);*/
    }

.hl-subheader {
    font-size: var(--font-size-150em) !important;
}

header {
    background-color: var(--dark-bg);
}

.dropdown-menu-dark {
    background-color: var(--dark-bg);
}

.dropdown-menu-dark {
    background-color: var(--dark-bg);
}

footer {
    background-color: var(--dark-bg);
    height: 100%;
    min-height: 100%;
}

footer a, footer p {
    font-size: var(--font-size-10px) !important;
    margin-bottom: var(--spacer-5px);
    text-transform: uppercase;
    letter-spacing: var(--letter-spacing-14);
}

.hl-thumbnail, .hl-thumbnail-primary {
    max-width: 250px !important;
}

.hl-thumbnail-primary {
    border: solid 1px #ff0000 !important;
}

h1, h2, h3, h4, h5, h6 {
    line-height: 1.0 !important;
}

.hl-search-aux-info {
   
}

.hl-box-header {
    color: #fff;
    background-color: var(--dark-bg);
}

.hl-box-subheader {
    background-color: var(--sub-bg);
}

.ribbon-callout {
    position: fixed;
    background: #08769b;
    box-shadow: 0 0 0 999px #08769b;
    clip-path: inset(0 -100%);
}

.left {
    inset: 0 auto auto 0;
    transform-origin: 100% 0;
    transform: translate(-29.3%) rotate(-45deg);
}

.right {
    inset: 0 0 auto auto;
    transform-origin: 0 0;
    transform: translate(29.3%) rotate(45deg);
}

.ribbon-2 {
    --t: 10px; /* the top offset */
    color: #fff;
    text-transform: capitalize;
    position: absolute;
    inset: var(--t) auto auto 0;
    padding: 0 10px;
    background: #cf1313;
}

.hl-portlet {
    border: solid #eee 1px
}

/*==================================
    TIMELINE
==================================*/
/*-- GENERAL STYLES
------------------------------*/
.timeline {
    line-height: 1.4em;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

    .timeline h1, .timeline h2, .timeline h3, .timeline h4, .timeline h5, .timeline h6 {
        line-height: inherit;
    }

/*----- TIMELINE ITEM -----*/
.timeline-item {
    padding-left: 40px;
    position: relative;
}

    .timeline-item:last-child {
        padding-bottom: 0;
    }

/*----- TIMELINE INFO -----*/
.timeline-info {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 3px;
    margin: 0 0 0.5em 0;
    text-transform: uppercase;
    white-space: nowrap;
}

/*----- TIMELINE MARKER -----*/
.timeline-marker {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 15px;
}

    .timeline-marker:before {
        background: var(--dark-bg);
        border: 3px solid transparent;
        border-radius: 100%;
        content: "";
        display: block;
        height: 15px;
        position: absolute;
        top: 4px;
        left: 0;
        width: 15px;
        transition: background 0.3s ease-in-out, border 0.3s ease-in-out;
    }

    .timeline-marker:after {
        content: "";
        width: 3px;
        background: var(--dark-bg);
        display: block;
        position: absolute;
        top: 24px;
        bottom: 0;
        left: 6px;
    }

.timeline-item:last-child .timeline-marker:after {
    content: none;
}

.timeline-item:not(.period):hover .timeline-marker:before {
    background: transparent;
    border: 3px solid var(--dark-bg);
}

/*----- TIMELINE CONTENT -----*/
.timeline-content {
    padding-bottom: 20px;
}

    .timeline-content p:last-child {
        margin-bottom: 0;
    }

/*----- TIMELINE PERIOD -----*/
.period {
    padding: 0;
}

    .period .timeline-info {
        display: none;
    }

    .period .timeline-marker:before {
        background: transparent;
        content: "";
        width: 15px;
        height: auto;
        border: none;
        border-radius: 0;
        top: 0;
        bottom: 30px;
        position: absolute;
        border-top: 3px solid var(--dark-bg);
        border-bottom: 3px solid var(--dark-bg);
    }

    .period .timeline-marker:after {
        content: "";
        height: 32px;
        top: auto;
    }

    .period .timeline-content {
        padding: 40px 0 70px;
    }

    .period .timeline-title {
        margin: 0;
    }

/*----------------------------------------------
    MOD: TIMELINE SPLIT
----------------------------------------------*/
@media (min-width: 768px) {
    .timeline-split .timeline, .timeline-centered .timeline {
        display: table;
    }

    .timeline-split .timeline-item, .timeline-centered .timeline-item {
        display: table-row;
        padding: 0;
    }

    .timeline-split .timeline-info, .timeline-centered .timeline-info,
    .timeline-split .timeline-marker,
    .timeline-centered .timeline-marker,
    .timeline-split .timeline-content,
    .timeline-centered .timeline-content,
    .timeline-split .period .timeline-info {
        display: table-cell;
        vertical-align: top;
    }

    .timeline-split .timeline-marker, .timeline-centered .timeline-marker {
        position: relative;
    }

    .timeline-split .timeline-content, .timeline-centered .timeline-content {
        padding-left: 30px;
    }

    .timeline-split .timeline-info, .timeline-centered .timeline-info {
        padding-right: 30px;
    }

    .timeline-split .period .timeline-title, .timeline-centered .period .timeline-title {
        position: relative;
        left: -45px;
    }
}

/*----------------------------------------------
    MOD: TIMELINE CENTERED
----------------------------------------------*/
@media (min-width: 992px) {
    .timeline-centered,
    .timeline-centered .timeline-item,
    .timeline-centered .timeline-info,
    .timeline-centered .timeline-marker,
    .timeline-centered .timeline-content {
        display: block;
        margin: 0;
        padding: 0;
    }

        .timeline-centered .timeline-item {
            padding-bottom: 40px;
            overflow: hidden;
        }

        .timeline-centered .timeline-marker {
            position: absolute;
            left: 50%;
            margin-left: -7.5px;
        }

        .timeline-centered .timeline-info,
        .timeline-centered .timeline-content {
            width: 50%;
        }

        .timeline-centered > .timeline-item:nth-child(odd) .timeline-info {
            float: left;
            text-align: right;
            padding-right: 30px;
        }

        .timeline-centered > .timeline-item:nth-child(odd) .timeline-content {
            float: right;
            text-align: left;
            padding-left: 30px;
        }

        .timeline-centered > .timeline-item:nth-child(even) .timeline-info {
            float: right;
            text-align: left;
            padding-left: 30px;
        }

        .timeline-centered > .timeline-item:nth-child(even) .timeline-content {
            float: left;
            text-align: right;
            padding-right: 30px;
        }

        .timeline-centered > .timeline-item.period .timeline-content {
            float: none;
            padding: 0;
            width: 100%;
            text-align: center;
        }

        .timeline-centered .timeline-item.period {
            padding: 50px 0 90px;
        }

        .timeline-centered .period .timeline-marker:after {
            height: 30px;
            bottom: 0;
            top: auto;
        }

        .timeline-centered .period .timeline-title {
            left: auto;
        }
}

/*----------------------------------------------
    MOD: MARKER OUTLINE
----------------------------------------------*/
.marker-outline .timeline-marker:before {
    background: transparent;
    border-color: var(--dark-bg);
}

.marker-outline .timeline-item:hover .timeline-marker:before {
    background: var(--dark-bg);
}