/*! (c) 주식회사 이지비아2020 · ezvia.co.kr · 무단 복제·사용 금지 */
.case-detail,.case-list-grid,.case-filter-bar{box-sizing: border-box;max-width: 100%}.case-detail *,.case-list-grid *,.case-filter-bar *{box-sizing: border-box}.case-filter-bar{margin: 0 0 24px;width: 100%;overflow: hidden}.case-filter-scroll{display: flex;align-items: center;gap: 8px;overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;scrollbar-width: thin;padding: 4px 2px 8px}.case-filter-scroll::-webkit-scrollbar{height: 4px}.case-filter-scroll::-webkit-scrollbar-thumb{background: rgba(15,23,42,0.18);border-radius: 999px}.case-filter-chip{flex: 0 0 auto;display: inline-flex;align-items: center;gap: 6px;padding: 8px 14px;border-radius: 999px;border: 1px solid #d1d5db;background: #ffffff;color: #1f2937;font-size: 0.9rem;font-weight: 600;line-height: 1.2;cursor: pointer;white-space: nowrap;transition: background-color 0.15s ease,color 0.15s ease,border-color 0.15s ease}.case-filter-chip:hover{border-color: #9ca3af;background: #f9fafb}.case-filter-chip:focus-visible{outline: 2px solid #0b0f19;outline-offset: 2px}.case-filter-chip.is-active{background: #0b0f19;border-color: #0b0f19;color: #ffffff}.case-filter-chip-building{background: #f8fafc}.case-filter-count{display: inline-block;font-size: 0.78rem;font-weight: 700;padding: 2px 6px;border-radius: 999px;background: rgba(15,23,42,0.08);color: inherit}.case-filter-chip.is-active .case-filter-count{background: rgba(255,255,255,0.22);color: #ffffff}.case-card[hidden],.case-filter-empty[hidden],.case-lb[hidden]{display: none !important}.case-thumb-wrap{display: block;width: 100%;aspect-ratio: 4 / 3;overflow: hidden;background: #f1f5f9;border-radius: 12px 12px 0 0}.case-thumb-img{display: block;width: 100%;height: 100%;object-fit: cover;object-position: center}.case-card-badges{display: flex;flex-wrap: wrap;gap: 6px;align-items: center}.case-badge-worktime{background: #fff7ed;color: #c2410c;border: 1px solid #fed7aa;font-weight: 700}.case-badge-draft{background: #fef3c7;color: #92400e;border: 1px solid #fde68a;font-weight: 700}.case-filter-empty{text-align: center;padding: 36px 20px;margin-top: 16px}.case-reset-btn{margin-top: 14px;cursor: pointer;border: none}.case-top-chips{display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 14px}.case-chip{display: inline-flex;align-items: center;padding: 5px 12px;border-radius: 999px;font-size: 0.84rem;font-weight: 600;text-decoration: none;line-height: 1.3}.case-chip-building{background: #0b0f19;color: #ffffff}.case-chip-service{background: #f1f5f9;color: #1e293b;border: 1px solid #e2e8f0}.case-chip-service:hover,.case-chip-building:hover{opacity: 0.88}.case-chip-draft{background: #fef3c7;color: #92400e;border: 1px solid #fde68a}.case-header{margin-bottom: 20px}.case-lead{word-break: keep-all;overflow-wrap: anywhere}.case-submeta{display: flex;flex-wrap: wrap;gap: 12px;margin: 10px 0 0;font-size: 0.86rem;color: #64748b}.case-info-table{width: 100%}.case-info-table th{white-space: nowrap;width: 110px}.case-gallery-section{margin: 28px 0}.case-gallery-hint{margin: 0 0 10px;font-size: 0.86rem;color: #64748b}.case-photo-grid{display: grid;grid-template-columns: 1fr;gap: 16px}@media (min-width: 640px){.case-photo-grid{grid-template-columns: repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.case-photo-grid{grid-template-columns: repeat(3,minmax(0,1fr))}}.case-photo-card{margin: 0;padding: 0;overflow: hidden;display: flex;flex-direction: column}.case-photo-btn{position: relative;display: block;width: 100%;padding: 0;margin: 0;border: 0;background: #f1f5f9;cursor: zoom-in;aspect-ratio: 3 / 4;overflow: hidden}.case-photo-btn:focus-visible{outline: 3px solid #ff5a1f;outline-offset: -3px}.case-photo-btn img{display: block;width: 100%;height: 100%;object-fit: cover;transition: transform 0.2s ease}.case-photo-btn:hover img{transform: scale(1.02)}.case-stage-badge{position: absolute;top: 10px;left: 10px;z-index: 2;display: inline-block;padding: 4px 10px;border-radius: 999px;font-size: 0.78rem;font-weight: 700;line-height: 1.2;color: #ffffff;background: #6b7280;box-shadow: 0 2px 6px rgba(0,0,0,0.22)}.case-stage-badge.is-before{background: #6b7280}.case-stage-badge.is-during{background: #ff5a1f}.case-stage-badge.is-after{background: #16a34a}.case-photo-caption{padding: 10px 14px;font-size: 0.88rem;line-height: 1.45;color: #334155;word-break: keep-all;overflow-wrap: anywhere}.case-lb{position: fixed;inset: 0;z-index: 9999;display: flex;align-items: center;justify-content: center;padding: 16px}.case-lb-backdrop{position: absolute;inset: 0;background: rgba(11,15,25,0.88)}.case-lb-panel{position: relative;z-index: 1;width: 100%;max-width: 860px;max-height: 92vh;display: flex;flex-direction: column;align-items: center;color: #ffffff}.case-lb-close{align-self: flex-end;width: 40px;height: 40px;margin-bottom: 8px;border-radius: 999px;border: 1px solid rgba(255,255,255,0.28);background: rgba(255,255,255,0.12);color: #ffffff;font-size: 1.5rem;line-height: 1;cursor: pointer;display: inline-flex;align-items: center;justify-content: center}.case-lb-close:focus-visible,.case-lb-nav:focus-visible{outline: 2px solid #ff5a1f;outline-offset: 2px}.case-lb-img-wrap{position: relative;display: flex;align-items: center;justify-content: center;width: 100%;max-height: 70vh}.case-lb-img-wrap img{max-width: 100%;max-height: 70vh;width: auto;height: auto;object-fit: contain;border-radius: 8px;background: #0b0f19}.case-lb-caption{margin: 12px 0 0;font-size: 0.94rem;line-height: 1.5;color: #e2e8f0;text-align: center;max-width: 100%;overflow-wrap: anywhere}.case-lb-controls{display: flex;align-items: center;justify-content: center;gap: 16px;margin-top: 12px}.case-lb-nav{padding: 8px 14px;border-radius: 8px;border: 1px solid rgba(255,255,255,0.25);background: rgba(255,255,255,0.12);color: #ffffff;font-size: 0.9rem;font-weight: 600;cursor: pointer}.case-lb-count{font-size: 0.88rem;color: #cbd5e1;min-width: 56px;text-align: center}.case-prose{margin: 28px 0;line-height: 1.75;word-break: keep-all;overflow-wrap: anywhere}.case-prose h2{font-size: 1.3rem;margin: 1.8em 0 0.65em;line-height: 1.35}.case-prose h2:first-child{margin-top: 0}.case-prose h3{font-size: 1.12rem;margin: 1.4em 0 0.5em;line-height: 1.4}.case-prose p,.case-prose ul,.case-prose ol{margin: 0 0 1em}.case-prose ul,.case-prose ol{padding-left: 1.35rem}.case-prose img{max-width: 100%;height: auto;border-radius: 8px}.case-prose .table-scroll-container{overflow-x: auto;max-width: 100%;margin: 1em 0}.case-blog-outlink{margin: 24px 0 0 !important;padding-top: 16px;border-top: 1px solid #e2e8f0;font-weight: 600}.case-blog-outlink a{color: #16a34a;text-decoration: none}.case-blog-outlink a:hover{text-decoration: underline}.case-sub-heading{font-size: 1.25rem;font-weight: 700;margin: 0 0 14px;color: #0f172a}.case-faq-section,.case-related-section{margin: 32px 0}.case-faq-list{display: flex;flex-direction: column;gap: 10px}.case-faq-item{border: 1px solid #e2e8f0;border-radius: 12px;background: #ffffff;overflow: hidden}.case-faq-q{padding: 14px 16px;font-weight: 700;font-size: 0.98rem;color: #0f172a;cursor: pointer;list-style: none;display: flex;align-items: center;justify-content: space-between;gap: 12px;word-break: keep-all;overflow-wrap: anywhere}.case-faq-q::-webkit-details-marker{display: none}.case-faq-q::after{content: "+";flex: 0 0 auto;font-size: 1.2rem;font-weight: 600;color: #64748b}.case-faq-item[open] .case-faq-q::after{content: "−"}.case-faq-a{padding: 0 16px 15px;color: #334155;font-size: 0.94rem;line-height: 1.65;border-top: 1px solid #f1f5f9;overflow-wrap: anywhere}.case-faq-a p{margin: 12px 0 0}.case-related-list{list-style: none;padding: 0;margin: 0;display: grid;gap: 10px}.case-related-list li a{display: block;padding: 13px 16px;border-radius: 10px;border: 1px solid #e2e8f0;background: #ffffff;color: #0f172a;font-weight: 600;text-decoration: none;overflow-wrap: anywhere}.case-related-list li a:hover{border-color: #cbd5e1;background: #f8fafc}.case-cta-box{margin: 36px 0 28px;padding: 24px 20px;border-radius: 16px;background: #0b0f19;color: #ffffff;display: flex;flex-direction: column;gap: 18px}@media (min-width: 768px){.case-cta-box{padding: 28px 32px;flex-direction: row;align-items: center;justify-content: space-between}}.case-cta-title{margin: 0 0 6px;font-size: 1.22rem;font-weight: 800;color: #ffffff;line-height: 1.35;word-break: keep-all}.case-cta-desc{margin: 0;font-size: 0.92rem;color: rgba(255,255,255,0.8);line-height: 1.55;word-break: keep-all}.case-cta-actions{display: flex;flex-wrap: wrap;gap: 10px}.case-cta-btn{display: inline-flex;align-items: center;justify-content: center;padding: 11px 16px;border-radius: 10px;font-size: 0.92rem;font-weight: 700;text-decoration: none;line-height: 1.25;flex: 1 1 auto;text-align: center}@media (min-width: 640px){.case-cta-btn{flex: 0 0 auto}}.case-cta-btn-primary{background: #ff5a1f;color: #ffffff}.case-cta-btn-secondary{background: #ffffff;color: #0b0f19}.case-cta-btn-tel{background: rgba(255,255,255,0.12);color: #ffffff;border: 1px solid rgba(255,255,255,0.28)}.case-cta-btn:hover{opacity: 0.92}.case-prevnext{display: grid;grid-template-columns: 1fr;gap: 12px;margin: 24px 0}@media (min-width: 640px){.case-prevnext{grid-template-columns: repeat(2,minmax(0,1fr))}}.case-prevnext-empty{display: none}@media (min-width: 640px){.case-prevnext-empty{display: block}}.case-prevnext-link{display: flex;flex-direction: column;gap: 4px;padding: 14px 16px;border-radius: 12px;border: 1px solid #e2e8f0;background: #ffffff;text-decoration: none;color: #0f172a;min-width: 0}.case-prevnext-link:hover{border-color: #94a3b8;background: #f8fafc}@media (min-width: 640px){.case-prevnext-link.is-next{text-align: right;align-items: flex-end}}.case-prevnext-label{font-size: 0.8rem;font-weight: 600;color: #64748b}.case-prevnext-title{font-size: 0.96rem;font-weight: 700;line-height: 1.4;max-width: 100%;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.case-bottom-actions{display: flex;flex-wrap: wrap;justify-content: center;gap: 10px;margin-top: 20px}@media (max-width: 420px){.case-info-table th{width: 88px;font-size: 0.86rem}.case-info-table td{font-size: 0.88rem;word-break: break-word}.case-cta-box{padding: 20px 16px}.case-cta-actions{flex-direction: column;width: 100%}.case-cta-btn{width: 100%}}