/* ----
 * 메인 홈 — 칼럼 & 성공사례 캐러셀
 * 시안: 풀블리드 포스터 카드 + 좌우 네비
 * 반응형: 5 → 3 → 2 (4칸 없음)
 * ----- */

.rw-hc-section{
    width:100%;
    /* AI CTA·Growth Story와 상·하 여백을 비슷한 수준으로 */
    padding:36px 0 100px;
    background:#fff;
    overflow:hidden;
}
/* AI 47초 CTA ↔ 칼럼 간격 ~50% 축소 (main_style 캐시와 무관하게 적용) */
.ai-order-section{
    padding-bottom:24px !important;
}
.ai-order-section > .container{
    margin-bottom:48px !important;
}
/* 칼럼 ↔ Growth Story — script 형제가 있어 ~ 사용, 상단과 비슷한 여백 */
.rw-hc-section ~ .third-section-wrap{
    padding-top:48px !important;
}
.rw-hc-inner{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:0 20px;
    box-sizing:border-box;
}
.rw-hc-head{
    text-align:center;
    margin-bottom:20px;
}
.rw-hc-tag{
    display:inline-block;
    margin-bottom:12px;
    padding:6px 14px;
    border-radius:999px;
    background:rgba(36,96,255,.08);
    color:#2460FF;
    font-size:13px;
    font-weight:700;
    letter-spacing:.02em;
}
.rw-hc-title{
    margin:0 0 12px;
    font-size:36px;
    font-weight:800;
    letter-spacing:-.04em;
    line-height:1.25;
    color:#111;
}
.rw-hc-desc{
    margin:0 auto;
    max-width:540px;
    font-size:15px;
    line-height:1.55;
    color:#6b7280;
    letter-spacing:-.02em;
}

