@charset "utf-8";

#atc_youtube{
    position:relative;
    margin:0 auto;
    padding:100px 0 90px;
    width:100%;
    min-width:var(--main-size);
    background:#f8f9fa;
}

#atc_youtube .yt_tit{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}

#atc_youtube .yt_tit .yt_label{
    font-size:14px;
    font-weight:700;
    letter-spacing:0.14em;
    color:var(--primary);
}

#atc_youtube .yt_tit h2{
    margin-top:14px;
    font-size:56px;
    font-weight:800;
    line-height:1.12;
    letter-spacing:-0.025em;
    color:var(--black);
}

#atc_youtube .yt_tit p{
    margin-top:12px;
    font-size:21px;
    font-weight:400;
    letter-spacing:-0.01em;
    color:#777;
}

#atc_youtube .yt_wrap{
    margin:48px auto 0;
    width:1600px;
    max-width:calc(100% - 80px);
}

#atc_youtube .yt_filter{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:28px;
}

#atc_youtube .yt_filter ul{
    display:flex;
    align-items:center;
    gap:8px;
}

#atc_youtube .yt_filter li button{
    display:flex;
    align-items:center;
    justify-content:center;
    height:42px;
    padding:0 22px;
    border:none;
    border-radius:21px;
    font-size:15px;
    font-weight:600;
    color:#666;
    background:#f0f0f0;
    cursor:pointer;
    transition:all .3s;
}

#atc_youtube .yt_filter li.on button{
    color:#fff;
    background:var(--primary);
}

#atc_youtube .yt_filter li button:hover{
    color:var(--primary);
    background:#e8f7fa;
}

#atc_youtube .yt_filter li.on button:hover{
    color:#fff;
    background:var(--primary);
}

#atc_youtube .yt_more_btn{
    display:flex;
    align-items:center;
    justify-content:center;
    height:42px;
    padding:0 24px;
    border:2px solid var(--primary);
    border-radius:21px;
    font-size:15px;
    font-weight:600;
    color:var(--primary);
    background:transparent;
    cursor:pointer;
    transition:all .3s;
    white-space:nowrap;
}

#atc_youtube .yt_more_btn:hover{
    color:#fff;
    background:var(--primary);
}

#atc_youtube .yt_grid{
    display:grid;
    grid-template-columns:1.05fr 1fr;
    gap:24px;
    align-items:start;
}

#atc_youtube .yt_featured{
    min-width:0;
}

#atc_youtube .yt_featured_slide{
    overflow:hidden;
    border-radius:16px;
}

#atc_youtube .yt_featured_slide .swiper-slide{
    height:auto;
}

#atc_youtube .yt_thumb{
    overflow:hidden;
    position:relative;
    border-radius:16px;
    aspect-ratio:16/9;
}

#atc_youtube .yt_thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

#atc_youtube .yt_play{
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    width:64px;
    height:64px;
    border:none;
    border-radius:50%;
    background:rgb(255, 255, 255, 0.9);
    box-shadow:0 4px 20px rgb(0, 0, 0, 0.15);
    cursor:pointer;
    transition:transform .3s;
}

#atc_youtube .yt_play svg{
    width:22px;
    height:22px;
    margin-left:3px;
    fill:var(--primary);
}

#atc_youtube .yt_play:hover{
    transform:translate(-50%, -50%) scale(1.06);
}

#atc_youtube .yt_time{
    position:absolute;
    right:12px;
    bottom:12px;
    padding:4px 8px;
    border-radius:4px;
    font-size:12px;
    font-weight:600;
    color:#fff;
    background:rgb(0, 0, 0, 0.75);
}

#atc_youtube .yt_meta{
    padding-top:18px;
}

#atc_youtube .yt_meta h3{
    font-size:20px;
    font-weight:700;
    line-height:1.4;
    letter-spacing:-0.02em;
    color:var(--black);
}

#atc_youtube .yt_meta .yt_desc{
    margin-top:8px;
    font-size:14px;
    font-weight:400;
    line-height:1.5;
    color:#888;
}

#atc_youtube .yt_channel{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:14px;
}

#atc_youtube .yt_channel_logo{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    width:28px;
    height:28px;
    border-radius:50%;
    font-size:12px;
    font-weight:700;
    color:#fff;
    background:var(--primary);
}

#atc_youtube .yt_channel_name{
    display:flex;
    align-items:center;
    gap:4px;
    font-size:13px;
    font-weight:600;
    color:var(--black);
}

#atc_youtube .yt_channel_name svg{
    width:14px;
    height:14px;
    fill:#2563eb;
}

#atc_youtube .yt_channel_info{
    font-size:13px;
    font-weight:400;
    color:#999;
}

#atc_youtube .yt_small_grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    min-width:0;
}

#atc_youtube .yt_small_card{
    cursor:pointer;
    transition:opacity .3s;
}

#atc_youtube .yt_small_card:hover{
    opacity:0.85;
}

#atc_youtube .yt_small_card .yt_thumb{
    border-radius:12px;
}

#atc_youtube .yt_small_card .yt_play{
    width:44px;
    height:44px;
}

#atc_youtube .yt_small_card .yt_play svg{
    width:16px;
    height:16px;
}

#atc_youtube .yt_small_card .yt_meta{
    padding-top:12px;
}

#atc_youtube .yt_small_card .yt_meta h3{
    font-size:15px;
    line-height:1.35;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

#atc_youtube .yt_small_card .yt_channel{
    margin-top:10px;
}

#atc_youtube .yt_small_card .yt_channel_logo{
    width:22px;
    height:22px;
    font-size:10px;
}

#atc_youtube .yt_small_card .yt_channel_name,
#atc_youtube .yt_small_card .yt_channel_info{
    font-size:12px;
}

@media (max-width:1980px){
#atc_youtube{padding:80px 0 70px}
#atc_youtube .yt_tit h2{font-size:52px}
#atc_youtube .yt_tit p{font-size:20px}
#atc_youtube .yt_wrap{width:1600px}
#atc_youtube .yt_meta h3{font-size:18px}
}
