/** variables **/

:root {
    --top-height: 78vh;
    --top-ad-height: 18vh;
    --top-content-height: calc(var(--top-height) - var(--top-ad-height));
}

.news__listing-post__info .btn {
    margin-top:.5rem;
    font-size: .8rem;
    padding: .5rem 2rem;
    border: 1px solid hsla(0, 0%, 100%, 1);
    text-transform: uppercase;
    letter-spacing: 2px;
    color: hsla(0, 0%, 100%, 1);
    background: transparent;
    text-decoration: none;
    transition: all .2s cubic-bezier(0.5, 0.05, 0.6, 0.2);
}

.news__listing-post__info .btn:hover {
    background: hsla(0, 0%, 100%, 1);
    color: hsla(240, 1%, 16%, 1);
}

.border-right {
    border-color: hsla(165,6%,86%,0.4) !important;
}

/** news main structure **/
.news__top {
    width:100%;
    position: relative;

    margin-top: -6rem;
    padding-top: 6rem;
}

.news__top.empty {
    position:absolute;
    pointer-events: none;
}

.news__top .row{
    height:100%;
}

.news__divider {
  width:100%;
  height:2px;
  background-color:hsla(165,6%,86%,0.7);
  margin-top:1rem;
  margin-bottom:1rem;
}

.news__top-content {
    position: relative;
    overflow:hidden;
}

