/* ============================================================
   업무사례 — 공통
   ============================================================ */

/* 결과 배지 */
.result-badge{display: inline-flex;align-items: center;justify-content: center;font-size: 18rem;color: var(--color-neutral-1);background: #2b2b2b;border-radius: 10rem;padding: 10rem 15rem;font-weight: 500;}

@media all and (max-width:1440px) {
    .result-badge{font-size: 14rem;padding: 7rem 13rem;}
}



/* 카드 공통 */
.case-item{background: var(--color-neutral-1);border: 1px solid var(--color-neutral-2);border-radius: 10rem;padding: 30rem;height: -webkit-fill-available;transition: .3s;}
.case-item:hover{background: var(--color-bg-2);}
.case-item .tit{display: flex;align-items: flex-start;justify-content: space-between;margin-bottom: 22rem;line-height: 1.4;}
.case-item .tit svg{width: 48rem;height: 48rem;}
.case-item .tit svg rect,
.case-item .tit svg path{transition: .3s;}
.case-item:hover .tit svg rect{fill: var(--color-primary);stroke: var(--color-primary);}
.case-item:hover .tit svg path{stroke: var(--color-neutral-1);}
.case-item .text-content{font-weight: 500;line-height: 1.4;}
.case-item .text-content h3{font-size: 18rem;color: var(--color-primary);margin-bottom: 12rem;font-weight: 600;}
.case-item .text-content p{font-size: 20rem;font-weight: 600;margin-bottom: 20rem;height: 56rem;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;text-overflow: ellipsis;word-break: break-word;}
.case-item .text-content span{display: block;font-size: 16rem;color: var(--color-neutral-7);display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;text-overflow: ellipsis;word-break: break-word;line-height: 1.6;}

@media all and (max-width:1440px) {
    .case-item{padding: 20rem;}
    .case-item .tit svg{width: 35rem;height: 35rem;}
    .case-item .text-content h3{font-size: 15rem;}
    .case-item .text-content p{font-size: 18rem;height: 50rem;margin-bottom: 15rem;}
    .case-item .text-content span{font-size: 14rem;}
}

@media all and (max-width:767px) {
    .case-item .tit{margin-bottom: 20rem;}
    .case-item .tit svg{width: 30rem;height: 30rem;}
    .case-item .tit svg rect{fill: var(--color-primary);stroke: var(--color-primary);}
    .case-item .tit svg path{stroke: var(--color-neutral-1);}
    .case-item .text-content h3{font-size: 14rem;margin-bottom: 10rem;}
    .case-item .text-content p{font-size: 16rem;height: 45rem;}
}



/* ============================================================
   업무사례 목록 (#work-case-list)
============================================================ */
/* 검색창 */
.work-case-search {margin: 0 auto 60rem;max-width: 420rem;}
.work-case-search .search-inner {display: flex;align-items: center;border: 1px solid var(--color-neutral-2);border-radius: 6rem;overflow: hidden;background: #F6F6F680;transition: border-color 0.2s;}
.work-case-search input[type="text"] {flex: 1;border: none;outline: none;height: 48rem;padding: 0 16rem;font-size: 16rem;background: transparent;color: var(--color-neutral-8);}
.work-case-search input[type="text"]::placeholder {color: var(--color-neutral-4);}
.work-case-search button {background: none;border: none;padding: 0 16rem;cursor: pointer;color: var(--color-neutral-5);display: flex;align-items: center;transition: color 0.2s;}
.work-case-search button svg{width: 24rem;height: 24rem;}

@media all and (max-width:1440px) {
    .work-case-search{margin: 0 auto 35rem;}
    .work-case-search input[type="text"]{height: 40rem;font-size: 14rem;}
    .work-case-search button svg{width: 20rem;height: 20rem;}
}

@media all and (max-width:767px) {
    .work-case-search input[type="text"]{height: 48rem;font-size: 16rem;}
}



/* 탭 */
.work-case-tabs {display: flex;flex-wrap: wrap;justify-content: center;gap: 8rem;margin-bottom: 16rem;}
.work-case-tabs .tab-item {display: inline-flex;align-items: center;padding: 12rem 33rem;border: 1px solid var(--color-neutral-2);border-radius: 25rem;font-size: 18rem;color: var(--color-neutral-4);transition: background 0.2s, border-color 0.2s, color 0.2s;white-space: nowrap;}
/* .work-case-tabs .tab-item:hover {border-color: var(--color-primary);color: var(--color-primary);} */
.work-case-tabs .tab-item.active {background: var(--color-primary);border-color: var(--color-primary);color: #fff;font-weight: 600;}
.work-case-tabs.main-tabs {margin-bottom: 50rem;}
.work-case-tabs.sub-tabs {padding: 14rem 0 0;border-top: 1rem dashed var(--color-neutral-2);margin-bottom: 0;}
.work-case-tabs.sub-tabs .tab-item {height: 32rem;padding: 0 16rem;font-size: 13rem;border-color: var(--color-neutral-2);}

@media all and (max-width:1440px) {
    .work-case-tabs .tab-item{font-size: 16rem;padding: 10rem 25rem;}
}

@media all and (max-width:767px) {
    .work-case-tabs.main-tabs{margin-bottom: 75rem;padding-inline: 16rem;}
    .work-case-tabs .tab-item{font-size: 14rem;padding: 7rem 16rem;}
}



/* 검색결과 없음 */
.no-cases {text-align: center;padding: 80rem 0;color: var(--color-neutral-5);font-size: 15rem;}



/* ============================================================
   업무사례 상세 (#work-case-detail)
============================================================ */
/* 2컬럼 그리드 */
.case-detail-section {padding-bottom: 100rem;}
.case-detail-grid {display: flex;gap: 20rem;}

/* 왼쪽: 사건 카드 */
.case-main-card {width: 57%; background: var(--color-bg-2);border-radius: 10rem;padding: 45rem 45rem 100rem;line-height: 1.4;}
.case-main-card .result-badge{margin-bottom: 25rem;}
.case-main-card .case-subtitle {font-size: 18rem;font-weight: 500;color: var(--color-primary);margin-bottom: 12rem;}
.case-main-card .case-title {font-size: 24rem;font-weight: 600;margin-bottom: 48rem;}
.case-content {font-size: 16rem;line-height: 1.6;color: var(--color-neutral-7);}
.case-content p {margin-bottom: 15rem;}
.case-content p:last-child {margin-bottom: 0;}
.case-content img {max-width: 100%;height: auto;}

@media all and (max-width:1023px) {
    .case-detail-section{padding-bottom: 60rem;}

    .case-main-card{padding: 25rem 25rem 50rem;width: 63%;}
    .case-main-card .case-subtitle{font-size: 14rem;margin-bottom: 8rem;}
    .case-main-card .case-title{font-size: 18rem;margin-bottom: 20rem;}
    .case-content{font-size: 14rem;}
}

@media all and (max-width:767px) {
    .case-detail-grid{display: block;}
    .case-main-card{width: 100%;margin-bottom: 50rem;}
}



/* 오른쪽: 담당 변호사 사이드바 */
.case-lawyer-sidebar {width: 43%;padding-left: 100rem; /* position: sticky;top: 100rem; */}
.lawyer-label {font-size: 28rem;font-weight: 600;margin-bottom: 25rem;}
.lawyer-card {}
.lawyer-card .lawyer-photo {border-radius: 10rem;overflow: hidden;margin-bottom: 15rem;font-size: 0;}
.lawyer-card .lawyer-photo img {width: 100%;height: auto;display: block;}
.lawyer-card .lawyer-info {}
.lawyer-card .lawyer-name {font-size: 28rem;font-weight: 600;display: flex;align-items: center;gap: 12rem;line-height: 1.4;}
.lawyer-card .lawyer-position {font-size: 18rem;color: var(--color-primary);display: block;}
.lawyer-card .btn-consult {display: flex;align-items: center;justify-content: center;gap: 6rem;width: 100%;height: 54rem;background: var(--color-primary);color: #fff;font-size: 20rem;font-weight: 600;border-radius: 10rem;text-decoration: none;margin-top: 30rem;}
.lawyer-card .btn-consult svg{width: 24rem;height: 24rem;}
.no-lawyer {font-size: 13rem;color: var(--color-neutral-4);padding: 20rem 0;}

@media all and (max-width:1440px) {
    .lawyer-label{font-size: 22rem;margin-bottom: 20rem;}
    .lawyer-card .lawyer-name{font-size: 22rem;}
    .lawyer-card .lawyer-position{font-size: 16rem;}
    .lawyer-card .btn-consult{font-size: 16rem;height: 48rem;margin-top: 20rem;}
}

@media all and (max-width:1023px) {
    .case-lawyer-sidebar{width: 37%;padding-left: 20rem;}
    .lawyer-card .lawyer-name{font-size: 18rem;display: block;}
    .lawyer-card .lawyer-position{margin-top: 5rem;font-size: 14rem;}
    .lawyer-card .btn-consult svg{width: 20rem;height: 20rem;}
}

@media all and (max-width:767px) {
    .case-lawyer-sidebar{width: 100%;padding-left: 0;}
}



/* 관련 업무사례 (다크) */
.related-cases {line-height: 1.4;}
.related-header {display: flex;align-items: center;justify-content: space-between;margin-bottom: 25rem;}
.related-title {font-size: 28rem;font-weight: 600;margin: 0;}
.related-more {display: inline-flex;align-items: center;gap: 4rem;font-size: 16rem;color: var(--color-neutral-5);line-height: 1;}
.related-more svg{width: 18rem;height: 18rem;flex-shrink: 0;}
.related-grid {gap: 20rem;}

@media all and (max-width:1440px) {
    .related-title{font-size: 22rem;}
    .related-more{font-size: 14rem;}
    .related-more svg{width: 14rem;height: 14rem;}
}

@media all and (max-width:767px) {
    .related-grid-wrap.swiper{margin-right: -16rem;padding-right: 16rem;}
    .related-grid.swiper-wrapper{gap: 0;display: flex;}
    .related-grid-wrap .swiper-progress .progress-bar{position: relative;margin-top: 30rem;height: 3rem;background: var(--color-neutral-2);}
    .related-grid-wrap .swiper-progress .progress-bar > span{background: var(--color-neutral-7) !important;}
    .related-grid-wrap.swiper .related-grid a{height: -webkit-fill-available;}

    .related-header{justify-content: flex-start;gap: 8rem;}
    .related-more{font-size: 0;gap: 0;}
    .related-more svg{width: 20rem;height: 20rem;}
}



/* 관련사례 카드 */
.related-card {padding: 25rem;border: 1px solid var(--color-neutral-2);border-radius: 10rem;text-decoration: none;transition: .3s;}
.related-card:hover{background: var(--color-bg-2);}
.related-card .tit {display: flex;align-items: center;justify-content: space-between;margin-bottom: 42rem;}
.related-card .tit svg{width: 48rem;height: 48rem;}
.related-card .tit svg rect,
.related-card .tit svg path{transition: .3s;}
.related-card:hover .related-arrow {color: var(--color-primary);}
.related-card-sub {font-size: 18rem;font-weight: 500;color: var(--color-primary);margin-bottom: 12rem;line-height: 1.4;}
.related-card-title {font-size: 20rem;font-weight: 600;line-height: 1.4;}
.related-card:hover .tit svg rect{fill: var(--color-primary);stroke: var(--color-primary);}
.related-card:hover .tit svg path{stroke: var(--color-neutral-1);}

@media all and (max-width:1440px) {
    .related-card{padding: 20rem;}
    .related-card .tit{margin-bottom: 22rem;}
    .related-card .tit svg{width: 35rem;height: 35rem;}
    .related-card-sub{font-size: 15rem;}
    .related-card-title{font-size: 18rem;}
}



/* ============================================================
   업무 분야 (#work-page)
============================================================ */
#work-page {}

/* 그리드 */
.work-field-grid { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-flow: row dense; gap: 16rem; }

.work-field-card { background: #fff; border: 1px solid var(--color-neutral-2); border-radius: 10rem; padding: 45rem 30rem; cursor: pointer; transition: border-color 0.2s; height: fit-content; }
.work-field-card .card-inner { display: flex; align-items: center; justify-content: space-between; }
.work-field-card .card-title { font-size: 28rem; font-weight: 600; color: var(--color-neutral-8); line-height: 1.3; }
.work-field-card .card-title p { display: block; font-size: 16rem; font-weight: 400; color: var(--color-neutral-5); margin-top: 10rem; }

.work-field-card span { flex-shrink: 0;display: flex; align-items: center; justify-content: center; cursor: pointer; }
.work-field-card.active span{transform: rotate(180deg);}
.work-field-card span svg{width: 48rem;height: 48rem;}
.work-field-card span svg rect,
.work-field-card span svg path{transition: .3s;}
.work-field-card:hover span svg rect,
.work-field-card.active span svg rect{ fill: var(--color-primary); stroke: var(--color-primary); }
.work-field-card:hover span svg path,
.work-field-card.active span svg path{ stroke: #fff; }

.work-field-panel { background: var(--color-bg-2); border-radius: 10rem; padding: 45rem 30rem; }
.work-field-panel .panel-title { font-size: 28rem; font-weight: 600; color: var(--color-neutral-8); margin-bottom: 15rem; line-height: 1.4; }
.work-field-panel .panel-desc { font-size: 16rem; color: var(--color-neutral-5); line-height: 1.6; }
.work-field-panel .panel-tag { display: flex; flex-wrap: wrap; gap: 10rem; display: none;}
.work-field-panel .panel-tag a { display: inline-flex; align-items: center; padding: 12rem 30rem; border-radius: 25rem; border: 1px solid var(--color-neutral-2); font-size: 18rem; color: var(--color-neutral-4); background: #fff; transition: background 0.2s, border-color 0.2s, color 0.2s; margin-top: 65rem; }
.work-field-panel .panel-tag a:hover,
.work-field-panel .panel-tag a.is-first { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }

@media all and (max-width:1440px) {
    .work-field-card { padding: 25rem; }
    .work-field-card .card-title { font-size: 18rem; }
    .work-field-card .card-title p { font-size: 13rem; }
    .work-field-card span svg{width: 35rem;height: 35rem;}
    
    .work-field-panel { padding: 25rem; }
    .work-field-panel .panel-title { font-size: 18rem; }
    .work-field-panel .panel-desc { font-size: 13rem; }
    .work-field-panel .panel-tag{gap: 8rem;}
    .work-field-panel .panel-tag a{font-size: 14rem;padding: 10rem 25rem;margin-top: 45rem;}
}

@media all and (max-width:1023px) {
    .work-field-grid { grid-template-columns: repeat(2, 1fr); }
    
    .work-field-card:hover span svg rect{ fill: var(--color-neutral-1); stroke: var(--color-neutral-2); }
    .work-field-card:hover span svg path{ stroke: #949494; }
    .work-field-card.active span svg rect{ fill: var(--color-primary); stroke: var(--color-primary); }
    .work-field-card.active span svg path{ stroke: #fff; }

    .work-field-panel .panel-tag a:hover{background: var(--color-neutral-1);color: var(--color-neutral-4);border-color: var(--color-neutral-2);}
}

@media all and (max-width:767px) {
    .work-field-grid { grid-template-columns: repeat(1, 1fr); gap: 10rem; }

    .work-field-card { padding: 20rem; }

    .work-field-panel { padding: 25rem 20rem; }
    .work-field-panel .panel-title { font-size: 18rem; }
    .work-field-panel .panel-tag a { font-size: 12rem; padding: 7rem 16rem; }
}



/* ============================================================
   업무 분야 상세 (#work-field-detail)
============================================================ */
#work-field-detail {}

.work-field-info-section { padding-bottom: 100rem; }
.wf-desc-panel {text-align: center;}
.wf-desc-panel .wf-desc-box { background: var(--color-bg-2); border-radius: 10rem; padding: 45rem; margin-bottom: 40rem; }
.wf-desc-panel .wf-desc-text { font-size: 16rem; color: var(--color-neutral-7); line-height: 1.6;text-align: left;}
.wf-desc-panel .btn-wf-consult { display: inline-flex; align-items: center; justify-content: center; gap: 8rem; height: 54rem; width: 420rem; background: var(--color-primary); color: #fff; font-size: 20rem; line-height: 1.2; font-weight: 500; border-radius: 10rem;}
.wf-desc-panel .btn-wf-consult svg{width: 24rem;height: 24rem;flex-shrink: 0;}

.wf-header{display: flex;align-items: center;justify-content: space-between;margin-bottom: 25rem; }
.wf-header .wf-section-title { font-size: 28rem; font-weight: 600; line-height: 1.4; }

@media all and (max-width:1440px) {
    .wf-desc-panel .wf-desc-box { padding: 35rem; }
    .wf-desc-panel .wf-desc-text { font-size: 14rem; }
    .wf-desc-panel .btn-wf-consult { font-size: 16rem; height: 48rem; padding: 0 30rem; }
    .wf-desc-panel .btn-wf-consult svg{width: 20rem;height: 20rem;}
    
    .wf-header{margin-bottom: 20rem;}
    .wf-header .wf-section-title { font-size: 22rem; }
}

@media all and (max-width:1023px) {
    .work-field-info-section{padding-bottom: 60rem;}
    .wf-desc-panel .wf-desc-box{padding: 25rem;margin-bottom: 25rem;}
    .wf-desc-panel .btn-wf-consult{width: 100%;}
}

@media all and (max-width:767px) {
    .wf-header{justify-content: flex-start;gap: 8rem;}
}



/* 연관 변호사 */
.work-field-lawyers-section { padding-bottom: 100rem; }

.wf-lawyers-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20rem; }
.wf-lawyer-card {}
.wf-lawyer-card .wf-lawyer-photo { border-radius: 10rem; overflow: hidden; margin-bottom: 15rem; font-size: 0; }
.wf-lawyer-card .wf-lawyer-photo img { width: 100%; height: auto; display: block; }
.wf-lawyer-card .wf-lawyer-info {}
.wf-lawyer-card .wf-lawyer-info .wf-lawyer-name { display: flex; align-items: center; gap: 12rem; font-size: 28rem; font-weight: 600; line-height: 1.4; }
.wf-lawyer-card .wf-lawyer-info .wf-lawyer-name .wf-lawyer-position { font-size: 18rem; color: var(--color-primary); display: block;}

@media all and (max-width:1440px) {
    .wf-lawyer-card .wf-lawyer-info .wf-lawyer-name{font-size: 22rem;}
    .wf-lawyer-card .wf-lawyer-info .wf-lawyer-name .wf-lawyer-position{font-size: 16rem;}
}

@media all and (max-width:1023px) {
    .work-field-lawyers-section{padding-bottom: 60rem;}
    .wf-lawyers-list { grid-template-columns: repeat(2, 1fr); gap: 16rem; }
    .wf-lawyer-card .wf-lawyer-info .wf-lawyer-name{display: block;font-size: 18rem;}
    .wf-lawyer-card .wf-lawyer-info .wf-lawyer-name .wf-lawyer-position{margin-top: 5rem;font-size: 14rem;}
}

@media all and (max-width:767px) {
    .wf-lawyers-list-wrap.swiper{margin-right: -16rem;padding-right: 16rem;}
    .wf-lawyers-list-wrap .swiper-progress .progress-bar{position: relative;margin-top: 30rem;height: 3rem;background: var(--color-neutral-2);}
    .wf-lawyers-list-wrap .swiper-progress .progress-bar > span{background: var(--color-neutral-7) !important;}
    .wf-lawyers-list { gap: 12rem; }
    .wf-lawyers-list.swiper-wrapper{gap: 0;}
    .wf-lawyer-name { font-size: 16rem; }
}



/* 관련 업무사례 */
.work-field-cases-section {  }