/* 2026-10-07 홈페이지 수정요청 9p 카드 디자인 통일
   8페이지 주요서비스 카드의 실제 타이포/색상/간격 값을 기준으로 맞춤 */

.ib-about-solution-v2{
    position:relative;
    background:#f6f7f9;
    overflow:hidden;
}
.ib-about-solution-v2 .ib-container{position:relative;z-index:1}

/* 8페이지 상단 설명문과 동일 */
.ib-about-solution-v2 .ib-about-solution-intro{
    max-width:940px;
    margin:0 auto 42px;
    text-align:center;
}
.ib-about-solution-v2 .ib-about-solution-intro>span{
    display:block;
    max-width:900px;
    margin:0 auto;
    color:var(--ib-neutral-dark);
    font-size:18px;
    font-weight:500;
    line-height:1.8;
    letter-spacing:-.02em;
}

/* 4단계 카드 : 8페이지 서비스 카드와 동일한 카드 규격/타이포 */
.ib-about-solution-v2 .ib-about-solution-flow{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    list-style:none!important;
}
.ib-about-solution-v2 .ib-about-solution-flow li{
    position:relative!important;
    display:block!important;
    min-height:270px!important;
    padding:34px 30px!important;
    border:1px solid #dfe3e8!important;
    background:#fff!important;
    box-shadow:none!important;
    overflow:visible!important;
    transition:transform .22s,box-shadow .22s,border-color .22s!important;
}
.ib-about-solution-v2 .ib-about-solution-flow li:before{
    content:""!important;
    position:absolute!important;
    top:0!important;
    left:0!important;
    width:100%!important;
    height:4px!important;
    background:linear-gradient(90deg,var(--ib-primary-dark),var(--ib-secondary))!important;
}
.ib-about-solution-v2 .ib-about-solution-flow li:hover{
    border-color:#c9d2df!important;
    box-shadow:0 18px 38px rgba(4,30,81,.09)!important;
    transform:translateY(-3px)!important;
}
.ib-about-solution-v2 .ib-about-solution-flow li:not(:last-child):after{
    content:"→"!important;
    position:absolute!important;
    z-index:2!important;
    top:50%!important;
    right:-28px!important;
    display:grid!important;
    width:34px!important;
    height:34px!important;
    place-items:center!important;
    color:var(--ib-primary-dark)!important;
    border:1px solid #dfe3e8!important;
    border-radius:50%!important;
    background:#fff!important;
    font-size:19px!important;
    font-weight:700!important;
    line-height:1!important;
    transform:translateY(-50%)!important;
}
/* 8페이지 아이콘 박스(54x54)와 같은 크기/배경 */
.ib-about-solution-v2 .ib-about-solution-flow span{
    display:grid!important;
    width:54px!important;
    height:54px!important;
    place-items:center!important;
    color:var(--ib-primary-dark)!important;
    background:#f1f4f8!important;
    font-size:15px!important;
    font-weight:800!important;
    line-height:1!important;
}
/* 8페이지 카드 제목과 동일 : 22px / 동일 색상 */
.ib-about-solution-v2 .ib-about-solution-flow strong{
    display:block!important;
    margin:26px 0 0!important;
    color:var(--ib-neutral-dark-4)!important;
    font-size:22px!important;
    font-weight:800!important;
    line-height:1.35!important;
    letter-spacing:-.02em!important;
}

