﻿/* ======================================================
   Main Video
   ====================================================== */
.main_video_box {
    width: 100%;
    aspect-ratio: 16 / 9;
    max-height: 565px;
    border-radius: 12px;
    overflow: hidden;
    background: #000;
}

.main_video {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
}

/* 모바일에서 영상이 너무 납작해 보이면 비율만 조정 
   영상이 화면이 잘릴 경우 object-fit: contain; 으로 조정 > 대신 검은 여백 생김
*/
@media (max-width: 767px) {
    .main_video_box {
        aspect-ratio: 6 / 4;
        border-radius: 10px;
    }
}

/* ======================================================
   Category Banner
   ====================================================== */
.cate_bnr_link {
    display: block;
    width: 100%;
    text-decoration: none;
    line-height: 0;
    transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
}

    .cate_bnr_link:hover {
        transform: translateY(-2px);
        box-shadow: 0 14px 34px rgba(0, 0, 0, 0.2);
    }

.cate_bnr_crop {
    width: 100%;
    border-radius: inherit;
    overflow: hidden;
}

.cate_bnr_img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: inherit;
    transition: transform 0.25s ease, filter 0.25s ease;
}

.cate_bnr_link:hover .cate_bnr_img {
    transform: scale(1.025);
    filter: brightness(0.96);
}

@media (max-width: 767px) {
    .cate_bnr_link {
        border-radius: 8px;
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.14);
    }

        .cate_bnr_link:hover {
            transform: none;
        }
}

/* ======================================================
   Home Ranking Grid
   MudGrid: xs=12 / sm=12 / md=6 / lg=4 대응
   ====================================================== */

.home_ranking_grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    column-gap: 32px;
    row-gap: 40px;
}

    .home_ranking_grid > * {
        min-width: 0;
    }

/* md: 960px 이상 = 2열 */
@media (min-width: 960px) {
    .home_ranking_grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 56px;
    }
}

/* lg: 1280px 이상 = 3열 */
@media (min-width: 1280px) {
    .home_ranking_grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        column-gap: 32px;
        row-gap: 64px;
    }
}

/* xl 이상에서도 3열 유지 */
@media (min-width: 1920px) {
    .home_ranking_grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
/* ======================================================
   Footer New
   ====================================================== */

.FooterNew {
    border-top: solid 1px var(--darker);
    background-color: var(--mud-palette-dark-darken);
}

    .FooterNew .mud-paper a,
    .FooterNew .mud-paper p {
        letter-spacing: normal !important;
    }

    .FooterNew .footer_inner {
        width: 100%;
    }

    .FooterNew .footer_row {
        width: 100%;
        gap: 50px;
    }

    .FooterNew .footer_box {
        width: 15%;
        flex: 0 0 15%;
        min-width: 0;
    }

    .FooterNew .footer_box_01 {
        width: auto !important;
        flex: 1 1 auto;
        max-width: 680px;
    }

    .FooterNew .footer_link_row {
        flex-wrap: wrap;
        row-gap: 8px;
    }

    .FooterNew .footer_info_line {
        flex-wrap: wrap;
        column-gap: 14px;
        row-gap: 6px;
    }

    .FooterNew .footer_logo_img {
        height: 60px;
        width: auto;
    }

    .footer_adult_notice_inline {
        display: block;
        position: relative;
    }

    .footer_adult_badge_inline {
        width: 28px;
        height: 28px;
        margin-right: 5px;
        border: 3px solid #d50000;
        border-radius: 999px;
        background: #ffffff;
        color: #000000;
        font-size: 16px;
        font-weight: 900;
        line-height: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
    }
/* lg 미만: MudBlazor lg breakpoint 1280px 기준 */
@media (max-width: 1279.98px) {
    .FooterNew .footer_row {
        gap: 44px;
    }

    .FooterNew .footer_box,
    .FooterNew .footer_box_01 {
        width: 100% !important;
        flex: 0 0 100%;
        max-width: none;
    }
}

/* md 미만: MudBlazor md breakpoint 960px 기준 */
@media (max-width: 959.98px) {
    .FooterNew .footer_row {
        gap: 38px;
    }

    .FooterNew .footer_info_line {
        flex-direction: column !important;
        gap: 6px;
    }
}

/* sm 미만: MudBlazor sm breakpoint 600px 기준 */
@media (max-width: 599.98px) {
    .FooterNew .footer_logo_img {
        height: 48px;
    }

    .FooterNew .footer_link_row {
        gap: 6px 8px;
    }

    .footer_adult_badge_inline {
        width: 26px;
        height: 26px;
        margin-right: 6px;
        border-width: 2px;
        font-size: 13px;
        vertical-align: -7px;
    }
}
