 #main-slider {
            width: 100vw !important; /* 뷰포트 전체 너비 */
            position: relative;
            left: 50%;
            transform: translateX(-50%);
            height: 94vh;
            overflow: hidden;
        }

        .app-container #main-slider,
        .container #main-slider {
            width: 100vw !important;
            position: relative;
            left: 50%;
            transform: translateX(-50%);
        }

        .swiper-slide {
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            overflow: hidden;
        }

        .swiper-slide img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .swiper-button-next,
        .swiper-button-prev {
            width: 60px !important;
            height: 60px !important;
            margin-top: -30px !important;
            border-radius: 50%;
            box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
            backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.2);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            opacity: 0.8;
            z-index: 10;
        }

        .swiper-button-next:hover,
        .swiper-button-prev:hover {
            transform: scale(1.1) translateY(-2px);
            box-shadow: 0 12px 35px rgba(0, 0, 0, 0.25);
            background: rgba(255, 255, 255, 1);
            opacity: 1;
        }

        .swiper-button-next:active,
        .swiper-button-prev:active {
            transform: scale(0.95) translateY(0px);
            box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
        }

        .swiper-button-next::after,
        .swiper-button-prev::after {
            font-size: 20px !important;
            font-weight: 800;
            color: #333;
            opacity: 0.8;
        }

        .swiper-button-next {
            right: 30px !important;
        }

        .swiper-button-prev {
            left: 30px !important;
        }

        .swiper-button-disabled {
            opacity: 0.3 !important;
            transform: scale(0.9) !important;
            cursor: not-allowed !important;
        }

        .swiper-pagination {
            bottom: 30px !important;
            z-index: 10;
        }

        .swiper-pagination-bullet {
            width: 12px !important;
            height: 12px !important;
            background: rgba(255, 255, 255, 0.5) !important;
            border: 2px solid rgba(255, 255, 255, 0.8);
            opacity: 1 !important;
            transition: all 0.3s ease;
            margin: 0 8px !important;
        }

        .swiper-pagination-bullet-active {

            background: rgba(255, 255, 255, 0.9) !important;
            transform: scale(1.3);
            box-shadow: 0 0 20px rgba(255, 255, 255, 0.6);
        }

        .swiper-pagination-bullet:hover {
            transform: scale(1.2);
            background: rgba(255, 255, 255, 0.7) !important;
        }

        /* 배너 오버레이 효과 (선택사항) */
        .banner-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(
                45deg, 
                rgba(0, 0, 0, 0.3) 0%, 
                rgba(0, 0, 0, 0.1) 50%, 
                rgba(0, 0, 0, 0.3) 100%
            );
            z-index: 1;
        }



        .banner-title {
            font-size: 3.5rem;
            font-weight: 700;
            margin-bottom: 1rem;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
            line-height: 1.2;
        }

        .banner-subtitle {
            font-size: 1.2rem;
            font-weight: 300;
            opacity: 0.9;
            text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
        }

        /* 반응형 디자인 */
        @media (max-width: 1024px) {
            .swiper-button-next,
            .swiper-button-prev {
                width: 50px !important;
                height: 50px !important;
                margin-top: -25px !important;
            }

            .swiper-button-next::after,
            .swiper-button-prev::after {
                font-size: 16px !important;
            }

            .swiper-button-next {
                right: 20px !important;
            }

            .swiper-button-prev {
                left: 20px !important;
            }

            .banner-title {
                font-size: 2.5rem;
            }

            .banner-subtitle {
                font-size: 1rem;
            }
        }

        @media (max-width: 768px) {
            #main-slider {
                height: 40vh;
            }

            .swiper-button-next,
            .swiper-button-prev {
                width: 40px !important;
                height: 40px !important;
                margin-top: -20px !important;
            }

            .swiper-button-next::after,
            .swiper-button-prev::after {
                font-size: 14px !important;
            }

            .swiper-button-next {
                right: 15px !important;
            }

            .swiper-button-prev {
                left: 15px !important;
            }

            .swiper-pagination {
                bottom: 20px !important;
            }

            .banner-title {
                font-size: 2rem;
            }

            .banner-subtitle {
                font-size: 0.9rem;
            }
        }

        @media (max-width: 480px) {
            #main-slider {
                height: 35vh;
            }

            .banner-title {
                font-size: 1.5rem;
            }

            .banner-subtitle {
                font-size: 0.8rem;
            }
        }

        /* 페이드 효과를 위한 추가 스타일 */
        .swiper-fade .swiper-slide {
            pointer-events: none;
        }

        .swiper-fade .swiper-slide-active {
            pointer-events: auto;
        }

        /* 데모용 컨테이너 */
        .demo-container {
            max-width: 1280px;
            margin: 0 auto;
            padding: 20px;
        }

        .demo-content {
            background: #f8f9fa;
            padding: 40px 20px;
            text-align: center;
            margin: 40px 0;
        }

