@charset "UTF-8";

.hero_section {
    position:relative;
    padding:200px 0;
    background-image:linear-gradient(rgba(10, 13, 58, 0.45), rgba(10, 13, 58, 0.45)), url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?auto=format&fit=crop&q=80&w=1920');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    overflow:hidden;
}

.hero_grid {
    display:grid;
    align-items:center;
    gap:32px;
    grid-template-columns:repeat(12,minmax(0,1fr));
}

.hero_info_column {
    display:flex;
    flex-direction:column;
    gap:24px;
    grid-column:span 6;
}

.badge_open_access {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:4px 12px;
    width:fit-content;
    font-size:1.4rem;
    font-weight:600;
    color:var(--color_emerald_dark);
    background-color:#ecfdf5;
    border:1px solid #d1fae5;
    border-radius:9999px;
}

.badge_dot {
    width:8px;
    height:8px;
    background-color:var(--color_green);
    border-radius:50%;
    animation:pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% {
        opacity:1;
        transform:scale(1);
    }
    50% {
        opacity:0.5;
        transform:scale(1.1);
    }
}

.hero_title {
    font-size:4.8rem;
    font-weight:800;
    line-height:1.2;
    color:#ffffff;
    letter-spacing:-0.025em;
    word-break:keep-all;
}

.hidden_sm_inline {
    display:inline;
}

.hero_search_column {
    position:relative;
    grid-column:span 6;
}

.search_card {
    position:relative;
    padding:0;
    color:#ffffff;
    background:transparent;
    border-radius:0;
    box-shadow:none;
}

.search_card_header {
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:32px;
}

.search_card_category {
    font-size:2.4rem;
    font-weight:800;
    line-height:1.4;
    color:#ffffff;
    letter-spacing:-0.02em;
}

.btn_advanced_search {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 20px;
    font-size:1.4rem;
    font-weight:600;
    color:var(--color_green);
    background-color:#f0fdf4;
    border:1px solid #dcfce7;
    border-radius:8px;
    transition:var(--transition_fast);
}

.btn_advanced_search:hover {
    color:#ffffff;
    background-color:var(--color_green);
    border-color:var(--color_green);
}

.search_input_wrapper {
    position:relative;
    margin-bottom:32px;
}

.search_input_field {
    width:100%;
    padding:18px 64px 18px 24px;
    font-size:1.8rem;
    color:var(--color_text_main);
    background-color:#ffffff;
    border:1px solid #d1d5db;
    border-radius:9999px;
    outline:none;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.05);
    transition:var(--transition_fast);
}

.search_input_field::placeholder {
    font-size:1.6rem;
    color:#9ca3af;
}

.search_input_field:focus {
    background-color:#ffffff;
    border-color:var(--color_green);
    box-shadow:0 0 0 4px rgba(76,167,58,0.1);
}

.search_submit_btn {
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    top:50%;
    right:12px;
    width:44px;
    height:44px;
    font-size:2.0rem;
    color:var(--color_text_muted);
    background-color:transparent;
    border-radius:50%;
    transform:translateY(-50%);
    transition:var(--transition_fast);
}

.search_submit_btn:hover {
    color:var(--color_green);
    background-color:#f3f4f6;
}

.search_stats_grid {
    display:flex;
    gap:32px;
    padding-top:0;
    border-top:none;
}

.stat_label {
    display:block;
    margin-bottom:4px;
    font-size:1.4rem;
    color:#d1d5db;
}

.stat_value {
    font-size:2.8rem;
    font-weight:900;
    color:#ffffff;
}

.stat_value_highlight {
    color:var(--color_green);
}

.stat_value_highlight span {
    font-size:1.4rem;
    font-weight:400;
    color:#d1d5db;
}

.indices_section {
    padding-top:40px;
    padding-bottom:40px;
    background-color:var(--color_light_bg);
    border-top:1px solid var(--color_border_light);
}

.hero_indices {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:32px;
}

.cc_license_icons {
    display:flex;
    gap:6px;
    flex-shrink:0;
    font-size:3.2rem;
    color:#9ca3af;
}

.divider_y {
    width:1px;
    height:40px;
    flex-shrink:0;
    background-color:var(--color_border);
}

