@charset "utf-8";
/* Generated by scripts/build_sub_modules.py from sub.css. Do not edit. */

/* streaming_dev 핵심 역량 */
.streaming-core-capability { padding:110px 0 140px; }
.streaming-core-capability.bg { background:#fff; }
.streaming-core-capability .subTitle .txtbox { margin-top:18px; }
.streaming-core-capability .listbox { margin-top:50px; }
.streaming-core-capability .listbox > ul { display:flex; flex-wrap:wrap; gap:20px; }
.streaming-core-capability .listbox > ul > li { width:calc((100% - 20px) / 2); }
.streaming-core-capability .listbox > ul > li .box {
    height:100%;
    border:1px solid #e2e8f0;
    border-radius:14px;
    background:#fff;
    padding:34px 34px 30px;
}
.streaming-core-capability .listbox > ul > li .box-head { display:flex; align-items:flex-start; justify-content:space-between; }
.streaming-core-capability .listbox > ul > li .icon {
    width:84px;
    height:84px;
    border-radius: 50%;
    background:#f9f9f9;
    display:flex;
    align-items:center;
    justify-content:center;
}
.streaming-core-capability .listbox > ul > li .icon img { width:40px; }
.streaming-core-capability .listbox > ul > li .num {
    color:#cad5e3;
    font-family:var(--mainFont);
    font-size:44px;
    font-weight:600;
    line-height:1;
}
.streaming-core-capability .listbox > ul > li dt {
    margin-top:18px;
    font-size:28px;
    font-weight:700;
    line-height:1.35;
    color:#1f2937;
    letter-spacing:-0.02em;
}
.streaming-core-capability .listbox > ul > li dd {
    margin-top:16px;
    font-size:18px;
    font-weight:400;
    line-height:1.6;
    color:#475569;
    letter-spacing:-0.02em;
}
.streaming-core-capability .listbox > ul > li .msp-chip-list {
    margin-top:18px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.streaming-core-capability .listbox > ul > li .msp-chip-list span {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:7px 14px;
    border-radius:999px;
    background:#f1f3f5;
    color:#4b5563;
    font-size:14px;
    font-weight:500;
    line-height:1;
    letter-spacing:-0.01em;
}
.streaming-core-capability .listbox > ul > li .feature-check { margin-top:18px; padding-top:16px; border-top:1px solid #e5e7eb; display:flex; flex-direction:column; gap:8px; }
.streaming-core-capability .listbox > ul > li .feature-check li { display:flex; align-items:center; gap:8px; font-size:16px; font-weight:400; line-height:1.65; color:#334155; }
.streaming-core-capability .listbox > ul > li .chk-icon { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; margin-top:1px; }
.streaming-core-capability .listbox > ul > li .chk-icon svg { width:20px; height:20px; color:#9f9f9f; }

.streaming-core-capability .feature-list { display:flex; flex-direction:column; gap:130px; }
.streaming-core-capability .feature-list { margin-top:46px; }
.streaming-core-capability .feature-item { display:flex; align-items:center; gap:60px; }
.streaming-core-capability .feature-item.reverse { flex-direction:row-reverse; }
.streaming-core-capability .feature-text { width:48%; }
.streaming-core-capability .feature-num {
    font-size:36px;
    font-weight:700;
    color:var(--mainColor);
    letter-spacing:-0.03em;
    line-height:1.1;
}
.streaming-core-capability .feature-num + .feature-tit { margin-top:10px; }
.streaming-core-capability .feature-tit {
    font-size:36px;
    font-weight:700;
    color:#1f2937;
    line-height:1.35;
    letter-spacing:-0.02em;
}
.streaming-core-capability .feature-tit .feature-sub { font-weight:500; color:#475569; }

/* streaming-value-maximize: 넘버링 18px, 타이틀 두줄 36px 볼드 */
.streaming-value-maximize .feature-num { font-size:18px; }
.streaming-value-maximize .feature-tit,
.streaming-value-maximize .feature-tit .feature-sub { font-size:36px; font-weight:700; color:#1f2937; }
.streaming-core-capability .feature-desc {
    margin-top:20px;
    font-size:18px;
    line-height:1.7;
    color:#475569;
    letter-spacing:-0.02em;
}
.streaming-core-capability .feature-check {
    margin-top:22px;
    display:flex;
    flex-direction:column;
    gap:10px;
}
.streaming-core-capability .feature-check li {
    display:flex;
    align-items:flex-start;
    gap:8px;
    font-size:17px;
    color:#334155;
    line-height:1.6;
}
.streaming-core-capability .feature-check .chk-icon { margin-top:2px; color:#9f9f9f; }
.streaming-core-capability .feature-check .chk-icon svg { width:20px; height:20px; }
.streaming-core-capability .feature-img { width:52%; }
.streaming-core-capability .img-placeholder {
    border-radius:18px;
    border:1px solid #dbe5f1;
    overflow:hidden;
    background:#fff;
}
.streaming-core-capability .img-placeholder img { width:100%; height:auto; display:block; }

.streaming-core-capability .arch-graphic {
    border:1px solid #dbe5f1;
    border-radius:18px;
    background:#f7f7f7;
    padding:32px 24px;
}
.streaming-core-capability .arch-graphic h4,
.streaming-core-capability .arch-graphic h5 {
    font-family:var(--mainFont);
    font-size:19px;
    font-weight:700;
    color:#1e293b;
    line-height:1.3;
    text-align:center;
}
.streaming-core-capability .arch-graphic .flow-track,
.streaming-core-capability .arch-graphic .infra-top,
.streaming-core-capability .arch-graphic .infra-bottom {
    margin-top:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}
.streaming-core-capability .arch-graphic .node {
    width:132px;
    min-height:96px;
    padding:12px 10px;
    border:1px solid #d4deea;
    border-radius:10px;
    background:#fff;
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;
}
.streaming-core-capability .arch-graphic .node strong {
    font-size:17px;
    font-weight:700;
    color:#1e293b;
    line-height:1.3;
}
.streaming-core-capability .arch-graphic .node p {
    margin-top:6px;
    font-size:14px;
    color:#64748b;
    line-height:1.4;
}
.streaming-core-capability .arch-graphic .node.emphasize {
    border-color:rgba(5, 105, 255, 0.4);
    box-shadow:0 10px 24px rgba(5, 105, 255, 0.12);
}
.streaming-core-capability .arch-graphic .node.emphasize p {
    color:var(--mainColor);
    font-weight:600;
}
.streaming-core-capability .arch-graphic .arrow {
    font-size:22px;
    font-weight:700;
    color:#8ba2bd;
    line-height:1;
}

/* flexibility-graphic: use-case-cards (아이콘+라벨, 화살표·강조 없음) */
.streaming-core-capability .flexibility-graphic.use-case-cards {
    padding:28px 20px;
}

/* streaming-hub-cards: 스트리밍 허브 → 점선 → use-case 카드들 */
.streaming-core-capability .flexibility-graphic.streaming-hub-cards {
    display:flex;
    flex-direction:column;
}
.streaming-core-capability .flexibility-graphic .streaming-hub-wrap {
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:center;
    min-height:80px;
    margin-bottom:8px;
}
.streaming-core-capability .flexibility-graphic .streaming-hub-wrap .flow-hub {
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
    padding:10px 24px;
    background:#fff;
    border:1px solid var(--mainColor);
    border-radius:10px;
    font-weight:500;
    font-size:14px;
    color:var(--mainColor);
}
.streaming-core-capability .flexibility-graphic .streaming-hub-wrap .flow-hub svg {
    width:28px;
    height:28px;
}
.streaming-core-capability .flexibility-graphic .streaming-hub-wrap .hub-to-cards-lines {
    position:absolute;
    top:20px;
    left:50%;
    transform:translateX(-50%);
    width:100%;
    height:70px;
    pointer-events:none;
}
.streaming-core-capability .flexibility-graphic .streaming-hub-wrap .hub-to-cards-lines .flow-line {
    animation:flowDash 12s linear infinite;
}
@keyframes flowDash {
    to { stroke-dashoffset: -24; }
}

.streaming-core-capability .flexibility-graphic.use-case-cards .use-case-list {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:20px 48px;
    z-index:1;
}
.streaming-core-capability .flexibility-graphic.use-case-cards .use-case-item {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
}
.streaming-core-capability .flexibility-graphic.use-case-cards .use-case-icon {
    width:52px;
    height:52px;
    background:#fff;
    border:1px solid #d4deea;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.streaming-core-capability .flexibility-graphic.use-case-cards .use-case-icon svg {
    width:26px;
    height:26px;
    color:#64748b;
}
.streaming-core-capability .flexibility-graphic.use-case-cards .use-case-label {
    font-size:14px;
    font-weight:500;
    color:#475569;
}

.streaming-core-capability .infra-graphic .infra-mid {
    margin:20px auto 0;
    text-align:center;
}
.streaming-core-capability .infra-graphic .infra-mid span {
    display:inline-block;
    padding:10px 20px;
    border-radius:30px;
    background:rgba(5, 105, 255, 0.12);
    color:#1d4ed8;
    font-size:14px;
    font-weight:600;
}

/* streaming-value-maximize: 카드 동일 높이 (고정) */
.streaming-value-maximize .arch-graphic {
    height:400px;
    min-height:280px;
    display:flex;
    flex-direction:column;
    justify-content: center;
}

/* infra-control-graphic: 허브·스포크 (stream01 참조) */
.streaming-core-capability .infra-control-graphic .infra-control-hub {
    position:relative;
    width:100%;
    aspect-ratio:1;
    max-width:340px;
    margin-left:auto;
    margin-right:auto;
}
.streaming-core-capability .infra-control-graphic .hub-lines {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    pointer-events:none;
}
.streaming-core-capability .infra-control-graphic .hub-node {
    position:absolute;
    display:flex;
    flex-direction:column;
    align-items:center;
    box-sizing:border-box;
}
.streaming-core-capability .infra-control-graphic .hub-node.hub-pos {
    width:auto;
    height:auto;
    background:transparent;
    border:none;
}
.streaming-core-capability .infra-control-graphic .hub-node.hub-pos .hub-node-box {
    width:56px;
    height:56px;
    background:#fff;
    border:2px solid #d4deea;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.streaming-core-capability .infra-control-graphic .hub-node.hub-pos span {
    display:block;
    margin-top:6px;
    font-size:14px;
    font-weight:500;
    color:#64748b;
    text-align:center;
    white-space:nowrap;
}
.streaming-core-capability .infra-control-graphic .hub-node svg {
    width:24px;
    height:24px;
    color:#64748b;
}
.streaming-core-capability .infra-control-graphic .hub-node.hub-pos .hub-node-box svg {
    width:24px;
    height:24px;
}
.streaming-core-capability .infra-control-graphic .hub-center {
    position:absolute;
    top:37%;
    left:37%;
    transform:translate(-50%, -50%);
}
.streaming-core-capability .infra-control-graphic .hub-main {
    width:90px;
    height:90px;
    background:#fff;
    border:1px solid var(--mainColor);
    border-radius:10px;
    justify-content:center;
}
.streaming-core-capability .infra-control-graphic .hub-main svg {
    width:32px;
    height:32px;
    color:var(--mainColor);
}
.streaming-core-capability .infra-control-graphic .hub-main span {
    display:block;
    margin-top:4px;
    font-size:14px;
    font-weight:600;
    color:var(--mainColor);
}
.streaming-core-capability .infra-control-graphic .hub-main {
    flex-direction:column;
}
.streaming-core-capability .infra-control-graphic .hub-accent .hub-node-box {
    border-color:rgba(5, 105, 255, 0.5);
}
.streaming-core-capability .infra-control-graphic .hub-accent .hub-node-box svg {
    color:var(--mainColor);
}
.streaming-core-capability .infra-control-graphic .hub-tl { top:12%; left:8%; }
.streaming-core-capability .infra-control-graphic .hub-tr { top:12%; right:8%; left:auto; }
.streaming-core-capability .infra-control-graphic .hub-tc { top:2%; left:50%; transform:translateX(-50%); }
.streaming-core-capability .infra-control-graphic .hub-bl { bottom:12%; left:8%; top:auto; }
.streaming-core-capability .infra-control-graphic .hub-br { bottom:12%; right:8%; left:auto; top:auto; }
.streaming-core-capability .infra-control-graphic .hub-bc { bottom:2%; left:50%; transform:translateX(-50%); top:auto; }

/* flexibility-flow-graphic: 소스 → 스크린 (사례만 표시) */
.streaming-core-capability .flexibility-flow-graphic .flex-flow-wrap {
    margin-top:0;
    padding:24px 0;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    width:100%;
    max-width:320px;
    margin-left:auto;
    margin-right:auto;
}
.streaming-core-capability .flexibility-flow-graphic .flex-arrow {
    font-size:24px;
    font-weight:700;
    color:#8ba2bd;
    flex-shrink:0;
}
.streaming-core-capability .flexibility-flow-graphic .flex-sources,
.streaming-core-capability .flexibility-flow-graphic .flex-screens {
    display:flex;
    flex-direction:column;
    gap:16px;
}
.streaming-core-capability .flexibility-flow-graphic .flex-node {
    display:flex;
    flex-direction:column;
    align-items:center;
}
.streaming-core-capability .flexibility-flow-graphic .flex-node-box {
    width:48px;
    height:48px;
    background:#fff;
    border:2px solid #d4deea;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.streaming-core-capability .flexibility-flow-graphic .flex-node-box svg {
    width:22px;
    height:22px;
    color:#64748b;
}
.streaming-core-capability .flexibility-flow-graphic .flex-node span {
    display:block;
    margin-top:6px;
    font-size:11px;
    font-weight:500;
    color:#64748b;
    text-align:center;
}

/* opt-streaming-graphic (legacy - 다른 페이지용) */
.streaming-core-capability .opt-streaming-graphic .opt-streaming-stack {
    margin-top:24px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:8px;
}
.streaming-core-capability .opt-streaming-graphic .opt-node {
    width:100%;
    max-width:200px;
    padding:14px 16px;
    border:1px solid #d4deea;
    border-radius:10px;
    background:#fff;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.streaming-core-capability .opt-streaming-graphic .opt-node strong {
    font-size:16px;
    font-weight:700;
    color:#1e293b;
    line-height:1.3;
}
.streaming-core-capability .opt-streaming-graphic .opt-node p {
    margin-top:4px;
    font-size:13px;
    color:#64748b;
}
.streaming-core-capability .opt-streaming-graphic .opt-node.emphasize {
    border-color:rgba(5, 105, 255, 0.4);
    box-shadow:0 10px 24px rgba(5, 105, 255, 0.12);
}
.streaming-core-capability .opt-streaming-graphic .opt-node.emphasize p {
    color:var(--mainColor);
    font-weight:600;
}
.streaming-core-capability .opt-streaming-graphic .opt-arrow {
    font-size:20px;
    font-weight:700;
    color:#8ba2bd;
    line-height:1;
}

@media screen and (max-width:1024px){
    .streaming-core-capability { padding:90px 0 30px; }
    .streaming-core-capability .listbox { margin-top:40px; }
    .streaming-core-capability .listbox > ul { gap:15px; }
    .streaming-core-capability .listbox > ul > li { width:calc((100% - 15px) / 2); }
    .streaming-core-capability .listbox > ul > li .box { padding:26px 24px 24px; }
    .streaming-core-capability .listbox > ul > li .icon { width:74px; height:74px; }
    .streaming-core-capability .listbox > ul > li .icon img { width:36px; }
    .streaming-core-capability .listbox > ul > li dt { margin-top:16px; font-size:24px; }
    .streaming-core-capability .listbox > ul > li dd { margin-top:12px; font-size:16px; }
    .streaming-core-capability .listbox > ul > li .num { font-size:36px; }
    .streaming-core-capability .listbox > ul > li .feature-check { margin-top:14px; }
    .streaming-core-capability .listbox > ul > li .feature-check li { font-size:15px; }
    .streaming-core-capability .listbox > ul > li .chk-icon svg { width:18px; height:18px; }

    .streaming-core-capability .feature-list { margin-top:44px; gap:70px; }
    .streaming-core-capability .feature-item,
    .streaming-core-capability .feature-item.reverse { flex-direction:column; gap:28px; }
    .streaming-core-capability .feature-text,
    .streaming-core-capability .feature-img { width:100%; }
    .streaming-core-capability .feature-tit { font-size:30px; }
    .streaming-value-maximize .feature-num { font-size:16px; }
    .streaming-value-maximize .feature-tit,
    .streaming-value-maximize .feature-tit .feature-sub { font-size:28px; font-weight:700; }
    .streaming-core-capability .feature-desc { margin-top:14px; font-size:16px; }
    .streaming-core-capability .feature-check li { font-size:15px; }
    .streaming-core-capability .arch-graphic h4,
    .streaming-core-capability .arch-graphic h5 { font-size:22px; }
    .streaming-core-capability .arch-graphic .node { width:120px; min-height:90px; }
    .streaming-core-capability .arch-graphic .node strong { font-size:15px; }
    .streaming-core-capability .arch-graphic .node p { font-size:13px; }
}
@media screen and (max-width:768px){
    .streaming-core-capability .listbox > ul > li { width:100%; }
}
@media screen and (max-width:640px){
    .streaming-core-capability { padding:70px 0 20px; }
    .streaming-core-capability .subTitle .txtbox { margin-top:12px; }
    .streaming-core-capability .listbox { margin-top:30px; }
    .streaming-core-capability .listbox > ul { gap:10px; }
    .streaming-core-capability .listbox > ul > li .box { padding:20px 16px 18px; border-radius:10px; }
    .streaming-core-capability .listbox > ul > li .icon { width:62px; height:62px; }
    .streaming-core-capability .listbox > ul > li .icon img { width:30px; }
    .streaming-core-capability .listbox > ul > li .num { font-size:30px; }
    .streaming-core-capability .listbox > ul > li dt { margin-top:12px; font-size:18px; }
    .streaming-core-capability .listbox > ul > li dd { margin-top:10px; font-size:14px; }
    .streaming-core-capability .listbox > ul > li .feature-check { margin-top:12px; gap:6px; }
    .streaming-core-capability .listbox > ul > li .feature-check li { font-size:13px; }
    .streaming-core-capability .listbox > ul > li .chk-icon svg { width:16px; height:16px; }

    .streaming-core-capability .feature-list { margin-top:30px; gap:50px; }
    .streaming-core-capability .feature-tit { font-size:24px; }
    .streaming-value-maximize .feature-num { font-size:14px; }
    .streaming-value-maximize .feature-tit,
    .streaming-value-maximize .feature-tit .feature-sub { font-size:22px; font-weight:700; }
    .streaming-core-capability .feature-desc { margin-top:10px; font-size:14px; line-height:1.6; }
    .streaming-core-capability .feature-check { margin-top:16px; }
    .streaming-core-capability .feature-check li { font-size:13px; line-height:1.5; }
    .streaming-core-capability .arch-graphic { border-radius:12px; padding:24px 14px; }
    .streaming-value-maximize .arch-graphic { height:auto; min-height:auto; }
    .streaming-core-capability .arch-graphic h4,
    .streaming-core-capability .arch-graphic h5 { font-size:16px; }
    .streaming-core-capability .infra-control-graphic .infra-control-hub { max-width:260px; }
    .streaming-core-capability .infra-control-graphic .hub-node.hub-pos .hub-node-box { width:48px; height:48px; }
    .streaming-core-capability .infra-control-graphic .hub-node.hub-pos .hub-node-box svg { width:20px; height:20px; }
    .streaming-core-capability .infra-control-graphic .hub-node.hub-pos span { font-size:10px; }
    .streaming-core-capability .infra-control-graphic .hub-main { width:60px; height:60px; }
    .streaming-core-capability .infra-control-graphic .hub-main svg { width:26px; height:26px; }
    .streaming-core-capability .flexibility-flow-graphic .flex-flow-wrap { flex-direction:column; gap:16px; padding:16px 0; }
    .streaming-core-capability .flexibility-flow-graphic .flex-arrow { transform:rotate(90deg); }
    .streaming-core-capability .flexibility-flow-graphic .flex-sources,
    .streaming-core-capability .flexibility-flow-graphic .flex-screens { flex-direction:row; justify-content:center; gap:12px; }
    .streaming-core-capability .flexibility-flow-graphic .flex-node-box { width:44px; height:44px; }
    .streaming-core-capability .flexibility-flow-graphic .flex-node-box svg { width:18px; height:18px; }
    .streaming-core-capability .flexibility-flow-graphic .flex-node span { font-size:10px; }
    .streaming-core-capability .flexibility-graphic.use-case-cards { padding:20px 12px; }
    .streaming-core-capability .flexibility-graphic.use-case-cards .use-case-list { gap:16px 20px; }
    .streaming-core-capability .flexibility-graphic.use-case-cards .use-case-icon { width:44px; height:44px; }
    .streaming-core-capability .flexibility-graphic.use-case-cards .use-case-icon svg { width:22px; height:22px; }
    .streaming-core-capability .flexibility-graphic.use-case-cards .use-case-label { font-size:12px; }
    .streaming-core-capability .flexibility-graphic .streaming-hub-wrap { min-height:80px; margin-bottom:4px; }
    .streaming-core-capability .flexibility-graphic .streaming-hub-wrap .flow-hub { padding:8px 18px; font-size:12px; }
    .streaming-core-capability .flexibility-graphic .streaming-hub-wrap .hub-to-cards-lines { top:42px; height:50px; }
    .streaming-core-capability .arch-graphic .flow-track,
    .streaming-core-capability .arch-graphic .infra-top,
    .streaming-core-capability .arch-graphic .infra-bottom { margin-top:20px; gap:6px; }
    .streaming-core-capability .arch-graphic .node {
        width:calc(50% - 6px);
        min-height:80px;
        border-radius:8px;
        padding:10px 8px;
    }
    .streaming-core-capability .arch-graphic .node strong { font-size:13px; }
    .streaming-core-capability .arch-graphic .node p { margin-top:4px; font-size:12px; }
    .streaming-core-capability .arch-graphic .arrow { font-size:16px; }
    .streaming-core-capability .arch-graphic .flow-track .arrow {
        width:100%;
        display:block;
        text-align:center;
        font-size:0;
        line-height:1;
    }
    .streaming-core-capability .arch-graphic .flow-track .arrow:before {
        content:"↓";
        font-size:18px;
        font-weight:700;
        color:#8ba2bd;
    }
    .streaming-core-capability .infra-graphic .infra-top .arrow {
        width:100%;
        display:block;
        text-align:center;
        font-size:0;
        line-height:1;
    }
    .streaming-core-capability .infra-graphic .infra-top .arrow:before {
        content:"↓";
        font-size:18px;
        font-weight:700;
        color:#8ba2bd;
    }
    .streaming-core-capability .infra-graphic .infra-bottom .arrow {
        width:100%;
        display:block;
        text-align:center;
        font-size:0;
        line-height:1;
    }
    .streaming-core-capability .infra-graphic .infra-bottom .arrow:before {
        content:"↕";
        font-size:18px;
        font-weight:700;
        color:#8ba2bd;
    }
    .streaming-core-capability .infra-graphic .infra-mid { margin-top:14px; }
    .streaming-core-capability .infra-graphic .infra-mid span { padding:7px 12px; font-size:12px; }
}

/* animation */
.streaming-core-capability .listbox > ul > li { opacity:0; }
.streaming-core-capability.subOn .listbox > ul > li:nth-child(1) { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.streaming-core-capability.subOn .listbox > ul > li:nth-child(2) { animation:ani_4 0.8s 0.4s; animation-fill-mode:both; }
.streaming-core-capability.subOn .listbox > ul > li:nth-child(3) { animation:ani_4 0.8s 0.6s; animation-fill-mode:both; }
.streaming-core-capability.subOn .listbox > ul > li:nth-child(4) { animation:ani_4 0.8s 0.8s; animation-fill-mode:both; }
.cloud-managed-strength.subOn .listbox > ul > li:nth-child(5) { animation:ani_4 0.8s 1.0s; animation-fill-mode:both; }
.cloud-managed-strength.subOn .listbox > ul > li:nth-child(6) { animation:ani_4 0.8s 1.2s; animation-fill-mode:both; }
/* Managed cloud cards: 3 columns on desktop, 2 on tablet, 1 on mobile. */
.cloud-managed-strength .listbox > ul > li { width:calc((100% - 40px) / 3); }
@media screen and (max-width:1024px){
    .cloud-managed-strength .listbox > ul > li { width:calc((100% - 15px) / 2); }
}
@media screen and (max-width:640px){
    .cloud-managed-strength .listbox > ul > li { width:100%; }
}

/* WAF 기능 섹션 (cloudflare_security.php) */
.waf-feature-section { padding:120px 0 140px; background:#fff; }
.waf-feature-section .subTitle .txtbox { margin-top:12px; font-size:17px; color:#666; line-height:1.5; }
.waf-feature-section .waf-feature-list { margin-top:50px; }
.waf-feature-section .waf-feature-list > ul {
    display:flex;
    flex-wrap:wrap;
    gap:20px;
}
.waf-feature-section .waf-feature-list > ul > li {
    width:calc((100% - 40px) / 3);
}
.waf-feature-section .waf-feature-list .box {
    height:100%;
    padding:28px 26px 24px;
    border:1px solid #e2e8f0;
    border-radius:14px;
    background:#fff;
    display:flex;
    flex-direction:column;
}
.waf-feature-section .waf-feature-list .box dt {
    font-size:20px;
    font-weight:700;
    color:#1e293b;
    line-height:1.35;
    letter-spacing:-0.02em;
}
.waf-feature-section .waf-feature-list .box dd {
    margin-top:12px;
    font-size:15px;
    font-weight:400;
    color:#64748b;
    line-height:1.65;
    letter-spacing:-0.01em;
    flex:1;
}
.waf-feature-section .waf-feature-list .waf-tags {
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid #e5e7eb;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.waf-feature-section .waf-feature-list .waf-tags span {
    display:inline-block;
    padding:6px 12px;
    font-size:13px;
    font-weight:600;
    color:var(--mainColor);
    background:rgba(5, 105, 255, 0.08);
    border-radius:6px;
}
.waf-feature-section .waf-feature-list > ul > li { opacity:0; }
.waf-feature-section.subOn .waf-feature-list > ul > li:nth-child(1) { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.waf-feature-section.subOn .waf-feature-list > ul > li:nth-child(2) { animation:ani_4 0.8s 0.35s; animation-fill-mode:both; }
.waf-feature-section.subOn .waf-feature-list > ul > li:nth-child(3) { animation:ani_4 0.8s 0.5s; animation-fill-mode:both; }
.waf-feature-section.subOn .waf-feature-list > ul > li:nth-child(4) { animation:ani_4 0.8s 0.65s; animation-fill-mode:both; }
.waf-feature-section.subOn .waf-feature-list > ul > li:nth-child(5) { animation:ani_4 0.8s 0.8s; animation-fill-mode:both; }
.waf-feature-section.subOn .waf-feature-list > ul > li:nth-child(6) { animation:ani_4 0.8s 0.95s; animation-fill-mode:both; }
/* 스마트 라우팅 활용 시나리오 (cloudflare_smartrouting.php) */
.routing-scenario-section .waf-feature-list > ul > li { width:calc((100% - 20px) / 2); }
.routing-scenario-section .waf-feature-list .scenario-icon {
    width:48px; height:48px; margin-bottom:16px;
    display:flex; align-items:center; justify-content:center;
}
.routing-scenario-section .waf-feature-list .scenario-icon img {
    width:32px; height:32px; object-fit:contain;
}
.routing-scenario-section .waf-tags span { background:var(--mainColor); color:#fff; border-color:var(--mainColor); }
@media screen and (max-width:1024px){
    .waf-feature-section { padding:100px 0 120px; }
    .waf-feature-section .waf-feature-list > ul > li { width:calc((100% - 20px) / 2); }
}
@media screen and (max-width:768px){
    .waf-feature-section { padding:80px 0 100px; }
    .waf-feature-section .waf-feature-list { margin-top:40px; }
    .waf-feature-section .waf-feature-list > ul > li { width:100%; }
    .waf-feature-section .waf-feature-list .box { padding:24px 22px 20px; }
    .waf-feature-section .waf-feature-list .box dt { font-size:18px; }
    .waf-feature-section .waf-feature-list .box dd { font-size:14px; }
}
@media screen and (max-width:640px){
    .waf-feature-section { padding:60px 0 80px; }
    .waf-feature-section .subTitle .txtbox { font-size:15px; }
    .waf-feature-section .waf-feature-list .waf-tags span { font-size:12px; padding:5px 10px; }
}

/* DDoS/WAF 서비스 플랜 (cloudflare_security.php) - waf_service.php UI 동일 적용 */
.ddos-waf-plan.product-list { padding:120px 0 140px; }
.ddos-waf-plan .subTitle .txtbox { margin-top:12px; font-size:17px; color:#666; }
.ddos-waf-plan .listbox .subtxt strong { color:var(--mainColor) !important; }
.ddos-waf-plan .listbox > ul > li .list li .plan-x,
.routing-plan .listbox > ul > li .list li .plan-x {
	display:inline-block;
	min-width:1em;
	margin-right:6px;
	font-weight:700;
	font-size:1.05em;
	line-height:1;
	color:#b8c0cc;
	vertical-align:0.05em;
}

/* 스마트 라우팅 서비스 플랜 (cloudflare_smartrouting.php) */
.routing-plan.product-list { padding:120px 0 140px; }
.routing-plan .subTitle .txtbox { margin-top:12px; font-size:17px; color:#666; }
.routing-plan .listbox .subtxt strong { color:var(--mainColor) !important; }
.routing-plan .listbox > ul > li {
    display:flex;
    flex-direction:column;
    min-height:480px;
    border:1px solid #e2e8f0;
    border-radius:20px;
    background:#fff;
    padding:40px 30px 40px 30px;
}
.routing-plan .listbox > ul > li .list { flex:1; }
.routing-plan .listbox > ul > li .hint { margin-top:12px; margin-bottom:0; }
.routing-plan .listbox > ul > li .btn-gr { margin-top:12px; }
/* CDN 서비스 플랜 (3열 — inner 가로 풀) */
.cdn-plan.product-list { padding:120px 0 140px; }
.cdn-plan .subTitle .txtbox { margin-top:12px; font-size:17px; color:#666; }
.cdn-plan .listbox .subtxt strong { color:var(--mainColor) !important; }
.cdn-plan .listbox > ul {
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:20px;
	width:100%;
}
.cdn-plan .listbox > ul > li { width:auto; min-width:0; display:flex; flex-direction:column; min-height:480px; }
.cdn-plan .listbox > ul > li .list { flex:1; }
.cdn-plan .listbox > ul > li .hint { margin-top:12px; margin-bottom:0; }
.cdn-plan .listbox > ul > li .btn-gr { margin-top:12px; }
/* 카드 높이 맞춤: hint+버튼을 하단 정렬 */
.ddos-waf-plan .listbox > ul > li {
    display:flex;
    flex-direction:column;
    min-height:520px;
}
.ddos-waf-plan .listbox > ul > li .list { flex:1; }
.ddos-waf-plan .listbox > ul > li .hint { margin-top:12px; margin-bottom:0; }
.ddos-waf-plan .listbox > ul > li .btn-gr { margin-top:12px; }
/* DDoS/WAF: 2열 그리드로 inner 가로 풀 */
.ddos-waf-plan .listbox > ul {
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:30px;
	width:100%;
}
.ddos-waf-plan .listbox > ul > li { width:auto; min-width:0; }
/* CDN·DDoS/WAF 플랜만 혜택 .list 가로 전폭 (type-A 기본 max-width:350px 덮어씀) */
.product-list.type-A.cdn-plan .listbox > ul > li .list,
.product-list.type-A.ddos-waf-plan .listbox > ul > li .list {
	max-width: 100%;
}
@media screen and (max-width:1024px){
    .ddos-waf-plan .listbox > ul > li { min-height:480px; }
    .routing-plan .listbox > ul > li { min-height:450px; }
    .cdn-plan .listbox > ul { grid-template-columns:repeat(2, 1fr); }
    .cdn-plan .listbox > ul > li { min-height:450px; }
    .product-list.type-A.cdn-plan .listbox > ul > li .list,
    .product-list.type-A.ddos-waf-plan .listbox > ul > li .list { max-width: 100%; }
}
@media screen and (max-width:768px){
    .ddos-waf-plan .listbox > ul { grid-template-columns:1fr; }
    .ddos-waf-plan .listbox > ul > li { min-height:auto; }
    .routing-plan .listbox > ul > li { min-height:auto; }
    .cdn-plan .listbox > ul { grid-template-columns:1fr; }
    .cdn-plan .listbox > ul > li { min-height:auto; }
}

.streaming-core-capability .feature-list .feature-item { opacity:0; }
.streaming-core-capability.subOn .feature-list .feature-item:nth-child(1) { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.streaming-core-capability.subOn .feature-list .feature-item:nth-child(2) { animation:ani_4 0.8s 0.4s; animation-fill-mode:both; }
.streaming-core-capability.subOn .feature-list .feature-item:nth-child(3) { animation:ani_4 0.8s 0.6s; animation-fill-mode:both; }
.streaming-core-capability.subOn .feature-list .feature-item:nth-child(4) { animation:ani_4 0.8s 0.8s; animation-fill-mode:both; }
.streaming-core-capability.subOn .feature-list .feature-item:nth-child(5) { animation:ani_4 0.8s 1.0s; animation-fill-mode:both; }

.streaming-protocol-transcoding { padding:140px 0 140px; background:#f5f5f5; }
.streaming-protocol-transcoding .subTitle .txtbox {
    margin-top:16px;
    color:#64748b;
}
.streaming-protocol-transcoding .listbox { margin-top:46px; }
.streaming-protocol-transcoding .listbox ul {
    display:flex;
    flex-wrap:wrap;
    gap:20px;
}
.streaming-protocol-transcoding .listbox ul li { width:calc((100% - 40px) / 3); }
.streaming-protocol-transcoding .listbox .box {
    height:100%;
    border:1px solid #e8eef6;
    border-radius:18px;
    background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow:0 8px 24px rgba(15, 23, 42, 0.05);
    padding:28px 24px 24px;
    display:grid;
    grid-template-columns:62px 1fr;
    grid-template-areas:
        "icon title"
        "icon desc"
        "chips chips";
    align-items:center;
    column-gap:14px;
    row-gap:4px;
}
.streaming-protocol-transcoding .listbox .icon {
    grid-area:icon;
    width:62px;
    height:62px;
    border:1px solid #d9e2ee;
    border-radius:12px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
}
.streaming-protocol-transcoding .listbox .icon img { width:32px; }
.streaming-protocol-transcoding .listbox dt {
    grid-area:title;
    margin-top:0;
    font-size:18px;
    font-weight:700;
    color:#1f2937;
    line-height:1.3;
    letter-spacing:-0.02em;
}
.streaming-protocol-transcoding .listbox dt h3 { font:inherit; color:inherit; }
.streaming-protocol-transcoding .listbox dd {
    grid-area:desc;
    margin-top:0;
    font-size:17px;
    color:#475569;
    line-height:1.6;
    letter-spacing:-0.02em;
}
.streaming-protocol-transcoding .listbox .stack-list {
    grid-area:chips;
    margin-top:20px;
    padding-top:20px;
    border-top:1px solid #e9edf3;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.streaming-protocol-transcoding .listbox .stack-list span {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:7px 14px;
    border-radius:999px;
    background:#f1f5f9;
    color:#0f172a;
    font-family:'PretendardCore', 'Pretendard', sans-serif;
    font-size:15px;
    font-weight:500;
    letter-spacing:-0.01em;
}
.streaming-protocol-transcoding .listbox .stack-list span.is-highlight {
    background:rgba(5, 105, 255, 0.12);
    border:1px solid rgba(5, 105, 255, 0.25);
    color:#0b4fc7;
    font-weight:600;
}
@media screen and (max-width:1024px){
    .streaming-protocol-transcoding { padding:20px 0 80px; }
    .streaming-protocol-transcoding .listbox { margin-top:34px; }
    .streaming-protocol-transcoding .listbox ul { gap:14px; }
    .streaming-protocol-transcoding .listbox ul li { width:calc((100% - 14px) / 2); }
    .streaming-protocol-transcoding .listbox .box { padding:22px 18px 18px; }
    .streaming-protocol-transcoding .listbox dt { font-size:21px; }
    .streaming-protocol-transcoding .listbox dd { margin-top:12px; font-size:16px; }
}
@media screen and (max-width:640px){
    .streaming-protocol-transcoding { padding:10px 0 60px; }
    .streaming-protocol-transcoding .subTitle .txtbox { margin-top:10px; }
    .streaming-protocol-transcoding .listbox { margin-top:24px; }
    .streaming-protocol-transcoding .listbox ul { gap:10px; }
    .streaming-protocol-transcoding .listbox ul li { width:100%; }
    .streaming-protocol-transcoding .listbox .box {
        border-radius:12px;
        padding:16px 14px 14px;
        grid-template-columns:52px 1fr;
        column-gap:10px;
    }
    .streaming-protocol-transcoding .listbox .icon { width:52px; height:52px; border-radius:10px; }
    .streaming-protocol-transcoding .listbox .icon img { width:26px; }
    .streaming-protocol-transcoding .listbox dt { font-size:18px; }
    .streaming-protocol-transcoding .listbox dd { font-size:14px; }
    .streaming-protocol-transcoding .listbox .stack-list { margin-top:12px; padding-top:12px; gap:6px; }
    .streaming-protocol-transcoding .listbox .stack-list span { min-height:30px; padding:5px 11px; font-size:12px; font-weight:500; }
}

.streaming-protocol-transcoding .listbox ul li { opacity:0; }
.streaming-protocol-transcoding.subOn .listbox ul li:nth-child(1) { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.streaming-protocol-transcoding.subOn .listbox ul li:nth-child(2) { animation:ani_4 0.8s 0.4s; animation-fill-mode:both; }
.streaming-protocol-transcoding.subOn .listbox ul li:nth-child(3) { animation:ani_4 0.8s 0.6s; animation-fill-mode:both; }
.streaming-protocol-transcoding.subOn .listbox ul li:nth-child(4) { animation:ani_4 0.8s 0.8s; animation-fill-mode:both; }
.streaming-protocol-transcoding.subOn .listbox ul li:nth-child(5) { animation:ani_4 0.8s 1.0s; animation-fill-mode:both; }
.streaming-protocol-transcoding.subOn .listbox ul li:nth-child(6) { animation:ani_4 0.8s 1.2s; animation-fill-mode:both; }

.streaming-managed-support {
    padding:140px 0;
    background:linear-gradient(145deg, #f8fbff 0%, #eef4ff 55%, #f5f9ff 100%);
    border-top:1px solid #e4ecf7;
    border-bottom:1px solid #e4ecf7;
    margin-bottom: 100px;
}
.streaming-managed-support .subTitle h2,
.streaming-managed-support .subTitle h3 { color:#0f172a; }
.streaming-managed-support .subTitle .txtbox { margin-top:16px; color:#64748b; }
.streaming-managed-support .listbox { margin-top:48px; }
.streaming-managed-support .listbox > ul { display:flex; flex-wrap:wrap; gap:20px; }
.streaming-managed-support .listbox > ul > li { width:calc((100% - 40px) / 3); }
.streaming-managed-support .listbox > ul > li .box {
    height:100%;
    padding:30px 26px 26px;
    border-radius:14px;
    border:1px solid #d9e3f0;
    background:#fff;
    box-shadow:0 12px 30px rgba(15, 23, 42, 0.05);
    transition:transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.streaming-managed-support .listbox > ul > li .box:hover {
    transform:translateY(-4px);
    border-color:#c8d7eb;
    box-shadow:0 18px 34px rgba(15, 23, 42, 0.09);
}
.streaming-managed-support .listbox > ul > li .icon { display:none; }
.streaming-managed-support .listbox > ul > li dt {
    margin-top:0;
    font-size:30px;
    font-weight:700;
    line-height:1.3;
    color:#1f2937;
    letter-spacing:-0.02em;
}
.streaming-managed-support .listbox > ul > li dd {
    margin-top:12px;
    font-size:18px;
    font-weight:400;
    line-height:1.6;
    color:#475569;
    letter-spacing:-0.02em;
}
@media screen and (max-width:1024px){
    .streaming-managed-support { padding:100px 0; }
    .streaming-managed-support .listbox { margin-top:36px; }
    .streaming-managed-support .listbox > ul { gap:14px; }
    .streaming-managed-support .listbox > ul > li { width:calc((100% - 14px) / 2); }
    .streaming-managed-support .listbox > ul > li .box { padding:24px 20px 20px; }
    .streaming-managed-support .listbox > ul > li dt { margin-top:14px; font-size:24px; }
    .streaming-managed-support .listbox > ul > li dd { margin-top:10px; font-size:16px; }
}
@media screen and (max-width:640px){
    .streaming-managed-support { padding:80px 0; }
    .streaming-managed-support .subTitle .txtbox { margin-top:10px; }
    .streaming-managed-support .listbox { margin-top:24px; }
    .streaming-managed-support .listbox > ul { gap:10px; }
    .streaming-managed-support .listbox > ul > li { width:100%; }
    .streaming-managed-support .listbox > ul > li .box { padding:18px 14px 16px; border-radius:12px; }
    .streaming-managed-support .listbox > ul > li .box:hover {
        transform:none;
        border-color:#d9e3f0;
        box-shadow:0 12px 30px rgba(15, 23, 42, 0.05);
    }
    .streaming-managed-support .listbox > ul > li dt { margin-top:0; font-size:20px; }
    .streaming-managed-support .listbox > ul > li dd { margin-top:8px; font-size:14px; }
}

.streaming-managed-support .listbox > ul > li { opacity:0; }
.streaming-managed-support.subOn .listbox > ul > li:nth-child(1) { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.streaming-managed-support.subOn .listbox > ul > li:nth-child(2) { animation:ani_4 0.8s 0.4s; animation-fill-mode:both; }
.streaming-managed-support.subOn .listbox > ul > li:nth-child(3) { animation:ani_4 0.8s 0.6s; animation-fill-mode:both; }

.wowza-box1 .streaming-feature-highlight-wrap {
    width:100%;
    padding:0;
}
.wowza-box1 .streaming-feature-highlight {
    width:100%;
    margin:0;
    padding:90px 54px;
    background:linear-gradient(140deg, #0f172a 0%, #101827 52%, #1e293b 100%);
    text-align:center;
}
.wowza-box1 .streaming-feature-highlight .highlight-head h3,
.wowza-box1 .streaming-feature-highlight .highlight-head h4 {
    font-size:40px;
    font-weight:700;
    line-height:1.35;
    color:#fff;
    letter-spacing:-0.02em;
}
.wowza-box1 .streaming-feature-highlight .highlight-head p {
    margin-top:16px;
    font-size:22px;
    font-weight:400;
    line-height:1.7;
    color:rgba(255, 255, 255, 0.58);
    letter-spacing:-0.02em;
}
.wowza-box1 .streaming-feature-highlight .highlight-grid {
    margin-top:34px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:14px;
}
.wowza-box1 .streaming-feature-highlight .highlight-grid .item {
    flex:0 1 290px;
    width:290px;
    max-width:290px;
    padding: 36px 20px;
    border-radius:12px;
    background:rgba(255, 255, 255, 0.04);
}
.wowza-box1 .streaming-feature-highlight .highlight-grid .item strong {
    display:block;
    font-family:var(--mainFont);
    font-size:48px;
    font-weight:700;
    line-height:1.05;
    letter-spacing:-0.03em;
    color:transparent;
    background-image:linear-gradient(90deg, var(--mainColor) 0%, #59f1ff 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}
.wowza-box1 .streaming-feature-highlight .highlight-grid .item strong .pretendard-unit {
    font-family:'PretendardCore', 'Pretendard', sans-serif;
    font-weight:700;
}
.wowza-box1 .streaming-feature-highlight .highlight-grid .item p {
    margin-top:10px;
    font-size:18px;
    line-height:1.45;
    color:rgba(255, 255, 255, 0.58);
    letter-spacing:-0.02em;
}
@media screen and (max-width:1280px){
    .wowza-box1 .streaming-feature-highlight .highlight-head h3,
    .wowza-box1 .streaming-feature-highlight .highlight-head h4 { font-size:34px; }
    .wowza-box1 .streaming-feature-highlight .highlight-head p { font-size:17px; }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item strong { font-size:44px; }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item p { font-size:18px; }
}
@media screen and (max-width:1024px){
    .wowza-box1 .streaming-feature-highlight {
        margin-top:24px;
        padding:38px 30px;
    }
    .wowza-box1 .streaming-feature-highlight .highlight-head h3,
    .wowza-box1 .streaming-feature-highlight .highlight-head h4 { font-size:30px; }
    .wowza-box1 .streaming-feature-highlight .highlight-head p { font-size:16px; margin-top:12px; }
    .wowza-box1 .streaming-feature-highlight .highlight-grid {
        margin-top:26px;
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        justify-items:center;
    }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item { width:100%; }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item strong { font-size:40px; }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item p { font-size:17px; }
}
@media screen and (max-width:640px){
    .wowza-box1 .streaming-feature-highlight {
        margin-top:18px;
        padding:26px 20px;
    }
    .wowza-box1 .streaming-feature-highlight .highlight-head h3,
    .wowza-box1 .streaming-feature-highlight .highlight-head h4 { font-size:22px; }
    .wowza-box1 .streaming-feature-highlight .highlight-head p {
        margin-top:10px;
        font-size:14px;
        line-height:1.6;
    }
    .wowza-box1 .streaming-feature-highlight .highlight-grid {
        margin-top:18px;
        display:grid;
        grid-template-columns:1fr;
        gap:10px;
        justify-items:stretch;
    }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item {
        width:100%;
        max-width:none;
        padding:16px 15px;
    }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item strong { font-size:34px; }
    .wowza-box1 .streaming-feature-highlight .highlight-grid .item p {
        margin-top:6px;
        font-size:15px;
    }
}

.additional-service { position:relative; padding:140px 0; overflow:hidden; }
.additional-service:before { content:''; display:block; position:absolute; top:0; right:0; width:413px; height:287px; background:url(../img/common/circle_bg1.webp) no-repeat left bottom; }
.additional-service:after { content:''; display:block; position:absolute; bottom:0; left:0; width:543px; height:430px; background:url(../img/common/circle_bg2.webp) no-repeat right top; }
.additional-service .listbox { position:relative; z-index:2; margin-top:50px; }
.additional-service .listbox ul { display:flex; gap:20px; flex-wrap:wrap; }
.additional-service .listbox ul li { width:calc((100% - 60px) / 4); padding:45px 10px 20px 10px; height:430px; border-radius:10px; background:#fff; text-align:center; border:1px solid #ddd;}
.additional-service .listbox ul li .icon { margin:0 auto; width:210px; height:210px; background:#f9f9f9; border-radius:200px; display:flex; align-items:center; justify-content:center; }
.additional-service .listbox ul li dt { word-break:keep-all; margin-top:20px; font-size:26px; font-weight:700; line-height:1.3; color:#222; letter-spacing:-0.02em; }
.additional-service .listbox ul li dt h3 { font:inherit; color:inherit; }
.additional-service .listbox ul li dd { word-break:keep-all; margin-top:15px; font-size:16px; font-weight:400; line-height:1.6; color:#444; letter-spacing:-0.02em; }
.additional-service .listbox .boxCont { display:flex; gap:20px; flex-wrap:wrap; }
.additional-service .listbox .boxCont .box { width:calc((100% - 20px) / 2);  }
.additional-service .listbox .boxCont .box ul li { width:calc((100% - 20px) / 2); }
.additional-service .txt_b { margin-top:25px; }
.additional-service .txt_b > div { position:relative; width:100%; text-align:center; }
.additional-service .txt_b .txt strong { position:relative; z-index:2; font-size:20px; line-height:1.3; font-weight:600; letter-spacing:-0.01em; color:#fff; display:inline-block; padding:0 27px; background:var(--mainColor); border-radius:50px; }
.additional-service .txt_b .txt strong span { display:flex; align-items:center;height:53px; width:100%; font-weight:600; }
.additional-service .txt_b .txt:before { content:''; display:block; position:absolute; top:50%; left:0; transform:translateY(-50%); width:50%; height:8px; background:url(../img/server/line_arr1.png) no-repeat left center; }
.additional-service .txt_b .txt:after { content:''; display:block; position:absolute; top:50%; right:0; transform:translateY(-50%); width:50%; height:8px; background:url(../img/server/line_arr1.png) no-repeat right center; }
@media screen and (max-width:1280px){
    .additional-service .listbox ul li { height:auto; }
    .additional-service .listbox ul li .icon { width:180px; height:180px; }
    .additional-service .listbox ul li .icon img { width:70px; }
    .additional-service .listbox ul li dt { margin-top:20px; font-size:24px; }
    .additional-service .listbox ul li dd br { display:none; }
}
@media screen and (max-width:1024px){
    .additional-service { padding:100px 0; }
    .additional-service:before { width:230px; height:161px; background-size:360px auto; }
    .additional-service:after { bottom:-25%; left:-10%; width:350px; height:338px; background-size:550px auto; }
    .additional-service .listbox { margin-top:40px; }
    .additional-service .listbox ul li { padding:30px 10px 30px 10px; }
    .additional-service .listbox ul li .icon { width:150px; height:150px; }
    .additional-service .listbox ul li .icon img { width:60px; }
    .additional-service .listbox ul li dt { margin-top:20px; font-size:20px; }
    .additional-service .listbox ul li dd { margin-top:15px; font-size:15px; }
    .additional-service .txt_b { margin-top:20px; }
    .additional-service .txt_b .txt strong { font-size:18px; }
    .additional-service .txt_b .txt strong span { height:45px; }
}
@media screen and (max-width:960px){
    .additional-service .listbox ul li { width:calc((100% - 20px) / 2); }
    .additional-service .listbox .boxCont { gap:40px 0; }
    .additional-service .listbox .boxCont .box { width:100%; }
    .additional-service .listbox .boxCont .box ul li { width:calc((100% - 20px) / 2); }
}
@media screen and (max-width:640px){
    .additional-service { padding:80px 0; }
    .additional-service:before { width:160px; height:112px; background-size:260px auto; }
    .additional-service:after { bottom:-20%; left:-22%; width:260px; height:251px; background-size:320px auto; }
    .additional-service .listbox { margin-top:30px; }
    .additional-service .listbox ul { gap:10px; }
    .additional-service .listbox ul li { width:calc((100% - 10px) / 2); padding:20px 10px 30px; }
    .additional-service .listbox ul li .icon { width:120px; height:120px; }
    .additional-service .listbox ul li .icon img { width:50px; }
    .additional-service .listbox ul li dt { font-size:18px; }
    .additional-service .listbox ul li dd { margin-top:10px; }
    .additional-service .listbox .boxCont { gap:30px 0; }
    .additional-service .listbox .boxCont .box ul li { width:calc((100% - 10px) / 2); }
    .additional-service .listbox .boxCont { gap:30px 10px; }
    .additional-service .txt_b { margin-top:15px; }
    .additional-service .txt_b .txt strong { font-size:16px; padding:0 20px; }
    .additional-service .txt_b .txt strong span { height:40px; }
}

/* animation */
.additional-service .listbox ul li,
.additional-service .txt_b .txt { opacity:0; }
.additional-service.subOn .listbox ul li:nth-child(1) { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(2) { animation:ani_4 0.8s 0.4s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(3) { animation:ani_4 0.8s 0.6s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(4) { animation:ani_4 0.8s 0.8s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(5) { animation:ani_4 0.8s 1.0s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(6) { animation:ani_4 0.8s 1.2s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(7) { animation:ani_4 0.8s 1.4s; animation-fill-mode:both; }
.additional-service.subOn .listbox ul li:nth-child(8) { animation:ani_4 0.8s 1.6s; animation-fill-mode:both; }
.additional-service.subOn .txt_b .txt { animation:bgs4 0.8s 0.5s; animation-fill-mode:both; }

.faq-list { padding:140px 0; background-color:#fff; margin-bottom:100px; }
.faq-list.bg { background-color:#f5f5f5; padding:100px 0;}
.faq-list .subTitle { text-align:center; }
.faq-list .subTitle h2,
.faq-list .subTitle h3 { color:var(--mainColor); font-size:40px; font-weight:600; line-height:130%; }
.faq-list .subTitle h2 strong,
.faq-list .subTitle h3 strong { font-weight:700; }
.faq-list .listbox { margin-top:50px; }
.faq-list .listbox > ul { border-top:2px solid var(--mainColor); }
.faq-list .listbox > ul > li { border:1px solid #f5f5f5; border-width:0 1px 1px; }
.faq-list.bg .listbox > ul > li { border:1px solid #ddd; border-width:0 1px 1px; }
.faq-list .listbox > ul > li.on { border-width:0 0 1px; }
.faq-list .listbox > ul > li > p,
.faq-list .listbox > ul > li > h3 { word-break:keep-all; position:relative; cursor:pointer; padding:35px 80px 35px 75px; min-height:100px; font-size:22px; color:#222; font-weight:700; line-height:1.4; display:flex; align-items:center; }
.faq-list .listbox > ul > li > p:before,
.faq-list .listbox > ul > li > h3:before { content:""; display:block; position:absolute; right:40px; top:50%; transform:translateY(-50%); width:14px; height:9px; background:url(../img/common/faq_arr.png) center center no-repeat; }
.faq-list .listbox > ul > li.on > p:before,
.faq-list .listbox > ul > li.on > h3:before { background:url(../img/common/faq_arr_on.png) center center no-repeat; }
.faq-list .listbox > ul > li > p span.q,
.faq-list .listbox > ul > li > h3 span.q { position:absolute; left:40px; top:35px; color:var(--mainColor); font-weight:700; font-size:22px; }
.faq-list .listbox > ul > li .contentBox { background-color:#f5f5f5; padding:40px 75px; color:#000; font-size:17px; line-height:1.5; font-weight:400; }
.faq-list.bg .listbox > ul > li .contentBox { background-color:#fff; border-top:1px solid #ddd; }
@media screen and (max-width:1110px){
    .faq-list.bg { margin:0;}
}
@media screen and (max-width:1024px){
    .faq-list { padding:100px 0 0; }
    .faq-list.bg { padding:100px 0;}
    .faq-list .subTitle h2,
    .faq-list .subTitle h3 { font-size:30px; }
    .faq-list .listbox { margin-top:40px; }
    .faq-list .listbox > ul > li > p,
    .faq-list .listbox > ul > li > h3 {padding:30px 80px 30px 60px; min-height:80px; font-size:20px; }
    .faq-list .listbox > ul > li > p:before,
    .faq-list .listbox > ul > li > h3:before { right:30px; }
    .faq-list .listbox > ul > li > p span.q,
    .faq-list .listbox > ul > li > h3 span.q { left:30px; top:28px; font-size:20px; }
    .faq-list .listbox > ul > li .contentBox {padding:30px 60px; font-size:16px; }
}
@media screen and (max-width:640px){
    .faq-list { padding:80px 0 0; }
    .faq-list.bg { padding:80px 0;}
    .faq-list .subTitle h2,
    .faq-list .subTitle h3 { font-size:20px; }
    .faq-list .listbox { margin-top:30px; }
    .faq-list .listbox > ul > li > p,
    .faq-list .listbox > ul > li > h3 {padding:20px 60px 20px 40px; min-height:60px; font-size:16px; }
    .faq-list .listbox > ul > li > p:before,
    .faq-list .listbox > ul > li > h3:before { right:15px; }
    .faq-list .listbox > ul > li > p span.q,
    .faq-list .listbox > ul > li > h3 span.q { left:15px; top:19px; font-size:17px; }
    .faq-list .listbox > ul > li .contentBox {padding:20px 40px; font-size:15px; }
}

/* animation */
.faq-list .subTitle h2,
.faq-list .subTitle h3 { opacity:0; }
.faq-list.subOn .subTitle h2,
.faq-list.subOn .subTitle h3 { animation:ani_3 0.8s 0.2s; animation-fill-mode:both; }
.faq-list .listbox { opacity:0; }
.faq-list.subOn .listbox{ animation:ani_4 0.8s 0.5s; animation-fill-mode:both; }

/* streaming-solution-intro: 하나의 안정적인 솔루션 (그레이 배경, arch-graphic/flow-track/node 재사용) */
.streaming-solution-intro {
    padding:90px 0 100px;
    background:#f5f5f5;
}
.streaming-solution-intro .subTitle h3 {
    font-size:28px;
    font-weight:700;
    color:#1f2937;
    letter-spacing:-0.02em;
}
.streaming-solution-intro .subTitle .txtbox {
    margin-top:14px;
    font-size:18px;
    color:#475569;
    font-weight:400;
}
.streaming-solution-intro .arch-graphic {
    margin-top:50px;
    border-radius:18px;
    background:#fbfbfb;
    padding:32px 24px;
}
.streaming-solution-intro .arch-graphic .flow-track {
    margin-top:0;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}
.streaming-solution-intro .arch-graphic .node {
    width:132px;
    min-height:96px;
    padding:24px 16px;
    border:1px solid #d4deea;
    border-radius:10px;
    background:#fff;
    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    align-items:center;
}
.streaming-solution-intro .arch-graphic .node svg {
    width:28px;
    height:28px;
    margin-bottom:12px;
}
.streaming-solution-intro .arch-graphic .node strong {
    font-size:17px;
    font-weight:700;
    color:#1e293b;
}
.streaming-solution-intro .arch-graphic .node p {
    margin-top:6px;
    font-size:14px;
    color:#64748b;
    line-height:1.4;
}
.streaming-solution-intro .arch-graphic .arrow {
    font-size:22px;
    font-weight:700;
    color:#8ba2bd;
    line-height:1;
}
@media screen and (max-width:640px){
    .streaming-solution-intro { padding:60px 0 70px; }
    .streaming-solution-intro .subTitle h3 { font-size:22px; }
    .streaming-solution-intro .subTitle .txtbox { font-size:16px; margin-top:10px; }
    .streaming-solution-intro .arch-graphic { margin-top:32px; padding:24px 14px; border-radius:12px; }
    .streaming-solution-intro .arch-graphic .flow-track { margin-top:0; gap:6px; }
    .streaming-solution-intro .arch-graphic .node { width:calc(50% - 6px); min-height:80px; padding:10px 8px; font-size:13px; }
    .streaming-solution-intro .arch-graphic .node strong { font-size:13px; }
    .streaming-solution-intro .arch-graphic .node p { font-size:12px; margin-top:4px; }
    .streaming-solution-intro .arch-graphic .arrow { font-size:16px; }
    .streaming-solution-intro .arch-graphic .flow-track .arrow { width:100%; display:block; text-align:center; font-size:0; line-height:1; }
    .streaming-solution-intro .arch-graphic .flow-track .arrow:before { content:"↓"; font-size:18px; font-weight:700; color:#8ba2bd; }
}

.proxmox-core-compare { padding:140px 0 140px; background:#fff; }
.proxmox-core-compare .listbox { margin-top:40px; }
.proxmox-core-compare .listbox ul { display:flex; flex-wrap:wrap; gap:20px; }
.proxmox-core-compare .listbox li {
    width:calc((100% - 40px) / 3);
    border:1px solid #e3e8ef;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 24px rgba(17, 24, 39, 0.06);
    padding:22px 24px 50px;
}
.proxmox-core-compare .listbox li .imgbox {
    width:150px;
    height:150px;
    margin:4px auto 0;
    border-radius:20px;
    background:#f7faff;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #e6edf8;
}
.proxmox-core-compare .listbox li .imgbox img {
    max-width:150px;
    max-height:150px;
    width:auto;
    height:auto;
    display:block;
}
.proxmox-core-compare .listbox li .txtbox { padding:28px 2px 0; text-align:center; }
.proxmox-core-compare .listbox li .txtbox dt { font-size:22px; font-weight:700; color:#1f2937; line-height:1.4; }
.proxmox-core-compare .listbox li .txtbox dt h3 { font:inherit; color:inherit; }
.proxmox-core-compare .listbox li .txtbox dt:after {
    content:'';
    display:block;
    width:38px;
    height:2px;
    margin:24px auto 0;
    background:#d0d0d0;
    border-radius:2px;
}
.proxmox-core-compare .listbox li .txtbox dd { margin-top:24px; font-size:17px; color:#4b5563; line-height:1.65; }
.proxmox-core-compare .listbox li { opacity:0; transform:translateY(24px); }
.proxmox-core-compare.subOn .listbox li:nth-child(1) {
    animation:ani_4 0.7s 0.1s;
    animation-fill-mode:both;
}
.proxmox-core-compare.subOn .listbox li:nth-child(2) {
    animation:ani_4 0.7s 0.25s;
    animation-fill-mode:both;
}
.proxmox-core-compare.subOn .listbox li:nth-child(3) {
    animation:ani_4 0.7s 0.4s;
    animation-fill-mode:both;
}
.proxmox-compare .data-table tbody td .compare-badge {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}
.proxmox-compare .data-table tbody td .compare-badge:before {
    content:'';
    width:10px;
    height:10px;
    border-radius:50%;
    flex:0 0 10px;
}
.proxmox-compare .data-table tbody td .compare-badge.badge-green:before { background:#22c55e; }
.proxmox-compare .data-table tbody td .compare-badge.badge-blue:before { background:#3b82f6; }
.proxmox-compare .data-table tbody td .compare-badge.badge-red:before { background:#ef4444; }
.proxmox-compare .data-table tbody td.cell-green-bg { background:#f5fff5; }
.proxmox-compare .data-table thead th .platform-label {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
}
.proxmox-compare .data-table thead th .platform-label img {
    width:18px;
    height:18px;
    object-fit:contain;
}
.proxmox-compare .data-table tbody td svg {
    vertical-align:middle;
    margin-right:4px;
}
/* migration type cards */
.migration-type-sec { padding:100px 0 120px;}
.migration-type-sec.bg { background:#ffffff; }
.migration-type-cards { margin-top:50px; }
.migration-type-cards ul { display:flex; flex-wrap:wrap; gap:20px; }
.migration-type-cards li {
    width:calc((100% - 60px) / 4);
    border:1px solid #e3e8ef;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 24px rgba(17, 24, 39, 0.06);
    padding:28px 24px 32px;
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}
.migration-type-cards li .card-badge {
    width:56px;
    height:56px;
    border-radius:12px;
    background:var(--mainColor);
    color:#fff;
    font-size:18px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
}
.migration-type-cards li .card-txtbox { margin-top:20px; }
.migration-type-cards li .card-txtbox dt {
    font-size:20px;
    font-weight:700;
    color:#1f2937;
    line-height:1.4;
}
.migration-type-cards li .card-txtbox dt:after {
    content:'';
    display:block;
    width:32px;
    height:2px;
    margin:16px auto 0;
    background:#d0d0d0;
    border-radius:2px;
}
.migration-type-cards li .card-txtbox dd { margin-top:16px; font-size:17px; color:#4b5563; line-height:1.55; }
@media screen and (max-width:1024px){
    .migration-type-sec { padding:80px 0 100px; }
    .migration-type-cards { margin-top:40px; }
    .migration-type-cards ul { gap:15px; }
    .migration-type-cards li { width:calc((100% - 15px) / 2); }
}
@media screen and (max-width:640px){
    .migration-type-sec { padding:60px 0 80px; }
    .migration-type-cards { margin-top:30px; }
    .migration-type-cards ul { gap:12px; }
    .migration-type-cards li { width:100%; padding:24px 20px 28px; }
    .migration-type-cards li .card-txtbox dt { font-size:18px; }
    .migration-type-cards li .card-txtbox dd { font-size:15px; }
}

/* support env section */
.support-env-sec { padding:140px 0 140px; }
.support-env-cards {
    margin-top:40px;
    padding:36px 40px;
    border-radius:16px;
    background:linear-gradient(180deg, #f8fafc 0%, #f2f6fa 100%);
    border:1px solid #e6edf5;
    width: 100%;
}
.support-env-cards ul {
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    list-style:none;
    padding:0;
    margin:0;
}
.support-env-cards li {
    display:flex;
    align-items:center;
    gap:14px;
    width:calc((100% - 32px) / 3);
    padding:18px 24px;
    border-radius:12px;
    background:#fff;
    border:1px solid #e3e8ef;
    box-shadow:0 2px 8px rgba(17, 24, 39, 0.04);
}
.support-env-cards li .env-icon {
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:10px;
    background:var(--mainColor);
    position:relative;
}
.support-env-cards li .env-icon::after {
    content:'';
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -50%) rotate(-45deg);
    width:8px;
    height:14px;
    border:2px solid #fff;
    border-top:none;
    border-left:none;
}
.support-env-cards li .env-txt {
    font-size:18px;
    font-weight:600;
    color:#1f2937;
}
@media screen and (max-width:640px){
    .support-env-sec { padding:0 0 60px; }
    .support-env-cards { margin-top:30px; padding:24px 20px; }
    .support-env-cards ul { gap:12px; }
    .support-env-cards li { width:100%; padding:16px 20px; }
    .support-env-cards li .env-icon { width:36px; height:36px; flex:0 0 36px; }
    .support-env-cards li .env-txt { font-size:16px; }
}

/* migration scope section */
.migration-scope-sec {
    padding:100px 0;
    background:linear-gradient(180deg, #f8fafc 0%, #fff 40%, #f5f9ff 100%);
}
/* Proxmox 기술지원 범위 - 흰색 배경 */
.migration-scope-sec.proxmox-support-scope-sec {
    background:#fff;
}
/* Proxmox 페이지 섹션 배경 교차 (그레이/화이트) */
.proxmox-sec-gray { background:#f5f5f5; }
.proxmox-sec-white { background:#fff; }
.migration-scope-cards {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px;
    margin-top:48px;
}
.migration-scope-card {
    padding:0;
    border-radius:20px;
    overflow:hidden;
    border:1px solid #e3e8ef;
}
.migration-scope-card-included {
    background:linear-gradient(180deg, #fff 0%, #f8fcff 100%);
    border-color:rgba(5, 105, 255, 0.2);
}
.migration-scope-card-option {
    background:linear-gradient(180deg, #fff 0%, #f8f9fb 100%);
}
.migration-scope-card-header {
    display:flex;
    align-items:center;
    gap:14px;
    padding:24px 28px;
}
.migration-scope-card-included .migration-scope-card-header {
    background:linear-gradient(135deg, rgba(5, 105, 255, 0.08) 0%, rgba(5, 105, 255, 0.03) 100%);
    border-bottom:1px solid rgba(5, 105, 255, 0.12);
}
.migration-scope-card-option .migration-scope-card-header {
    background:linear-gradient(135deg, rgba(75, 85, 99, 0.06) 0%, rgba(75, 85, 99, 0.02) 100%);
    border-bottom:1px solid rgba(75, 85, 99, 0.1);
}
.migration-scope-icon {
    width:44px;
    height:44px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.migration-scope-icon-check {
    background:var(--mainColor);
    position:relative;
}
.migration-scope-icon-check::after {
    content:'';
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%, -55%) rotate(-45deg);
    width:10px;
    height:16px;
    border:2.5px solid #fff;
    border-top:none;
    border-left:none;
}
.migration-scope-icon-plus {
    background:#4b5563;
    position:relative;
}
.migration-scope-icon-plus::before,
.migration-scope-icon-plus::after {
    content:'';
    position:absolute;
    left:50%;
    top:50%;
    background:#fff;
}
.migration-scope-icon-plus::before {
    width:14px;
    height:2px;
    transform:translate(-50%, -50%);
}
.migration-scope-icon-plus::after {
    width:2px;
    height:14px;
    transform:translate(-50%, -50%);
}
.migration-scope-chip {
    display:inline-block;
    padding:8px 18px;
    border-radius:10px;
    background:var(--mainColor);
    color:#fff;
    font-size:17px;
    font-weight:700;
}
.migration-scope-chip-opt {
    background:#4b5563;
}
.migration-scope-list {
    list-style:none;
    padding:8px 28px 0px;
    margin:0;
}
.migration-scope-list li {
    position:relative;
    padding:14px 0 14px 36px;
    font-size:18px;
    color:#333;
    line-height:1.55;
}
.migration-scope-list li::before {
    content:'';
    position:absolute;
    left:0;
    top:22px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--mainColor);
}
.migration-scope-card-option .migration-scope-list li::before {
    background:#4b5563;
}
.migration-scope-list li:not(:last-child) {
    border-bottom:1px dashed #e8ecf2;
}
@media screen and (max-width:768px){
    .migration-scope-sec { padding:60px 0; }
    .migration-scope-cards { grid-template-columns:1fr; margin-top:36px; gap:20px; }
}
@media screen and (max-width:640px){
    .migration-scope-card-header { padding:20px 22px; }
    .migration-scope-list { padding:22px 22px 28px; }
    .migration-scope-list li { font-size:16px; padding:12px 0 12px 32px; }
}

/* cloud_migration page animation */
.source-top.product-table .data-table,
.source-top.product-table .vm-proxmox-banner { opacity:0; }
.source-top.subOn .data-table { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }
.source-top.subOn .vm-proxmox-banner { animation:ani_4 0.8s 0.4s; animation-fill-mode:both; }

.migration-type-sec .migration-type-cards li { opacity:0; }
.migration-type-sec.subOn .migration-type-cards li:nth-child(1) { animation:ani_4 0.7s 0.2s; animation-fill-mode:both; }
.migration-type-sec.subOn .migration-type-cards li:nth-child(2) { animation:ani_4 0.7s 0.35s; animation-fill-mode:both; }
.migration-type-sec.subOn .migration-type-cards li:nth-child(3) { animation:ani_4 0.7s 0.5s; animation-fill-mode:both; }
.migration-type-sec.subOn .migration-type-cards li:nth-child(4) { animation:ani_4 0.7s 0.65s; animation-fill-mode:both; }

.support-env-sec .support-env-cards li { opacity:0; }
.support-env-sec.subOn .support-env-cards li:nth-child(1) { animation:ani_4 0.6s 0.15s; animation-fill-mode:both; }
.support-env-sec.subOn .support-env-cards li:nth-child(2) { animation:ani_4 0.6s 0.25s; animation-fill-mode:both; }
.support-env-sec.subOn .support-env-cards li:nth-child(3) { animation:ani_4 0.6s 0.35s; animation-fill-mode:both; }
.support-env-sec.subOn .support-env-cards li:nth-child(4) { animation:ani_4 0.6s 0.45s; animation-fill-mode:both; }
.support-env-sec.subOn .support-env-cards li:nth-child(5) { animation:ani_4 0.6s 0.55s; animation-fill-mode:both; }

.proxmox-project-wrap .proxmox-project-card { opacity:0; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(1) { animation:ani_4 0.6s 0.1s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(2) { animation:ani_4 0.6s 0.2s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(3) { animation:ani_4 0.6s 0.3s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(4) { animation:ani_4 0.6s 0.4s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(5) { animation:ani_4 0.6s 0.5s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(6) { animation:ani_4 0.6s 0.6s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(7) { animation:ani_4 0.6s 0.7s; animation-fill-mode:both; }
.proxmox-project-wrap.subOn .proxmox-project-card:nth-child(8) { animation:ani_4 0.6s 0.8s; animation-fill-mode:both; }

.migration-scope-sec .migration-scope-card { opacity:0; }
.migration-scope-sec.subOn .migration-scope-card:nth-child(1) { animation:ani_4 0.7s 0.2s; animation-fill-mode:both; }
.migration-scope-sec.subOn .migration-scope-card:nth-child(2) { animation:ani_4 0.7s 0.4s; animation-fill-mode:both; }

.cloud-private.migration-strength .listbox li { opacity:0; }
.cloud-private.migration-strength.subOn .listbox li:nth-child(1) { animation:ani_4 0.7s 0.2s; animation-fill-mode:both; }
.cloud-private.migration-strength.subOn .listbox li:nth-child(2) { animation:ani_4 0.7s 0.4s; animation-fill-mode:both; }
.cloud-private.migration-strength.subOn .listbox li:nth-child(3) { animation:ani_4 0.7s 0.6s; animation-fill-mode:both; }
/* cloudflare-why-strength: 6개 항목 애니메이션 확장 */
.cloud-private.migration-strength.cloudflare-why-strength.subOn .listbox li:nth-child(4) { animation:ani_4 0.7s 0.8s; animation-fill-mode:both; }
.cloud-private.migration-strength.cloudflare-why-strength.subOn .listbox li:nth-child(5) { animation:ani_4 0.7s 1.0s; animation-fill-mode:both; }
.cloud-private.migration-strength.cloudflare-why-strength.subOn .listbox li:nth-child(6) { animation:ani_4 0.7s 1.2s; animation-fill-mode:both; }

/* vmware-proxmox compare banner */
.vm-proxmox-banner {
    margin-top:32px;
    padding:24px 36px;
    border-radius:8px;
    border: 1px solid #daddec;
    background:linear-gradient(145deg, #f8fbff 0%, #eef4ff 35%, #f5f9ff 100%);
}
.vm-proxmox-banner-txt {
    margin:0;
    text-align:center;
    font-size:20px;
    font-weight:500;
    color:#353535;
    line-height:1.5;
}
.vm-proxmox-banner-txt .banner-percent {
    color:var(--mainColor);
    font-weight:700;
}
@media screen and (max-width:640px){
    .vm-proxmox-banner { padding:18px 24px; margin-top:24px; }
    .vm-proxmox-banner-txt { font-size:17px; }
}
@media screen and (max-width:1024px){
    .proxmox-core-compare .listbox { margin-top:30px; }
    .proxmox-core-compare .listbox ul { gap:15px; }
    .proxmox-core-compare .listbox li { width:calc((100% - 15px) / 2); }
    .proxmox-core-compare .listbox li { padding:20px 18px 22px; }
    .proxmox-core-compare .listbox li .imgbox { width:140px; height:140px; }
    .proxmox-core-compare .listbox li .imgbox img { max-width:140px; max-height:140px; }
    .proxmox-core-compare .listbox li .txtbox { padding:16px 0 0; }
    .proxmox-core-compare .listbox li .txtbox dt { font-size:20px; }
    .proxmox-core-compare .listbox li .txtbox dd { font-size:16px; }
    .provide-box { padding:100px 0; }
    .provide-box .data-table { margin-top:40px; }
    .provide-box .data-table thead th { height:50px; font-size:16px; }
    .provide-box .data-table tbody th { height:50px; padding:12px 15px; font-size:15px;}
    .provide-box .data-table tbody td { padding:12px 10px; font-size:15px; }
    .provide-box .data-table tbody td .stxt { font-size:14px; }
}
@media screen and (max-width:960px){
    .provide-box .data-table { overflow:auto; }
    .provide-box .data-table table { width:100%; }
}
@media screen and (max-width:640px){
    .proxmox-core-compare { padding:30px 0 0; }
    .proxmox-core-compare .listbox { margin-top:20px; }
    .proxmox-core-compare .listbox ul { gap:10px; }
    .proxmox-core-compare .listbox li { width:100%; border-radius:12px; padding:16px 14px 18px; }
    .proxmox-core-compare .listbox li .imgbox { width:120px; height:120px; border-radius:16px; }
    .proxmox-core-compare .listbox li .imgbox img { max-width:120px; max-height:120px; }
    .proxmox-core-compare .listbox li .txtbox { padding:14px 0 0; }
    .proxmox-core-compare .listbox li .txtbox dt { font-size:17px; }
    .proxmox-core-compare .listbox li .txtbox dd { margin-top:8px; font-size:14px; }
    .provide-box { padding:80px 0; }
    .provide-box .data-table { margin-top:30px; }
    .provide-box .data-table thead th { height:50px; font-size:13px; }
    .provide-box .data-table tbody th,tr { height:50px; font-size:13px;line-height: 20px;}
    .provide-box .data-table tbody tr td { font-size: 13px;}
}

/* animation */
.provide-box .data-table { opacity:0; }
.provide-box.subOn .data-table { animation:ani_4 0.8s 0.2s; animation-fill-mode:both; }

/* streaming feature highlight - 타이틀 없음 */
.streaming-feature-highlight { padding:0px 0; }
.streaming-feature-highlight .listbox ul { display:flex; flex-wrap:wrap; gap:20px; }
.streaming-feature-highlight .listbox li {
    width:calc((100% - 60px) / 4);
    border:1px solid #e3e8ef;
    border-radius:16px;
    background:#fff;
    padding:32px 24px;
    display:flex;
    align-items:center;
    gap:20px;
}
.streaming-feature-highlight .listbox .icon {
    width:64px;
    height:64px;
    min-width:64px;
    border-radius:14px;
    background:#f9f9f9;
    display:flex;
    align-items:center;
    justify-content:center;
}
.streaming-feature-highlight .listbox .icon img { width:36px; height:36px; object-fit:contain; }
.streaming-feature-highlight .listbox .txtbox strong { font-size:18px; font-weight:700; color:#1f2937; }
.streaming-feature-highlight.subOn .listbox li:nth-child(1) { animation:ani_4 0.6s 0.1s; animation-fill-mode:both; }
.streaming-feature-highlight.subOn .listbox li:nth-child(2) { animation:ani_4 0.6s 0.2s; animation-fill-mode:both; }
.streaming-feature-highlight.subOn .listbox li:nth-child(3) { animation:ani_4 0.6s 0.3s; animation-fill-mode:both; }
.streaming-feature-highlight.subOn .listbox li:nth-child(4) { animation:ani_4 0.6s 0.4s; animation-fill-mode:both; }
.streaming-feature-highlight .listbox li { opacity:0; }
@media screen and (max-width:1024px){
    .streaming-feature-highlight .listbox li { width:calc((100% - 20px) / 2); }
}
@media screen and (max-width:640px){
    .streaming-feature-highlight { padding:50px 0; }
    .streaming-feature-highlight .listbox li { width:100%; padding:24px 20px; }
    .streaming-feature-highlight .listbox .icon { width:56px; height:56px; min-width:56px; }
    .streaming-feature-highlight .listbox .icon img { width:28px; height:28px; }
    .streaming-feature-highlight .listbox .txtbox strong { font-size:16px; }
}

/* video_cloud.php, video_cloud_price.php - priceplan 전용 반응형 카드 정렬 */
#priceplan.product-list2.type-A .listbox > ul > li {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}
@media screen and (min-width:641px) {
	#priceplan.product-list2.type-A .listbox > ul > li > ul.list + ul.list,
	#priceplan.product-list2.type-A .listbox > ul > li > .btn-gr,
	#priceplan.product-list2.type-A .listbox > ul > li > .hint {
		width: 100%;
	}
	#priceplan.product-list2.type-A .listbox > ul > li > ul.list + ul.list {
		margin-top: auto;
	}
}
@media screen and (min-width:1281px) {
	#priceplan.product-list2.type-A .listbox > ul > li {
		width: calc((100% - 30px) / 4) !important;
	}
}
@media screen and (min-width:641px) and (max-width:1280px) {
	#priceplan.product-list2.type-A .listbox > ul {
		gap: 20px;
	}
	#priceplan.product-list2.type-A .listbox > ul > li {
		width: calc((100% - 20px) / 2) !important;
	}
}
@media screen and (max-width:640px) {
	#priceplan.product-list2.type-A .listbox > ul {
		gap: 15px;
	}
	#priceplan.product-list2.type-A .listbox > ul > li {
		width: 100% !important;
	}
}

/* GPU colocation mobile card alignment */
@media screen and (max-width:640px) {
	#priceplan.media-wowza.product-list2.type-A .listbox > ul > li {
		padding: 30px 20px;
	}
	#priceplan.media-wowza.product-list2.type-A .listbox > ul > li .columlist {
		width: 100%;
		max-width: none;
		margin: 30px 0;
	}
	.cloud-private.private-box1 .listbox.gpu .box {
		flex-direction: column;
	}
	.cloud-private.private-box1 .listbox.gpu .box .txtbox {
		width: 100%;
		padding-left: 0;
	}
}

/* streamon_lms.php featured pricing card */
.streamon-featured-plan {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) 320px;
	gap: 28px;
	margin-top: 32px;
	padding: 38px 34px 34px;
	border: 1px solid #dbe3ef;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 14px 38px rgba(15, 23, 42, 0.08);
}
.streamon-featured-plan__top {
	position: relative;
	padding-top: 52px;
}
.streamon-featured-plan__top span {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 14px;
	border-radius: 10px 0 10px 0;
	background: #2461e9;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
}
.streamon-featured-plan__top h3,
.streamon-featured-plan__top h4 {
	margin: 0;
	color: #111827;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.02em;
}
.streamon-featured-plan__top p {
	margin: 14px 0 0;
	color: #5f6368;
	font-size: 17px;
	line-height: 1.6;
}
.streamon-featured-plan__metrics {
	display: grid;
	gap: 10px;
	margin-top: 28px;
	padding: 18px 16px;
	border-radius: 12px;
	background: #f6f7f9;
}
.streamon-featured-plan__metrics div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 0;
	padding: 0;
	border-radius: 0;
	background: transparent;
}
.streamon-featured-plan__metrics div + div {
	padding-top: 10px;
	border-top: 1px solid #e5e7eb;
}
.streamon-featured-plan__metrics span {
	color: #777;
	font-size: 14px;
	font-weight: 400;
}
.streamon-featured-plan__metrics strong {
	color: #4b5563;
	font-size: 15px;
	font-weight: 600;
	text-align: right;
}
.streamon-featured-plan__detail {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 20px;
}
.streamon-featured-plan__feature-group {
	display: flex;
	align-items: flex-start;
	gap: 18px;
}
.streamon-featured-plan__feature-group h4,
.streamon-featured-plan__feature-group h5 {
	flex: 0 0 88px;
	margin: 0;
	color: #111827;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.4;
}
.streamon-featured-plan__features {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 14px;
	flex: 1 1 auto;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}
.streamon-featured-plan__features li {
	position: relative;
	padding-left: 30px;
	color: #5f6368;
	font-size: 15px;
	line-height: 1.5;
}
.streamon-featured-plan__features li::before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	width: 18px;
	height: 18px;
	border-radius: 999px;
	background: #2461e9;
	box-shadow: inset 0 0 0 4px #fff;
}
.streamon-featured-plan__aside {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding-left: 16px;
	border-left: 1px solid #e5e7eb;
}
.streamon-featured-plan__price {
	padding-top: 10px;
}
.streamon-featured-plan__price strong {
	display: flex;
	align-items: baseline;
	gap: 8px;
	color: #111827;
	font-size: 40px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.03em;
}
.streamon-featured-plan__price strong .price-currency {
	font-size: 28px;
	font-weight: 600;
}
.streamon-featured-plan__price strong .price-unit {
	font-size: 18px;
	font-weight: 500;
	color: #6b7280;
}
.streamon-featured-plan__price p {
	margin: 12px 0 0;
	color: #5f6f8e;
	font-size: 15px;
	font-weight: 500;
}
.streamon-featured-plan__actions {
	display: grid;
	gap: 12px;
	margin-top: 28px;
}
.streamon-featured-plan__modal-btn {
	width: 100%;
	height: auto;
	margin: 0;
	border: 0;
	border-radius: 8px;
	overflow: visible;
}
.streamon-featured-plan__modal-btn a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 52px;
	border-radius: 8px;
	background: #111;
	color: #fff;
	text-decoration: none;
}
.streamon-featured-plan__modal-btn a span {
	padding: 0;
	background: none;
	color: #fff;
	font-size: 15px;
	font-weight: 600;
}
.streamon-featured-plan__modal-btn:hover a {
	background: #2461e9;
}
.streamon-featured-plan__hint {
	position: relative;
	margin: 0;
	text-align: center;
}
.streamon-featured-plan__extra {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #2461e9;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	text-underline-offset: 3px;
	cursor: pointer;
	transition: color 0.2s ease;
}
.streamon-featured-plan__extra:hover {
	color: #0b4fc7;
}
.streamon-featured-plan__hint .streamon-overage-popover {
	position: absolute;
	left: 50%;
	bottom: calc(100% + 12px);
	z-index: 10;
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 236px;
	padding: 14px 16px;
	border-radius: 14px;
	background: rgba(17, 24, 39, 0.96);
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.22);
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, 6px);
	transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.streamon-featured-plan__hint .streamon-overage-popover::before {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -6px;
	width: 12px;
	height: 12px;
	background: rgba(17, 24, 39, 0.96);
	transform: translateX(-50%) rotate(45deg);
}
.streamon-featured-plan__hint:hover .streamon-overage-popover,
.streamon-featured-plan__hint:focus-within .streamon-overage-popover {
	opacity: 1;
	visibility: visible;
	transform: translate(-50%, 0);
}
.streamon-featured-plan__hint .streamon-overage-popover__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.streamon-featured-plan__hint .streamon-overage-popover__row strong {
	color: #fff;
	font-size: 13px;
	font-weight: 600;
}
.streamon-featured-plan__hint .streamon-overage-popover__row em {
	color: rgba(255, 255, 255, 0.78);
	font-size: 12px;
	font-style: normal;
	font-weight: 500;
	text-align: right;
}
.streamon-featured-plan__link {
	display: inline-flex;
	justify-content: center;
	color: #2461e9;
	font-size: 15px;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}
.streamon-featured-plan__link:hover {
	color: #0b4fc7;
}
@media screen and (max-width:1280px) {
	.streamon-featured-plan {
		grid-template-columns: 1fr 1fr;
		gap: 24px;
		padding: 34px 28px 30px;
	}
	.streamon-featured-plan__aside {
		grid-column: 1 / -1;
		padding-left: 0;
		padding-top: 8px;
		border-left: 0;
		border-top: 1px solid #e5e7eb;
	}
	.streamon-featured-plan__actions {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: stretch;
	}
}
@media screen and (max-width:640px) {
	.streamon-featured-plan {
		grid-template-columns: 1fr;
		gap: 20px;
		margin-top: 20px;
		padding: 28px 20px 24px;
		border-radius: 18px;
	}
	.streamon-featured-plan__top {
		padding-top: 46px;
	}
	.streamon-featured-plan__top h3,
	.streamon-featured-plan__top h4 {
		font-size: 28px;
	}
	.streamon-featured-plan__top p {
		font-size: 15px;
	}
	.streamon-featured-plan__features {
		grid-template-columns: 1fr;
	}
	.streamon-featured-plan__feature-group {
		flex-direction: column;
		gap: 10px;
	}
	.streamon-featured-plan__feature-group h4,
	.streamon-featured-plan__feature-group h5 {
		flex-basis: auto;
	}
	.streamon-featured-plan__price strong {
		font-size: 46px;
	}
	.streamon-featured-plan__price strong .price-currency {
		font-size: 22px;
	}
	.streamon-featured-plan__price strong .price-unit {
		font-size: 14px;
	}
	.streamon-featured-plan__actions {
		grid-template-columns: 1fr;
	}
	.streamon-featured-plan__hint .streamon-overage-popover {
		min-width: 220px;
	}
	.streamon-featured-plan__hint .streamon-overage-popover__row {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
	}
	.streamon-featured-plan__hint .streamon-overage-popover__row em {
		text-align: left;
	}
}

/* streamon_vod.php */
.video-management-overview .img-placeholder {
	aspect-ratio: 810 / 520;
}

.video-management-overview .img-placeholder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
}

.video-management-demo-wrap .streaming-feature-highlight .highlight-grid .item strong {
	letter-spacing: -0.03em;
}

.video-management-compare .subTitle .txtbox {
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}

.video-management-compare .data-table tbody td,
.video-management-compare .data-table tbody th {
	word-break: keep-all;
}

.video-management-plan-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	align-items: start;
}

.video-management-plan-grid__free {
	margin-top: 0;
}

.video-management-plan-grid__featured {
	margin-top: 0;
}

.video-management-feature-detail {
	overflow: hidden;
}

.live-management-feature-detail {
	overflow: hidden;
}

.streamon-featured-plan--free {
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr) 280px;
	border-color: #e5e7eb;
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(15, 23, 42, 0.05);
}

.streamon-featured-plan--free .streamon-featured-plan__top span {
	background: #eef0f3;
	color: #3f3f46;
	border-radius: 999px;
}

.streamon-featured-plan--free .streamon-featured-plan__features li::before {
	background: #cbd5e1;
	box-shadow: inset 0 0 0 4px #fff;
}

.streamon-featured-plan--free .streamon-featured-plan__price p {
	color: #6b7280;
}

/* streamon_main.php */
.streamon-main-hero {
	padding: 154px 0 68px;
	background:
		radial-gradient(circle at top right, rgba(36, 97, 233, 0.22), transparent 28%),
		linear-gradient(180deg, #f8fbff 0%, #eef4ff 58%, #ffffff 100%);
}

.streamon-main-hero__copy {
	max-width: 860px;
}

.streamon-main-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 0 14px;
	border-radius: 999px;
	background: rgba(36, 97, 233, 0.12);
	color: #0b4fc7;
	font-size: 14px;
	font-weight: 700;
}

.streamon-main-hero h1 {
	margin: 18px 0 0;
	color: #111827;
	font-size: 52px;
	font-weight: 700;
	line-height: 1.18;
	letter-spacing: -0.03em;
	word-break: keep-all;
}

.streamon-main-hero p {
	margin: 18px 0 0;
	color: #4b5563;
	font-size: 19px;
	line-height: 1.75;
	word-break: keep-all;
}

.streamon-main-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 30px;
}

.streamon-main-hero__primary,
.streamon-main-hero__secondary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 180px;
	min-height: 54px;
	padding: 0 24px;
	border-radius: 999px;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	transition: all .2s ease;
}

.streamon-main-hero__primary {
	background: #111;
	color: #fff;
}

.streamon-main-hero__primary:hover {
	background: #2461e9;
	color: #fff;
}

.streamon-main-hero__secondary {
	border: 1px solid #cdd8eb;
	background: #fff;
	color: #111827;
}

.streamon-main-hero__secondary:hover {
	border-color: #2461e9;
	color: #2461e9;
}

.streamon-main-shell .streamon-main-tabnav-wrap {
	position: sticky;
	top: 0;
	z-index: 20;
	padding: 12px 0px;
	margin-top: -1px;
	background: #fff;
	backdrop-filter: blur(10px);
	text-align: center;
	transition: box-shadow .2s ease, border-color .2s ease;
	border-top: 1px solid transparent;
	box-shadow: none;
}

.streamon-main-shell .visual-box .cta-group .reqModal,
.streamon-main-shell .visual-box .cta-group .reqModal a {
	cursor: pointer;
}

.streamon-main-shell.streamon-main-shell--stuck .streamon-main-tabnav-wrap {
	border-top-color: #eceff5;
	box-shadow: 0 10px 22px rgba(15, 23, 42, 0.05);
}

.streamon-main-shell .streamon-main-tabnav {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 auto;
	padding: 6px;
	border: 1px solid #dde5f1;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06);
}

.streamon-main-shell .streamon-main-tabnav__indicator {
	position: absolute;
	top: 6px;
	left: 6px;
	height: 42px;
	border-radius: 999px;
	background: #2461e9;
	transition: transform .32s cubic-bezier(.2,.8,.2,1), width .32s cubic-bezier(.2,.8,.2,1);
	z-index: 0;
}

.streamon-main-shell .streamon-main-tabnav a {
	position: relative;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 96px;
	min-height: 42px;
	padding: 0 18px;
	border-radius: 999px;
	color: #4b5563;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	transition: color .2s ease;
}

.streamon-main-shell .streamon-main-tabnav a svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
	opacity: .8;
	transition: opacity .2s ease;
}

.streamon-main-shell .streamon-main-tabnav a.is-active {
	color: #fff;
}

.streamon-main-tabnav a.is-active svg {
	opacity: 1;
}

.streamon-main-page .streamon-main-section {
	scroll-margin-top: 170px;
}

.streamon-main-page .streamon-main-operation-grid .inner {
	max-width: 1280px;
	margin: 0 auto;
}

/*
 * All four operation-grid sections (VOD/live/webinar/LMS) share one card
 * shape reused from wowza.php's card component (.media-wowza.wowza-box1
 * .listbox li: 98px icon circle, icon + txtbox as direct li children —
 * see wowza.php's "제공 사항" grid and sub.css around line 5024). Only
 * the background pairing differs per section, applied further below.
 */
.streamon-main-page .streamon-main-operation-grid .listbox ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.streamon-main-page .streamon-main-operation-grid .listbox ul li {
	width: calc((100% - 40px) / 3);
	border-radius: 15px;
	background: #fff;
	border: 1px solid #ddd;
	padding: 33px 10px 33px 33px;
	display: flex;
	align-items: center;
}

.streamon-main-page .streamon-main-operation-grid .listbox .icon {
	width: 98px;
	height: 98px;
	border-radius: 98px;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 98px;
}

.streamon-main-page .streamon-main-operation-grid .listbox .icon img {
	width: 32px;
}

.streamon-main-page .streamon-main-operation-grid .listbox .txtbox {
	width: calc(100% - 98px);
	padding-left: 38px;
	font-size: 20px;
	font-weight: 400;
	color: #222;
	line-height: 1.5;
	letter-spacing: -0.02em;
}

.streamon-main-page .streamon-main-operation-grid .listbox .txtbox dt {
	margin: 0 0 10px;
	font-size: 22px;
	font-weight: 700;
	color: #222;
	letter-spacing: -0.02em;
}

.streamon-main-page .streamon-main-operation-grid .listbox .txtbox dd {
	font-size: 16px;
	line-height: 1.6;
	color: #444;
}

@media screen and (max-width: 1024px) {
	.streamon-main-page .streamon-main-operation-grid .listbox ul li {
		padding: 25px 10px 25px 25px;
	}

	.streamon-main-page .streamon-main-operation-grid .listbox .txtbox {
		padding-left: 25px;
		font-size: 18px;
	}
}

@media screen and (max-width: 960px) {
	.streamon-main-page .streamon-main-operation-grid .listbox ul li {
		width: calc((100% - 10px) / 2);
	}
}

@media screen and (max-width: 760px) {
	.streamon-main-page .streamon-main-operation-grid .listbox ul li {
		width: 100%;
	}
}

@media screen and (max-width: 640px) {
	.streamon-main-page .streamon-main-operation-grid .listbox ul li {
		padding: 20px 10px 25px 20px;
	}

	.streamon-main-page .streamon-main-operation-grid .listbox .txtbox {
		padding-left: 20px;
		font-size: 16px;
	}
}

/*
 * Background pairing per section — same card shape everywhere, only the
 * section/card colors swap: VOD/webinar = gray section + white card,
 * live/LMS = white section + gray card.
 */
#live-section .streaming-protocol-transcoding {
	background: #fff;
}

#live-section .streamon-main-operation-grid .listbox ul li {
	background: #f5f5f5;
	border-color: transparent;
}

#live-section #webinar-operation-grid {
	background: #f5f5f5;
}

#live-section #webinar-operation-grid .listbox ul li {
	background: #fff;
	border-color: #ddd;
}

.streamon-main-section-head {
	position: relative;
	left: auto;
	width: auto;
	margin-left: calc(50% - 50dvw);
	margin-right: calc(50% - 50dvw);
	padding-top: 34px;
	padding-bottom: 34px;
	padding-left: calc(50dvw - 50% + 42px);
	padding-right: calc(50dvw - 50% + 42px);
	background:
		radial-gradient(circle at top right, rgba(37, 99, 235, 0.12), transparent 28%),
		linear-gradient(180deg, #f8fbff 0%, #f3f7ff 100%);
}

.streamon-main-section-head__panel {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 28px;
	width: 100%;
	max-width: 1350px;
	margin: 0 auto;
	padding: 38px 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.streamon-main-section-head__panel--live {
	background: transparent;
}

.streamon-main-section-head:has(.streamon-main-section-head__panel--live) {
	background:
		radial-gradient(circle at top right, rgba(14, 165, 233, 0.14), transparent 30%),
		linear-gradient(180deg, #fbfdff 0%, #f2f8ff 100%);
}

.streamon-main-section-head__copy {
	max-width: 720px;
}

.streamon-main-section-head__badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 16px 7px 12px;
	border-radius: 999px;
	background: #e7effe;
	color: var(--mainColor);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: -0.01em;
}

.streamon-main-section-head__badge svg {
	width: 14px;
	height: 14px;
	stroke: currentColor;
}

.streamon-main-section-head h2 {
	margin: 18px 0 0;
	color: #111827;
	font-size: 38px;
	font-weight: 700;
	line-height: 1.22;
	letter-spacing: -0.03em;
	word-break: keep-all;
}

.streamon-main-section-head p {
	margin: 16px 0 0;
	color: #536072;
	font-size: 18px;
	line-height: 1.7;
	word-break: keep-all;
}

.streamon-main-section-head__meta {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	gap: 12px;
	width: 280px;
	min-width: 280px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.streamon-main-section-head__meta li {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid #d9e3f3;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.88);
	color: #27415f;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: -0.02em;
	white-space: nowrap;
}

.streamon-main-shell {
	overflow-x: clip;
}

.streamon-main-section--gray {
	background: #f5f5f5;
}

.streamon-main-faq {
	margin-bottom: 0;
}

.streamon-main-faq.bg {
	background-color: #fff;
}

.streamon-main-faq.bg .listbox > ul > li {
	border-color: #f5f5f5;
}

.streamon-main-faq.bg .listbox > ul > li .contentBox {
	background-color: #f5f5f5;
	border-top: none;
}

.streamon-expansion-targets {
	padding: 92px 0;
	background: #f5f5f5;
}

.streamon-expansion-targets .listbox ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.streamon-expansion-targets .listbox ul li {
	width: calc((100% - 40px) / 3);
}

.streamon-expansion-targets .listbox .box {
	min-height: 100%;
}

.streamon-expansion-targets .listbox dt,
.streamon-expansion-targets .listbox dd {
	word-break: keep-all;
}

.streamon-expansion-plan-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
}

@media screen and (max-width:1540px){
	.streamon-main-shell .streamon-main-tabnav-wrap .inner {
		padding: 0;
	}

	.streamon-main-shell .streamon-main-section > .inner {
		padding: 0;
	}
}

.streamon-webinar-overview-cards .listbox ul {
	display:flex;
	flex-wrap:wrap;
	gap:20px;
}

.streamon-webinar-overview-cards .listbox li {
	width:calc((100% - 20px) / 2);
}

.streamon-webinar-targets,
.streamon-lms-targets {
	padding:0 0 92px;
	background:#fff;
}

.streamon-webinar-targets {
	padding:92px 0;
	background:#f5f5f5;
}

.streamon-webinar-flow {
	background:#f5f5f5;
}

.streamon-lms-targets {
	padding:92px 0;
	background:#f5f5f5;
}

.streamon-lms-flow {
	background:#f5f5f5;
}

.streamon-webinar-targets .listbox ul,
.streamon-lms-targets .listbox ul {
	gap:20px;
}

.streamon-webinar-targets .listbox ul li,
.streamon-lms-targets .listbox ul li {
	width:calc((100% - 60px) / 4);
}

.streamon-webinar-targets .listbox .box,
.streamon-lms-targets .listbox .box {
	min-height:100%;
}

.streamon-webinar-targets .listbox dt,
.streamon-webinar-targets .listbox dd,
.streamon-lms-targets .listbox dt,
.streamon-lms-targets .listbox dd {
	word-break:keep-all;
}

.media-wowza.streamon-webinar-highlight-box {
	padding:0;
}

.streamon-webinar-banner__box {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:40px;
	padding:46px 52px;
	border-radius:28px;
	background:linear-gradient(135deg, #0f172a 0%, #1e3a8a 55%, #2563eb 100%);
	box-shadow:0 24px 60px rgba(15, 23, 42, 0.18);
}

.streamon-webinar-banner__copy {
	max-width:760px;
}

.streamon-webinar-banner__copy span {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:10px 18px;
	border-radius:999px;
	background:rgba(255, 255, 255, 0.15);
	font-size:14px;
	font-weight:600;
	color:#dbeafe;
	line-height:1;
	letter-spacing:-0.02em;
}

.streamon-webinar-banner__copy h3 {
	margin-top:18px;
	font-size:38px;
	font-weight:700;
	color:#fff;
	line-height:1.25;
	letter-spacing:-0.03em;
}

.streamon-webinar-banner__copy p {
	margin-top:14px;
	font-size:17px;
	font-weight:400;
	color:rgba(255, 255, 255, 0.86);
	line-height:1.7;
	letter-spacing:-0.02em;
}

.streamon-webinar-banner__actions {
	display:flex;
	flex-direction:column;
	gap:12px;
	min-width:220px;
}

.streamon-webinar-banner__actions a {
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:58px;
	padding:0 24px;
	border-radius:16px;
	font-size:17px;
	font-weight:700;
	line-height:1;
	letter-spacing:-0.02em;
	transition:all .2s ease;
}

.streamon-webinar-banner__primary {
	background:#fff;
	color:#0f172a;
}

.streamon-webinar-banner__primary:hover {
	background:#dbeafe;
	color:#0f172a;
}

.streamon-webinar-banner__secondary {
	border:1px solid rgba(255, 255, 255, 0.34);
	background:rgba(255, 255, 255, 0.08);
	color:#fff;
}

.streamon-webinar-banner__secondary:hover {
	background:rgba(255, 255, 255, 0.18);
	color:#fff;
}

.streamon-testimonial-section {
	padding-bottom:92px;
	background:#fff;
}

.streamon-testimonial-carousel {
	position:relative;
	padding-top:10px;
}

.streamon-testimonial-list {
	position:relative;
	min-height:350px;
	margin:0;
	padding:0 0 20px;
	list-style:none;
	overflow:visible;
}

.streamon-testimonial-list li {
	position:absolute;
	top:20px;
	left:50%;
	display:flex;
	width:min(480px, 42%);
	min-height:258px;
	flex-direction:column;
	align-items:center;
	justify-content:flex-start;
	padding:38px 34px 34px;
	border:1px solid #dfe4ec;
	border-radius:18px;
	background:#fafafa;
	opacity:.74;
	transform:translateX(-50%) scale(.9);
	box-shadow:none;
	transition:transform .45s ease, opacity .45s ease, background-color .45s ease, border-color .45s ease, box-shadow .45s ease;
}

.streamon-testimonial-list li.is-prev {
	z-index:1;
	transform:translateX(calc(-50% - 31rem)) scale(.9);
}

.streamon-testimonial-list li.is-next {
	z-index:1;
	transform:translateX(calc(-50% + 31rem)) scale(.9);
}

.streamon-testimonial-list li.is-hidden {
	opacity:0;
	pointer-events:none;
	transform:translateX(-50%) scale(.86);
}

.streamon-testimonial-list li.is-active {
	z-index:2;
	min-height:284px;
	border-color:#cfd6e3;
	background:#fff;
	opacity:1;
	transform:translateX(-50%) scale(1);
	box-shadow:0 18px 42px rgba(17, 17, 17, .08);
}

.streamon-testimonial-avatar {
	display:flex;
	align-items:center;
	justify-content:center;
	width:58px;
	height:58px;
	margin-bottom:16px;
	border-radius:999px;
	font-size:16px;
	font-weight:700;
	line-height:1;
	letter-spacing:-0.02em;
	color:#0f172a;
}

.streamon-testimonial-avatar--1 {
	background:#cbe2ff;
}

.streamon-testimonial-avatar--2 {
	background:#ffe07d;
}

.streamon-testimonial-avatar--3 {
	background:#d9c2ff;
}

.streamon-testimonial-list cite {
	display:block;
	margin-top:0;
	color:#666;
	font-size:13.5px;
	font-style:normal;
	font-weight:400;
	line-height:1.5;
	text-align:center;
	word-break:keep-all;
}

.streamon-testimonial-list cite:after {
	content:"";
	display:block;
	width:32px;
	height:1px;
	margin:12px auto 0;
	background:#d7dbe2;
}

.streamon-testimonial-list blockquote {
	margin:20px 0 0;
}

.streamon-testimonial-list blockquote p {
	color:#222;
	font-size:15px;
	font-weight:500;
	line-height:1.68;
	text-align:center;
	word-break:keep-all;
}

.streamon-testimonial-list li.is-active blockquote p {
	font-size:15.6px;
}

@media all and (max-width:1280px){
	.streamon-main-hero {
		padding: 138px 0 54px;
	}

	.streamon-main-hero h1 {
		font-size: 44px;
	}

	.streamon-main-hero p {
		font-size: 17px;
	}

	.streamon-main-section-head {
		padding: 24px 30px 14px;
	}

	.streamon-main-section-head__panel {
		flex-direction: column;
		align-items: flex-start;
		padding: 32px 30px;
		border-radius: 26px;
	}

	.streamon-main-section-head__copy {
		max-width: 100%;
	}

	.streamon-main-section-head h2 {
		font-size: 32px;
	}

	.streamon-main-section-head p {
		font-size: 17px;
	}

	.streamon-main-section-head__meta {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		width: auto;
		min-width: 0;
		max-width: 100%;
		justify-content: flex-start;
	}

	.streamon-webinar-banner__box {
		padding:38px 32px;
	}

	.streamon-webinar-banner__copy h3 {
		font-size:32px;
	}

	.streamon-expansion-targets .listbox ul li {
		width: calc((100% - 20px) / 2);
	}

	.streamon-webinar-targets .listbox ul li,
	.streamon-lms-targets .listbox ul li {
		width:calc((100% - 20px) / 2);
	}

	.streamon-testimonial-list li {
		width:min(440px, 44%);
	}

	.streamon-testimonial-list li.is-prev {
		transform:translateX(calc(-50% - 24rem)) scale(.9);
	}

	.streamon-testimonial-list li.is-next {
		transform:translateX(calc(-50% + 24rem)) scale(.9);
	}
}

@media all and (max-width:767px){
	.streamon-main-hero {
		padding: 124px 0 42px;
	}

	.streamon-main-hero h1 {
		font-size: 32px;
	}

	.streamon-main-hero p {
		font-size: 15px;
		line-height: 1.65;
	}

	.streamon-main-hero__actions {
		flex-direction: column;
	}

	.streamon-main-hero__primary,
	.streamon-main-hero__secondary {
		width: 100%;
		min-width: 0;
	}

	.streamon-main-tabnav {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		width: 100%;
		gap: 6px;
		border-radius: 20px;
	}

	.streamon-main-tabnav a {
		min-width: 0;
		min-height: 38px;
		padding: 0 10px;
		font-size: 13px;
	}

	.streamon-main-page .streamon-main-section {
		scroll-margin-top: 132px;
	}

	.streamon-main-section-head {
		padding: 20px 20px 10px;
	}

	.streamon-main-section-head__panel {
		gap: 20px;
		padding: 24px 20px;
		border-radius: 22px;
	}

	.streamon-main-section-head h2 {
		font-size: 25px;
		line-height: 1.28;
	}

	.streamon-main-section-head p {
		margin-top: 10px;
		font-size: 14px;
		line-height: 1.55;
	}

	.streamon-main-section-head__meta {
		gap: 8px;
	}

	.streamon-main-section-head__meta li {
		min-height: 38px;
		padding: 0 14px;
		font-size: 12px;
	}

	.streamon-webinar-overview-cards .listbox li,
	.streamon-webinar-targets .listbox li,
	.streamon-lms-targets .listbox li,
	.streamon-expansion-targets .listbox li {
		width:100%;
	}

	.streamon-webinar-banner__box {
		flex-direction:column;
		align-items:flex-start;
		padding:28px 22px;
		border-radius:22px;
	}

	.streamon-webinar-banner__copy h3 {
		font-size:26px;
	}

	.streamon-webinar-banner__copy p {
		font-size:15px;
	}

	.streamon-webinar-banner__actions {
		width:100%;
		min-width:0;
	}

	.streamon-webinar-banner__actions a {
		width:100%;
		min-height:52px;
		font-size:15px;
	}

	.streamon-testimonial-section {
		padding-bottom:64px;
	}

	.streamon-testimonial-carousel {
		padding-top:0;
	}

	.streamon-testimonial-list {
		display:grid;
		grid-template-columns:1fr;
		gap:12px;
		min-height:auto;
		padding-bottom:0;
	}

	.streamon-testimonial-list li {
		position:relative;
		top:auto;
		left:auto;
		width:100%;
		min-height:auto;
		padding:28px 22px;
		opacity:1;
		transform:none;
	}

	.streamon-testimonial-list li.is-prev,
	.streamon-testimonial-list li.is-next,
	.streamon-testimonial-list li.is-hidden,
	.streamon-testimonial-list li.is-active {
		transform:none;
		min-height:auto;
	}

	.streamon-testimonial-list li.is-prev,
	.streamon-testimonial-list li.is-next,
	.streamon-testimonial-list li.is-hidden {
		display:none;
	}

	.streamon-testimonial-avatar {
		width:52px;
		height:52px;
		font-size:14px;
	}
}

/* StreamOn offline page */
.streamon-offline-page .streamon-offline-hero .txtbox {
    line-height: 1.8;
}

.streamon-offline-page .streamon-offline-maintenance .data-table table,
.streamon-offline-page .streamon-offline-spec .data-table table {
    table-layout: fixed;
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary,
.vps-choice-guide.product-list2.type-A .plan-summary {
    margin-top: 36px;
    opacity: 1;
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary > ul,
.vps-choice-guide.product-list2.type-A .plan-summary > ul {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary > ul > li,
.vps-choice-guide.product-list2.type-A .plan-summary > ul > li {
    position: relative;
    opacity: 1;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding: 32px;
    border: 1px solid #dfe7f5;
    border-radius: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 18px 38px rgba(15, 23, 42, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary > ul > li::before,
.vps-choice-guide.product-list2.type-A .plan-summary > ul > li::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 32px;
    width: 64px;
    height: 4px;
    border-radius: 999px;
    background: var(--mainColor);
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary > ul > li:hover,
.vps-choice-guide.product-list2.type-A .plan-summary > ul > li:hover {
    transform: translateY(-4px);
    border-color: rgba(5, 105, 255, 0.18);
    box-shadow: 0 24px 44px rgba(5, 105, 255, 0.12);
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary .title,
.vps-choice-guide.product-list2.type-A .plan-summary .title {
    min-height: 0;
    margin-bottom: 18px;
    text-align: left;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.03em;
    color: #111;
}

.vps-choice-guide.product-list2.type-A .plan-summary .title {
    text-align: center;
}

.streamon-offline-page .streamon-offline-maintenance .plan-summary .txtbox,
.vps-choice-guide.product-list2.type-A .plan-summary .txtbox {
    width: 100%;
    margin-top: 0;
    padding-left: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex: 1 1 auto;
    text-align: center;
    line-height: 1.8;
    color: #555;
    font-size: 17px;
    font-weight: 400;
    word-break: keep-all;
}

.streamon-offline-page .streamon-offline-maintenance .data-table td strong {
    font-weight: 700;
    color: var(--mainColor);
}

.streamon-offline-page .streamon-offline-note {
    margin-top: 24px;
}

@media screen and (max-width: 767px) {
    .streamon-offline-page .streamon-offline-maintenance .plan-summary > ul > li,
    .vps-choice-guide.product-list2.type-A .plan-summary > ul > li {
        min-height: 0;
        padding: 32px 22px 24px;
        border-radius: 18px;
    }

    .streamon-offline-page .streamon-offline-maintenance .plan-summary li::before,
    .vps-choice-guide.product-list2.type-A .plan-summary li::before {
        left: 22px;
        width: 52px;
    }

    .streamon-offline-page .streamon-offline-maintenance .plan-summary .title,
    .vps-choice-guide.product-list2.type-A .plan-summary .title {
        font-size: 24px;
        margin-bottom: 14px;
    }

    .streamon-offline-page .streamon-offline-maintenance .plan-summary .txtbox,
    .vps-choice-guide.product-list2.type-A .plan-summary .txtbox {
        font-size: 15px;
    }

    .streamon-offline-page .streamon-offline-hero .btn-gr .btn {
        width: 100%;
    }
}

.streamon-education-page .streamon-education-hero .txtbox {
    max-width: 760px;
}

.streamon-education-page .streamon-education-hero .btn_link {
    margin-top: 28px;
}

.streamon-education-page .streamon-education-hero .btn_link,
.streamon-education-page .streamon-education-hero .btn_link a {
    cursor: pointer;
}

.streamon-education-page .streamon-education-intro .feature-list {
    margin-top: 40px;
}

.streamon-education-page .streamon-education-curriculum .listbox ul {
    align-items: stretch;
}

.streamon-education-page .streamon-education-curriculum .listbox li {
    align-items: flex-start;
    min-height: 188px;
}

.streamon-education-page .streamon-education-curriculum .listbox li .txtbox dt {
    display: block;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.35;
}

.streamon-education-page .streamon-education-curriculum .listbox li .txtbox dt h3 {
    font: inherit;
    color: inherit;
}

.streamon-education-page .streamon-education-curriculum .listbox li .txtbox dd {
    margin-top: 10px;
    font-size: 17px;
    color: #555;
    line-height: 1.6;
}

.streamon-education-page .streamon-education-process .data-table tbody th {
    width: 24%;
}

.streamon-education-page .streamon-education-process .data-table tbody td {
    text-align: left;
    padding-left: 24px;
    padding-right: 24px;
}

.streamon-education-page .streamon-education-faq {
    margin-bottom: 0;
}

@media screen and (max-width: 1280px) {
    .streamon-education-page .streamon-education-curriculum .listbox li {
        min-height: 170px;
    }
}

@media screen and (max-width: 640px) {
    .streamon-education-page .streamon-education-curriculum .listbox li {
        min-height: 0;
    }

    .streamon-education-page .streamon-education-curriculum .listbox li .txtbox dt {
        font-size: 18px;
    }

    .streamon-education-page .streamon-education-curriculum .listbox li .txtbox dd {
        font-size: 15px;
    }

    .streamon-education-page .streamon-education-process .data-table tbody td {
        padding-left: 14px;
        padding-right: 14px;
    }
}

/* Legacy global selectors retained for identical rendering. */
@media screen and (max-width:640px) {
    .provide-box .data-table tbody th,tr { height:50px; font-size:13px;line-height: 20px;}
}
@media screen and (max-width:640px) {
    .product-table .data-table tbody th,tr { height:40px; font-size:13px;line-height: 20px;}
}
@media screen and (max-width:640px) {
    .managed-box2 .dataTable tbody th,td { font-size: 13px; }
}
.about-box .about-history ul,li { list-style: none; }
