/* ══════════════════════════════════════════════════════
   사회복지사 과정 랜딩 — social.css
   childcare.css (.cc-*) 베이스 위에 추가 컴포넌트
   ══════════════════════════════════════════════════════ */

/* ── 히어로 뱃지 파란 배경 ── */
.sw-hero__badge{
    background:var(--cc-blue);
}

/* ── 카드 타이틀 확대 + 리스트 센터블록 + 체크마크 ── */
.sw-cards--checks .cc-card__title{
    font-size:26px;
    margin-bottom:16px;
}
.sw-cards--checks .cc-card__list{
    display:inline-block;
    text-align:left;
}
.sw-cards--checks .cc-card__list li::before{
    content:'✔';
    width:auto;height:auto;
    border-radius:0;
    background:none;
    opacity:1;
    font-size:15px;
    color:var(--cc-text);
    top:6px;
}

/* ── 뱃지 센터 래퍼 ── */
.sw-pill-wrap{
    grid-column:1/-1;
    text-align:center;
    margin-bottom:8px;
}

/* ═══════════════════════════════════════════
   취업처 3열 이미지 그리드
   ═══════════════════════════════════════════ */
.sw-jobs{
    background:rgba(255,255,255,.93);
    border-radius:var(--cc-radius);
    padding:32px 28px 28px;
    box-shadow:0 2px 16px rgba(0,0,0,.06);
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-bottom:28px;
}
.sw-jobs__card{
    text-align:center;
}
.sw-jobs__img{
    width:100%;
    aspect-ratio:4/3;
    border-radius:10px;
    overflow:hidden;
    margin-bottom:12px;
    background:#eee;
}
.sw-jobs__img img{
    width:100%;height:100%;
    object-fit:cover;display:block;
}
.sw-jobs__label{
    font-size:16px;font-weight:700;
    color:var(--cc-text);
}
.sw-jobs__note{
    grid-column:1/-1;
    font-size:14px;color:var(--cc-light);
    text-align:center;
    margin:4px 0 0;
    line-height:1.6;
}

/* ═══════════════════════════════════════════
   창업 — 이미지 좌 + 리스트 우
   ═══════════════════════════════════════════ */
.sw-startup{
    display:flex;
    align-items:stretch;
    background:rgba(255,255,255,.93);
    border-radius:var(--cc-radius);
    overflow:hidden;
    box-shadow:0 2px 16px rgba(0,0,0,.06);
    margin:24px 0 32px;
}
.sw-startup__img{
    flex:0 0 55%;
    min-height:220px;
    background:#eee;
}
.sw-startup__img img{
    width:100%;height:100%;
    object-fit:cover;display:block;
}
.sw-startup__body{
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:28px 32px;
}
.sw-startup__badge{
    align-self:center;
    margin-bottom:18px;
}
.sw-startup__body,
.sw-startup__list{
    text-align:left;
}
.sw-startup__list{
    list-style:none;
    padding:0;margin:0;
}
.sw-startup__list li{
    font-size:17px;font-weight:600;
    color:var(--cc-text);
    padding:8px 0 8px 24px;
    position:relative;
    line-height:1.6;
}
.sw-startup__list li::before{
    content:'';
    position:absolute;left:0;top:16px;
    width:8px;height:8px;border-radius:50%;
    background:var(--cc-blue);
}

/* ═══════════════════════════════════════════
   추천 체크리스트
   ═══════════════════════════════════════════ */
.sw-recommend{
    background:rgba(255,255,255,.93);
    border-radius:var(--cc-radius);
    padding:36px 32px;
    box-shadow:0 2px 16px rgba(0,0,0,.06);
    text-align:center;
}
.sw-recommend__title{
    font-size:22px;font-weight:800;
    color:var(--cc-text);
    margin-bottom:24px;
}
.sw-recommend__accent{
    color:#e53e3e;
}
.sw-recommend__list{
    list-style:none;padding:0;margin:0;
    display:inline-flex;flex-direction:column;
    gap:14px;text-align:left;
}
.sw-recommend__item{
    display:flex;align-items:center;gap:12px;
    font-size:17px;font-weight:600;
    color:var(--cc-text);line-height:1.5;
}
.sw-recommend__check{
    flex-shrink:0;
    width:22px;height:22px;
    color:var(--cc-text);
}
.sw-recommend__check svg{
    width:100%;height:100%;
}

/* ═══════════════════════════════════════════
   하단 고정 상담신청 바
   ═══════════════════════════════════════════ */

/* 소셜 페이지에서는 플로팅 상담 버튼 숨김 */
.fab{display:none !important}

/* 하단 고정 바가 있으므로 body 하단 여백 확보 */
body{padding-bottom:80px}