.license_desc_text {
    max-width:800px;
    font-size:1.4rem;
    line-height:1.5;
    color:var(--color_text_muted);
}

@media (max-width:767px) {

    .indices_section {
        padding-top:24px;
        padding-bottom:24px;
    }

    .indices_section .container {
        padding-right:12px;
        padding-left:12px;
    }

    .hero_indices {
        display:flex;
        flex-direction:column;
        flex-wrap:wrap;
        align-items:stretch;
        justify-content:center;
        gap:16px;
        width:100%;
        max-width:100%;
        min-width:0;
    }

    .cc_license_icons {
        display:flex;
        flex-wrap:wrap;
        justify-content:center;
        align-items:center;
        gap:6px;
        font-size:4rem;
    }

    .divider_y {
        display:none;
        width:0;
        height:0;
    }

    .license_desc_text {
        width:100%;
        max-width:100%;
        min-width:0;
        line-height:1.6;
        font-size:1.3rem;
        word-break:break-word;
        overflow-wrap:break-word;
    }

    .license_desc_text a {
        word-break:break-all;
    }

}

.quick_links_section {
    padding-top:40px;
    padding-bottom:40px;
    background-color:var(--color_light_bg);
    border-top:1px solid var(--color_border_light);
}

.quick_links_grid {
    display:grid;
    gap:24px;
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.quick_link_card {
    display:flex;
    align-items:center;
    gap:16px;
    padding:20px;
    background-color:#ffffff;
    border:1px solid transparent;
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
    transition:var(--transition_normal);
}

.quick_link_card:hover {
    background-color:rgba(76,167,58,0.05);
    border-color:rgba(16,185,129,0.2);
    box-shadow:0 10px 15px -3px rgba(0,0,0,0.05);
}

.card_icon_container {
    display:flex;
    justify-content:center;
    align-items:center;
    width:48px;
    height:48px;
    border-radius:12px;
    transition:var(--transition_normal);
}

.quick_link_card:hover .card_icon_container {
    transform:scale(1.1);
}

.card_icon_container i {
    font-size:2.0rem;
}

.icon_orange {
    color:#f97316;
    background-color:#ffedd5;
}

.icon_sky {
    color:#0284c7;
    background-color:#e0f2fe;
}

.icon_indigo {
    color:#4f46e5;
    background-color:#e0e7ff;
}

.icon_emerald {
    color:#059669;
    background-color:#d1fae5;
}

.quick_link_title {
    font-size:1.6rem;
    font-weight:700;
    color:#111827;
}

.quick_link_desc {
    margin-top:4px;
    font-size:1.4rem;
    color:var(--color_text_muted);
}

.published_articles_section {
    padding-top:80px;
    padding-bottom:80px;
    background-color:#ffffff;
    border-top:1px solid var(--color_border_light);
}

.published_articles_section .published_swiper {
    margin-bottom:-20px;
    padding-top:8px;
    padding-bottom:20px;
}

.published_articles_section .published_swiper .swiper-wrapper {
    align-items:stretch;
}

.published_articles_section .published_swiper .swiper-slide {
    display:flex;
    align-items:stretch;
    height:auto;
}

.section_header_block {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:32px;
    padding-bottom:16px;
    border-bottom:1px solid var(--color_border);
}

.section_header_block.dark_border {
    border-bottom-color:var(--color_border_light);
}

.section_header_title {
    font-size:2.6rem;
    font-weight:800;
    color:#111827;
    letter-spacing:-0.02em;
}

.section_header_title.text_white {
    color:var(--color_text_main);
}

.btn_view_all {
    display:inline-flex;
    align-items:center;
    gap:4px;
    font-size:1.4rem;
    font-weight:600;
    color:var(--color_green);
    transition:var(--transition_fast);
}

.btn_view_all:hover {
    color:var(--color_green_hover);
}

.view_all_plus {
    font-size:1.6rem;
    font-weight:700;
    line-height:1;
}

.swiper_carousel_group {
    position:relative;
}

.swiper_track_clip {
    overflow-x:clip;
    overflow-y:visible;
}

.swiper_carousel_group .slider_controls {
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    pointer-events:none;
    z-index:10;
}

.swiper_carousel_group .control_btn {
    position:absolute;
    top:50%;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity 0.3s ease, visibility 0.3s ease;
    transform:translateY(-50%);
}

.swiper_carousel_group:hover .control_btn {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

.swiper_carousel_group .control_btn_prev {
    left:-20px;
}

.swiper_carousel_group .control_btn_next {
    right:-20px;
}

.slider_controls {
    display:flex;
    align-items:center;
    gap:8px;
}

.control_btn {
    display:flex;
    justify-content:center;
    align-items:center;
    width:44px;
    height:44px;
    color:var(--color_text_main);
    background-color:#ffffff;
    border:1px solid var(--color_border);
    border-radius:50%;
    transition:var(--transition_fast);
}

.control_btn:hover {
    color:var(--color_green);
    border-color:var(--color_green);
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.05);
}

.control_btn.dark {
    color:var(--color_text_main);
    border-color:var(--color_border);
}

.control_btn.dark:hover {
    color:var(--color_green);
    background-color:var(--color_light_bg);
    border-color:var(--color_green);
}

.control_btn i {
    font-size:1.4rem;
}

.article_card_light {
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    width:100%;
    height:100%;
    padding:24px;
    min-height:248px;
    background-color:#ffffff;
    border:1px solid var(--color_border);
    border-radius:20px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02), 0 2px 4px -1px rgba(0,0,0,0.01);
    transition:var(--transition_normal);
}