.rw-hc-tabs{
    display:flex;
    justify-content:center;
    gap:10px;
    margin:0 0 28px;
}
.rw-hc-tab{
    min-width:104px;
    height:42px;
    padding:0 22px;
    border-radius:999px;
    border:1px solid #E5E7EB;
    background:#fff;
    color:#6b7280;
    font-size:15px;
    font-weight:700;
    letter-spacing:-.02em;
    cursor:pointer;
    transition:background .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.rw-hc-tab:hover{
    border-color:#C7D2FE;
    color:#2460FF;
}
.rw-hc-tab.is-active{
    border-color:transparent;
    background:linear-gradient(90deg, #2460FF 0%, #5F59FF 100%);
    color:#fff;
    box-shadow:0 8px 20px rgba(36,96,255,.28);
}

.rw-hc-panel{ display:none; }
.rw-hc-panel.is-active{ display:block; }

/* 슬라이더 — 좌우 버튼을 카드 열과 같은 높이로 flex 정렬 */
.rw-hc-slider-wrap{
    display:flex;
    align-items:center;
    gap:14px;
    position:relative;
    padding:4px 0 0;
    box-sizing:border-box;
}
.rw-hc-swiper{
    flex:1 1 auto;
    min-width:0;
    width:auto;
    height:auto !important;
    overflow:hidden;
    padding:14px 4px 18px; /* 호버 리프트·그림자 여유 */
    box-sizing:border-box;
}
.rw-hc-swiper .swiper-wrapper{
    height:auto !important;
    align-items:stretch;
}
.rw-hc-swiper .swiper-slide{
    height:auto !important;
    box-sizing:border-box;
}

/* 카드 — 풀블리드 포스터 + 하단 텍스트 */
.rw-hc-card{
    display:block;
    width:100%;
    height:100%;
    text-decoration:none !important;
    color:inherit;
    border-radius:18px;
    overflow:hidden;
    background:#111;
    box-shadow:0 10px 28px rgba(15,23,42,.12);
    transform:translate3d(0,0,0);
    transition:transform .4s cubic-bezier(.22,1,.36,1), box-shadow .4s cubic-bezier(.22,1,.36,1);
    will-change:transform;
}
.rw-hc-card-media{
    position:relative;
    width:100%;
    aspect-ratio:3 / 4;
    background-color:#1e293b;
    background-size:cover;
    background-position:center;
    overflow:hidden;
}
.rw-hc-card-media.is-empty{
    background:linear-gradient(145deg, #2460FF 0%, #5F59FF 50%, #7C3AED 100%);
}
/* 썸네일 img — 브라우저 디스크 캐시·lazy/eager 활용 */
.rw-hc-card-img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
    border:0;
    z-index:0;
    background:#1e293b;
}
.rw-hc-card-shade{
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(
        180deg,
        rgba(0,0,0,.08) 20%,
        rgba(0,0,0,.35) 48%,
        rgba(0,0,0,.78) 78%,
        rgba(0,0,0,.9) 100%
    );
    pointer-events:none;
}
.rw-hc-card-body{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:2;
    padding:18px 16px 20px;
    display:flex;
    flex-direction:column;
    gap:8px;
}
.rw-hc-cat{
    display:inline-flex;
    align-self:flex-start;
    max-width:100%;
    padding:3px 0;
    color:rgba(255,255,255,.92);
    font-size:12px;
    font-weight:700;
    letter-spacing:-.01em;
    text-shadow:0 1px 2px rgba(0,0,0,.35);
}
.rw-hc-card-title{
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin:0;
    color:#fff;
    font-size:17px;
    font-weight:800;
    line-height:1.35;
    letter-spacing:-.03em;
    text-shadow:0 2px 8px rgba(0,0,0,.35);
}
.rw-hc-card-summary{ display:none; }

/* 호버 리프트 */
.rw-hc-card:hover{
    transform:translate3d(0,-8px,0);
    box-shadow:0 20px 40px rgba(15,23,42,.2);
    z-index:2;
}
.rw-hc-card:active{
    transform:translate3d(0,-3px,0);
}

/* 좌우 네비 — 카드 행 옆 flex 고정(absolute top 밀림 방지) */
.rw-hc-nav{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    flex:0 0 auto;
    align-self:center;
    z-index:6;
    width:44px;
    height:44px;
    margin:0;
    padding:0;
    border:1px solid rgba(0,0,0,.12);
    border-radius:50%;
    background:rgba(255,255,255,.96);
    color:#9ca3af;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    box-shadow:0 4px 14px rgba(15,23,42,.1);
    transition:background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.rw-hc-nav:hover{
    background:#fff;
    color:#2460FF;
    border-color:#C7D2FE;
    box-shadow:0 8px 20px rgba(36,96,255,.18);
}
.rw-hc-nav.is-disabled,
.rw-hc-nav:disabled{
    opacity:.35;
    pointer-events:none;
}

/* 전체 칼럼 보기 — 캐러셀 바로 아래 밀착 */
.rw-hc-more{
    margin-top:22px;
    text-align:center;
}
.rw-hc-more-link{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:11px 22px;
    border-radius:999px;
    border:1px solid #E5E7EB;
    background:#fff;
    color:#2460FF;
    font-size:14px;
    font-weight:700;
    text-decoration:none !important;
    transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.rw-hc-more-link:hover{
    border-color:#C7D2FE;
    box-shadow:0 6px 16px rgba(36,96,255,.12);
    transform:translateY(-1px);
}

/* 태블릿: 3장 */
@media (max-width:1099px){
    .rw-hc-section{ padding:28px 0 72px; }
    .rw-hc-section ~ .third-section-wrap{ padding-top:40px !important; }
    .rw-hc-title{ font-size:30px; }
    .rw-hc-card-title{ font-size:16px; }
    .rw-hc-slider-wrap{ gap:10px; }
    .rw-hc-nav{
        width:40px;
        height:40px;
    }
    .rw-hc-more{ margin-top:18px; }
}

/* 모바일: 2장 */
@media (max-width:699px){
    .rw-hc-section{ padding:24px 0 56px; }
    .rw-hc-section ~ .third-section-wrap{ padding-top:32px !important; }
    .rw-hc-inner{ padding:0 12px; }
    .rw-hc-title{ font-size:26px; }
    .rw-hc-desc{ font-size:13px; }
    .rw-hc-tabs{ margin-bottom:20px; }
    .rw-hc-tab{
        min-width:92px;
        height:38px;
        font-size:14px;
        padding:0 16px;
    }
    .rw-hc-slider-wrap{ gap:6px; }
    .rw-hc-swiper{ padding:12px 0 14px; }
    .rw-hc-card{ border-radius:14px; }
    .rw-hc-card-title{ font-size:14px; }
    .rw-hc-card-body{ padding:12px 10px 14px; }
    .rw-hc-nav{
        width:32px;
        height:32px;
    }
    .rw-hc-nav svg{
        width:16px;
        height:16px;
    }
    .rw-hc-more{ margin-top:16px; }
    .rw-hc-more-link{
        padding:10px 18px;
        font-size:13px;
    }
}