/* 문제점 / 솔루션 카드 : 같은 카드 규격으로 통일 */
.ib-about-solution-v2 .ib-about-problem-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
    margin-top:22px!important;
}
.ib-about-solution-v2 .ib-about-problem-grid article{
    position:relative!important;
    min-height:365px!important;
    padding:34px 30px!important;
    border:1px solid #dfe3e8!important;
    background:#fff!important;
    box-shadow:none!important;
    overflow:hidden!important;
}
.ib-about-solution-v2 .ib-about-problem-grid article:before{
    content:""!important;
    position:absolute!important;
    top:0!important;
    left:0!important;
    width:100%!important;
    height:4px!important;
    background:linear-gradient(90deg,var(--ib-primary-dark),var(--ib-secondary))!important;
}
/* 상단 4개 카드와 동일한 제목값 */
.ib-about-solution-v2 .ib-about-problem-grid h3{
    margin:0 0 22px!important;
    color:var(--ib-neutral-dark-4)!important;
    font-size:22px!important;
    font-weight:800!important;
    line-height:1.35!important;
    letter-spacing:-.02em!important;
}
.ib-about-solution-v2 .ib-about-mini-flow{
    display:flex!important;
    align-items:stretch!important;
    gap:7px!important;
    margin-bottom:24px!important;
}
.ib-about-solution-v2 .ib-about-mini-flow span{
    display:flex!important;
    flex:1!important;
    min-height:46px!important;
    align-items:center!important;
    justify-content:center!important;
    padding:8px 7px!important;
    color:var(--ib-neutral-dark)!important;
    border:1px solid #dfe3e8!important;
    background:#f6f7f9!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1.35!important;
    text-align:center!important;
}
.ib-about-solution-v2 .ib-about-mini-flow i{
    display:flex!important;
    align-items:center!important;
    color:#9a7838!important;
    font-size:15px!important;
    font-style:normal!important;
    font-weight:800!important;
}
.ib-about-solution-v2 .is-solution .ib-about-mini-flow span{
    color:var(--ib-primary-dark)!important;
    border-color:#dfe3e8!important;
    background:#f1f4f8!important;
}
.ib-about-solution-v2 .is-solution .ib-about-mini-flow i{color:var(--ib-primary-dark)!important}
.ib-about-solution-v2 .ib-about-problem-grid ul{
    display:grid!important;
    gap:12px!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}
/* 8페이지 카드 본문과 동일 : 15px / 동일 회색 */
.ib-about-solution-v2 .ib-about-problem-grid li{
    position:relative!important;
    padding-left:20px!important;
    color:var(--ib-neutral)!important;
    font-size:15px!important;
    font-weight:400!important;
    line-height:1.75!important;
    letter-spacing:0!important;
}
.ib-about-solution-v2 .ib-about-problem-grid li:before{
    content:""!important;
    position:absolute!important;
    top:.78em!important;
    left:2px!important;
    width:6px!important;
    height:6px!important;
    border-radius:50%!important;
    background:#9a7838!important;
}
.ib-about-solution-v2 .ib-about-problem-grid .is-solution li:before{background:var(--ib-primary-dark)!important}