.article_card_light:hover {
    border-color:rgba(76,167,58,0.35);
    box-shadow:0 12px 24px -4px rgba(0,0,0,0.08), 0 4px 12px -2px rgba(0,0,0,0.03);
    transform:translateY(-5px);
}

.light_card_body {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    gap:8px;
}

.light_card_title {
    min-height:calc(1.6rem * 1.45 * 3);
    line-height:1.45;
    font-size:1.6rem;
    font-weight:700;
    color:#111827;
    transition:var(--transition_fast);
}

.light_card_title a {
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}

.article_card_light:hover .light_card_title {
    color:var(--color_green);
}

.light_card_author {
    display:-webkit-box;
    line-height:1.4;
    font-size:1.4rem;
    color:var(--color_text_muted);
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:1;
}

.light_card_meta {
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    align-items:center;
    gap:8px;
    line-height:1.4;
    font-size:1.4rem;
    font-weight:300;
    color:var(--color_text_light);
}

.light_card_meta_vol {
    flex:1 1 auto;
    min-width:0;
}

.light_card_meta_date {
    flex-shrink:0;
    white-space:nowrap;
}

.light_card_footer {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:auto;
    padding-top:16px;
    font-size:1.4rem;
    color:var(--color_text_muted);
    border-top:1px solid var(--color_border_light);
}

.light_card_stats {
    display:flex;
    align-items:center;
    gap:12px;
}

.light_card_stat {
    display:flex;
    align-items:center;
    gap:4px;
}

.light_card_stat i {
    font-size:1.4rem;
    color:var(--color_text_light);
}

.light_card_stat i.fa-eye {
    color:#3b82f6;
}

.light_card_stat i.fa-download {
    color:var(--color_emerald_dark);
}

.light_card_badge {
    padding:4px 8px;
    font-size:1.4rem;
    font-weight:700;
    color:#475569;
    background-color:var(--color_light_bg);
    border-radius:6px;
}

.published_articles_section .light_card_doi_link {
    display:inline-flex;
    flex-shrink:0;
    align-items:center;
    justify-content:center;
    padding:4px 12px;
    width:fit-content;
    line-height:1.4;
    font-size:1.4rem;
    font-weight:700;
    color:#475569;
    text-decoration:none;
    background-color:var(--color_light_bg);
    border-radius:6px;
    transition:var(--transition_fast);
}

.published_articles_section .light_card_doi_link .doi_label {
    display:block;
}

.published_articles_section .light_card_doi_link .doi_full {
    display:none;
}

.published_articles_section .light_card_doi_link:hover {
    color:var(--color_green);
    background-color:#ecfdf5;
}

.published_articles_section .article_card_light.search_match {
    border-color:rgba(52, 211, 153, 0.4);
}

