/*
 * =========================================================
 * PW INFIERNO
 * NOTICIAS V1
 * =========================================================
 */

body.news-page {
    margin: 0;
    min-height: 100vh;

    color: #eee8dc;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    background:
        linear-gradient(
            rgba(5, 4, 3, .82),
            rgba(5, 4, 3, .96)
        ),
        url("../images/fondo.png")
        center top / cover
        fixed
        no-repeat;
}


/* HERO */

.news-main {
    padding-bottom: 90px;
}

.news-hero {
    position: relative;

    width:
        min(
            calc(100% - 40px),
            1500px
        );

    min-height: 330px;

    margin:
        55px
        auto
        0;

    overflow: hidden;

    border:
        1px solid
        rgba(224, 178, 87, .38);

    border-radius: 22px;

    background:
        linear-gradient(
            90deg,
            rgba(4, 4, 4, .95) 0%,
            rgba(6, 4, 2, .67) 48%,
            rgba(7, 3, 1, .18) 100%
        ),
        url("../images/baner/1.jpg")
        center / cover
        no-repeat;

    box-shadow:
        0 35px 90px
        rgba(0, 0, 0, .52);
}

.news-hero::after {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    background:
        radial-gradient(
            circle at 70% 50%,
            rgba(205, 77, 10, .13),
            transparent 40%
        );
}

.news-hero-content {
    position: relative;
    z-index: 2;

    max-width: 800px;

    padding:
        67px
        58px;
}

.news-eyebrow {
    display: inline-block;

    margin-bottom: 15px;

    color: #e7b455;

    font-size: 12px;
    font-weight: 900;

    letter-spacing: 2.3px;
}

.news-hero h1 {
    margin:
        0
        0
        16px;

    color: #fff0c9;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            48px,
            7vw,
            82px
        );

    line-height: 1;
}

.news-hero p {
    max-width: 650px;

    margin: 0;

    color:
        rgba(245, 238, 223, .82);

    font-size: 17px;
    line-height: 1.7;
}


/* LAYOUT */

.news-layout {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        330px;

    gap: 30px;

    width:
        min(
            calc(100% - 40px),
            1500px
        );

    margin:
        42px
        auto
        0;
}

.news-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 20px;
}

.news-section-heading span,
.news-sidebar-title span {
    color: #dca949;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 2px;
}

.news-section-heading h2,
.news-sidebar-title h2 {
    margin:
        5px
        0
        0;

    color: #fff0ce;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;
}

.news-section-heading p {
    margin: 0;

    color:
        rgba(235, 228, 214, .55);

    font-size: 13px;
}


/* CARDS */

.news-grid {
    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap: 20px;
}

.news-card {
    position: relative;

    min-height: 285px;

    overflow: hidden;

    border:
        1px solid
        rgba(218, 163, 69, .29);

    border-radius: 17px;

    background: #0c0907;

    cursor: pointer;

    box-shadow:
        0 20px 45px
        rgba(0, 0, 0, .32);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.news-card:hover {
    transform:
        translateY(-4px);

    border-color:
        rgba(239, 185, 86, .68);

    box-shadow:
        0 28px 65px
        rgba(0, 0, 0, .46);
}

.news-card-featured {
    grid-column:
        1 / -1;

    min-height: 390px;
}

.news-card-image {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform .5s ease;
}

.news-card:hover
.news-card-image {
    transform:
        scale(1.035);
}

.news-card-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(5, 4, 3, .05) 5%,
            rgba(5, 4, 3, .18) 35%,
            rgba(5, 4, 3, .96) 100%
        );
}

.news-card-content {
    position: absolute;
    z-index: 2;

    left: 0;
    right: 0;
    bottom: 0;

    padding:
        25px
        27px;
}

.news-card-meta {
    display: flex;
    align-items: center;

    gap: 13px;

    margin-bottom: 9px;
}

.news-type {
    color: #efb94f;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 1.6px;
}

.news-card-meta time {
    color:
        rgba(239, 232, 216, .48);

    font-size: 11px;
}

.news-card h3 {
    margin:
        0
        0
        8px;

    color: #fff2d2;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 26px;
}

.news-card-featured h3 {
    font-size:
        clamp(
            30px,
            4vw,
            43px
        );
}

.news-card p {
    max-width: 720px;

    margin: 0;

    color:
        rgba(239, 233, 221, .72);

    font-size: 14px;
    line-height: 1.55;
}

.news-read {
    display: inline-flex;
    align-items: center;

    gap: 8px;

    margin-top: 15px;

    color: #e9b75b;

    font-size: 11px;
    font-weight: 900;

    letter-spacing: 1px;
}

.news-read b {
    font-size: 20px;
}


/* SIDEBAR */

.news-sidebar {
    min-width: 0;
}

.news-sidebar-title {
    margin-bottom: 20px;
}

.news-mini-banner {
    position: relative;

    display: block;

    width: 100%;
    height: auto;
    aspect-ratio: 5 / 2;

    margin:
        0
        0
        16px;

    overflow: hidden;

    padding: 0;

    border:
        1px solid
        rgba(222, 169, 74, .34);

    border-radius: 14px;

    background: #0b0806;

    cursor: pointer;

    text-align: left;

    box-shadow:
        0 17px 35px
        rgba(0, 0, 0, .35);

    appearance: none;
}

.news-mini-banner img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center center;

    background:
        #090705;

    transition:
        transform .4s ease;
}

.news-mini-banner:hover img {
    transform:
        scale(1.045);
}

.news-mini-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(5, 4, 3, .08),
            rgba(5, 4, 3, .94)
        );
}

