﻿/*Universal*/
:root {
    --white: #FFFFFF;
    --light-gray: #DDDDDD;
    --light-blue: #7D8fC5;
    --light-blue-hover: #5D6fA5;
    --light-blue-active: #4D5f95;
    --dark-blue: #1D2E6D;
    --dark-blue-hover: #0D1E4D;
    --dark-blue-active: #0A0E3D;
    --yellow: #F0B21B;
    --yellow-dimmed: #E0A20B;
    --dark-yellow: #E0A20B;
    --green: #009933;
    --red: #AA0000;
}

::selection {
    color: var(--yellow);
    background-color: var(--dark-blue);
}

html, body {
    color: var(--dark-blue);
    height: 100%;
    padding: 0;
    margin: 0;
    font-family: 'Behind the Nineties';
    letter-spacing: 1px;
}

h1, h2, h3, h4, h5, h6 {
    padding: 0;
    margin: 0;
}

p {
    margin: 0;
}

img {
    width: 100%;
    height: auto;
}

input,
button {
    font-family: Behind the Nineties;
    font-size: 1em;
    font-weight: 700;
    letter-spacing: 1px;
    white-space: normal;
    outline: none;
}

    input.white.selected,
    input.dark-blue.selected,
    input.light-blue.selected {
        color: var(--yellow);
    }

    input[type='submit'],
    input[type='button'],
    button {
        outline: none;
        cursor: pointer;
    }

    .full-hide {
        display: none !important;
    }

.simply-centered {
    text-align: center;
}

.absolutely-centered {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.marginally-centered {
    position: relative;
    margin: 120px auto 40px auto;
}

    .intangible {
        opacity: 0;
        pointer-events: none;
    }

.icon-button {
    background-color: transparent;
    font-size: 1.2em;
    border: none;
}

.link {
    text-decoration: none;
    transition: 200ms color;
}

input.link,
button.link {
    background-color: transparent;
    outline: none;
    border: none;
}

.white {
    color: var(--white);
}

.light-blue {
    color: var(--light-blue);
}

.dark-blue {
    color: var(--dark-blue);
}

.yellow {
    color: var(--yellow);
}

.link.white:hover,
.link.white.hover,
.link.dark-blue:hover,
.link.dark-blue.hover,
.link.light-blue:hover,
.link.light-blue.hover {
    color: var(--yellow);
}

.link.white:active,
.link.white.active,
.link.dark-blue:active,
.link.dark-blue.active,
.link.light-blue:active,
.link.light-blue.active {
    color: var(--dark-yellow);
    transition: 0ms color;
}

.fa-arrow-left {
    -webkit-text-stroke: 3px;
}

.ql-editor {
    box-sizing: unset !important;
    counter-reset: list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;
    line-height: 1.42;
    height: unset !important;
    min-height: unset !important;
    outline: unset !important;
    overflow-y: unset !important;
    padding: unset !important;
    tab-size: unset !important;
    text-align: unset !important;
    white-space: pre-wrap !important;
    word-wrap: break-word !important;
}
/*End of Universal*/

#dvLoadingIcon {
    width: 160px;
    max-width: 90%;
    height: 160px;
    max-height: 90%;
    top: calc(50% - 80px);
    left: calc(50% - 80px);
}

/*Buttons*/
.button {
    color: var(--white);
    background-color: var(--dark-blue);
    font-size: 1.1em;
    font-weight: 600;
    line-height: 1.3em;
    text-align: center;
    text-decoration: none;
    min-width: 160px;
    padding: 6px 8px;
    display: inline-block;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
    outline: none;
    transition: color 200ms, background-color 200ms;
}

    .button:hover,
    .button.hover {
        color: var(--dark-blue);
        background-color: var(--yellow);
    }

    .button:active,
    .button.active {
        background-color: var(--dark-yellow);
        transform: scale(96%);
        transition: color 200ms, background-color 0ms ease-out;
    }

.button-container {
    text-align: center;
}

    .button-container.padded {
        padding: 16px 0;
    }

        .button-container.padded + .button-container.padded {
            padding-top: 0;
        }

    .button-container .button {
        margin: 3px;
    }
/*End of Buttons*/

/*Field Container*/
.field-label-container {
    position: relative;
}

    .field-label-container > label:first-child {
        font-weight: 600;
        color: #2F4F4F;
        text-align: left;
        width: 100%;
        padding-bottom: 5px;
        display: inline-block;
    }

    .field-label-container.required > label:first-child::after {
        content: ' *';
        color: #AA0000;
        font-weight: bold;
    }

    .field-label-container > label.checkmark {
        width: max-content;
        position: absolute;
        top: 0.6em;
        right: 0;
    }

        .field-label-container > label.checkmark::before {
            content: 'N/A';
        }

.field-container {
    max-width: 100%;
    padding: 8px 0;
    box-sizing: border-box;
}

    .field-container.static {
        pointer-events: none;
    }

        .field-container.static input {
            font-style: italic;
        }

    .field-container.left {
        margin-right: auto;
    }

    .field-container.right {
        margin-left: auto;
    }

    .field-container.center {
        margin-left: auto;
        margin-right: auto;
    }

    .field-container.xs {
        width: 100px;
    }

    .field-container.sm {
        width: 180px;
    }

    .field-container.md {
        width: 240px;
    }

    .field-container.lg {
        width: 300px;
    }

    .field-container.xl {
        width: 420px;
    }

    .field-container.xxl {
        width: 640px;
    }

    .field-container.mx {
        width: max-content;
    }

    .field-container.required .field-label-container > label::after,
    .field-container.required .field-label::after {
        content: '*';
        color: #990000;
        font-size: 0.9em;
        padding-left: 0.4em;
    }

.text-field-container,
.time-field-container,
.date-field-container,
.email-field-container,
.phone-field-container,
.number-field-container,
.color-field-container,
.ip-address-field-container,
.range-field-container,
.gpio-pins-field-container,
.file-field-container,
.rating-field-container {
    padding-left: 6px;
    position: relative;
}

    .text-field-container.btns,
    .time-field-container.btns,
    .date-field-container.btns,
    .email-field-container.btns,
    .phone-field-container.btns,
    .number-field-container.btns,
    .color-field-container.btns,
    .dropdown-field-container.btns,
    .ip-address-field-container.btns,
    .range-field-container.btns,
    .gpio-pins-field-container.btns,
    .file-field-container.btns {
        width: 100%;
        display: inline-block;
    }

        .text-field-container.btns > *,
        .time-field-container.btns > *,
        .date-field-container.btns > *,
        .email-field-container.btns > *,
        .phone-field-container.btns > *,
        .number-field-container.btns > *,
        .color-field-container.btns > *,
        .dropdown-field-container.btns > *,
        .ip-address-field-container.btns > *,
        .range-field-container.btns > *,
        .gpio-pins-field-container.btns > *,
        .file-field-container.btns > * {
            float: left;
        }

        .text-field-container.btns > :first-child,
        .time-field-container.btns > :first-child,
        .date-field-container.btns > :first-child,
        .email-field-container.btns > :first-child,
        .phone-field-container.btns > :first-child,
        .number-field-container.btns > :first-child,
        .color-field-container.btns > :first-child,
        .dropdown-field-container.btns > :first-child,
        .ip-address-field-container.btns > :first-child,
        .range-field-container.btns > :first-child,
        .gpio-pins-field-container.btns > :first-child,
        .file-field-container.btns > :first-child {
            width: calc(100% - calc(3em + 4px));
        }

        .text-field-container.btns.btn2 > :first-child,
        .time-field-container.btns.btn2 > :first-child,
        .date-field-container.btns.btn2 > :first-child,
        .email-field-container.btns.btn2 > :first-child,
        .phone-field-container.btns.btn2 > :first-child,
        .number-field-container.btns.btn2 > :first-child,
        .color-field-container.btns.btn2 > :first-child,
        .dropdown-field-container.btns.btn2 > :first-child,
        .ip-address-field-container.btns.btn2 > :first-child,
        .range-field-container.btns.btn2 > :first-child,
        .gpio-pins-field-container.btns.btn2 > :first-child,
        .file-field-container.btns.btn2 > :first-child {
            width: calc(100% - calc(6em + 8px));
        }

        .text-field-container.btns.btn3 > :first-child,
        .time-field-container.btns.btn3 > :first-child,
        .date-field-container.btns.btn3 > :first-child,
        .email-field-container.btns.btn3 > :first-child,
        .phone-field-container.btns.btn3 > :first-child,
        .number-field-container.btns.btn3 > :first-child,
        .color-field-container.btns.btn3 > :first-child,
        .dropdown-field-container.btns.btn3 > :first-child,
        .ip-address-field-container.btns.btn3 > :first-child,
        .range-field-container.btns.btn2 > :first-child,
        .gpio-pins-field-container.btns.btn3 > :first-child,
        .file-field-container.btns.btn3 > :first-child {
            width: calc(100% - calc(9em + 12px));
        }

        .text-field-container.btns > :not(:first-child),
        .time-field-container.btns > :not(:first-child),
        .date-field-container.btns > :not(:first-child),
        .email-field-container.btns > :not(:first-child),
        .phone-field-container.btns > :not(:first-child),
        .number-field-container.btns > :not(:first-child),
        .color-field-container.btns > :not(:first-child),
        .dropdown-field-container.btns > :not(:first-child),
        .ip-address-field-container.btns > :not(:first-child),
        .range-field-container.btns > :not(:first-child),
        .gpio-pins-field-container.btns > :not(:first-child),
        .file-field-container.btns > :not(:first-child) {
            max-width: 3em;
            margin-left: 4px;
        }