.published_articles_section .article_card_light.search_match .light_card_title {
    color:var(--color_green);
}

.published_articles_section .light_card_badge.search_match_badge {
    color:#059669;
    background-color:#ecfdf5;
}

.video_articles_section {
    position:relative;
    padding-top:80px;
    padding-bottom:80px;
    color:var(--color_text_main);
    background-color:var(--color_light_bg);
    border-top:1px solid var(--color_border_light);
}

.video_articles_section .video_swiper {
    margin-bottom:-20px;
    padding-top:8px;
    padding-bottom:20px;
}

.video_articles_section .video_swiper .swiper-wrapper {
    align-items:stretch;
}

.video_articles_section .video_swiper .swiper-slide {
    display:flex;
    align-items:stretch;
    height:auto;
}

.video_card_dark {
    display:flex;
    flex-direction:column;
    width:100%;
    height:100%;
    min-height:300px;
    background-color:#ffffff;
    border:1px solid var(--color_border);
    border-radius:20px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.02);
    transition:var(--transition_normal);
    overflow:hidden;
}

.video_card_dark:hover {
    background-color:var(--color_light_bg);
    border-color:rgba(76,167,58,0.35);
    box-shadow:0 12px 24px -4px rgba(0,0,0,0.08);
    transform:translateY(-5px);
}

.video_thumbnail_wrapper {
    position:relative;
    width:100%;
    height:168px;
    background-color:#000000;
    cursor:pointer;
    overflow:hidden;
}

.video_thumbnail_img {
    width:100%;
    height:100%;
    opacity:0.7;
    object-fit:cover;
    transition:var(--transition_normal);
}

.video_card_dark:hover .video_thumbnail_img {
    opacity:0.85;
    transform:scale(1.06);
}

.video_play_overlay {
    display:flex;
    justify-content:center;
    align-items:center;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
}

.play_button_circle {
    display:flex;
    justify-content:center;
    align-items:center;
    width:52px;
    height:52px;
    font-size:1.6rem;
    color:#ffffff;
    background-color:rgba(76,167,58,0.9);
    border:2px solid rgba(255,255,255,0.2);
    border-radius:50%;
    box-shadow:0 4px 12px rgba(0,0,0,0.35);
    transition:var(--transition_fast);
}

.video_card_dark:hover .play_button_circle {
    background-color:var(--color_green_hover);
    border-color:#ffffff;
    box-shadow:0 0 20px rgba(76,167,58,0.6);
    transform:scale(1.12);
}

.play_button_circle i {
    margin-left:2px;
}

.video_duration_tag {
    position:absolute;
    right:12px;
    bottom:12px;
    padding:4px 8px;
    font-size:1.4rem;
    font-weight:700;
    color:#ffffff;
    letter-spacing:0.05em;
    background-color:rgba(0,0,0,0.8);
    border-radius:4px;
}

.video_card_body {
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    flex-grow:1;
    padding:24px;
}

.video_card_info_top {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    gap:0;
}

.video_card_title {
    font-size:1.6rem;
    font-weight:700;
    line-height:1.45;
    color:#111827;
    transition:var(--transition_fast);
}

.video_card_title a {
    display:-webkit-box;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}

.video_card_dark:hover .video_card_title {
    color:var(--color_green);
}

.video_card_footer {
    margin-top:15px;
    padding-top:16px;
    border-top:1px solid var(--color_border_light);
}

.video_card_volume {
    line-height:1.5;
    font-size:1.4rem;
    font-weight:500;
    color:var(--color_text_muted);
    letter-spacing:0.02em;
}

.stats_articles_section {
    padding-top:80px;
    padding-bottom:80px;
    background-color:#ffffff;
    border-top:1px solid var(--color_border_light);
}

.stats_grid {
    display:grid;
    gap:64px;
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.stats_column {
    display:flex;
    flex-direction:column;
    gap:24px;
}

.stats_column_header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-bottom:12px;
    border-bottom:2px solid var(--color_border_light);
}

.stats_column_title {
    display:flex;
    align-items:center;
    font-size:2.2rem;
    font-weight:800;
    color:#111827;
    letter-spacing:-0.02em;
}