.news-mini-content {
    position: absolute;
    z-index: 2;

    left: 20px;
    right: 20px;
    bottom: 17px;
}

.news-mini-content small {
    display: block;

    margin-bottom: 5px;

    color: #e7ae45;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: 1.4px;
}

.news-mini-content strong {
    display: block;

    color: #fff0cf;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;
}

.news-mini-content em {
    display: block;

    margin-top: 7px;

    color:
        rgba(240, 231, 213, .55);

    font-size: 10px;
    font-style: normal;
}

.news-info-box {
    margin-top: 25px;

    padding:
        25px
        22px;

    border:
        1px solid
        rgba(222, 169, 74, .24);

    border-radius: 15px;

    background:
        linear-gradient(
            145deg,
            rgba(19, 12, 8, .96),
            rgba(7, 6, 5, .96)
        );

    text-align: center;
}

.news-info-box img {
    display: block;

    max-width: 115px;

    margin:
        0
        auto
        14px;
}

.news-info-box strong {
    display: block;

    color: #e8b75d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;
}

.news-info-box p {
    margin:
        9px
        0
        0;

    color:
        rgba(237, 230, 216, .57);

    font-size: 12px;
    line-height: 1.6;
}


/* POPUP */

body.news-modal-open {
    overflow: hidden;
}

.news-modal {
    position: fixed;
    z-index: 10000;

    inset: 0;

    display: none;

    align-items: center;
    justify-content: center;

    padding: 25px;
}

.news-modal.is-open {
    display: flex;
}

.news-modal-backdrop {
    position: absolute;
    inset: 0;

    background:
        rgba(0, 0, 0, .84);

    backdrop-filter:
        blur(7px);
}

.news-modal-dialog {
    position: relative;
    z-index: 2;

    width:
        min(
            820px,
            100%
        );

    max-height:
        calc(100vh - 50px);

    overflow:
        hidden
        auto;

    border:
        1px solid
        rgba(234, 177, 75, .54);

    border-radius: 19px;

    background:
        #0d0907;

    box-shadow:
        0 45px 130px
        rgba(0, 0, 0, .75);
}

.news-modal-close {
    position: absolute;
    z-index: 5;

    top: 14px;
    right: 14px;

    width: 38px;
    height: 38px;

    border:
        1px solid
        rgba(255, 221, 159, .28);

    border-radius: 50%;

    color: #fff0d0;

    background:
        rgba(4, 3, 2, .76);

    cursor: pointer;

    font-size: 25px;
    line-height: 1;
}

.news-modal-image-wrap {
    position: relative;

    height: 335px;

    overflow: hidden;
}

.news-modal-image {
    width: 100%;
    height: 100%;

    object-fit: cover;
}

.news-modal-image-shade {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(6, 4, 3, .05),
            rgba(7, 5, 3, .20) 40%,
            #0d0907 100%
        );
}

.news-modal-title {
    position: absolute;
    z-index: 2;

    left: 38px;
    right: 38px;
    bottom: 30px;
}

.news-modal-title span {
    color: #ecb653;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: 2px;
}

.news-modal-title h2 {
    margin:
        7px
        0
        0;

    color: #fff0cf;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(
            30px,
            5vw,
            46px
        );
}

.news-modal-body {
    padding:
        5px
        38px
        35px;
}

.news-modal-body time {
    color: #d8a54b;

    font-size: 11px;
    font-weight: 800;
}

.news-modal-body p {
    margin:
        17px
        0
        0;

    color:
        rgba(243, 236, 222, .78);

    font-size: 15px;
    line-height: 1.75;
}

.news-modal-text p {
    margin:
        18px
        0
        0;
}

.news-modal-text p:first-child {
    margin-top: 17px;
}

/*
 * NEWS POPUP SPACING V2
 *
 * Los saltos escritos por el administrador
 * se conservan literalmente mediante <br>.
 */
.news-modal-text {
    margin-top: 17px;

    color:
        rgba(243, 236, 222, .78);

    font-size: 15px;
    line-height: 1.75;
}


.news-modal-signature {
    display: flex;
    align-items: center;

    gap: 13px;

    margin-top: 27px;

    padding-top: 20px;

    border-top:
        1px solid
        rgba(226, 174, 79, .18);
}

.news-modal-signature img {
    width: 70px;
}

.news-modal-signature span {
    color:
        rgba(239, 224, 194, .62);

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 1px;
}


/* RESPONSIVE */

@media (max-width: 1100px) {

    .news-layout {
        grid-template-columns:
            1fr;
    }

    .news-sidebar {
        display: grid;

        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

        gap: 16px;
    }

    .news-sidebar-title,
    .news-info-box {
        grid-column:
            1 / -1;
    }

    .news-mini-banner {
        margin: 0;
    }
}

@media (max-width: 760px) {

    .news-hero,
    .news-layout {
        width:
            calc(100% - 24px);
    }

    .news-hero {
        margin-top: 25px;

        min-height: 285px;
    }

    .news-hero-content {
        padding:
            50px
            25px;
    }

    .news-grid {
        grid-template-columns:
            1fr;
    }

    .news-card-featured {
        grid-column: auto;
    }

    .news-card,
    .news-card-featured {
        min-height: 310px;
    }

    .news-sidebar {
        grid-template-columns:
            1fr;
    }

    .news-section-heading {
        display: block;
    }

    .news-section-heading p {
        margin-top: 8px;
    }

    .news-modal {
        padding: 10px;
    }

    .news-modal-image-wrap {
        height: 260px;
    }

    .news-modal-title {
        left: 22px;
        right: 22px;
        bottom: 22px;
    }

    .news-modal-body {
        padding:
            5px
            22px
            28px;
    }
}