.field-container > div > input[type='text'],
.lookup-field-container > .select-wrapper > input[type='text'],
.lookup-field-container.multi > .select-wrapper > .static-dropdown-items-container,
.field-container > div > input[type='password'],
.field-container > div > textarea,
.field-container > div > input[type='time'],
.field-container > div > input[type='date'],
.field-container > div > input[type='email'],
.field-container > div > input[type='tel'],
.field-container > div > input[type='number'],
.field-container > div > input[type='color'],
.field-container > div > input[type='range'] {
    color: #2F4F4F;
    background-color: rgba(255, 255, 255, 0.5);
    font-size: 0.95em;
    font-weight: 500;
    width: 100%;
    max-width: 100%;
    padding: 7px;
    display: block;
    position: relative;
    border: 2px solid #2F4F4F;
    outline: none;
    border-radius: 5px;
    box-sizing: border-box;
    appearance: textfield;
    transition: 200ms border-color, 200ms opacity;
}

.field-container > div > textarea {
    width: 100% !important;
    height: 160px;
}

.field-container > div > input[type='date'] {
    height: 41px;
}

    .field-container > div > input[type='text']:focus,
    .lookup-field-container > .select-wrapper > input[type='text']:focus,
    .field-container > div > input[type='password']:focus,
    .field-container > div > textarea:focus,
    .field-container > div > input[type='time']:focus,
    .field-container > div > input[type='date']:focus,
    .field-container > div > input[type='email']:focus,
    .field-container > div > input[type='tel']:focus,
    .field-container > div > input[type='number']:focus,
    .field-container > div > input[type='color']:focus,
    .field-container > div > input[type='range']:focus {
        border-color: #1F2F2F;
    }

    .field-container > div > input[type='text']::placeholder,
    .lookup-field-container > .select-wrapper > input[type='text']::placeholder,
    .field-container > div > input[type='password']::placeholder,
    .field-container > div > textarea::placeholder,
    .field-container > div > input[type='time']::placeholder,
    .field-container > div > input[type='date']::placeholder,
    .field-container > div > input[type='email']::placeholder,
    .field-container > div > input[type='tel']::placeholder,
    .field-container > div > input[type='number']::placeholder,
    .field-container > div > input[type='color']::placeholder,
    .field-container > div > input[type='range']::placeholder {
        color: #2F4F4F;
        opacity: 0.4;
    }

.field-container > input[type='number']::-webkit-inner-spin-button,
.field-container > input[type='number']::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.text-field-container > .ql-toolbar,
.text-field-container > .html-editor,
.select-wrapper {
    background-color: rgba(255, 255, 255, 0.5);
    max-height: 540px;
}

.file-field-container > .block {
    padding: 0;
}

    .file-field-container > .block > .content {
        padding: 4px 12px;
    }

/*Originally this was absolutely centered, but I had to change it to accomodate ASP.NET error message dynamic placement*/
.text-field-container > .eye-con {
    color: #2F4F4F;
    position: absolute;
    top: 14px;
    right: 10px;
    cursor: pointer;
    transition: 200ms color;
}

    /*.text-field-container > .eye-con:hover:not(:active) {
        color: #4F6F6F;
    }*/

    .text-field-container > .eye-con:active {
        color: #4F6F6F;
        transition: 20ms color;
    }

.field-container .error-message {
    color: #990000;
    font-weight: 500;
    text-align: center;
    width: 100%;
    padding-top: 5px;
    display: block;
}
/*End of Field Container*/

/*Checkboxes*/
.checkmark-field-container {
    padding: 10px 6px 0 6px;
}

    .checkmark-field-container.week {
        height: 60px;
    }

        .checkmark-field-container.week > .checkmark {
            display: inline-block;
            padding-left: 32px;
        }

            .checkmark-field-container.week > .checkmark > .text {
                writing-mode: vertical-lr;
                transform: translate(calc(-100% - 0.25em), 30px);
            }

.checkmark {
    font-size: 22px;
    padding-left: 18px;
    margin-bottom: 20px;
    position: relative;
    display: block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: pointer;
}

    .checkmark.blank {
        margin-bottom: 6px;
    }

    .checkmark > input {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0;
        pointer-events: none;
    }

    .checkmark > .box {
        background-color: transparent;
        height: 15px;
        width: 15px;
        position: absolute;
        top: 0;
        left: 0;
        border: 2px solid rgb(47, 79, 79);
        border-radius: 5px;
        transform: translateY(-50%);
        transition: 200ms border-color;
    }

    .checkmark > input:checked + .box {
        display: block;
        border-color: rgb(47, 79, 79);
    }

    .checkmark > input:checked:focus + .box {
        border-color: #008080;
    }

    .checkmark > .box:after {
        content: '';
        width: 3px;
        height: 6px;
        position: absolute;
        left: 4.5px;
        top: 2px;
        border: 2px solid rgb(47, 79, 79);
        border-width: 0 3px 3px 0;
        opacity: 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        transition: 200ms border-color, 200ms opacity;
    }

    .checkmark > input:checked + .box:after {
        opacity: 1;
    }

    .checkmark > input:checked:focus + .box:after {
        border-color: #008080;
    }

    .checkmark > .text {
        font-size: 0.75em;
        position: absolute;
        top: -0.75em;
        left: 1.5em;
    }
/*End of Checkboxes*/

/*Date Pickers*/
.date-field-container {
    padding-left: 6px;
}

.date-wrapper {
    position: relative;
    display: inline-block;
}

    .date-wrapper > input[type='date'] {
        color: #FFFFFF;
        background-color: transparent;
        font-size: 1.1em;
        /*Fix this later*/
        /*width: 130px;*/
        padding: 7px;
        position: relative;
        border: 2px solid #D3D3D3;
        border-radius: 5px;
        outline: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        transition: 200ms border-color;
        z-index: 2;
    }

        .date-wrapper > input[type='date']:focus {
            border-color: #008080;
        }
/*End of Date Pickers*/

/*Modal Container*/
.modal-wrapper {
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%;
    position: fixed !important;
    top: 0;
    left: 0;
    overflow-y: auto;
    z-index: 1000;
}

    .modal-wrapper.hide {
        background-color: rgba(255, 255, 255, 0);
        height: 0;
        overflow: hidden;
        pointer-events: none;
    }

    .modal-wrapper.top {
        z-index: 200;
    }

.modal-container {
    text-align: center;
    width: 540px;
    max-width: 100%;
    /*height: 300px;*/
    border: 2px solid var(--dark-blue);
    border-radius: 15px;
    border-bottom-width: 5px;
    box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.4);
    box-sizing: border-box;
    z-index: 1001;
}

    .modal-container .header {
        color: var(--white);
        background-color: var(--dark-blue);
        width: 100%;
        height: 42px;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
    }

        .modal-container .header .title {
            line-height: 42px;
            font-size: 21px;
            font-weight: 600;
        }

    .modal-container .body {
        background-color: var(--white);
        width: 100%;
        min-height: 72px;
        max-height: 640px;
        padding: 10px;
        box-sizing: border-box;
        overflow-y: auto;
    }

    .modal-container .footer {
        background-color: var(--white);
        width: 100%;
        height: 60px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;
    }
/*End of Modal Container*/