.stats_list {
    display:flex;
    flex-direction:column;
    gap:16px;
}

.stat_row_card {
    display:flex;
    align-items:center;
    gap:20px;
    padding:16px 20px;
    background-color:#ffffff;
    border:1px solid var(--color_border_light);
    border-radius:16px;
    cursor:pointer;
    transition:var(--transition_normal);
}

.stat_row_card:hover {
    background-color:var(--color_light_bg);
    border-color:rgba(76,167,58,0.3);
    box-shadow:0 4px 12px rgba(0,0,0,0.03);
    transform:translateX(6px);
}

.stat_rank_badge {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;
    width:36px;
    height:36px;
    font-size:1.6rem;
    font-weight:800;
    color:var(--color_text_muted);
    background-color:var(--color_light_bg);
    border-radius:50%;
    transition:var(--transition_fast);
}

.stat_row_card:hover .stat_rank_badge {
    color:#ffffff;
    background-color:var(--color_green);
}

.stat_rank_badge.top_rank {
    color:var(--color_green);
    background-color:rgba(76,167,58,0.1);
}

.stat_row_content {
    display:flex;
    flex-direction:column;
    flex-grow:1;
    min-width:0;
}

.stat_row_title {
    display:-webkit-box;
    font-size:1.6rem;
    font-weight:700;
    line-height:1.4;
    color:#111827;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    transition:var(--transition_fast);
}

.stat_row_card:hover .stat_row_title {
    color:var(--color_green);
}

.stat_row_count_badge {
    display:flex;
    align-items:center;
    flex-shrink:0;
    gap:6px;
    padding:4px 10px;
    font-size:1.4rem;
    font-weight:600;
    color:var(--color_text_muted);
    background-color:#f1f5f9;
    border-radius:9999px;
}

.stat_row_count_badge i {
    font-size:1.4rem;
}

.partners_section {
    padding-top:40px;
    padding-bottom:40px;
    background-color:#F8FAFC;
    border-top:1px solid var(--color_border_light);
    border-bottom:1px solid var(--color_border_light);
    overflow:hidden;
}

.partners_header {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:24px;
}

.partners_label {
    margin-bottom:0;
    font-size:1.4rem;
    font-weight:600;
    color:#9ca3af;
    letter-spacing:0.05em;
    text-transform:uppercase;
}

.partner_slider_controls {
    display:flex;
    align-items:center;
}

.partner_control_btn {
    display:flex;
    justify-content:center;
    align-items:center;
    width:32px;
    height:32px;
    font-size:1.4rem;
    color:var(--color_text_main);
    background-color:#ffffff;
    border:1px solid var(--color_border);
    border-radius:50%;
    cursor:pointer;
    transition:var(--transition_fast);
}

.partner_control_btn:hover {
    color:var(--color_green);
    border-color:var(--color_green);
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.05);
}

.partner_swiper {
    width:100%;
    padding:8px 4px;
}

.partner_logo_slide_card {
    display:flex;
    align-items:stretch;
    width:100%;
    min-height:88px;
    background-color:#ffffff;
    border:1px solid var(--color_border_light);
    border-radius:16px;
    box-shadow:0 4px 6px -1px rgba(0,0,0,0.01);
    transition:var(--transition_normal);
    overflow:hidden;
}

.partner_logo_slide_card:hover {
    border-color:rgba(76,167,58,0.3);
    box-shadow:0 10px 15px -3px rgba(0,0,0,0.04);
}

.partner_logo_slide_card a {
    display:flex;
    align-items:center;
    justify-content:center;
    padding:12px 14px;
    width:100%;
    height:100%;
    min-height:88px;
    cursor:pointer;
}

.partner_logo_slide_card a.no_link {
    cursor:default;
}

.partner_logo_img {
    display:block;
    width:100%;
    height:100%;
    max-height:56px;
    object-fit:contain;
}

/* 12. VIDEO MODAL COMPONENT (Main Page) */
.video_modal_backdrop {
    display:none;
    justify-content:center;
    align-items:center;
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    left:0;
    padding:16px;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,0.85);
    backdrop-filter:blur(8px);
    z-index:1000;
}

