:root {
    /* 컬러 팔레트 정의 */
    --primary-orange: #f37321;
    --border-color: #e67e22;
    --text-gray: #555;
    --bg-light: #f9f9f9;
            
    /* 그라데이션 컬러 (상단/매뉴얼 공용) */
    --step-1: #ffb17a;
    --step-2: #ff9f43;
    --step-3: #ff7f00;
    --step-4: #d35400;
    --step-5: #b33608;
    /* 중간 행 헤더 색상 (그라데이션 느낌) */
    --mid-col-1: #ff9f43;
    --mid-col-2: #ff7f00;
    --mid-col-3: #d35400;
    --mid-col-4: #c0392b;

    /* 하단 바 색상 */
    --bottom-bar: #b33608;
}
.content{
    margin: 50px 0;
    padding-top: 50px;
    border-top: 1px solid #e5e7eb;
}
/* 공통 레이아웃 */
.card-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.card {
    flex: 1;
    background: #fff;
}

/* --- Level 1: 상단 카드 --- */
.top-card {
    border: 3px solid #dea966;
    border-radius: 10px;
    padding: 30px 20px;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 180px;
}

.top-card h2 {
    font-size: 20px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
    line-height: 1.4;
}

.top-card p {
    font-size: 1.6rem;
    color: var(--text-gray);
    line-height: 1.6;
}

/* --- 화살표 영역 --- */
.arrow-area {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 80px;
}

.arrow-down {
    width: 40px;
    height: 40px;
    border-right: 2px solid #ccc;
    border-bottom: 2px solid #ccc;
    transform: rotate(45deg);
    margin-top:-20px;
}

.arrow-down-2 {
    transform: rotate(225deg);
    margin-top: 20px;
}

/* --- Level 2: 중간 카드 --- */
.mid-card {
    border: 2px solid #dea966;
    border-radius: 8px;
    overflow: hidden;
    /* 헤더가 둥근 모서리를 넘지 않도록 */
    display: flex;
    flex-direction: column;
}

.mid-header {
    color: white;
    padding: 15px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}

/* 각 카드별 헤더 색상 지정 */
.mid-card:nth-child(1) .mid-header {
    background-color: var(--mid-col-1);
}

.mid-card:nth-child(2) .mid-header {
    background-color: var(--mid-col-2);
}

.mid-card:nth-child(3) .mid-header {
    background-color: var(--mid-col-3);
}

.mid-card:nth-child(4) .mid-header {
    background-color: var(--mid-col-4);
}

/* 테두리 색상도 헤더와 맞춤 */
.mid-card:nth-child(1) {
    border-color: var(--mid-col-1);
}

.mid-card:nth-child(2) {
    border-color: var(--mid-col-2);
}

.mid-card:nth-child(3) {
    border-color: var(--mid-col-3);
}

.mid-card:nth-child(4) {
    border-color: var(--mid-col-4);
}

.mid-body {
    padding: 20px;
    flex-grow: 1;
}

.mid-body ul {
    list-style: none;
}

.mid-body li {
    font-size: 1.6rem;
    color: var(--text-gray);
    margin-bottom: 8px;
    line-height: 1.5;
    position: relative;
    padding-left: 10px;
}

.mid-body li::before {
    content: "·";
    position: absolute;
    left: 0;
    font-weight: bold;
}