@media(max-width:959.98px){
    .ib-about-solution-v2 .ib-about-solution-flow{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .ib-about-solution-v2 .ib-about-solution-flow li:not(:last-child):after{display:none!important}
    .ib-about-solution-v2 .ib-about-problem-grid article{min-height:0!important}
}
@media(max-width:599.98px){
    .ib-about-solution-v2 .ib-about-solution-intro{margin-bottom:30px}
    .ib-about-solution-v2 .ib-about-solution-intro>span{font-size:15px;line-height:1.75}
    .ib-about-solution-v2 .ib-about-solution-flow{grid-template-columns:1fr!important;gap:12px!important}
    .ib-about-solution-v2 .ib-about-solution-flow li{min-height:0!important;padding:27px 22px!important}
    .ib-about-solution-v2 .ib-about-solution-flow span{width:48px!important;height:48px!important;font-size:14px!important}
    .ib-about-solution-v2 .ib-about-solution-flow strong{margin-top:20px!important;font-size:20px!important}
    .ib-about-solution-v2 .ib-about-problem-grid{grid-template-columns:1fr!important;gap:14px!important;margin-top:14px!important}
    .ib-about-solution-v2 .ib-about-problem-grid article{min-height:0!important;padding:27px 22px!important}
    .ib-about-solution-v2 .ib-about-problem-grid h3{font-size:20px!important;margin-bottom:18px!important}
    .ib-about-solution-v2 .ib-about-mini-flow{gap:5px!important;margin-bottom:20px!important}
    .ib-about-solution-v2 .ib-about-mini-flow span{min-height:42px!important;padding:7px 5px!important;font-size:11px!important}
    .ib-about-solution-v2 .ib-about-problem-grid li{font-size:14px!important;line-height:1.65!important}
}

/* 2026-10-08 모바일 한정: 4단계 견적 안내 카드의 과도한 높이와 여백 축소.
   기존 텍스트/구조/PC 디자인은 변경하지 않음. */
@media (max-width: 599.98px) {
    .ib-about-solution-v2 .ib-about-solution-flow {
        gap: 10px!important;
    }
    .ib-about-solution-v2 .ib-about-solution-flow li {
        display: flex!important;
        align-items: center!important;
        gap: 16px!important;
        min-height: 0!important;
        padding: 19px 18px!important;
    }
    .ib-about-solution-v2 .ib-about-solution-flow span {
        flex: 0 0 48px!important;
        width: 48px!important;
        height: 48px!important;
        font-size: 15px!important;
    }
    .ib-about-solution-v2 .ib-about-solution-flow strong {
        flex: 1 1 auto!important;
        min-width: 0!important;
        margin: 0!important;
        font-size: 20px!important;
        line-height: 1.4!important;
    }
}

/* 2026-10-08: 회사소개 모바일 카드의 제목/본문/간격 가독성 통일.
   기존 문구, 기능, PC 카드 디자인은 유지합니다. */
@media (max-width:767px){
    .ib-about-company-page{
        --ib-about-mobile-card-title:#1c232d;
        --ib-about-mobile-card-body:#4f5968;
        --ib-about-mobile-card-title-size:18px;
        --ib-about-mobile-card-body-size:15px;
    }

    /* 서로 다른 카드들의 공통 제목 체계 */
    .ib-about-company-page .ib-about-service-grid h3,
    .ib-about-company-page .ib-about-trust-grid h3,
    .ib-about-company-page .ib-about-solution-v2 .ib-about-solution-flow strong,
    .ib-about-company-page .ib-about-solution-v2 .ib-about-problem-grid h3,
    .ib-about-company-page .ib-about-verification-list h3,
    .ib-about-company-page .ib-about-duty-grid h3,
    .ib-about-company-page .ib-about-process-grid h3,
    .ib-about-company-page .ib-about-process-support article>strong,
    .ib-about-company-page .ib-about-scope-grid strong,
    .ib-about-company-page .ib-about-free-service-grid h3,
    .ib-about-company-page .ib-about-premium-grid h3,
    .ib-about-company-page .ib-about-reward-card h3,
    .ib-about-company-page .ib-about-bonus-card h3{
        color:var(--ib-about-mobile-card-title)!important;
        font-size:var(--ib-about-mobile-card-title-size)!important;
        font-weight:800!important;
        line-height:1.4!important;
        letter-spacing:-.025em!important;
        text-align:left!important;
        word-break:keep-all;
    }

    /* 동일한 본문색/크기/굵기/행간 */
    .ib-about-company-page .ib-about-service-grid article>p,
    .ib-about-company-page .ib-about-trust-grid article p,
    .ib-about-company-page .ib-about-trust-grid article strong,
    .ib-about-company-page .ib-about-solution-v2 .ib-about-problem-grid li,
    .ib-about-company-page .ib-about-verification-list p,
    .ib-about-company-page .ib-about-duty-grid p,
    .ib-about-company-page .ib-about-process-grid p,
    .ib-about-company-page .ib-about-process-support p,
    .ib-about-company-page .ib-about-scope-grid small,
    .ib-about-company-page .ib-about-free-service-grid p,
    .ib-about-company-page .ib-about-premium-grid li{
        color:var(--ib-about-mobile-card-body)!important;
        font-size:var(--ib-about-mobile-card-body-size)!important;
        font-weight:500!important;
        line-height:1.65!important;
        letter-spacing:-.01em!important;
        text-align:left!important;
        overflow-wrap:break-word;
        word-break:keep-all;
    }

    /* 제목과 설명 사이 간격도 카드 종류별로 동일하게 */
    .ib-about-company-page .ib-about-service-grid h3,
    .ib-about-company-page .ib-about-trust-grid h3,
    .ib-about-company-page .ib-about-duty-grid h3,
    .ib-about-company-page .ib-about-free-service-grid h3{
        margin:0 0 5px!important;
    }
    .ib-about-company-page .ib-about-service-grid p,
    .ib-about-company-page .ib-about-trust-grid p,
    .ib-about-company-page .ib-about-duty-grid p,
    .ib-about-company-page .ib-about-free-service-grid p{
        margin:0!important;
    }

    /* 아이콘 카드: 아이콘 왼쪽, 제목 및 설명 오른쪽 */
    .ib-about-company-page .ib-about-service-grid article,
    .ib-about-company-page .ib-about-duty-grid article,
    .ib-about-company-page .ib-about-free-service-grid article{
        display:grid;
        grid-template-columns:48px minmax(0,1fr);
        grid-template-rows:auto auto;
        align-content:center;
        align-items:start;
        column-gap:15px;
        row-gap:0;
        min-height:0;
        padding:20px 18px;
        text-align:left;
    }
    .ib-about-company-page .ib-about-service-grid article>.ib-about-icon,
    .ib-about-company-page .ib-about-duty-grid article>span,
    .ib-about-company-page .ib-about-free-service-grid article>span{
        grid-column:1;
        grid-row:1/span 2;
        width:48px;
        height:48px;
        margin:0;
        place-self:start;
    }
    .ib-about-company-page .ib-about-service-grid article>h3,
    .ib-about-company-page .ib-about-duty-grid article>h3,
    .ib-about-company-page .ib-about-free-service-grid article>h3{
        grid-column:2;
        grid-row:1;
        min-width:0;
    }
    .ib-about-company-page .ib-about-service-grid article>p,
    .ib-about-company-page .ib-about-duty-grid article>p,
    .ib-about-company-page .ib-about-free-service-grid article>p{
        grid-column:2;
        grid-row:2;
        min-width:0;
    }

    /* 전문업체 선별 기준: 번호/제목/설명이 같은 카드 축에 정렬되도록 */
    .ib-about-company-page .ib-about-verification-list li{
        display:grid;
        grid-template-columns:48px minmax(0,1fr);
        grid-template-rows:auto auto;
        align-items:start;
        gap:5px 15px;
        min-height:0;
        padding:20px 18px;
    }
    .ib-about-company-page .ib-about-verification-list li>span{
        grid-column:1;
        grid-row:1/span 2;
        margin:0;
    }
    .ib-about-company-page .ib-about-verification-list li>h3{
        grid-column:2;
        grid-row:1;
        margin:0!important;
    }
    .ib-about-company-page .ib-about-verification-list li>p{
        grid-column:2;
        grid-row:2;
        margin:0!important;
    }

    /* 10단계 프로세스: 번호/STEP와 설명을 좌우 정렬 */
    .ib-about-company-page .ib-about-process-grid li{
        display:grid;
        grid-template-columns:48px minmax(0,1fr);
        grid-template-rows:auto auto;
        align-items:start;
        gap:6px 15px;
        min-height:0;
        padding:20px 18px;
    }
    .ib-about-company-page .ib-about-process-grid .ib-about-process-step{
        grid-column:1;
        grid-row:1/span 2;
        display:flex;
        flex-direction:column;
        gap:3px;
        align-items:center;
        justify-content:flex-start;
        width:48px;
        margin:0;
    }
    .ib-about-company-page .ib-about-process-grid h3{
        grid-column:2;
        grid-row:1;
        margin:0!important;
    }
    .ib-about-company-page .ib-about-process-grid p{
        grid-column:2;
        grid-row:2;
        margin:0!important;
    }

    /* 공종별 카드 및 기타 유형에도 같은 글자 체계를 사용 */
    .ib-about-company-page .ib-about-scope-grid article>div{flex:1;min-width:0}
    .ib-about-company-page .ib-about-scope-grid strong{margin:0 0 5px!important}
    .ib-about-company-page .ib-about-premium-grid article{
        display:grid;
        grid-template-columns:48px minmax(0,1fr);
        grid-template-rows:auto auto auto;
        align-items:center;
        gap:0 15px;
        min-height:0;
        padding:20px 18px;
    }
    .ib-about-company-page .ib-about-premium-grid .ib-about-premium-no{
        grid-column:1;
        grid-row:1;
        width:48px;
        height:48px;
        margin:0;
    }
    .ib-about-company-page .ib-about-premium-grid h3{
        grid-column:2;
        grid-row:1;
        min-width:0;
        margin:0!important;
    }
    .ib-about-company-page .ib-about-premium-grid ul{
        grid-column:1/-1;
        grid-row:2;
        margin:15px 0 0!important;
    }
    .ib-about-company-page .ib-about-premium-grid .ib-about-premium-note{
        grid-column:1/-1;
        grid-row:3;
        margin-top:14px;
        font-size:14px;
        line-height:1.6;
        text-align:left;
    }
    .ib-about-company-page .ib-about-process-support article>strong{margin:0 0 6px!important}
    .ib-about-company-page .ib-about-reward-card h3,
    .ib-about-company-page .ib-about-bonus-card h3{margin-bottom:18px!important}
    .ib-about-company-page .ib-about-check-list span{
        color:var(--ib-about-mobile-card-title)!important;
        font-size:var(--ib-about-mobile-card-body-size)!important;
        font-weight:600!important;
        line-height:1.6!important;
        word-break:keep-all;
    }
}

/* Mobile comparison table: show the two column headings once, above all rows. */
@media (max-width:699.98px){
    .ib-about-company-page .ib-about-difference .ib-about-table-wrap{
        overflow:visible;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table{
        display:block;
        width:100%;
        min-width:0;
        border:0;
        background:transparent;
        box-shadow:none;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead{
        display:block;
        margin:0 0 12px;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead tr{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        border:1px solid #dfe3e8;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead th:first-child{
        display:none;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead th:nth-child(2),
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead th:nth-child(3){
        display:flex;
        align-items:center;
        justify-content:center;
        width:auto;
        min-width:0;
        min-height:54px;
        padding:12px 8px;
        border:0;
        font-size:15px;
        font-weight:800;
        line-height:1.45;
        text-align:center;
        word-break:keep-all;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead th:nth-child(2){
        color:#363e4e;
        background:#eef1f5;
        border-right:1px solid #dfe3e8;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table thead th:nth-child(3){
        color:#79571e;
        background:#f6e9d2;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody tr{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody th{
        padding:13px 15px;
        color:var(--ib-neutral-dark-4);
        background:#f6f7f9;
        font-size:16px;
        font-weight:800;
        line-height:1.5;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody td{
        min-width:0;
        min-height:0;
        padding:17px 14px;
        vertical-align:top;
        font-size:15px;
        font-weight:500;
        line-height:1.65;
        overflow-wrap:break-word;
        word-break:keep-all;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody td.is-general{
        color:#5a6472;
        background:#fbfbfc;
        border-right:1px solid #e4e6e9;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody td.is-bridge{
        color:#332817;
        background:#fff8eb;
        font-weight:700;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody td::before,
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody td::after{
        content:none;
        display:none;
    }
    .ib-about-company-page .ib-about-difference .ib-about-compare-table tbody tr:hover th{
        background:#f6f7f9;
    }
}