.video_modal_content {
    position:relative;
    width:100%;
    max-width:1000px;
    background-color:#000000;
    border-radius:12px;
    box-shadow:0 25px 50px -12px rgba(0,0,0,0.5);
    overflow:hidden;
}

.video_modal_close {
    display:flex;
    justify-content:center;
    align-items:center;
    position:absolute;
    top:16px;
    right:16px;
    width:44px;
    height:44px;
    font-size:2.4rem;
    color:#ffffff;
    background-color:rgba(0,0,0,0.6);
    border-radius:50%;
    transition:var(--transition_fast);
    z-index:10;
}

.video_modal_close:hover {
    color:#ffffff;
    background-color:var(--color_green);
    transform:scale(1.1);
}

.video_wrapper {
    position:relative;
    width:100%;
    height:0;
    padding-bottom:56.25%;
}

.video_element {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    outline:none;
}

/* 13. CUSTOM TOAST NOTIFICATION COMPONENT */
.toast_alert {
    display:flex;
    align-items:center;
    gap:8px;
    position:fixed;
    bottom:-80px;
    left:50%;
    padding:14px 24px;
    font-size:1.6rem;
    font-weight:600;
    color:#ffffff;
    background-color:#1f2937;
    border-radius:12px;
    box-shadow:0 10px 15px -3px rgba(0,0,0,0.3);
    transform:translateX(-50%);
    transition:bottom 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    z-index:1000;
}

.toast_alert.show {
    bottom:32px;
}

.toast_alert i {
    color:#f87171;
}

/* ==================== [반응형 스타일 - 데스크톱 퍼스트] ==================== */

@media (max-width:1023px) {

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

    .hero_title {
        font-size:4.2rem;
    }

    .stats_grid {
        gap:48px;
        grid-template-columns:1fr;
    }

    .stats_list {
        gap:14px;
    }

    .stats_column_title {
        font-size:2.0rem;
    }

    .stat_row_card {
        padding:14px 18px;
        gap:16px;
    }

}

@media (max-width:1023px), (hover:none) and (pointer:coarse) {

    .published_articles_section .swiper_carousel_group .slider_controls,
    .video_articles_section .swiper_carousel_group .slider_controls {
        display:block;
    }

    .published_articles_section .swiper_carousel_group .control_btn,
    .published_articles_section .swiper_carousel_group:hover .control_btn,
    .published_articles_section #btn_pub_prev,
    .published_articles_section #btn_pub_next,
    .video_articles_section .swiper_carousel_group .control_btn,
    .video_articles_section .swiper_carousel_group:hover .control_btn,
    .video_articles_section #btn_video_prev,
    .video_articles_section #btn_video_next,
    .video_articles_section .btn_video_prev,
    .video_articles_section .btn_video_next {
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;
    }

    .published_articles_section .swiper_carousel_group .control_btn_prev,
    .published_articles_section #btn_pub_prev,
    .video_articles_section .swiper_carousel_group .control_btn_prev,
    .video_articles_section .btn_video_prev {
        left:-12px;
    }

    .published_articles_section .swiper_carousel_group .control_btn_next,
    .published_articles_section #btn_pub_next,
    .video_articles_section .swiper_carousel_group .control_btn_next,
    .video_articles_section .btn_video_next {
        right:-12px;
    }

}