/* --- Level 3: 하단 바 --- */
.bottom-bar {
    background-color: var(--bottom-bar);
    color: white;
    text-align: center;
    padding: 25px;
    font-size: 20px;
    font-weight: 700;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

/* 반응형 (모바일) */
@media (max-width: 768px) {
    .card-row {
        flex-direction: column;
    }

    .mid-card {
        min-height: auto;
    }
}

 /* =========================================
           SECTION 2: 콜센터 운영, 매뉴얼
           ========================================= */
           .manual-list {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .manual-item {
            display: flex;
            border: 2px solid #ddd;
            border-radius: 8px;
            overflow: hidden;
            min-height: 120px;
        }

        .manual-left {
            width: 30%;
            display: flex;
            align-items: center;
            padding: 0 20px;
            color: white;
        }

        .step-num {
            background: rgba(255, 255, 255, 0.3);
            border-radius: 50%;
            width: 24px;
            height: 24px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
            margin-right: 10px;
            font-size: 1.8rem;
            flex-shrink: 0;
        }

        .manual-title {
            font-weight: 700;
            font-size: 1.8rem;
            line-height: 1.4;
        }

        .manual-right {
            width: 70%;
            padding: 15px 20px;
            display: flex;
            align-items: center;
            background: #fff;
        }

        .manual-right ul {
            list-style: none;
        }

        .manual-right li {
            font-size: 1.8rem;
            color: #444;
            margin-bottom: 4px;
            padding-left: 10px;
            position: relative;
        }

        .manual-right li::before {
            content: "·";
            position: absolute;
            left: 0;
            font-weight: bold;
            color: #888;
        }

        /* 매뉴얼 배경색 지정 (점점 진하게) */
        .manual-item:nth-child(1) .manual-left {
            background-color: var(--step-1);
        }
        .manual-item:nth-child(1){
            border-color: var(--step-1);
        }
        .manual-item:nth-child(2) .manual-left {
            background-color: var(--step-2);
        }
        .manual-item:nth-child(2){
            border-color: var(--step-2);
        }

        .manual-item:nth-child(3) .manual-left {
            background-color: var(--step-3);
        }
        .manual-item:nth-child(3){
            border-color: var(--step-3);
        }

        .manual-item:nth-child(4) .manual-left {
            background-color: var(--step-4);
        }
        .manual-item:nth-child(4){
            border-color: var(--step-4);
        }

        .manual-item:nth-child(5) .manual-left {
            background-color: var(--step-5);
        }
        .manual-item:nth-child(5){
            border-color: var(--step-5);
        }


        /* =========================================
           SECTION 3: 교육과정
           ========================================= */
        .curriculum-table-wrap{
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            border: 1px solid #e6e6e6;
            border-radius: 8px;
            font-size: 1.6rem;
            margin-bottom: 50px;
         }
        .curriculum-table {
            width: 100%;
            min-width: 500px;
            border-collapse: collapse;
            table-layout: fixed;
        }

   
        .curriculum-table caption { position: absolute; left: -9999px; }
        .curriculum-table thead th {
          position: sticky; top: 0; z-index: 1;
          background: #f7f7f8; color: #111; text-align: center;
          font-weight: 700; padding: 14px 16px; border-bottom: 1px solid #e6e6e6;
          border-left: 1px solid #e6e6e6;
        }
        .curriculum-table td:first-child,
        .curriculum-table thead th:first-child {  
          border-left: 0;}
        .curriculum-table td {
          vertical-align: top;
          padding: 14px 16px;
          border-bottom: 1px solid #e6e6e6;
          word-break: keep-all;
          border-left: 1px solid #e6e6e6;
          text-align: center;
        }
        .curriculum-table thead tr:last-child th:first-child{
          border-left:0;
        }
        .curriculum-table tbody tr:nth-child(even) { background: var(--rowAlt); }
        .curriculum-table tbody tr:hover { background: #f2f7ff; }
        .curriculum-table td:first-child {  font-weight: 600;    text-align: center;
            vertical-align: middle;
            border-left: 0; color: #111;}
        .curriculum-table td:nth-child(2) { text-align: left;
            vertical-align: middle;color: #111; }
            .curriculum-table tr:last-child td{border-bottom: 0;}

            
        .col-week {
            width: 30%;
            text-align: center;
            background-color: #fff;
            font-weight: 700;
            color: #333;
        }

        .week-num {
            display: block;
            font-size: 1.6rem;
            margin-bottom: 5px;
            color: #000;
        }

        .week-title {
            display: block;
            font-size: 1.6rem;
            color: #666;
            font-weight: normal;
        }

        .col-content ul {
            list-style: none;
        }

        .col-content li {
            margin-bottom: 4px;
            padding-left: 10px;
            position: relative;
            color: #555;
            font-size: 1.6rem;
        }

        .col-content li::before {
            content: "·";
            position: absolute;
            left: 0;
            color: #999;
        }

        /* 반응형 */
        @media (max-width: 768px) {
            .process-section .row {
                flex-direction: column;
            }

            .manual-item {
                flex-direction: column;
            }

            .manual-left {
                width: 100%;
                padding: 15px;
            }

            .manual-right {
                width: 100%;
            }

            .curriculum-table th,
            .curriculum-table td {
                padding: 10px;
            }

            .col-week {
                width: 35%;
            }
        }