/*Notification Container*/
.notifications-container {
    white-space: nowrap;
    position: fixed !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 200;
    pointer-events: none;
}

    .notifications-container .window-container > div {
        color: var(--white);
        background-color: var(--light-blue);
        text-align: center;
        text-overflow: ellipsis;
        width: max-content;
        max-width: 100%;
        padding: 8px 14px;
        box-shadow: 0px 0px 10px 2px rgba(0, 0, 0, 0.4);
        box-sizing: border-box;
        overflow: hidden;
        z-index: 1001;
    }

    .notifications-container .window-container .content-container {
        table-layout: initial;
    }

.notification-container {
    max-width: calc(100% - 20px);
    position: absolute !important;
    left: 50%;
    transform: translate(-50%, 0);
    transition: 400ms bottom ease 360ms, 400ms transform;
    pointer-events: all;
}

    .notification-container.expired {
        transform: translate(-50%, calc(100% + 20px));
        pointer-events: none;
    }

    .notification-container .body {
        text-overflow: ellipsis;
        padding-right: 12px;
        overflow-x: hidden;
    }

    .notification-container .link.white {
        position: absolute;
        right: 0;
    }
/*End of Notification Container*/

/*Fields*/
.search-field input:first-child {
    color: var(--dark-blue);
    font-weight: bold;
    width: 100%;
    padding: 10px 36px 10px 14px;
    border: none;
}

.search-field.bordered input:first-child {
    border: 1px solid var(--light-blue);
}

.search-field input:first-child::placeholder {
    color: var(--dark-blue);
    font-weight: bold;
    opacity: 0.5;
}

.search-field input:last-child,
.search-field button,
.search-field a {
    background-color: transparent;
    font-size: 24px;
    text-align: left;
    width: 36px;
    height: 100%;
    padding: 2px 0 0 0;
    margin: 0;
    position: absolute;
    top: 0;
    right: 0;
    border: none;
}

.search-field a {
    padding-top: 4px;
}
/*End of Fields*/

/*Global Structure Containers*/
.outer-wrapper {
    height: 100%;
    position: relative;
}

    .outer-wrapper * {
        position: relative;
        box-sizing: border-box;
    }

.inner-wrapper {
    height: 100%;
}
/*End of Global Structure Containers*/

/*Header Container*/
.header-container {
    font-weight: 500;
    letter-spacing: 1px;
    background-color: var(--dark-blue);
    background-image: url('../Images/Header.png');
    background-repeat: repeat;
    background-size: contain;
    height: 180px;
    z-index: 3;
}

    .header-container > div,
    .header-container > div > div {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
    }

        .header-container > div > div:first-child {
            width: 250px;
            padding: 10px 0 0 20px;
            left: 0;
        }

        .header-container > div > div:last-child {
            background-color: var(--dark-blue);
            width: calc(100% - 270px);
            height: 100px;
            padding: 26px 30px 0 0;
            right: 0;
            box-shadow: var(--dark-blue) 0px 0px 10px 10px;
        }
/*End of Header Container*/

/*Header Nav Container*/
.header-nav-container {
    width: 100%;
}

    .header-nav-container,
    .header-nav-container > div:first-child,
    .header-nav-container > div:last-child {
        height: 100%;
    }

        .header-nav-container > div {
            position: absolute;
            top: 0;
        }

            .header-nav-container > div:first-child {
                width: calc(100% - 240px);
                left: 0;
            }

                .header-nav-container > div:first-child > div {
                    line-height: 1.2em;
                    text-align: center;
                    max-width: 150px;
                    max-height: 70px;
                    padding: 10px 10px;
                    display: inline-block;
                    vertical-align: top;
                }

                    .header-nav-container > div:first-child > div .dropdown-nav-container {
                        background-color: #7D8FC5;
                        width: 160px;
                        position: absolute;
                        left: 0%;
                        z-index: 1;
                    }

                        .header-nav-container > div:first-child > div .dropdown-nav-container .dropdown-nav-container {
                            top: 0;
                            left: 100%;
                        }

                    .header-nav-container > div:first-child > div .dropdown-nav-container:not(.expanded) {
                        display: none;
                    }

                        .header-nav-container > div:first-child > div .dropdown-nav-container > div > a:first-child {
                            padding: 0 1em 0 10px;
                        }

                            .header-nav-container > div:first-child > div .dropdown-nav-container > div > a:first-child {
                                line-height: 2em;
                                text-overflow: ellipsis;
                                white-space: nowrap;
                                display: block;
                                overflow: hidden;
                            }

                            .header-nav-container > div:first-child > div .dropdown-nav-container > div > a:nth-child(2) {
                                position: absolute;
                                right: 4px;
                                top: 1.1em;
                                transform: translateY(-50%);
                            }

            .header-nav-container > div:last-child {
                width: 240px;
                padding-top: 4px;
                right: 0;
            }

                .header-nav-container > div:last-child > div:last-child {
                    text-align: right;
                    padding: 8px 4px;
                }
/*End of Header Nav Container*/

/*Header Mobile Nav Toggle*/
.header-mobile-nav-toggle {
    font-size: 1.4em;
    display: none;
    position: absolute;
    top: 14px;
    right: 14px;
}
/*End of Header Mobile Nav Toggle*/

/*Body Container*/
.body-container {
    width: 100%;
    height: calc(100% - 280px);
    overflow: hidden;
    z-index: 1;
}

    .body-container > div:not(.body-col-mobile-toggle),
    .body-container > div > div:not(.body-col-mobile-toggle) {
        width: 100%;
        height: 100%;
        display: inline-block;
    }

    .body-container > div > div > form {
        height: 100%;
    }
/*End of Body Container*/