@media (max-width:767px) {

    .published_articles_section #btn_pub_prev,
    .published_articles_section #btn_pub_next,
    .video_articles_section #btn_video_prev,
    .video_articles_section #btn_video_next,
    .video_articles_section .btn_video_prev,
    .video_articles_section .btn_video_next {
        width:36px;
        height:36px;
    }

    .published_articles_section .swiper_carousel_group .control_btn_prev,
    .published_articles_section #btn_pub_prev,
    .video_articles_section .swiper_carousel_group .control_btn_prev,
    .video_articles_section .btn_video_prev {
        left:-8px;
    }

    .published_articles_section .swiper_carousel_group .control_btn_next,
    .published_articles_section #btn_pub_next,
    .video_articles_section .swiper_carousel_group .control_btn_next,
    .video_articles_section .btn_video_next {
        right:-8px;
    }

    .published_articles_section #btn_pub_prev i,
    .published_articles_section #btn_pub_next i,
    .video_articles_section .btn_video_prev i,
    .video_articles_section .btn_video_next i {
        font-size:1.2rem;
    }

    .btn_view_all {
        font-size:1.3rem;
    }

    .quick_links_grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media (max-width:500px) {

    .quick_link_card {
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:16px;
    }
    .quick_link_content {
        text-align:center;
    }
}

@media (max-width:639px) {

    .hero_title {
        font-size:3.6rem;
    }

    .hidden_sm_inline {
        display:none;
    }

}

@media (max-width:1023px) {

    .published_articles_section .section_header_title {
        font-size:2.2rem;
    }

    .video_articles_section .section_header_title {
        font-size:2.2rem;
    }

    .published_articles_section .light_card_footer {
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:10px;
        margin-top:16px;
    }

    .published_articles_section .light_card_doi_link {
        display:block;
        min-width:0;
        width:100%;
        max-width:100%;
        overflow:hidden;
    }

    .published_articles_section .light_card_doi_link .doi_label {
        display:none;
    }

    .published_articles_section .light_card_doi_link .doi_full {
        display:block;
        min-width:0;
        white-space:nowrap;
        text-overflow:ellipsis;
        overflow:hidden;
    }

}

@media (max-width:767px) {

    .published_articles_section {
        padding-top:48px;
        padding-bottom:48px;
    }

    .published_articles_section .section_header_block {
        margin-bottom:24px;
        padding-bottom:12px;
    }

    .published_articles_section .section_header_title {
        font-size:2.0rem;
    }

    .published_articles_section .article_card_light {
        padding:18px;
        min-height:auto;
    }

    .published_articles_section .light_card_body {
        gap:6px;
    }

    .published_articles_section .light_card_title {
        min-height:calc(1.5rem * 1.45 * 3);
        font-size:1.5rem;
    }

    .published_articles_section .light_card_author {
        font-size:1.3rem;
    }

    .published_articles_section .light_card_meta {
        font-size:1.3rem;
    }

    .published_articles_section .light_card_meta_date {
        white-space:normal;
    }

    .published_articles_section .light_card_footer {
        padding-top:16px;
        font-size:1.3rem;
    }

    .video_articles_section {
        padding-top:48px;
        padding-bottom:48px;
    }

    .video_articles_section .section_header_block {
        margin-bottom:24px;
        padding-bottom:12px;
    }

    .video_articles_section .section_header_title {
        font-size:2.0rem;
    }

    .video_articles_section .video_card_dark {
        min-height:auto;
    }

    .video_articles_section .video_card_body {
        padding:20px;
    }

    .video_articles_section .video_card_title {
        font-size:1.5rem;
    }

    .video_articles_section .video_card_footer {
        padding-top:14px;
    }

    .video_articles_section .video_card_volume {
        font-size:1.3rem;
    }

    .stats_articles_section {
        padding-top:48px;
        padding-bottom:48px;
    }

    .stats_column_title {
        font-size:1.8rem;
    }

    .stats_list {
        gap:12px;
    }

    .stat_row_card {
        padding:12px 16px;
        gap:12px;
    }

    .stat_row_title {
        font-size:1.5rem;
    }

    .video_modal_backdrop {
        padding:12px;
    }

    .video_modal_content {
        max-width:100%;
        border-radius:8px;
    }

    .video_modal_close {
        top:12px;
        right:12px;
        width:48px;
        height:48px;
        font-size:2.6rem;
        cursor:pointer;
    }

}

@media (max-width:389px) {

    .published_articles_section .article_card_light {
        padding:14px;
    }

    .published_articles_section .light_card_title {
        min-height:calc(1.4rem * 1.45 * 3);
        font-size:1.4rem;
    }

    .video_articles_section .video_card_body {
        padding:16px;
    }

    .video_articles_section .video_card_title {
        font-size:1.4rem;
    }

    .video_articles_section .video_card_volume {
        font-size:1.2rem;
    }

    .stat_row_card {
        padding:10px 14px;
        gap:10px;
    }

    .stat_row_title {
        font-size:1.4rem;
    }

    .video_modal_close {
        top:10px;
        right:10px;
        width:52px;
        height:52px;
        font-size:2.8rem;
    }

}
