.cc-board-section { position: relative; width: 100%; padding: 60px 0px 70px; background: rgb(247, 248, 250); font-family: "Noto Sans KR", sans-serif; overflow: hidden; }
.cc-board-section::before { content: ""; position: absolute; right: -100px; bottom: -120px; width: 520px; height: 520px; background: url("/ci/Caritas_Symbol.png") center center / contain no-repeat; opacity: 0.06; filter: grayscale(100%) brightness(0.45) contrast(0.9) blur(1px); pointer-events: none; z-index: 0; }
.cc-board-section::after { content: ""; position: absolute; left: -250px; top: -250px; width: 700px; height: 700px; background: radial-gradient(circle, rgba(123, 31, 36, 0.043) 0%, rgba(123, 31, 36, 0) 70%); z-index: 0; }
.cc-board-wrap { position: relative; z-index: 2; width: 94%; max-width: 1450px; margin: 0px auto; display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 36px; }
.cc-board-box { padding: 38px; background: rgb(255, 255, 255); border: 1px solid rgba(123, 31, 36, 0.06); border-radius: 26px; box-shadow: rgba(0, 0, 0, 0.05) 0px 15px 40px, rgba(255, 255, 255, 0.8) 0px 1px 0px inset; }
.cc-board-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; padding-bottom: 24px; border-bottom: 2px solid rgb(123, 31, 36); }
.cc-board-title-area h2 { margin: 0px; color: rgb(32, 37, 43); font-size: 34px; font-weight: 800; letter-spacing: -1px; }
.cc-board-title-area p { margin: 10px 0px 0px; color: rgb(122, 122, 122); font-size: 15px; line-height: 1.7; }
.cc-board-more { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; flex: 0 0 42px; border-radius: 50%; background: rgb(140, 36, 49); color: rgb(255, 255, 255); text-decoration: none; font-size: 28px; line-height: 1; box-shadow: rgba(123, 31, 36, 0.18) 0px 8px 18px; }
.cc-board-list { margin-top: 18px; }
.cc-board-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 58px; border-bottom: 1px solid rgb(236, 236, 236); color: rgb(34, 34, 34); text-decoration: none; transition: background-color 0.2s; }
.cc-board-row:hover { background: rgba(123, 31, 36, 0.024); }
.cc-board-row:last-child { border-bottom-width: medium; border-bottom-style: none; border-bottom-color: currentcolor; }
.cc-board-title { display: flex; align-items: center; flex: 1 1 0%; min-width: 0px; gap: 7px; }
.cc-board-title-text { min-width: 0px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: rgb(34, 34, 34); font-size: 16.5px; font-weight: 500; }
.cc-board-badge-new { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; padding: 4px 7px; border-radius: 999px; background: rgb(140, 36, 49); color: rgb(255, 255, 255); font-size: 10px; line-height: 1; font-weight: 800; letter-spacing: 0.3px; }
.cc-board-status { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 56px; box-sizing: border-box; padding: 6px 10px; border-radius: 999px; font-size: 12px; line-height: 1; font-weight: 700; white-space: nowrap; }
.cc-board-status-open { color: rgb(23, 114, 69); background: rgb(234, 247, 240); border: 1px solid rgb(204, 235, 217); }
.cc-board-status-today { color: rgb(255, 255, 255); background: rgb(193, 60, 54); border: 1px solid rgb(169, 46, 41); }
.cc-board-status-closed { color: rgb(119, 119, 119); background: rgb(241, 242, 243); border: 1px solid rgb(225, 227, 229); }
.cc-board-date { flex: 0 0 auto; color: rgb(136, 136, 136); font-size: 15px; white-space: nowrap; }
.cc-board-empty { padding: 45px 0px; text-align: center; color: rgb(153, 153, 153); }
@media (max-width: 1100px) {.cc-board-wrap { width: 94%; max-width: 100%; grid-template-columns: 1fr; gap: 26px; }
.cc-board-section::before { width: 360px; height: 360px; right: -80px; bottom: -80px; }}
@media (max-width: 768px) {.cc-board-section { padding: 38px 0px 45px; }
.cc-board-wrap { width: 100%; padding: 0px 14px; box-sizing: border-box; gap: 20px; }
.cc-board-box { width: 100%; min-width: 0px; padding: 24px 18px 20px; box-sizing: border-box; border-radius: 18px; }
.cc-board-head { gap: 12px; padding-bottom: 18px; }
.cc-board-title-area { min-width: 0px; flex: 1 1 0%; }
.cc-board-title-area h2 { font-size: 26px; line-height: 1.25; }
.cc-board-title-area p { font-size: 13.5px; line-height: 1.55; word-break: keep-all; }
.cc-board-more { width: 36px; height: 36px; flex: 0 0 36px; font-size: 24px; box-shadow: none; }
.cc-board-list { margin-top: 12px; }
.cc-board-row { position: relative; min-height: auto; padding: 13px 0px; gap: 8px; align-items: flex-start; }
.cc-board-title { align-items: flex-start; flex-wrap: wrap; gap: 5px 6px; padding-right: 2px; }
.cc-board-title-text { flex-basis: 100%; white-space: normal; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 15px; line-height: 1.45; word-break: keep-all; }
.cc-board-status { min-width: 52px; padding: 5px 8px; font-size: 11px; }
.cc-board-badge-new { padding: 4px 6px; font-size: 9.5px; }
.cc-board-date { padding-top: 2px; font-size: 12.5px; line-height: 1.45; }
.cc-board-section::before { width: 220px; height: 220px; right: -80px; bottom: -65px; opacity: 0.045; }}
@media (max-width: 420px) {.cc-board-wrap { padding: 0px 10px; }
.cc-board-box { padding: 22px 15px 18px; }
.cc-board-title-area h2 { font-size: 24px; }
.cc-board-title-area p { font-size: 13px; }
.cc-board-row { gap: 6px; }
.cc-board-date { font-size: 12px; }}
.cc-recruit-box { min-width: 0px; display: flex; flex-direction: column; }
.cc-recruit-viewport { overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.cc-recruit-viewport.is-ready { overflow: hidden; }
.cc-recruit-track { display: flex; align-items: stretch; transition: transform 0.3s; }
.cc-recruit-page { flex: 0 0 100%; min-width: 0px; scroll-snap-align: start; }
.cc-recruit-box .cc-board-head { display: grid; grid-template-columns: minmax(0px, 1fr) 56px; grid-template-rows: auto auto; gap: 10px 12px; align-items: center; }
.cc-recruit-box .cc-board-title-area { display: contents; }
.cc-recruit-box .cc-board-title-area h2 { grid-area: 1 / 1; }
.cc-recruit-box .cc-board-title-area p { grid-area: 2 / 1; margin: 0px; min-width: 0px; }
.cc-recruit-box .cc-board-more { grid-area: 1 / 2; justify-self: end; }
.cc-recruit-controls { position: static; grid-area: 2 / 2; place-self: center end; display: flex; align-items: center; gap: 4px; margin: 0px; padding: 0px; }
.cc-recruit-controls[hidden] { display: none; }
.cc-recruit-position { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.cc-recruit-nav { display: flex; align-items: center; justify-content: center; flex: 0 0 26px; width: 26px; height: 22px; padding: 0px; border: 1px solid rgb(228, 205, 210); border-radius: 3px; background: rgb(132, 38, 49); color: rgb(255, 255, 255); font-family: inherit; font-size: 18px; line-height: 1; box-shadow: none; cursor: pointer; }
.cc-recruit-nav:hover { background: rgb(108, 28, 39); color: rgb(255, 255, 255); }
.cc-recruit-nav:focus-visible { outline: rgb(198, 91, 107) solid 3px; outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {.cc-recruit-track { transition: none; }}