/*Body Col Container*/
.body-col-container {
    width: 220px;
    height: 100%;
    padding: 30px;
    float: left;
}

    .body-col-container.light-blue > div {
        background-color: var(--light-blue);
    }

    .body-col-container.dark-blue > div {
        background-color: var(--dark-blue);
    }

    .body-col-container:first-child {
        padding-right: 0;
    }

    .body-col-container:nth-child(2) {
        width: calc(100% - 440px);
        padding-bottom: 0;
        position: relative;
    }

        .body-col-container:nth-child(2):last-child,
        .body-col-container.full {
            width: calc(100% - 220px);
        }

        .body-col-container.full + div {
            display: none;
        }

    .body-col-container:last-child:not(:nth-child(2)) {
        padding-left: 0;
    }

        .body-col-container:first-child > div:not(.body-col-mobile-toggle),
        .body-col-container:last-child:not(:nth-child(2)) > div:not(.body-col-mobile-toggle) {
            overflow-y: auto;
        }

    .body-col-container > div:not(.body-col-mobile-toggle) {
        height: 100%;
    }

    .body-col-container:nth-child(2).details > div:first-child,
    .body-col-container:nth-child(2):not(.details) > div:last-child {
        display: none;
    }

    .body-col-container:nth-child(2) > div,
    .body-col-container:nth-child(2) > div > div {
        width: 100%;
    }

    .body-col-container:nth-child(2):not(.details) > div > div:first-child {
        text-overflow: ellipsis;
        height: 120px;
        padding: 10px 20px 0 20px;
        overflow-y: hidden;
    }

        .body-col-container:nth-child(2):not(.details) > div > div:first-child.extended-container {
            height: 120px;
        }

    .body-col-container:nth-child(2):not(.details) > div > div:first-child.filtered-container {
        height: 178px;
    }

        .body-col-container:nth-child(2).details > div > div:first-child {
            padding-left: 0;
        }

        .body-col-container:nth-child(2).details > div > div:first-child {
            height: 42px;
        }

        .body-col-container:nth-child(2) > div >  div:last-child {
            height: calc(100% - 120px);
        }

    .body-col-container:nth-child(2) > div > div.extended-container + div:last-child {
        height: calc(100% - 120px);
    }

    .body-col-container:nth-child(2) > div > div.filtered-container + div:last-child {
        height: calc(100% - 178px);
    }

    .body-col-container:nth-child(2).details > div > div:last-child {
        height: calc(100% - 42px);
    }

            .body-col-container:nth-child(2) > div > div:last-child > div {
                height: 100%;
                padding: 10px 0 20px 0;
                overflow-y: auto;
            }

            .body-col-container:nth-child(2) > div > div:last-child::before {
                content: '';
                background-image: linear-gradient(180deg, #FFFFFF,transparent);
                height: 24px;
                position: absolute;
                top: 0;
                right: 0;
                left: 0;
                pointer-events: none;
                z-index: 1;
            }

            .body-col-container:nth-child(2) > div > div:last-child::after {
                content: '';
                background-image: linear-gradient(0deg, #FFFFFF,transparent);
                height: 24px;
                position: absolute;
                right: 0;
                left: 0;
                bottom: 0;
                pointer-events: none;
            }
/*End of Body Col Container*/

/*Body Col Mobile Toggle*/
.body-col-mobile-toggle {
    font-size: 1.4em;
    display: none;
    position: absolute;
    top: 4px;
}

.body-container > .body-col-mobile-toggle:first-child,
.body-col-container:first-child .body-col-mobile-toggle {
    left: 14px;
}

.body-container > .body-col-mobile-toggle:last-child,
.body-col-container:last-child .body-col-mobile-toggle {
    right: 14px;
}

.body-col-container.full:last-child + div + .body-col-mobile-toggle {
    display: none;
}
/*End of Body Col Mobile Toggle*/

/*Sharing Container*/
.sharing-container .icon-container {
    padding: 4px 20px;
    display: inline-block;
}

    .sharing-container .icon-container .link {
        font-size: 3em;
        transition: 200ms color;
    }

        .sharing-container .icon-container .link:hover {
            color: var(--yellow);
        }

    .sharing-container .icon-container.facebook .link {
        color: #4267B2;
    }

    .sharing-container .icon-container.twitter .link {
        color: #1DA1F2;
    }
/*End of Sharing Container*/

/*Search Results*/
.search-results-container {
    width: 640px;
    max-width: 100%;
    margin: 0 auto;
}

.search-result-container {
    padding: 14px 20px;
}

    .search-result-container .title {
        font-size: 1.3em;
        font-weight: 600;
        line-height: 1.2em;
    }

    .search-result-container .link {
        font-size: 0.85em;
        padding-left: 6px;
        padding-bottom: 2px;
    }

    .search-result-container .content {
        font-size: 0.9em;
        text-overflow: ellipsis;
        max-height: 3.3em;
        padding-left: 16px;
        padding-bottom: 14px;
        overflow: hidden;
    }

        .search-result-container .content::after {
            content: "";
            background-image: linear-gradient(0deg, rgb(255, 255, 255), transparent);
            height: 24px;
            position: absolute;
            right: 0px;
            left: 0px;
            bottom: 0px;
            pointer-events: none;
        }

    .search-result-container .date {
        font-size: 0.7em;
        font-style: italic;
        padding-left: 6px;
    }
/*End of Search Results*/

/*Page Header Container*/
.page-header-container {
    font-size: 32px;
    font-weight: 700;
    line-height: 30px;
    text-align: center;
    padding-bottom: 20px;
}
/*End of Page Header Container*/

/*Page Sub Header Container*/
.page-sub-header-container {
    font-size: 23px;
    font-weight: 700;
    line-height: 24px;
    text-align: center;
    padding-top: 6px;
    padding-bottom: 2px;
}
/*End of Page Sub Header Container*/

/*Page Message*/
.page-message {
    font-size: 1.1em;
    text-align: center;
}
/*End of Page Message*/

/*Footer Container*/
.footer-container {
    background-color: var(--dark-blue);
    width: 100%;
    height: 100px;
    overflow-x: hidden; /*This overflow trick is a quick hack to prevent the footer for overflowing on IOS*/
    z-index: 2;
}

    .footer-container > div,
    .footer-container > div > div {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
    }
/*End of Footer Container*/

/*Footer Nav Container*/
.footer-nav-container:first-child {
    width: calc(100% - 190px);
    height: 100%;
    left: 0;
}

.footer-nav-container > div:first-child {
    left: 40px;
}

.footer-nav-container > div:nth-child(2) {
    left: 200px;
}

.footer-nav-container > div:nth-child(3) {
    left: 390px;
}

.footer-nav-container:last-child {
    text-align: center;
    width: 190px;
    height: 100%;
    right: 0;
}

.footer-nav-container > div:last-child {
    right: 40px;
}

.footer-nav-container:last-child {
    text-align: center;
}

    .footer-nav-container:last-child > div > div:first-child {
        width: 150px;
        /*display: inline-block;*/
        transform: translateY(-12px);
    }

.footer-nav-container > div {
    color: #FFFFFF;
    font-size: 1.4em;
    font-weight: 500;
    width: 150px;
    height: 100%;
    position: absolute;
    padding: 14px 0;
}

    .footer-nav-container > div a {
        line-height: 44px;
    }

    .footer-nav-container > div > div {
        height: 50%;
    }
/*End of Footer Nav Container*/

/*Daily Quote Container*/
.daily-quote-container {
    text-align: center;
    height: 100%;
}

/*.daily-quote-container::after {
    content: "";
    background-image: linear-gradient(0deg, rgb(255, 255, 255), transparent);
    height: 24px;
    position: absolute;
    right: 0px;
    left: 0px;
    bottom: 0px;
    pointer-events: none;
}*/

    .daily-quote-container > h3 {
        font-size: 2em;
        padding-bottom: 4px;
    }

    .daily-quote-container > div {
        font-size: 1.2em;
        width: max-content;
        margin: 0px auto;
        overflow: hidden;
        max-width: 100%;
        line-height: 1.3em;
    }

    /*This doesn't work due to the max-width constraint on the container*/
    /*.daily-quote-container > div::before {
        content: '"';
        position: absolute;
        top: 0;
        left: -0.4em;
    }

        .daily-quote-container > div::after {
            content: '"';
            position: absolute;
            top: 0;
            right: -0.4em;
        }*/
/*End of Daily Quote Container*/

/*Home Nav Blocks*/
.content-blocks-container.home-nav-block {
    text-align: center;
}

.content-block.home-nav-block {
    width: auto;
    padding: 16px;
    display: inline-block;
    vertical-align: top;
}

    .content-block.home-nav-block .title {
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.home-nav-block > a {
        display: block;
    }

        .content-block.home-nav-block > a > div {
            width: 200px;
            height: 200px;
            position: relative;
            border: 3px solid var(--dark-blue);
            float: none;
        }

            .content-block.home-nav-block > a > div > img {
                width: auto;
                height: auto;
                max-width: 100%;
                max-height: calc(100% - 3.7em);
                margin-top: 2px;
            }

/*.content-blocks-container.home-nav-block {
    text-align: center;
}

    .content-blocks-container.home-nav-block > div {
        max-width: 700px;
        margin: 0 auto;
    }

.content-block.home-nav-block {
    width: 50%;
    padding: 16px;
    display: inline-block;
}

    .content-block.home-nav-block > a {
        background-color: var(--light-blue);
        display: inline-block;
    }

        .content-block.home-nav-block > a > div {
            border: none;
        }

    .content-block.home-nav-block .icon > i {
        font-size: 6em;
        padding-top: 30px;
    }

    .content-block.home-nav-block .title {
        font-size: 1.6em;
        font-weight: 500;
        line-height: 1.3em;
        text-align: center;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        max-height: 3.9em;
        position: absolute;
        bottom: 8px;
        overflow: hidden;
    }

    .content-block.home-nav-block > a > div:first-child {
        width: 300px;
        height: 240px;
        position: relative;
        float: none;
    }

    .content-block.home-nav-block > a > div > div:first-child {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: 50% 50%;
        width: calc(100% - 8px);
        height: calc(100% - 8px);
        position: absolute;
        top: 4px;
        left: 4px;
    }*/
/*End of Home Nav Blocks*/

/*Search Container*/
.search-container {
    color: var(--white);
    margin: 0 auto;
}

    .search-container > div {
        max-width: 640px;
        margin: 0 auto;
    }

[data-page='KnowledgeBase'] .search-container > div:last-child,
[data-page='Logospedia'] .search-container > div:last-child,
[data-page='TABs'] .search-container > div:last-child,
[data-page='FunStuff'] .search-container > div:last-child {
    max-width: unset;
}

    .search-container > div:first-child > div > div:nth-child(2) {
        width: 88px;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
    }

        .search-container > div:first-child > div > div:nth-child(2) > input {
            background-color: #7d8fc5;
            line-height: 16px;
            width: 100%;
            height: 100%;
            min-width: unset;
        }

    .search-container > div:first-child > div > div:first-child {
        width: calc(100% - 100px);
    }

    [data-page='Search'] .search-container > div:first-child > div > div:first-child {
        width: 100%;
    }

    .search-container > div:last-child {
        padding-top: 12px;
    }
/*End of Search Container*/

/*Filter Container*/
.filter-container {
    background-color: var(--light-blue);
    font-size: 0.92em;
    height: 52px;
}

    .filter-container div {
        height: 100%;
    }

    .filter-container input {
        color: var(--white);
        background-color: transparent;
        line-height: 16px;
        padding: 0;
        margin: 0;
        border: none;
    }

    .filter-container .col {
        font-weight: bold;
        text-align: center;
        width: 25%;
        position: absolute;
    }

        .filter-container .col:first-child > div,
        .filter-container .col:nth-child(2) > div {
            width: max-content;
            height: auto;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .filter-container .col:not(:last-child)::after {
            content: '';
            background-color: var(--white);
            width: 1px;
            position: absolute;
            top: 10px;
            right: 0;
            bottom: 10px;
        }

        .filter-container .col:last-child > div:first-child::after {
            content: '';
            background-color: var(--white);
            height: 1px;
            position: absolute;
            right: 40px;
            left: 40px;
            bottom: 0;
        }

        .filter-container .col > input {
            width: 100%;
            height: 100%;
        }

        .filter-container .col:first-child {
            left: 0;
        }

        .filter-container .col:nth-child(2) {
            left: 25%;
        }

        .filter-container .col:last-child {
            width: 50%;
            left: 50%;
        }

            .filter-container .col:last-child > div {
                width: 100%;
                height: 50%;
            }

                .filter-container .col:last-child > div > input {
                    height: max-content;
                    padding: 4px 10px;
                }
/*End of Filter Container*/

/*Contact Container*/
.contact-container {
    max-width: 420px;
    padding: 10px 20px;
    margin: 0 auto;
}
/*End of Contact Container*/

/*Subscribe Container*/
.subscribe-container {
    max-width: 420px;
    padding: 10px 20px;
    margin: 0 auto;
}
/*End of Contact Container*/

/*Login Container*/
.login-container {
    max-width: 420px;
    padding: 10px 20px;
    margin: 0 auto;
}
/*End of Login Container*/

/*Login Reset Container*/
.login-reset-container {
    max-width: 420px;
    padding: 10px 20px;
    margin: 0 auto;
}
/*End of Login Reset Container*/

/*Login Update Container*/
.login-update-container {
    max-width: 420px;
    padding: 10px 20px;
    margin: 0 auto;
}
/*End of Update Reset Container*/

/*Create User Container*/
.create-user-container {
    max-width: 420px;
    padding: 10px 20px;
    margin: 0 auto;
}
/*End of Create User Container*/

/*Book Blocks*/
.content-blocks-container.book {
    text-align: center;
}

.content-block.book {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.book .title {
        color: var(--white);
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.book > div > div > div:nth-child(2) {
        position: absolute;
        bottom: 2.4em;
        width: 100%;
        left: 0;
    }

    .content-block.book > div > div:first-child {
        width: 200px;
        height: 200px;
        position: relative;
        border: 3px solid var(--dark-blue);
        float: none;
    }

    .content-block.book > div > div > img {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: calc(100% - 3.7em);
        margin-top: 2px;
    }

    .content-block.book > div > div:not(:first-child) {
        padding-top: 8px;
        float: none;
    }

            .content-block.book > div > div:not(:first-child) > a {
                font-weight: 500;
                text-align: center;
                background-color: var(--light-blue);
                width: calc(100% - 20px);
                margin: 0 auto;
                display: block;
            }
/*End of Book Blocks*/

/*Book Review Blocks*/
.content-blocks-container.book-review > div > div:not(.blocks-header) {
    padding: 10px 0;
    overflow: hidden;
}

.content-blocks-container.book-review > div > div:not(.expanded):not(.blocks-header) {
    max-height: 160px;
}

.book-review-block {
    color: var(--dark-blue);
    width: calc(100% - 300px);
    float: left;
    padding-right: 30px;
}

    .book-review-block > div:first-child > div {
        font-weight: 700;
        font-style: italic;
        font-size: 1.2em;
    }
/*End of Book Review Blocks*/

/*Movie Blocks*/
.content-blocks-container.movie {
    text-align: center;
}

.content-block.movie {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.movie .title {
        color: var(--white);
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.movie > div > div > div:nth-child(2) {
        position: absolute;
        bottom: 2.4em;
        width: 100%;
        left: 0;
    }

    .content-block.movie > div > div:first-child {
        width: 200px;
        height: 200px;
        position: relative;
        border: 3px solid var(--dark-blue);
        float: none;
    }

    .content-block.movie > div > div > img {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: calc(100% - 3.6em);
    }

    .content-block.movie > div > div:not(:first-child) {
        padding-top: 8px;
        float: none;
    }

        .content-block.movie > div > div:not(:first-child) > a {
            font-weight: 500;
            text-align: center;
            background-color: var(--light-blue);
            width: calc(100% - 20px);
            margin: 0 auto;
            display: block;
        }
/*End of Movie Blocks*/

/*Movie Review Blocks*/
.content-blocks-container.movie-review > div > div:not(.blocks-header) {
    padding: 10px 0;
    overflow: hidden;
}

.content-blocks-container.movie-review > div > div:not(.expanded):not(.blocks-header) {
    max-height: 160px;
}

.movie-review-block {
    color: var(--dark-blue);
    width: calc(100% - 300px);
    float: left;
    padding-right: 30px;
}

    .movie-review-block > div:first-child > div {
        font-weight: 700;
        font-style: italic;
        font-size: 1.2em;
    }
/*End of Book Review Blocks*/

/*Fun Stuff Item Blocks*/
.content-blocks-container.fun-stuff-item {
    text-align: center;
}

.content-block.fun-stuff-item {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.fun-stuff-item .title {
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.fun-stuff-item > a {
        display: block;
    }

    .content-block.fun-stuff-item > a > div {
        width: 200px;
        height: 200px;
        position: relative;
        border: 3px solid var(--dark-blue);
        float: none;
    }

    .content-block.fun-stuff-item > a > div > img {
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: calc(100% - 3.7em);
        margin-top: 2px;
    }

/*.content-blocks-container.fun-stuff-item {
    text-align: center;
}

.content-block.fun-stuff-item {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.fun-stuff-item > a {
        background-color: var(--light-blue);
        display: block;
    }

        .content-block.fun-stuff-item > a > div {
            border: none;
        }

    .content-block.fun-stuff-item .title {
        font-weight: 500;
        line-height: 1.3em;
        text-align: center;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        position: absolute;
        bottom: 8px;
        overflow: hidden;
    }

    .content-block.fun-stuff-item > a > div:first-child {
        width: 200px;
        height: 160px;
        position: relative;
        float: none;
    }

    .content-block.fun-stuff-item > a > div > div:first-child {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: 50% 50%;
        width: calc(100% - 8px);
        height: calc(100% - 8px);
        position: absolute;
        top: 4px;
        left: 4px;
    }*/
/*End of Fun Stuff Item Blocks*/

[data-page='FunStuff'] .filter-container .col {
    width: 33%;
}

    [data-page='FunStuff'] .filter-container .col:nth-child(2) {
        left: 33%;
    }

    [data-page='FunStuff'] .filter-container .col:last-child {
        width: 34%;
        left: 66%;
    }

.content-block .tags-container {
    padding-bottom: 12px !important;
}

.content-block .icon > i {
    font-size: 5em;
    padding-top: 20px;
}

/*Quote Page Container*/
.quote-page-container .body-col-container:last-child {
    padding-left: 50px;
}
/*End of Quote Page Container*/

/*Category Blocks*/
.category-blocks-container {
    text-align: center;
    padding-bottom: 10px;
    overflow-x: auto;
}

.category-blocks-container > div {
    width: max-content;
    min-width: 100%;
}

.category-block {
    padding: 0 6px;
    display: inline-block;
}

.category-block:first-child {
    padding-left: 0;
}

    .category-block:last-child {
        padding-right: 0;
    }

    .category-block > a {
        color: var(--white);
        background-color: var(--light-blue);
        font-weight: 500;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: break-spaces;
        min-width: 160px;
        padding: 4px 10px;
        display: block;
    }
/*End of Category Blocks*/

/*Knowledge Base Item Blocks*/
.content-blocks-container.knowledge-base-item {
    text-align: center;
}

.content-block.knowledge-base-item {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.knowledge-base-item .title {
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.knowledge-base-item > a {
        display: block;
    }

        .content-block.knowledge-base-item > a > div {
            width: 200px;
            height: 200px;
            position: relative;
            border: 3px solid var(--dark-blue);
            float: none;
        }

            .content-block.knowledge-base-item > a > div > img {
                width: auto;
                height: auto;
                max-width: 100%;
                max-height: calc(100% - 3.7em);
                margin-top: 2px;
            }

/*.content-blocks-container.knowledge-base-item {
    text-align: center;
}

.content-block.knowledge-base-item {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.knowledge-base-item > a {
        background-color: var(--light-blue);
        display: block;
    }

        .content-block.knowledge-base-item > a > div {
            border: none;
        }

    .content-block.knowledge-base-item .title {
        font-weight: 500;
        line-height: 1.3em;
        text-align: center;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        position: absolute;
        bottom: 8px;
        overflow: hidden;
    }

    .content-block.knowledge-base-item > a > div:first-child {
        width: 200px;
        height: 160px;
        position: relative;
        float: none;
    }

    .content-block.knowledge-base-item > a > div > div:first-child {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: 50% 50%;
        width: calc(100% - 8px);
        height: calc(100% - 8px);
        position: absolute;
        top: 4px;
        left: 4px;
    }*/
/*End of Knowledge Base Item Blocks*/

/*Logospedia Item Blocks*/
.content-blocks-container.logospedia-item {
    text-align: center;
}

.content-block.logospedia-item {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.logospedia-item .title {
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.logospedia-item > a {
        display: block;
    }

        .content-block.logospedia-item > a > div {
            width: 200px;
            height: 200px;
            position: relative;
            border: 3px solid var(--dark-blue);
            float: none;
        }

            .content-block.logospedia-item > a > div > img {
                width: auto;
                height: auto;
                max-width: 100%;
                max-height: calc(100% - 3.7em);
                margin-top: 2px;
            }

/*.content-blocks-container.logospedia-item {
    text-align: center;
}

.content-block.logospedia-item {
    width: auto;
    padding: 16px;
    display: inline-block;
}

.content-block.logospedia-item > a {
    background-color: var(--light-blue);
    display: block;
}

    .content-block.logospedia-item > a > div {
        border: none;
    }

    .content-block.logospedia-item .title {
        font-weight: 500;
        line-height: 1.3em;
        text-align: center;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        position: absolute;
        bottom: 8px;
        overflow: hidden;
    }

    .content-block.logospedia-item > a > div:first-child {
        width: 200px;
        height: 160px;
        position: relative;
        float: none;
    }

    .content-block.logospedia-item > a > div > div:first-child {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: 50% 50%;
        width: calc(100% - 8px);
        height: calc(100% - 8px);
        position: absolute;
        top: 4px;
        left: 4px;
    }*/
/*End of Logospedia Item Blocks*/

/*Blog Blocks*/
.content-blocks-container.blog {
    text-align: center;
}

.content-block.blog {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.blog .title {
        background-color: var(--dark-blue);
        font-weight: 500;
        line-height: 1.2em;
        text-align: center;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        height: 2.9em;
        padding: 0.3em 6px 0em 6px;
        position: absolute;
        bottom: 0;
        border: 2px solid var(--white);
        overflow: hidden;
    }

    .content-block.blog > a {
        display: block;
    }

        .content-block.blog > a > div {
            width: 200px;
            height: 200px;
            position: relative;
            border: 3px solid var(--dark-blue);
            float: none;
        }

            .content-block.blog > a > div > img {
                width: auto;
                height: auto;
                max-width: 100%;
                max-height: calc(100% - 3.7em);
                margin-top: 2px;
            }

/*.content-blocks-container.blog {
    text-align: center;
}

.content-block.blog {
    width: auto;
    padding: 16px;
    display: inline-block;
}

    .content-block.blog > a {
        background-color: var(--light-blue);
        display: block;
    }

        .content-block.blog > a > div {
            border: none;
        }

    .content-block.blog .title {
        font-weight: 500;
        line-height: 1.3em;
        text-align: center;
        text-decoration: none;
        text-overflow: ellipsis;
        white-space: break-spaces;
        width: 100%;
        position: absolute;
        bottom: 8px;
        overflow: hidden;
    }

    .content-block.blog > a > div:first-child {
        width: 200px;
        height: 160px;
        position: relative;
        float: none;
    }

    .content-block.blog > a > div > div:first-child {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: 50% 50%;
        width: calc(100% - 8px);
        height: calc(100% - 8px);
        position: absolute;
        top: 4px;
        left: 4px;
    }*/
/*End of Blog Blocks*/

.content-blocks-container .ratings-container {
    position: absolute;
    left: 14px;
    bottom: 0;
}

    .content-blocks-container .ratings-container > div > span:first-child {
        font-weight: 500;
    }

.category-container {
    text-align: center;
}

.category-container > div {
    display: inline-block;
}

    .category-container > div:first-child {
        height: 52px;
        display: inline-block;
        vertical-align: top;
        transform: translateX(6px);
    }

.category-container .title {
    color: var(--white);
    background-color: var(--dark-blue);
    font-size: 1em;
    font-weight: 600;
    line-height: 52px;
    text-align: center;
    min-width: 240px;
    padding: 0 8px;
    display: inline-block;
    border: none;
    box-sizing: border-box;
}

/*Content Blocks Container*/
.content-blocks-container.quote {
    max-width: 1000px;
    margin: 0 auto;
}

.content-blocks-container .blocks-header {
    font-size: 1.3em;
    font-weight: 500;
    text-align: center;
    padding: 10px 0;
}
/*End of Content Blocks Container*/

/*Highlighted Object & Content Block*/
.content-block {
    width: 100%;
    padding: 20px 10px;
    display: inline-block;
}

    .content-block > div > div {
        float: left;
    }

        .content-block > div > div:first-child {
            width: 100%;
            padding-bottom: 8px;
            border-bottom: 1px solid var(--dark-blue);
        }

    .content-block.comment > div > div:first-child {
        border-bottom: none;
    }

            .content-block > div > div:first-child > div {
                padding: 4px 0;
            }

    .content-block .text-container > div {
        width: 100%;
        display: inline-block;
    }

        .content-block .text-container > div > div {
            float: left;
        }

            .content-block .text-container > div > div:first-child {
                width: 90px;
            }

                .content-block .text-container > div > div:first-child > img,
                .content-block .text-container > div > div:first-child > a > img {
                    width: 90px;
                    height: 90px;
                    border: 2px solid var(--dark-blue);
                    border-radius: 50%;
                }

                .content-block.comment .text-container > div > div:first-child > img,
                .content-block.comment .text-container > div > div:first-child > a > img {
                    width: 64px;
                    height: 64px;
                }

            .content-block .text-container > div > div:last-child {
                width: calc(100% - 90px);
                padding-left: 14px;
            }

    [data-page='FunStuff'] .content-block .text-container > div > div:last-child {
        width: 100%;
    }

                .highlighted-block > div,
                .content-block.quote .text-container > div > div:last-child > div:first-child {
                    font-style: italic;
                }

    .content-block.quote .text-container > div > div:last-child > div:first-child {
        font-weight: 500;
    }

                    .highlighted-block > div > :first-child::before,
                    .content-block.quote .text-container > div > div:last-child > div:first-child > :first-child::before {
                        content: '\201C';
                        padding-right: 2px;
                    }

                    .highlighted-block > div > :last-child::after,
                    .content-block.quote .text-container > div > div:last-child > div:first-child > :last-child::after {
                        content: '\201D';
                        padding-left: 1px;
                    }

.highlighted-link-block {
    line-height: 1.2em;
    padding: 10px 0;
}

.highlighted-link-block img {
    width: 90%;
}

                .content-block.quote .text-container > div > div:last-child > div:last-child {
                    font-weight: 500;
                }

.content-block.comment .text-container > div > div:last-child > div:last-child {
    font-weight: 300;
}

    .content-block .tags-container > div {
        color: var(--light-blue);
        font-size: 0.785em;
        padding: 2px;
        display: inline-block;
        opacity: 0.7;
    }

        .content-block .tags-container > div:not(:first-child):not(:last-child)::after {
            content: ';';
            color: var(--light-blue);
        }

        .content-block .tags-container > div:first-child {
            color: var(--dark-blue);
            font-weight: 500;
        }

    .content-block .actions-container {
        text-align: right;
        height: 42px;
    }

        .content-block .actions-container > div {
            padding: 6px 10px 0 20px;
            display: inline-block;
            border-top: 1px solid var(--dark-blue);
        }

            .content-block .actions-container > div > div {
                padding: 2px;
                display: inline-block;
            }

.content-block .text-container .header > div:first-child {
    font-size: 1.1em;
    font-weight: 500;
    line-height: 1.1em;
    transform: translateX(-10px);
}

.content-block .text-container .header > div:nth-child(2) {
    font-weight: 500;
}

    .content-block .text-container .header > div:nth-child(2) > span:first-child {
        padding-right: 8px;
    }

    .content-block .text-container .header > div:nth-child(2) > span:last-child {
        color: #9999B9;
        font-size: 0.8em;
    }

    .content-block .text-content {
        padding-bottom: 36px;
    }
/*End of Content Block*/

/*Quote Content Block*/
.content-block.quote > div > div:first-child:not(:last-child) {
    width: calc(100% - 240px);
}

.content-block.quote > div > div:nth-child(2) {
    text-align: center;
    width: 240px;
    padding: 20px 0 20px 40px;
}

    .content-block.quote > div > div:nth-child(2) > button {
        background-color: var(--light-blue);
        font-size: 0.85em;
        width: 100%;
        padding: 6px 0;
        display: block;
        border: none;
    }
/*End of Quote Content Block*/

/*Comment Content Block*/
.content-blocks-container.comment {
    padding: 20px 10px 14px 10px;
}

.content-blocks-container.comment > div {
    border-bottom: none;
}

.content-block.comment .text-container > div {
        display: inline-block;
    }

.content-block.comment {
    padding: 0 10px;
}

.content-block.comment .text-container > div > div:first-child {
    width: 64px;
}

.content-block.comment .text-container > div > div:last-child {
    width: calc(100% - 64px);
    padding-left: 14px;
}

.content-block.comment textarea {
    color: var(--dark-blue);
    font-family: 'Behind the Nineties';
    font-weight: 500;
    line-height: 1.4em;
    width: 100% !important;
    height: 4.4em;
    max-height: 420px;
    border: none;
    border-bottom: 2px solid var(--dark-blue);
    outline: none;
}

    .content-block.comment.edit .content:nth-child(2) {
        display: none;
    }

    .content-block.comment:not(.edit) .content:nth-child(3) {
        display: none;
    }

.content-block.comment .footer {
    text-align: right;
    padding: 2px 4px;
}

    .content-block.comment.edit .footer > button:first-child {
        display: none;
    }

    .content-block.comment:not(.edit) .footer > button:not(:first-child) {
        display: none;
    }
/*End of Comment Content Block*/

/*Message Container*/
.message-container {
    color: var(--green);
    font-weight: 600;
    text-align: center;
}

.message-container.error {
    color: var(--red);
}
/*End of Message Container*/

/*Highlighted Block Container*/
.highlighted-block-container {
    color: var(--white);
    text-align: center;
    min-height: 140px;
    padding: 40px 14px 0 14px;
}

    .highlighted-block-container > div > div:first-child {
        font-weight: 500;
        padding: 10px 0;
        border-top: 1px solid var(--white);
        border-bottom: 1px solid var(--white);
    }

[data-page='Home'] + #dvBodyColRightContainer .highlighted-block-container,
[data-page='Logins'] + #dvBodyColRightContainer .highlighted-block-container,
[data-page^='Sections'] + #dvBodyColRightContainer .highlighted-block-container {
    text-align: center;
    min-height: unset;
}

    [data-page='Home'] + #dvBodyColRightContainer .highlighted-block-container > div > div:first-child,
    [data-page='Logins'] + #dvBodyColRightContainer .highlighted-block-container > div > div:first-child,
    [data-page^='Sections'] + #dvBodyColRightContainer .highlighted-block-container > div > div:first-child {
        font-weight: 300;
        padding: 0;
        border: none;
    }

[data-page='Home'] + #dvBodyColRightContainer .highlighted-link-block img + div,
[data-page='Logins'] + #dvBodyColRightContainer .highlighted-link-block img + div,
[data-page^='Sections'] + #dvBodyColRightContainer .highlighted-link-block img + div {
    font-size: 0.85em;
}
/*End of Highlighted Block Container*/

/*Highlighted Block Collapsible Container*/
.highlighted-block-collapsible-container {
    height: 1.8em;
    box-sizing: initial;
    overflow-y: hidden;
}

.highlighted-block-collapsible-container:first-child {
    padding-top: 16px;
}

    .highlighted-block-collapsible-container.expanded {
        height: initial;
    }

    .highlighted-block-collapsible-container .title {
        font-size: 1.04em;
        font-weight: 500;
        text-align: left;
        text-overflow: ellipsis;
        white-space: nowrap;
        height: 1.8em;
        padding-left: 1.2em;
        overflow: hidden;
        cursor: pointer;
    }

    .highlighted-block-collapsible-container > .highlighted-block:last-child {
        padding-bottom: 16px;
    }

    .highlighted-block-collapsible-container .title::before {
        content: '>';
        position: absolute;
        top: 0;
        left: 0;
        transition: 200ms transform;
    }

        .highlighted-block-collapsible-container.expanded .title::before {
            transform: rotate(90deg);
        }
/*End of Highlighted Block Collapsible Container*/

/*Highlighted Block*/
    .highlighted-block-container.book .highlighted-block,
    .highlighted-block-container.movie .highlighted-block,
    .highlighted-block-container.quote .highlighted-block {
        padding-bottom: 12px;
    }

    .highlighted-block-container.fun-stuff-item .highlighted-block,
    .highlighted-block-container.knowledge-base-item .highlighted-block,
    .highlighted-block-container.logospedia-item .highlighted-block {
        padding-bottom: 8px;
    }

.highlighted-block {
    color: var(--white);
    text-decoration: none;
    display: block;
}

.highlighted-block:first-child {
    padding-top: 16px;
}

.highlighted-block > div:first-child {
    font-weight: 500;
}

    .highlighted-block > div:last-child {
        font-size: 0.85em;
        font-style: initial;
    }
/*End of Highlighted Block*/

/*Content Details Container*/
.content-details-container {
    padding: 8px 16px 0 16px;
}

    .content-details-container.book,
    .content-details-container.movie {
        font-size: 0.9em;
        font-weight: 600;
        text-align: left;
    }

        .content-details-container.book > div,
        .content-details-container.movie > div {
            width: 100%;
            display: inline-block;
        }

            .content-details-container.book > div > div,
            .content-details-container.movie > div > div {
                float: left;
            }

                .content-details-container.book > div > div:first-child,
                .content-details-container.movie > div > div:first-child {
                    width: 300px;
                    padding-right: 30px;
                }

                .content-details-container.book > div > div:last-child,
                .content-details-container.movie > div > div:last-child {
                    width: calc(100% - 300px);
                }

                    .content-details-container.book > div > div:last-child > div:first-child > div:first-child,
                    .content-details-container.movie > div > div:last-child > div:first-child > div:first-child {
                        font-size: 1.4em;
                        font-style: italic;
                    }

                    .content-details-container.book > div > div:last-child > div:first-child > div:nth-child(2) > span,
                    .content-details-container.movie > div > div:last-child > div:first-child > div:nth-child(2) > span {
                        font-weight: 500;
                    }

                    .content-details-container.book > div > div:last-child > div:last-child,
                    .content-details-container.movie > div > div:last-child > div:last-child {
                        padding-top: 14px;
                    }

                        .content-details-container.book > div > div:last-child > div:last-child > div:last-child,
                        .content-details-container.movie > div > div:last-child > div:last-child > div:last-child {
                            font-weight: 300;
                            padding-left: 6px;
                        }
/*End of Book Details Container*/

/*Toggle Content Bar*/
.toggle-content-bar {
    background-image: linear-gradient(0deg, #FFFFFF, transparent);
    height: 160px;
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    cursor: pointer;
    z-index: 1;
}

.expanded .toggle-content-bar {
    height: 24px;
}

.toggle-content-bar::after {
    content: 'Show Full Review';
    font-weight: 600;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.expanded > .toggle-content-bar::after {
    content: 'Hide Full Review';
}
/*End of Toggle Content Bar*/

/*Home Page Bio Container*/
.home-page-bio-container {
    color: #FFFFFF;
    text-align: center;
    padding: 40px 14px 0 14px;
}

    .home-page-bio-container > div:last-child > div:first-child {
        font-size: 1.3em;
        font-weight: 500;
    }

    .home-page-bio-container > div:last-child > div:last-child {
        font-size: 0.8em;
        font-style: italic;
        font-weight: 500;
        line-height: 1.2em;
        padding-top: 14px;
    }
/*End of Home Page Bio Container*/

/*Star rating*/
.star-rating {
    color: var(--light-gray);
    letter-spacing: 0.2em;
    font-size: 0.89em;
    font-style: italic;
    font-weight: 700;
}

.star-rating.dynamic > i {
    cursor: pointer;
}

    .star-rating.dynamic > i:hover {
        color: var(--yellow);
    }

.text-container .star-rating {
    display: inline-block;
    transform: translateY(-6px);
}

    .star-rating > .selected {
        color: var(--yellow);
    }
/*End of Star Rating*/

.error-container {
    text-align: center;
    padding: 0 20px 20px 20px;
}

.section-container {
    padding: 0 20px 20px 20px !important;
}

@media only screen and (max-width: 1200px) {

    .content-block.home-nav-block > a > div:first-child {
        width: 220px;
        height: 200px;
    }
}

@media only screen and (max-width: 1000px) {
    /*Modal Container*/
    .modal-container {
        width: 100%;
        border-left: none;
        border-right: none;
        border-radius: 0;
    }

        .modal-container .header,
        .modal-container .footer {
            border-radius: 0;
        }
    /*End of Modal Container*/

    .search-results-container {
        width: 640px;
    }

    .header-container > div > div:last-child {
        width: 44px;
        height: 50px;
        padding: 0;
    }

    /*Header Nav Container*/
    .header-nav-container {
        background-color: var(--dark-blue);
        width: 320px;
        height: max-content;
        max-height: 100%;
        position: fixed;
        top: 0;
        right: -100%;
        box-shadow: -2px 2px 10px 1px rgba(0, 0, 0, 0.6);
        opacity: 0;
        overflow-y: auto;
        transition: 500ms top, 500ms right, 3s opacity;
        z-index: 4;
    }

        .header-nav-container.expanded {
            right: 0;
            opacity: 1;
            transition: 200ms top, 200ms right;
        }

        .header-nav-container > div:first-child,
        .header-nav-container > div:last-child {
            width: 100%;
            height: auto;
            padding-top: 42px;
            position: relative;
        }

            .header-nav-container > div:first-child > div {
                width: 100%;
                max-width: 100%;
                max-height: unset;
                padding: 10px 0;
            }

        .header-nav-container > div:last-child {
            padding: 40px 10px 20px 10px;
        }

            .header-nav-container > div:last-child > div:last-child {
                text-align: center;
            }

        .header-nav-container > div > div {
            width: 100%;
            position: relative;
        }

            .header-nav-container > div:first-child > div .dropdown-nav-container {
                width: 100%;
                position: relative;
            }

                .header-nav-container > div:first-child > div .dropdown-nav-container .dropdown-nav-container {
                    background-color: #5D6FA5;
                    top: unset;
                    left: unset;
                }

                .header-nav-container > div:first-child > div .dropdown-nav-container:not(.expanded) {
                    display: none;
                }
    /*End of Header Nav Container*/

    /*Header Mobile Nav Toggle*/
    .header-nav-container.expanded + .header-mobile-nav-toggle {
        position: fixed;
    }

    .header-mobile-nav-toggle {
        display: block;
        z-index: 4;
    }
    /*End of Header Mobile Nav Toggle*/

    /*Body Col Mobile Toggle*/
    .body-col-mobile-toggle {
        display: block;
        z-index: 3;
    }
    /*End of Body Col Mobile Toggle*/

    /*Body Col Container*/
    .body-col-container {
        float: none;
    }

        .body-col-container:first-child,
        .body-col-container:last-child:not(:nth-child(2)) {
            width: calc(50% - 10px);
            max-width: 240px;
            height: 100%;
            max-height: 1000px;
            padding-top: 0;
            padding-bottom: 0;
            position: absolute;
            top: 0;
            transition: 500ms right, 500ms left;
            z-index: 4;
        }

            .body-col-container:first-child.light-blue,
            .body-col-container:last-child:not(:nth-child(2)).light-blue {
                background-color: var(--light-blue);
            }

            .body-col-container:first-child.dark-blue,
            .body-col-container:last-child:not(:nth-child(2)).dark-blue {
                background-color: var(--dark-blue);
            }

        .body-col-container:first-child {
            left: -100%;
            box-shadow: 2px 2px 10px 1px rgba(0, 0, 0, 0.6);
        }

        .body-col-container:last-child:not(:nth-child(2)) {
            right: -100%;
            box-shadow: -2px 2px 10px 1px rgba(0, 0, 0, 0.6);
        }

            .body-col-container:first-child.expanded,
            .body-col-container:last-child:not(:nth-child(2)).expanded {
                opacity: 1;
                transition: 200ms right, 200ms left;
            }

            .body-col-container:last-child:not(:nth-child(2)).expanded {
                right: 0;
            }

        .body-col-container:first-child.expanded {
            left: 0;
        }

        .body-col-container:nth-child(2) {
            min-height: 420px;
        }

            .body-col-container:nth-child(2),
            .body-col-container:nth-child(2):last-child,
            .body-col-container.full {
                width: 100%;
                padding: 30px 0 0 0;
            }
    /*End of Body Col Container*/

    .content-blocks-container.comment,
    .content-block {
        padding: 20px;
    }
}

@media only screen and (max-width: 700px), only screen and (max-height: 640px) {

    .body-container,
    .body-col-container:nth-child(2) > div > div:last-child {
        height: auto;
    }

    .body-col-container:not(:nth-child(2)) > div:not(.body-col-mobile-toggle) {
        height: 540px;
        max-height: 100%;
    }
}

@media only screen and (max-width: 700px) {

    /*Content Details Container*/
    .content-details-container.book > div > div:first-child,
    .content-details-container.movie > div > div:first-child {
        width: 160px;
        padding-right: 20px;
    }

    .content-details-container.book > div > div:last-child,
    .content-details-container.movie > div > div:last-child {
        width: calc(100% - 160px);
    }
    /*End of Content Details Container*/

    /*Footer Container*/
    .footer-container {
        width: 100%;
        height: auto;
    }

        .footer-container > div,
        .footer-container > div > div {
            padding: 0;
            position: relative;
        }
    /*End of Footer Container*/

    /*Footer Nav Container*/
    .footer-nav-container > div {
        width: 100%;
        position: relative;
        left: 0 !important;
    }

    .footer-nav-container:first-child {
        width: 420px;
        padding-left: 30px;
    }

        .footer-nav-container:first-child > div {
            width: 160px;
            display: inline-block;
        }

    .footer-nav-container:last-child {
        width: 100%;
    }

        .footer-nav-container:last-child > div {
            text-align: right;
            padding-right: 30px;
        }

            .footer-nav-container:last-child > div > :last-child {
                padding-right: 6px;
            }
    /*End of Footer Nav Container*/

    /*Quote Block*/
    .content-block.quote > div > div:first-child,
    .content-block.quote > div > div:last-child {
        width: 100% !important;
        float: none;
    }

    .content-block.quote > div > div:last-child {
        padding: 20px;
    }
    /*End of Quote Block*/
}

@media only screen and (max-width: 540px) {

    /*Header Nav Container*/
    .header-nav-container {
        width: 100%;
        top: -100%;
        right: unset;
        left: 0;
    }

        .header-nav-container.expanded {
            top: 0;
        }
    /*End of Header Nav Container*/

    /*Filter Container*/
    .filter-container input {
        font-size: 0.8em;
    }

    .filter-container:not(.even) .col:not(:last-child) {
        width: 74px;
    }

    .filter-container:not(.even) .col:nth-child(2) {
        left: 74px;
    }

    .filter-container:not(.even) .col:last-child {
        width: calc(100% - 148px);
        left: 148px;
    }

        .filter-container:not(.even) .col:last-child > div:last-child > input {
            padding: 4px 9px;
        }
    /*End of Filter Container*/

    .content-block.book > div > div:first-child,
    .content-block.movie > div > div:first-child,
    .content-block.fun-stuff-item > a > div:first-child,
    .content-block.knowledge-base-item > a > div:first-child,
    .content-block.logospedia-item > a > div:first-child,
    .content-block.blog > a > div:first-child,
    .content-block.home-nav-block > a > div:first-child {
        width: 170px;
        height: 170px;
    }

    .content-block.home-nav-block > a > div:first-child {
        font-size: 0.75em;
    }
}