.news__top-promo {
    height:var(--top-ad-height);
    text-align:center;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.news__top-promo img {
    max-height: var(--top-ad-height);
    width:auto;
}

.news__promo .promo-wrapper img {
    max-height: var(--top-ad-height);
    width:auto;
}

/** news sidebars **/
.news__top-content .news__top-sidebar--left,
.news__top-content .news__top-sidebar--right {
    background-color:white;

    color:black;
    writing-mode: vertical-rl;
    text-align: center;

    position:absolute;
    height:100%;
    width:50px;
    top:0;
}

.news__top-content .news__top-sidebar--left a,
.news__top-content .news__top-sidebar--right a {
    color: black !important;
}

.news__top-sidebar--left {
    left:0;
}

.news__top-sidebar--right {
    right: 0;
}

.news__top-content .news__top-sidebar--left h1,
.news__top-content .news__top-sidebar--right h1 {
    font-size: 1.4em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin:unset;
}

/** news main featured widgets **/
.news__top-widgets, .news__top-widget {
    width:calc(100% - 200px);
    margin:0 auto;
}

@media(max-width:567px) {
    .news__top-widgets .col-12:first-child {
        padding: 0 1.5rem;
    }
}

.news__top-widgets a:not(.news__top-widgets__author) {
    color: black !important;
}

.news__top-widgets__box {
    display: block;
    position:relative;
    background-color:white;
    height:var(--top-content-height);
    max-height:var(--top-content-height);
    width:100%;
}

.news__top-widgets__box-header {
    min-height:10%;
    position:relative;

    /** center text vertically **/
    display: flex;
    align-items: center;
    text-align:justify;
    text-justify: inter-word;
}

.news__top-widgets__box-header h1 {
    color:black;
    font-size:1.15em;
    font-weight:600;
    text-transform: uppercase;
    margin-bottom:.8rem;
    margin-bottom:unset;
}

.news__top-widgets__box-content {
    margin:1rem 2rem;
}

.news__top-widgets__box-media {
    height:12vw;
    padding:2px;
}

.news__top-widgets__box-media img {
    width:100%;
    height:100%;
    object-fit: cover;
}

.news__top-widgets__box-blurb {
    font-size:1rem;
    color:black;
    padding-top:1rem;
    padding-bottom:1rem;
}

.news__top-widgets__box-meta {
    font-size:.7em;
}

.news__top-widgets__box-action {
    text-align:center;
    margin-top:.5rem;
    color:black;
}

.news__top-widgets__box-action span:before {
    margin-top:.5rem;
    border-color:black !important;
}

@media(max-width:767px) {
    .news__top-widgets {
        width:100%;
        overflow-x: visible;
        overflow-y: hidden;
        margin-right:30vw;
    }

    .news__top-widget {
        width:100%;
    }

    .news__top-widgets .row {
        flex-wrap: nowrap;
    }

    .news__top-widgets__box-media {
        height:35%;
    }

    .news__top-sidebar--right, .news__top-sidebar--left {
        box-shadow: 0px 0px 8px rgba(0,0,0,.6);
        z-index:99;
        width:25px !important;
    }

    .news__top-sidebar--right i, .news__top-sidebar--left i {
        font-size:.9em;
    }

    .news__top-widgets__box-content {
        margin:.5rem;
    }

    .news__top-widgets__box-header h1 {
        font-size:.9em;
    }

    .news__top-widgets__box-blurb {
        padding-top: unset;
        font-size:.8em;
    }
}

/** news listing **/
.news__listing {
    padding: 1rem 6rem;
    background-color:white;
    width:100%;
}

.news__listing-post {
    position: relative;
    margin-bottom: 30px;
    padding: .15rem;
    border: 2px solid hsla(210,3%,76%,0.8);
}

.news__listing-post img {
    width:100%;
    height:100%;
    object-fit: cover;
}

.news__listing-post:hover img {
    filter:brightness(.3);
}

.news__listing-post__title {
    font-family: 'AlienwareBold', sans-serif;
    background-color:white;
    color:black;
    padding:.5rem 2rem;
    text-transform: uppercase;
    width:100%;
    height: 60px;
    transition: all .3s;
}

.news__listing-post:hover .news__listing-post__title {
    background-color:rgb(60,58,61);
    color:white;
}

.news__listing-post__info {
    position:absolute;
    top: 50%;

    width:100%;
    padding:1.25rem;
    text-align: center;

    opacity: 0;
    transform: translateY(-60%);
    transition: all .3s;
}

.news__listing-post:hover .news__listing-post__info {
    opacity: 1;
    transform: translateY(-50%);
}

.news__listing-post-at {
    color: white;
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    opacity: 0;
    transform: translateX(2rem);
    transition: all .3s;
}

.news__listing-post:hover .news__listing-post-at {
    opacity: 1;
    transform: translateX(1rem);
}

.news__listing-post__info * {
    color:white;
}

.news__listing-post__info strong {
    font-size:1.2em;
    font-weight:600;
}

.news__listing-post__info small {
    font-size: 1rem;
    font-weight:2;
    display:block;
}

.news__listing-post__info a {
    text-decoration: none;
    border-color:white;
}

@media(max-width:567px) {
    .news__listing {
        padding:.5rem;
    }

    .news__listing .row > [class*="col-"] {
        padding-left:7.5px;
        padding-right:7.5px;
    }

    .news__listing-post__title {
        padding:.25rem;
        font-size:.8em;
        height:60px;
    }

    .news__listing-post__info {
        padding:.6rem;
    }

    .news__listing-post__info small {
        font-size:.8rem;
    }
}

/**
 ** Handle individual News view
 **/

.news__top-widget img {
    width:100%;
    height:100%;
    object-fit: cover
}

.news__landing {
    width:100%;
    margin:0 auto;
    background-color:rgba(255,255,255,.7);
    padding: 1rem;
    margin-bottom:1rem;
}

.news__landing * {
    color:black;
}

.news__landing-header {
    padding: .75rem 10rem;
    border-bottom: 1px solid hsla(165,6%,86%,0.4);
    text-align:center;
}

.news__landing-header h1 {
    font-size:1.4em;
}

.news__landing-meta {
    width:100%;
    margin-top:.5rem;
}

.news__landing-meta .vote-info {
    text-align:center;
}

.news__landing-content {
    font-size:.9em;
    padding: .5rem .25rem;
}

.news__landing-actions {
    display:flex;
}

.news__landing-actions .btn-group {
    width:80%;
    margin: 0 auto;
}

@media(max-width:767px) {
    .news__landing {
        width:95%;
    }

    .news__landing-header {
        padding: .75rem 4rem;
    }

    .news__landing-actions .btn-group {
        width:100%;
        flex-wrap: wrap;
    }
}

.news__landing-comments__listing {
    margin:1rem;
}

.featured-widget {
    padding-left: 6rem;
    padding-right: 6rem;
    width: 100%;
}
.featured-widget.news {
    background-image: url('../jpg/greenfx_banner.jpg');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-color: hsla(0,0%,100%,1);
}
.featured-widget .news__listing-post {
    width: 33.33333%;
    padding-right: 10px;
    padding-left: 10px;
    margin-left: 5px;
    margin-right: 5px;
    border: none;
}
.featured-widget .news__listing-post .news__listing-post__info {
    padding: 1.25rem 1.75rem;
}

@media(max-width:576px) {
    .featured-widget {
        padding:1rem;
    }

    .featured-widget .news__listing-post {
        width:100%;
    }

    .featured-widget .news__listing-post .news__listing-post__info {
        padding: 0 2rem;
    }
}