.sw-sticky{
    position:fixed;
    bottom:0;left:0;right:0;
    z-index:900;
    background:rgba(15,23,42,.92);
    -webkit-backdrop-filter:blur(12px);
    backdrop-filter:blur(12px);
    padding:14px 0;
}
.sw-sticky__form{
    width:min(1100px, calc(100% - 32px));
    margin:0 auto;
}
.sw-sticky__inner{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:20px;
}
.sw-sticky__label{
    color:#fff;
    font-size:17px;
    font-weight:800;
    letter-spacing:-.3px;
    white-space:nowrap;
    flex-shrink:0;
}
.sw-sticky__fields{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
}
.sw-sticky__field{
    display:flex;
    align-items:center;
    gap:8px;
    flex-shrink:0;
}
.sw-sticky__field-label{
    color:rgba(255,255,255,.9);
    font-size:14px;
    font-weight:700;
    white-space:nowrap;
    flex-shrink:0;
}
.sw-sticky__input{
    width:180px;
    padding:11px 14px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(255,255,255,.95);
    color:#1e293b;
    font-size:15px;
    outline:none;
    box-sizing:border-box;
    transition:border-color .15s, box-shadow .15s;
    -webkit-appearance:none;
    appearance:none;
}
.sw-sticky__input:focus{
    border-color:#6b9fff;
    box-shadow:0 0 0 3px rgba(107,159,255,.3);
}
.sw-sticky__input::placeholder{color:#9ca3af}
.sw-sticky__agree{
    display:flex;
    align-items:center;
    gap:6px;
    color:rgba(255,255,255,.85);
    font-size:13px;
    font-weight:600;
    cursor:pointer;
    white-space:nowrap;
    flex-shrink:0;
}
.sw-sticky__agree input[type="checkbox"]{
    width:17px;height:17px;
    accent-color:#4a7ec7;
    cursor:pointer;
    flex-shrink:0;
}
.sw-sticky__submit{
    flex-shrink:0;
    padding:11px 32px;
    border:none;
    border-radius:8px;
    background:#4a7ec7;
    color:#fff;
    font-size:16px;
    font-weight:800;
    cursor:pointer;
    transition:background .15s, transform .1s;
    white-space:nowrap;
}
.sw-sticky__submit:hover{background:#5a8ed7}
.sw-sticky__submit:active{transform:scale(.97)}
.sw-sticky__submit:disabled{
    background:rgba(255,255,255,.15);
    color:rgba(255,255,255,.4);
    cursor:not-allowed;
}

/* ═══════════════════════════════════════════
   반응형
   ═══════════════════════════════════════════ */
@media(max-width:768px){
    .sw-jobs{
        grid-template-columns:repeat(3,1fr);
        gap:14px;
        padding:24px 18px 22px;
    }
    .sw-jobs__label{font-size:14px}
    .sw-jobs__note{font-size:13px}

    .sw-startup{
        flex-direction:column;
        margin:20px 0 28px;
    }
    .sw-startup__img{
        flex:none;
        height:200px;
        min-height:auto;
    }
    .sw-startup__body{
        padding:24px 24px;
    }
    .sw-startup__list li{font-size:16px}

    .sw-recommend{padding:28px 24px}
    .sw-recommend__title{font-size:20px}
    .sw-recommend__item{font-size:16px}
    .sw-recommend__check{width:20px;height:20px}

    /* 하단 고정 바 — 태블릿 */
    body{padding-bottom:130px}
    .sw-sticky{padding:12px 0}
    .sw-sticky__inner{
        flex-direction:column;
        gap:8px;
    }
    .sw-sticky__label{font-size:15px}
    .sw-sticky__fields{
        flex-wrap:wrap;
        gap:8px;
        width:100%;
    }
    .sw-sticky__field-label{display:none}
    .sw-sticky__field{
        flex:1 1 calc(50% - 4px);
    }
    .sw-sticky__input{
        width:100%;
    }
    .sw-sticky__agree{
        flex:0 0 auto;
    }
    .sw-sticky__submit{
        flex:1 1 auto;
        padding:11px 24px;
    }
}

@media(max-width:480px){
    .sw-jobs__label{font-size:13px}
    .sw-jobs__img{border-radius:8px}

    .sw-startup__img{height:180px}
    .sw-startup__body{padding:20px 20px}
    .sw-startup__list li{font-size:15px;padding:6px 0 6px 20px}
    .sw-startup__list li::before{width:6px;height:6px;top:14px}

    .sw-recommend__title{font-size:18px}
    .sw-recommend__item{font-size:15px;gap:10px}
    .sw-recommend__check{width:18px;height:18px}

    /* 하단 고정 바 — 모바일 */
    body{padding-bottom:130px}
    .sw-sticky__fields{gap:6px}
    .sw-sticky__field{flex:1 1 calc(50% - 3px)}
    .sw-sticky__input{padding:10px 12px;font-size:14px}
    .sw-sticky__agree{font-size:12px}
    .sw-sticky__submit{font-size:14px;padding:10px 20px}
}