/* ===== 뉴스 섹션 스타일 ===== */
.news-section {
    background: white;
    border-radius: 16px;
}

.news-head {
    text-align: center;
    margin-bottom: 40px;
}

.news-head h2 {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.news-head p {
    font-size: 1.1rem;
    color: #666;
    font-weight: 400;
}

.news-section .swiper {
    width: 100%;
    height: auto;
    padding-bottom: 50px;
}

.news-section .swiper-slide {
    width: auto;
    height: auto;
}

.news-section .swiper-wrapper {
    display: flex;
}

.news-card {
    background: #F2F8FE;
    border-radius: 20px;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

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

.news-image {
    width: 100%;
    height: 180px;
    overflow: hidden;
    border-radius: 16px 16px 0 0;
}

.news-image img {
    border-radius: 15px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

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

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

.news-content h3 {
    font-size: 1rem;
    font-weight: 600;
    color: #333;
    line-height: 1.4;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-content .date {
    font-size: 0.8rem;
    color: #888;
    font-weight: 400;
}

/* 뉴스 섹션 페이지네이션 스타일 */
.news-section .swiper-pagination {
    position: relative !important;
    bottom: 0 !important;
    margin-top: 30px;
    text-align: center;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
}

.news-section .swiper-pagination-bullet {
    width: 12px !important;
    height: 12px !important;
    background-color: transparent !important;
    border: 2px solid #003A6C !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    transition: all 0.3s ease !important;
    margin: 0 !important;
    cursor: pointer !important;
    position: relative !important;
}

.news-section .swiper-pagination-bullet:hover {
    transform: scale(1.1) !important;
}

.news-section .swiper-pagination-bullet-active {
    width: 17px !important;
    border-radius: 7px !important;
    background-color: #003A6C !important;
    border-color: #003A6C !important;
    transform: scale(1.2) !important;
}

.news-section .swiper-pagination-bullet-active:hover {
}

/* 뉴스 섹션 반응형 디자인 */
@media (max-width: 1024px) {
    .news-section {
        padding: 30px;
    }

    .news-head h2 {
        font-size: 2rem;
    }

    .news-head p {
        font-size: 1rem;
    }

    .news-image {
        height: 160px;
    }

    .news-content {
        padding: 15px;
    }

    .news-content h3 {
        font-size: 0.95rem;
    }
}

@media (max-width: 768px) {
    .news-section {
        padding: 20px;
    }

    .news-head {
        margin-bottom: 30px;
    }

    .news-head h2 {
        font-size: 1.8rem;
    }

    .news-head p {
        font-size: 0.9rem;
    }

    .news-image {
        height: 140px;
    }

    .news-content {
        padding: 12px;
    }

    .news-content h3 {
        font-size: 0.9rem;
    }

    .news-content .date {
        font-size: 0.75rem;
    }
}

@media (max-width: 480px) {
    .news-section {
        padding: 15px;
    }

    .news-head h2 {
        font-size: 1.5rem;
    }

    .news-image {
        height: 120px;
    }

    .news-content h3 {
        font-size: 0.85rem;
    }

    .news-content .date {
        font-size: 0.7rem;
    }
}

 .swiper-backface-hidden .swiper-slide {
     padding-top: 5px;
     padding-bottom: 5px;
 }