@charset "UTF-8";

.sec5 {
    width: 100%;
    margin: 30px auto; /* 상하 간격 sec3보다 조금 더 */
    clear: both;
}

.sec5 h2 {
    margin-bottom: 15px;
}

.blog-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around; /* 갤러리와 동일하게 */
    gap: 15px; /* 아이템 간 간격 추가 */
}

.blog-container > a {
    display: block;
    /* width: 16%; */ /* flex-basis로 대체 */
    flex-basis: calc(16.666% - 13px); /* 6개 표시, gap 고려 */
    box-sizing: border-box;
    text-decoration: none;
    color: inherit;
}

.blog-card {
    border: 1px solid #eee; /* sec3 스타일 참고 */
    border-radius: 8px;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    display: flex;
    flex-direction: column;
    height: 100%; /* 링크 영역 채우도록 */
}

.blog-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

/* 이미지 래퍼 스타일 (sec3_img 참고) */
.blog-card-img-wrap {
    width: 100%;
    height: 130px; /* 이미지 높이 조정 */
    overflow: hidden;
    background-color: #f0f0f0; /* 이미지 없을 때 배경 */
}

.blog-card-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s; /* sec3 hover 효과 */
}

.blog-card:hover .blog-card-img-wrap img {
    transform: scale(1.05); /* sec3 hover 효과 */
}

.blog-card-img-wrap img.placeholder {
    object-fit: contain;
}

/* 텍스트 컨텐츠 래퍼 스타일 (gallery_item 내부 참고) */
.blog-card-content {
    padding: 12px 15px 15px; /* 패딩 조정 (하단 조금 더) */
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    text-align: left; /* 텍스트 왼쪽 정렬 */
}

.blog-card h3 {
    font-size: 15px;
    font-weight: bold; 
    color: #333;
    margin: 0 0 8px; 
    line-height: 1.4;
    /* 제목 10글자 제한 시 말줄임 불필요, 높이 자동 */
    /* 
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 42px; 
    */
}

/* 내용 요약 스타일 추가 */
.blog-card .blog-excerpt {
    font-size: 13px;
    color: #555;
    line-height: 1.5;
    flex-grow: 1; /* 남는 공간 채우기 */
    /* 내용 요약 세 줄 말줄임 (웹킷) */
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3; /* 세 줄 제한 */
    -webkit-box-orient: vertical;
    min-height: 58px; /* 세 줄 높이 확보 */
}

/* 반응형 (sec3 참고) */
@media only screen and (max-width: 991px) { /* 태블릿 사이즈 추가 */
    .blog-container > a {
        flex-basis: calc(33.333% - 10px); /* 한 줄에 3개 */
    }
}

@media only screen and (max-width: 767px) {
    .blog-container{
        gap: 5px;
    }
    .blog-container > a {
        flex-basis: calc(50% - 8px); /* 한 줄에 2개 */
    }
    .blog-card-img-wrap {
        height: 110px; /* 모바일 이미지 높이 조정 */
    }
    .blog-card h3 {
        font-size: 14px;
        /* min-height: 40px; */ /* 높이 자동 */
    }
    .blog-card .blog-excerpt {
        -webkit-line-clamp: 2; /* 모바일 두 줄 제한 */
        min-height: 36px; /* 모바일 두 줄 높이 */
    }
} 