@charset "utf-8";
/* board.css — 게시판·목록·상세·신규 board UI */

.video-wrap {
max-width:860px; margin:0 auto}
.video-container {position:relative; padding-bottom: 56.25%; height:0; overflow:hidden; background:#000}
.video-container iframe,
.video-container object,
.video-container embed,
.video-container video {position: absolute; top:0; left:0; width:100%; height:100%}
/* 검색 */
.board-search {margin-bottom: var(--space-20)}
.board-search:after {content:""; display:block; clear:both}
.board-search .total-page {float:left; color:#686868; font-size: var(--font-size-15); line-height: 2.93em}
.board-search .cate {float:left; margin-left: var(--space-16)}
.board-search .search { float:right; display:flex; align-items:center; gap:var(--space-10)}
.board-search .search input.input {width:300px; max-width:100%; height:44px; min-height:44px; margin:0}
.board-search .search .board__search-btn {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:44px; height:44px; min-height:44px; padding:0; border:none; border-radius:0; background:var(--color-text-body, #454545); cursor:pointer; transition:background-color 0.2s ease}
.board-search .search .board__search-btn:hover {background:#231815}
.board-search .search .board__search-btn img {width:16px; height:16px}
.board--work .ongoing-grid .none {grid-column:1 / -1; width:100%; padding:var(--space-64) 0; margin:0; text-align:center; color:#767676}
/* 리스트 */
.board-list table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #868686}
.board-list table thead th {height:53px; padding: var(--space-10) var(--space-4); color:#333; font-size: var(--font-size-16); font-weight:700; line-height:1.5em; background:#fafafa; border:0; border-bottom:1px solid #ddd}
.board-list table tbody td {height:53px; padding: var(--space-10) var(--space-4); color:#505050; font-size: var(--font-size-16); font-weight:400; line-height:1.5em; text-align:center; border:0; border-bottom:1px solid #ddd}
.board-list table tbody td.subject {text-align:left; padding-left: var(--space-16)}
.board-list table tbody td img {vertical-align:middle; margin: -.2em var(--space-4) 0}
.board-list table tbody td a:hover {text-decoration:underline}
.board-list table tbody tr:hover td {background-color:#fafafa}
.board-list .label {color:#fff; font-weight:500; display:inline-block; padding: 0 var(--space-12); font-size: var(--font-size-14); background:#e84426; border-radius:4px}
.board-list .comment {color:#ff6000; font-size:.85em; font-weight:700; line-height: 1.2em}
.board-list .goods-name {color:#242424; font-weight:700}
.board-list-m {display:none; border-top:2px solid #868686}
.board-list-m ul {padding: 0; margin: 0; list-style:none}
.board-list-m li {padding: var(--space-12) 0; border-bottom:1px solid #ddd}
.board-list-m li img {vertical-align:middle; margin: -.2em var(--space-4) 0; height:16px}
.board-list-m li.none {padding: var(--space-40) 0; text-align:center; color:#999}
.board-list-m .label {display:inline-block; vertical-align:middle; margin: -.2em var(--space-4) 0 0; padding: 0 var(--space-8); color:#fff; background:#e84426; font-weight:500; font-size: var(--font-size-12); line-height: 1.83em; border-radius:4px}
.board-list-m .tit {color:#333; font-size: var(--font-size-15); font-weight:700; line-height:1.4em; letter-spacing:-.03em}
.board-list-m .info {color:#888; font-size: var(--font-size-12); font-weight:400; line-height:1.3em; margin-top: var(--space-8)}
.board-list-m .info span {margin-right: var(--space-10)}
.board-list-m .comment {color:#ff6000; font-size:.85em; font-weight:700; line-height: 1.2em}
.board-list-m .store-name {color:#333; font-size: var(--font-size-17); font-weight:700; line-height:1.4em; letter-spacing:-.03em}
.board-list-m .store-addr {font-size: var(--font-size-14); font-weight:400; line-height:1.3em; color:#505050; margin-top: var(--space-4)}
.board-list-m .btns {margin-top: var(--space-12)}
.board-list-m .btns .btn-map {line-height: 1.75em; margin-right: var(--space-4)}
.board-list-m .goods-name {color:#505050; font-size: var(--font-size-15); font-weight:700; line-height:1.3em; margin-bottom: var(--space-4)}
.simple-list {border-top:2px solid #868686}
.simple-list .link-item {display:flex; align-items:center; padding: var(--space-34) 0; border-bottom:1px solid #ddd}
.simple-list .link-item .num {width:18%; max-width:130px; text-align:center; font-size: var(--font-size-18); font-weight:700; line-height:1.4em; color:#a8a8a8}
.simple-list .link-item .num .notice {display:flex; align-items:center; justify-content:center; width:56px; height:56px; margin: 0 auto; border-radius:100%; background:#e84426; color:#fff; font-weight:700; font-size: var(--font-size-14)}
.simple-list .link-item .cnt {flex:1 1 auto; min-width:0; width:1%; padding: 0 var(--space-10)}
.simple-list .link-item .cnt .tit {color:#242424; font-size: var(--font-size-20); font-weight:600; line-height:1.4em; letter-spacing:-.03em}
.simple-list .link-item .cnt .tit img {vertical-align:middle; margin-left: var(--space-4)}
.simple-list .link-item .cnt .info {display:flex; flex-wrap:wrap; gap: var(--space-8) var(--space-20); margin-top: var(--space-12); color:#878787; font-size: var(--font-size-14); font-weight:400; line-height:1.3em}
.simple-list .link-item .arrow {width:18%; max-width:130px; text-align:center; font-size: var(--font-size-28); font-weight:700; line-height:1.4em; color:#a8a8a8}
.simple-list .link-item:hover {background:#fafafa}
.simple-list .link-item:hover .num {color:var(--color-accent)}
.simple-list .link-item:hover .cnt .tit {color:var(--color-accent)}
.simple-list .link-item:hover .cnt .info {color:#242424}
.simple-list .link-item:hover .arrow {color:var(--color-accent)}
.simple-list .none {width:100%; padding: var(--space-64) 0; margin: 0; text-align:center; color:#767676; border-bottom:1px solid #ddd}
.gallery-list {padding: var(--space-24) 0 0 0; border-bottom:1px solid #ddd; border-top:2px solid #868686}
.gallery-list ul {display:flex; flex-wrap:wrap; margin: 0 calc(-1 * var(--space-16)); padding: 0; list-style:none}
.gallery-list ul li {width:25%; padding: 0 var(--space-16); margin-bottom: var(--space-34); text-align:center}
.gallery-list ul li.none {width:100%; padding: var(--space-64) 0; margin: 0; text-align:center; color:#767676}
.gallery-list ul li a {display:block}
.gallery-list ul li .thumb {position:relative; padding-bottom: 65%; margin-bottom: var(--space-12); overflow:hidden}
.gallery-list ul li .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover}
.gallery-list ul li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08)}
.gallery-list ul li .tit {color:#333; font-size: var(--font-size-16); line-height:1.4em}
.gallery-list ul li .date {color:#767676; font-size: var(--font-size-14); line-height:1.3em; margin-top: var(--space-8)}
.card-list {display:grid; grid-template-columns:repeat(3, 1fr); gap: var(--space-40); margin-bottom: var(--space-40)}
.card-list .none {grid-column: 1 / -1; width:100%; padding: var(--space-64) 0; margin: 0; text-align:center; color:#767676}
.card-list .link-item {display:block; border:1px solid #ddd; border-radius:16px; overflow:hidden}
.card-list .link-item .thumb {position:relative; padding-bottom: 65%; overflow:hidden}
.card-list .link-item .thumb img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:.3s}
.card-list .link-item .info {padding: var(--space-24)}
.card-list .link-item .info .tit {color:#333; font-size: var(--font-size-20); font-weight:700; line-height:1.4em; letter-spacing:-.03em; height:calc(1.4em * 2); overflow:hidden; text-overflow:ellipsis; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical}
.card-list .link-item .info .txt {margin-top: var(--space-16); color:#767676; font-size: var(--font-size-16); line-height:1.5em; letter-spacing:-.03em; height:calc(1.5em * 3); overflow:hidden; text-overflow:ellipsis; white-space:normal; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical}
.card-list .link-item .info .date {margin-top: var(--space-16); color:#767676; font-size: var(--font-size-14); line-height:1.3em}
.card-list .link-item:hover .thumb img {transform:scale(1.05)}
.news-list {border-top:2px solid #868686}
.news-list ul {padding: 0; margin: 0; list-style:none}
.news-list ul li {display:flex; padding: var(--space-20) 0; border-bottom:1px solid #ddd}
.news-list .thumb {width:220px; margin-right: var(--space-20)}
.news-list .thumb a {display:block; position:relative; padding-bottom: 65%; overflow:hidden}
.news-list .thumb a img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover}
.news-list .thumb a:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08)}
.news-list .info {flex:1 1 auto; min-width:0; width:1%}
.news-list .tit {color:#333; font-size: var(--font-size-18); font-weight:700; line-height:1.4em; max-height:1.4em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:nowrap}
.news-list .txt {margin-top: var(--space-10); color:#767676; font-size: var(--font-size-16); line-height:1.5em; max-height:4.5em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical}
.news-list .date {margin-top: var(--space-12); color:#767676; font-size: var(--font-size-14); line-height:1.3em}
.news-list ul li.none {display:block; width:100%; padding: var(--space-64) 0; margin: 0; text-align:center; color:#767676}
.event-list {padding: var(--space-40) 0 0; border-top:2px solid #868686; border-bottom:1px solid #ddd}
.event-list ul {display:flex; flex-wrap:wrap; margin: 0 calc(-1 * var(--space-16)); padding: 0; list-style:none}
.event-list ul li {width:33.33333333%; padding: 0 var(--space-16); margin-bottom: var(--space-48); text-align:center}
.event-list ul li a {display:block; position:relative; background:#fff}
.event-list ul li .thumb {position:relative; height:0; padding-bottom: 55%; margin-bottom: var(--space-12); overflow:hidden}
.event-list ul li .thumb img {position:absolute; top:50%; left:0; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover}
.event-list ul li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08)}
.event-list ul li .tit {color:#333; font-size: var(--font-size-16); font-weight:700; line-height:1.4em}
.event-list ul li .date {color:#767676; font-size: var(--font-size-14); line-height:1.3em; margin-top: var(--space-8)}
.event-list ul li.none {width:100%; padding: var(--space-64) 0; margin: 0; text-align:center; color:#767676}
.event-list ul li.ended .ended-txt {position:absolute; top:0; left:0; right:0; bottom:0; display:flex; align-items:center; color:#fff; background:rgba(0,0,0,.4)}
.event-list ul li.ended .ended-txt p {width:100%}
.event-list ul li.ended .tit {color:#767676}
.event-list ul li.ended .date {color:#767676}
.faq {border-top:2px solid #868686}
.faq ul {padding: 0; list-style:none}
.faq ul li {border-bottom:1px solid #ddd}
.faq ul li:last-child {margin-bottom: 0}
.faq .tit {color:#333; font-size: var(--font-size-16); font-weight:600; line-height:1.5em}
.faq .tit a {position:relative; display:flex; align-items:center; padding: var(--space-12) var(--space-60) var(--space-12) var(--space-12); text-decoration:none !important; transition:none}
.faq .tit a:after {content:""; position:absolute; right:20px; top:20px; display:inline-block; width:14px; height:14px; border-right:2px solid #aaa; border-bottom:2px solid #aaa; transform:rotate(45deg)}
.faq .cnt {display:none; position:relative; padding: var(--space-24) var(--space-30) var(--space-24) var(--space-64); color:#505050}
.faq .cnt .buttons {margin-bottom: 0}
.faq .q {display:inline-block; margin-right: var(--space-16); flex:0 0 38px; width:38px; height:38px; text-align:center; color:#fff; font-size: var(--font-size-18); font-weight:600; line-height: 2.11em; background:var(--color-accent); border-radius:100%}
.faq li.active {position:relative}
.faq li.active .tit {background:#f4f4f4}
.faq li.active .tit a:after {transform:rotate(-135deg); margin-top: var(--space-8); border-color:#555}
.faq .none {padding: var(--space-64) 0; text-align:center; color:#999}
.calendar-head {text-align:center; margin-bottom: var(--space-20)}
.calendar-head h3 {display:inline-block; vertical-align:middle; margin: 0 var(--space-40); color:#333; font-size: var(--font-size-32); line-height: 1.2em}
.calendar-head .cal-btn {display:inline-block; vertical-align:middle; width:46px; height:46px; overflow:hidden; text-indent:-999em; background-color:var(--color-accent); background-position:50% 50%; background-repeat:no-repeat; border-radius:100%}
.calendar-head .cal-prev {background-image:url("/images/bbs/cal_prev.png")}
.calendar-head .cal-next {background-image:url("/images/bbs/cal_next.png")}
.calendar table {width:100%; table-layout:fixed; border-collapse:collapse; border-spacing:0px}
.calendar table th {padding: var(--space-12) var(--space-4); text-align:center; border:1px solid #ddd; background:#eee; color:#2d2c2c; font-size: var(--font-size-16); line-height:1.4em}
.calendar table td {height:120px; padding: var(--space-10); vertical-align:top; border:1px solid #ddd; color:#454545; font-size: var(--font-size-15); line-height:1.4em; letter-spacing:-.03em}
.calendar table tr th:first-child,
.calendar table tr td:first-child .cal-date {color:#ea4044}
.calendar table tr th:last-child,
.calendar table tr td:last-child .cal-date {color:#3584e7}
.calendar ul {list-style:none; padding: 0}
.calendar ul li {position:relative; padding-left: var(--space-10); margin-bottom: var(--space-8)}
.calendar ul li:last-child {margin-bottom: 0}
.calendar ul li:before {content:""; position:absolute; top:8px; left:0; width:4px; height:4px; background:#ddd; border-radius:100%}
.calendar ul li a {display:block; line-height:1.4em; letter-spacing:-.03em; max-height:2.8em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical}
.calendar ul li a:hover {text-decoration:underline}
.calendar .cal-date {line-height: 1.2em; font-weight:500; color:#767676; margin-bottom: var(--space-10)}
.calendar .cal-blank {background:#fcfcfc}
.calendar .cal-holiday .cal-date {color:#ea4044 !important}
/* 글작성 */
.board-white table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #868686; border-bottom:1px solid #868686; font-size: var(--font-size-16); line-height:1.5em; letter-spacing:-.03em}
.board-white table th {padding: var(--space-12) var(--space-20); border:1px solid #eee; background:#fafafa; font-weight:700; color:#333}
.board-white table td {padding: var(--space-12) var(--space-20); border:1px solid #eee; color:#505050}
.board-white tr th:first-child,
.board-white tr td:first-child {border-left:0}
.board-white tr th:last-child,
.board-white tr td:last-child {border-right:0}
.board-white tr:last-child th,
.board-white tr:last-child td {border-bottom:0}
.board-white .item {display:inline-block; margin-right: var(--space-16)}
.board-white .item:last-child {margin-right: 0}
.board-white .editor {border:0; padding: var(--space-12) 0}
.board-white .editor iframe,
.board-white .editor textarea {display:block; width:100%; vertical-align:middle}
.board-white + .buttons {margin-top: var(--space-50)}
.board-form table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #868686; border-bottom:1px solid #868686; font-size: var(--font-size-16); line-height:1.5em; letter-spacing:-.03em}
.board-form table th {padding: var(--space-12) var(--space-20); border:1px solid #eee; background:#fafafa; font-weight:700; color:#333}
.board-form table td {padding: var(--space-12) var(--space-20); border:1px solid #eee; color:#505050}
.board-form tr th:first-child,
.board-form tr td:first-child {border-left:0}
.board-form tr th:last-child,
.board-form tr td:last-child {border-right:0}
.board-form tr:last-child th,
.board-form tr:last-child td {border-bottom:0}
.board-form + .buttons {margin-top: var(--space-50)}
.captcha-wrap {display:flex; gap: var(--space-10); height:44px}
.captcha-wrap .input {width:160px; height:100%}
#kcaptcha_image {height:100%; cursor:pointer}
.files-upload {max-width:600px}
.files-upload-group {padding: var(--space-20) 0; border-top:1px dashed #ddd}
.files-upload-group:first-child {padding-top: 0; border-top:0}
.files-upload-group:last-child {padding-bottom: 0}
.files-upload-input {display:flex}
.files-upload-input .input {flex:1 1 auto; min-width:0; width:1%}
.files-upload-input .files-upload-btns {display:flex}
.files-upload-input .files-upload-btns a {margin-left: var(--space-4)}
.files-upload-text {display:flex; margin-top: var(--space-8)}
.files-upload-text .upfiles-alt {display:flex; align-items:center; background:#fafafa; padding: 0 var(--space-16); font-size: var(--font-size-15); border:1px solid #ddd; border-right:0}
.files-upload-text .input {flex:1 1 auto; min-width:0; width:1%}
.form-agree {margin: var(--space-34) 0 var(--space-50)}
.form-agree h3 {color:#333; font-size: var(--font-size-18); font-weight:700; letter-spacing:-.03em; line-height:1.3em; margin-bottom: var(--space-10)}
.form-agree dd {padding: var(--space-12) 0 0 0; color:#686868; font-size: var(--font-size-15); line-height:1.5em; text-align:center}
.form-agree .scroll-box {padding: var(--space-10); color:#767676; font-size: var(--font-size-14); font-weight:400; line-height:1.4em; background:#fafafa; border:1px solid #ddd}
.form-agree .check {text-align:center; color:#505050; font-size: var(--font-size-16); line-height:1.5em; margin-top: var(--space-18)}
.form-agree .check a {display:inline-block; background:#fff; margin-left: var(--space-8); padding: 0 var(--space-10); font-size: var(--font-size-13); line-height: 2em; letter-spacing:-.03em; border:1px solid #ddd}
/* 상세보기 */
.board-view {border-top:2px solid #868686}
.board-view-tit {padding: var(--space-16) var(--space-16); border-bottom:1px solid #ddd}
.board-view-tit h3 {color:#333; font-size: var(--font-size-20); font-weight:700; line-height:1.3em; letter-spacing:-.015em}
.board-view-info {padding: var(--space-12) var(--space-16); color:#767676; font-size: var(--font-size-15); line-height:1.3em; border-bottom:1px solid #ddd; overflow:hidden}
.board-view-info strong {color:#333; font-weight:700}
.board-view-info .name {float:left; margin-right: var(--space-16)}
.board-view-info .date {float:left}
.board-view-info .hit {float:right}
.board-view-info .hit strong {margin-right: var(--space-4)}
.board-view-files {position:relative; text-align:right; margin-top: var(--space-10); font-size: var(--font-size-14); line-height:1.5em}
.board-view-files > a {text-decoration:none}
.board-view-files img {vertical-align:middle; margin-top: -.2em}
.board-view-files .ico-down {vertical-align:middle; margin-left: var(--space-4)}
.board-view-files .num {color:#ff4e00}
.board-view-files .fileLayer {display:none; position:absolute; margin-top: var(--space-4); right:0; text-align:left; font-size: var(--font-size-12); font-weight:400; line-height: 2em; border:1px solid #f0f0f0; background:#f7f7f7; padding: var(--space-10) var(--space-30) var(--space-10) var(--space-12); z-index:5}
.board-view-files .fileLayer a {display:block; text-decoration:none}
.board-view-files .fileLayer .divClose {position:absolute; display:inline-block; top:5px; right:5px; line-height:0}
.board-view-files .fileLayer .divClose img {margin-top: 0}
.board-view-cnt {padding: var(--space-16) var(--space-16) var(--space-60); border-bottom:1px solid #ddd}
/* 이전글,다음글 */
.board-prev-next {border-top:1px solid #ddd; border-bottom:1px solid #ddd; font-size: var(--font-size-16); line-height:1.5em}
.board-prev-next dl {display:flex; padding: var(--space-12) var(--space-16)}
.board-prev-next dt {width:90px; color:#333; font-weight:700}
.board-prev-next dt:after {content:""; display:inline-block; vertical-align:middle; margin: -.2em 0 0 var(--space-10)}
.board-prev-next dd {color:#505050; flex:1 1 auto; min-width:0; width:1%}
.board-prev-next dd a {display:inline-block; vertical-align:top; max-width:100%; height:1.5em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:nowrap}
.board-prev-next dd a:hover {text-decoration:underline}
.board-prev-next .prev {border-bottom:1px solid #eee}
.board-prev-next .prev dt:after {border-left:5px solid transparent; border-right:5px solid transparent; border-bottom:5px solid #aaa}
.board-prev-next .next dt:after {border-left:5px solid transparent; border-right:5px solid transparent; border-top:5px solid #aaa}
/* 버튼 */
.buttons {margin: var(--space-20) 0}
.buttons:after {content:" "; display:block; clear:both}
.buttons .cen {text-align:center}
.buttons .cen .btn-pack {margin: 0 var(--space-4)}
.buttons .fr {float:right}
.buttons .fl {float:left}
.buttons a {text-decoration:none}
.buttons a,.buttons input {vertical-align:top}
.buttons + .paginate {margin-top: var(--space-20)}
.btn-pack {display:inline-block; overflow:visible; position:relative; margin: 0; padding: 0 var(--space-10); background:#fafafa; color:#333; border:1px solid #ddd; text-align:center; text-decoration:none !important; vertical-align:top; white-space:nowrap; cursor:pointer}
.btn-pack.focus {background:var(--color-accent); border:1px solid var(--color-accent); color:#fff}
.btn-pack.dark {background:#555; border:1px solid #555; color:#fff}
.btn-pack.dark:focus {outline-color:#f37736}
.btn-pack.border {background:#fff; border:1px solid var(--color-accent); color:var(--color-accent)}
.btn-pack.small {height:30px; padding: 0 var(--space-16); line-height: 2.15em; font-size: var(--font-size-13)}
.btn-pack.medium {height:44px; padding: 0 var(--space-20); line-height: 2.69em; font-size: var(--font-size-16)}
.btn-pack.large {min-width:130px; height:50px; padding: 0 var(--space-30); line-height: 2.67em; font-size: var(--font-size-18); font-weight:500}
.btn-pack.xlarge {min-width:180px; height:60px; padding: 0 var(--space-40); line-height: 2.9em; font-size: var(--font-size-20); font-weight:500}
.btn-pack.comment {width:120px; height:90px; padding: 0; font-size: var(--font-size-20); font-weight:500; background:#fff; color:var(--color-accent); border:1px solid var(--color-accent)}
.btn-map {display:inline-block; padding: 0 var(--space-16); color:#505050; font-size: var(--font-size-14); font-weight:400; line-height: 2.29em; letter-spacing:-.03em; border-radius:30px; background:#fff; border:1px solid #505050; text-align:center; text-decoration:none !important}
.btn-map:hover {color:#fff; background:#333; border-color:#333}
/* 페이지목록 */
.paginate {margin-top: var(--space-40); text-align:center}
.paginate a,  
.paginate strong {display:inline-block; padding: 0; margin: 0 var(--space-4); width:38px; height:38px; font-size: var(--font-size-15); font-weight:500; line-height: 2.53em; color:#555; border-radius:100%; text-decoration:none; text-align:center; vertical-align:middle}
.paginate strong {color:#fff; border-color:var(--color-accent); background-color:var(--color-accent); font-weight:700}
.paginate a:focus,
.paginate a:hover {background-color:#f4f4f4}
.paginate a.direction {background-position:50% 50%; background-repeat:no-repeat}
.paginate a.direction span {font-size:0; line-height:0; text-indent:-999px}
.paginate a.direction.first {background-image:url("/images/bbs/page_first.svg")}
.paginate a.direction.prev {background-image:url("/images/bbs/page_prev.svg"); margin-right: var(--space-20)}
.paginate a.direction.next {background-image:url("/images/bbs/page_next.svg"); margin-left: var(--space-20)}
.paginate a.direction.last {background-image:url("/images/bbs/page_last.svg")}
.paginate a.direction.disabled {display:none}
/* 코멘트 */
.comment-area {margin-top: var(--space-50)}
.comment-total {margin-bottom: var(--space-16); color:#333; font-size: var(--font-size-16); font-weight:400; line-height:1.3em}
.comment-total strong {font-size:1.5em}
.comment-write {padding: var(--space-20); border:1px solid #ddd; background:#f4f4f4}
.comment-write .byte {font-size: var(--font-size-14); line-height:1.3em; color:#505050; letter-spacing:0; margin-bottom: var(--space-10)}
.comment-write .write {display:flex}
.comment-write .write textarea {flex:1 1 auto; min-width:0; width:1%; height:90px; resize:none; margin-right: var(--space-16)}
.comment-item {border-bottom:1px solid #e5e5e5; padding: var(--space-20) 0}
.comment-item.comment-reply {padding-left: var(--space-40); background:url("/images/bbs/icon_reply.png") 10px 18px no-repeat}
.comment-box {position:relative}
.comment-info {font-size: var(--font-size-15); font-weight:400; line-height:1.5em; margin-bottom: var(--space-4)}
.comment-info .name {font-weight:700; color:#333; margin-right: var(--space-8)}
.comment-info .date {color:#878787; font-family:"Arial",sans-serif; font-size: var(--font-size-12); letter-spacing:0}
.comment-link {margin-top: var(--space-10); color:#878787; font-size: var(--font-size-14); font-weight:400; line-height:1.3em}
.comment-link a:hover {text-decoration:underline}
.comment-txt {color:#505050; font-size: var(--font-size-15); line-height:1.7em}
.comment-ctr {position:absolute; top:0; right:0; color:#878787; font-size: var(--font-size-14); font-weight:400; line-height:1.5em}
.comment-ctr a:hover {text-decoration:underline}
.comment-ctr .bar {display:inline-block; width:1px; height:11px; background:#ddd; margin: 0 var(--space-4)}
.comment-input {border:1px solid #ddd; padding: var(--space-16)}
.comment-input .byte {font-size: var(--font-size-12); line-height:1.3em; color:#878787; letter-spacing:0; margin-bottom: var(--space-8)}
.comment-input textarea {display:block; width:100%; height:54px; border:0; padding: 0 !important; resize:none}
.comment-input .btns {text-align:right; margin-top: var(--space-4)}
.comment-password {display:flex}
.comment-password .input {flex:1 1 auto; min-width:0; width:1%; max-width:180px}
/* 비밀번호 */
.board-password {max-width:480px; text-align:center; margin: var(--space-30) auto; padding: var(--space-50) var(--space-40); border:1px solid #ddd; border-radius:10px}
.board-password dt {color:#333; font-size: var(--font-size-16); font-weight:700; padding-bottom: var(--space-24)}
.board-password dd {display:flex; align-items:center}
.board-password dd label {color:#505050; font-size: var(--font-size-15); font-weight:400; margin-right: var(--space-12)}
.board-password dd .input {flex:1 1 auto; min-width:0; width:1%; margin-right: var(--space-4)}
/* 매장안내 */
.store-search {display:flex; align-items:center; width:100%; padding: var(--space-24) 8%; border:1px solid #ddd; margin-bottom: var(--space-50)}
.store-search .map-area {width:320px; margin-left: 2%; margin-right: 8%}
.store-search .map-img {position:relative; padding-bottom: 155%}
.store-search .map-img svg {position:absolute; top:0; left:0; width:100%; height:100%}
.store-search .map-img svg .active {fill:#cccccc}
.store-search .map-img .local {position:absolute; display:block; text-align:center; color:#333; padding: 0 var(--space-12); font-size: var(--font-size-14); font-weight:600; line-height: 1.71em; letter-spacing:-.03em; background:#fff; border:1px solid #333; border-radius:30px; transform:translate(-50%,-50%); z-index:2}
.store-search .map-img .local.hover {color:var(--color-accent); background:#fff; border-color:var(--color-accent)}
.store-search .map-img .local.active {color:#fff; background:var(--color-accent); border-color:var(--color-accent)}
.store-search .map-img .local.seoul {top:17%; left:26%}
/* 서울 */
.store-search .map-img .local.busan {top:67.2%; left:88%}
/* 부산 */
.store-search .map-img .local.daegu {top:51%; left:76%}
/* 대구 */
.store-search .map-img .local.incheon {top:23.5%; left:9%}
/* 인천 */
.store-search .map-img .local.gwangju {top:67%; left:18%}
/* 광주 */
.store-search .map-img .local.daejeon {top:46.5%; left:48%}
/* 대전 */
.store-search .map-img .local.ulsan {top:60.5%; left:91%}
/* 울산 */
.store-search .map-img .local.sejong {top:40.3%; left:45.3%}
/* 세종 */
.store-search .map-img .local.gyeonggi {top:27%; left:35.2%}
/* 경기 */
.store-search .map-img .local.gangwon {top:19%; left:59%}
/* 강원 */
.store-search .map-img .local.chungbuk {top:33%; left:49%}
/* 충북 */
.store-search .map-img .local.chungnam {top:42%; left:22%}
/* 충남 */
.store-search .map-img .local.jeonbuk {top:56%; left:33%}
/* 전북 */
.store-search .map-img .local.jeonnam {top:76%; left:25%}
/* 전남 */
.store-search .map-img .local.gyeongbuk {top:42%; left:69%}
/* 경북 */
.store-search .map-img .local.gyeongnam {top:64%; left:58%}
/* 경남 */
.store-search .map-img .local.jeju {top:92%; left:16%}
/* 제주 */
.store-search .search-area {flex:1 1 auto; min-width:0; width:1%}
.store-search .search-area h3 {color:#333; font-size: var(--font-size-18); font-weight:700; line-height:1.4em; letter-spacing:-.03em; margin-bottom: var(--space-48)}
.store-search .search-area dl {display:flex; align-items:center; margin-top: var(--space-24)}
.store-search .search-area dl dt {width:90px; color:#333; font-size: var(--font-size-16); font-weight:600; line-height:1.4em; letter-spacing:-.03em}
.store-search .search-area dl dd {display:flex; flex:1 1 auto; min-width:0; width:1%}
.store-search .search-area input.input {width:calc(100% - 94px); margin-right: var(--space-4)}
.store-search .search-area select.input {width:calc(50% - 50px); margin-right: var(--space-4)}
.store-search .search-area .btn-pack.medium {width:90px; padding: 0}
/* 제품 */
.product-list ul {display:flex; flex-wrap:wrap; margin: 0 calc(-1 * var(--space-12)); padding: 0; list-style:none}
.product-list ul li {width:20%; padding: 0 var(--space-12); margin-bottom: var(--space-34); text-align:center}
.product-list ul li.none {width:100%; padding: var(--space-64) 0; margin: 0; text-align:center; color:#767676}
.product-list ul li a {display:block}
.product-list ul li .thumb {position:relative; padding-bottom: 100%; margin-bottom: var(--space-12); overflow:hidden}
.product-list ul li .thumb img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain}
.product-list ul li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08)}
.product-list ul li .tit {color:#333; font-size: var(--font-size-16); line-height:1.4em}
.product-list ul li .date {color:#767676; font-size: var(--font-size-14); line-height:1.3em; margin-top: var(--space-8)}
.product-summary {display:flex; margin-bottom: var(--space-40)}
.product-image {width:400px; margin-right: var(--space-40)}
.product-image .img {position:relative; padding-bottom: 100%; overflow:hidden}
.product-image .img img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain}
.product-image .img:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08)}
.product-info {flex:1 1 auto; min-width:0; width:1%}
.product-info .tit {color:#333; font-size: var(--font-size-28); line-height:1.3em; padding-bottom: var(--space-20); margin-bottom: var(--space-20); border-bottom:1px solid #ddd}
.product-info .txt {color:#505050}
.product-detail {color:#505050; padding-bottom: var(--space-50); margin-bottom: var(--space-40); border-bottom:1px solid #ddd}
.product-detail .tit {color:#333; font-size: var(--font-size-22); line-height:1.3em; padding-bottom: var(--space-12); margin-bottom: var(--space-20); border-bottom:1px solid #ddd}
/* 검색결과 */
.result-top {margin-bottom: var(--space-30); color:#333; font-size: var(--font-size-20); font-weight:700; line-height:1.3em}
.result-top .word {color:#d12a07}
.result-top .num {color:#2e6bdb}
.result-group {border-top:1px solid #ddd; padding: var(--space-30) 0}
.result-group h3 {margin: 0 0 var(--space-20); color:#333; font-size: var(--font-size-18); font-weight:700; line-height:1.3em}
.result-group h3 span {color:#7d7d7d; font-size: var(--font-size-14); font-weight:normal}
.result-group dl {margin: 0 0 var(--space-20)}
.result-group dl dt {font-size: var(--font-size-16); line-height:1.5em; letter-spacing:-.03em; color:#1861c3}
.result-group dl dt a:hover {text-decoration:underline}
.result-group dl dd {margin-top: var(--space-4); font-size: var(--font-size-14); line-height:1.5em; color:#505050; max-height:3em; overflow:hidden; text-overflow:ellipsis; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical}
.result-group dl dd.date {color:#999; font-size: var(--font-size-13)}
.result-group .gall {display:flex; flex-wrap:wrap; margin: 0 calc(-1 * var(--space-10)); padding: 0; list-style:none}
.result-group .gall li {width:200px; text-align:center; padding: 0 var(--space-10); margin-bottom: var(--space-30)}
.result-group .gall li a {display:block; text-decoration: none!important}
.result-group .gall li .thumb {position:relative; padding-bottom: 100%; margin-bottom: var(--space-10); overflow:hidden}
.result-group .gall li .thumb img {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); width:auto !important; height:auto !important; max-width:100%; max-height:100%; object-fit:contain}
.result-group .gall li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08)}
.result-group .gall li .tit {color:#333; font-size: var(--font-size-15); line-height:1.4em}
.result-group .gall li .price {color:#f03b3b; font-size: var(--font-size-14); font-weight:700; line-height:1.3em; margin-top: var(--space-4)}
.result-group .more {text-align:right}
.result-group .more a {font-size: var(--font-size-15); color:#767676; text-decoration:underline}
/* ── Template board (Figma work-r1) ── */

a.work-card,
.work-card {display: flex; flex-direction: column; width: 100%; min-width: 0; margin: 0; border: 0; border-radius: 0; background: var(--color-white, #ffffff); box-shadow: none; transition: box-shadow 0.25s ease; color: inherit; text-decoration: none}
.work-card__media {position: relative; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; background: #f5f5f5}
.work-card__image {display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease}
.work-card:hover .work-card__image {transform: scale(1.05)}
.work-card__body {display: flex; flex-direction: column; gap: var(--space-16); padding: var(--space-32); background-color: var(--color-white, #ffffff)}
.work-card__title {margin: 0; font-size: var(--font-size-22); line-height: 1.27em; font-weight: 700; color: var(--color-text-title, #242424); letter-spacing: -0.02em}
.work-card__meta {display: flex; flex-direction: column; gap: var(--space-8); margin: 0}
.work-card__row {display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: var(--space-8); align-items: start; margin: 0; font-size: var(--font-size-16); line-height: 1.5em}
.work-card__row dt {margin: 0; color: var(--color-text-body, #454545); font-weight: 500}
.work-card__row dd {margin: 0; color: var(--color-text-muted, #808080); font-weight: 400}
.ongoing-grid {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-64) var(--space-24); width: 100%}
.ongoing-grid .work-card {box-shadow: 0 4px 16px rgba(35, 24, 21, 0.08)}
.ongoing-grid .work-card__body {padding: var(--space-24); gap: var(--space-12)}
.ongoing-grid .work-card__title {font-size: var(--font-size-18); line-height: 1.44em}
.real-cont > .board--work,
.real-cont > .work-tabs + .board--work,
.real-cont > .portfolio-tabs + .board--portfolio {margin-top: 0}
#contArea:has(.board--work) .sub-title__desc {max-width: none}
.work-card--overlay {box-shadow: 0 4px 16px rgba(35, 24, 21, 0.08); transition: box-shadow 0.35s ease}
.work-card--overlay:hover {box-shadow: 0 12px 36px rgba(0, 0, 0, 0.4)}
.work-card--overlay .work-card__media {aspect-ratio: 4 / 3}
.work-card--overlay .work-card__overlay {position: absolute; inset: 0; z-index: 1; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: var(--space-16); padding: var(--space-24) var(--space-20); background: rgba(0, 0, 0, 0); opacity: 0; transition: opacity 0.35s ease, background-color 0.35s ease}
.work-card--overlay:hover .work-card__overlay,
.work-card--overlay:focus-visible .work-card__overlay,
.work-card--overlay:focus-within .work-card__overlay {opacity: 1; background: rgba(0, 0, 0, 0.78)}
.work-card__overlay-title {margin: 0; font-size: var(--font-size-18); line-height: 1.44em; font-weight: 700; color: #ffffff; text-align: center; letter-spacing: -0.02em}
.work-card__overlay-meta {display: flex; flex-direction: column; gap: var(--space-8); margin: 0; width: 100%; max-width: 240px}
.work-card__overlay-row {display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: var(--space-8); align-items: start; margin: 0; font-size: var(--font-size-14); line-height: 1.57em; text-align: left}
.work-card__overlay-row dt {margin: 0; color: rgba(255, 255, 255, 0.72); font-weight: 500}
.work-card__overlay-row dd {margin: 0; color: #ffffff; font-weight: 400}
.ongoing-grid--overlay .work-card--overlay {box-shadow: 0 4px 16px rgba(35, 24, 21, 0.08)}
.board--work .ongoing-grid--overlay {gap: var(--space-24)}
.board {display: flex; flex-direction: column; gap: var(--space-20); width: 100%}
.board__toolbar {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-16); min-height: 44px}
.board__toolbar-left {display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-18)}
.board__count {font-size: var(--font-size-16); line-height: 1.5em; color: var(--color-text-muted, #808080)}
.board__select {position: relative; display: inline-flex; align-items: center; width: 93px; height: 44px}
.board__select select {appearance: none; -webkit-appearance: none; -moz-appearance: none; width: 100%; height: 100%; min-height: 44px; padding: 0 var(--space-34) 0 var(--space-16); border: 1px solid var(--color-border, #ddd); border-radius: 0; background: var(--color-white, #ffffff); color: var(--color-text-muted, #808080); font-size: var(--font-size-16); line-height: 1.5em; cursor: pointer}
.board__select select::-ms-expand {display: none}
.board__select-icon {position: absolute; right: 12px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); pointer-events: none}
.board__search {display: flex; align-items: center; gap: var(--space-10)}
.board__search-input {width: 300px; max-width: 100%; height: 44px; min-height: 44px; padding: 0 var(--space-20); border: 1px solid var(--color-border, #ddd); border-radius: 0; background: var(--color-white, #ffffff); color: var(--color-text-body, #454545); font-size: var(--font-size-16); line-height: 1.5em}
.board__search-input:focus {outline: none; border-color: var(--color-text-body, #454545)}
.board__search-btn {display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 44px; height: 44px; min-height: 44px; padding: 0; border: none; border-radius: 0; background: var(--color-text-body, #454545); cursor: pointer; transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease}
.board__search-btn:hover {background: #231815; color: #ffffff; border-color: transparent}
.board__search-btn img {width: 16px; height: 16px}
.board__table-wrap {width: 100%; overflow-x: auto}
.board__table {width: 100%; min-width: 500px; border-collapse: collapse; table-layout: fixed}
.board__table th,
.board__table td {height: 70px; padding: 0 var(--space-10); border-bottom: 1px solid var(--color-border, #ddd); font-size: var(--font-size-18); line-height: 1.44em; text-align: center; vertical-align: middle; color: var(--color-text-body, #454545)}
.board__table thead th {font-weight: 600; color: var(--color-text-title, #242424); border-top: 1px solid var(--color-text-title, #242424); border-bottom: 1px solid var(--color-border, #ddd); background: transparent}
.board__table th.board__col-num,
.board__table td.board__col-num {width: 80px; padding-left: 0; padding-right: 0}
.board__table th.board__col-title,
.board__table td.board__col-title {width: auto; padding-left: var(--space-40); padding-right: var(--space-20); text-align: left}
.board__table thead th.board__col-title {text-align: center}
.board__table tbody td.board__col-title {text-align: left}
.board__table th.board__col-file,
.board__table td.board__col-file {width: 120px}
.board__table th.board__col-author,
.board__table td.board__col-author {width: 120px}
.board__table.board__table--portfolio th.board__col-author,
.board__table.board__table--portfolio td.board__col-author {width: 240px; max-width: 240px; white-space: normal; word-break: keep-all; overflow-wrap: anywhere; line-height: 1.44}
.board__table th.board__col-date,
.board__table td.board__col-date {width: 160px}
.board__table th.board__col-views,
.board__table td.board__col-views {width: 120px}
.board__title-link {display: flex; align-items: center; justify-content: flex-start; gap: var(--space-8); width: 100%; max-width: 100%; margin: 0; font-size: var(--font-size-18); font-weight: 500; line-height: 1.44em; color: var(--color-text-body, #454545); text-align: left}
.board__title-link:hover .board__title-text {color: var(--color-primary, #c8102e); text-decoration: underline}
.board__title-text {overflow: hidden; text-overflow: ellipsis; white-space: nowrap}
.board__meta-icon {flex-shrink: 0; display: block}
.board__meta-icon--reply {width: 20px; height: 20px}
.board__meta-icon--lock {width: 11px; height: 14px}
.board__comment {flex-shrink: 0; font-size: var(--font-size-14); line-height: 1.43em; font-weight: 500; color: var(--color-accent, #c8102e)}
.board__badge {display: inline-flex; align-items: center; justify-content: center; border-radius: 0; flex-shrink: 0; white-space: nowrap}
.board__badge--notice {width: auto; min-width: 50px; min-height: 26px; padding: var(--space-8) var(--space-12); background: var(--color-accent, #c8102e); color: var(--color-white, #ffffff); font-size: var(--font-size-14); line-height: 1.2em; font-weight: 500; letter-spacing: 0.02em; white-space: nowrap}
.board__badge--new {width: 20px; height: 20px; background: var(--color-accent, #c8102e); color: var(--color-white, #ffffff); font-size: var(--font-size-13); line-height: 1.2em; font-weight: 500}
.board__file-icon {display: inline-block; width: 14.4px; height: 18px; margin: 0 auto}
.board__paging {display: flex; align-items: center; justify-content: center; gap: var(--space-34); margin-top: var(--space-64)}
.board__paging-nav {display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0}
.board__paging-nav img {width: auto; height: 14px}
.board__pages {display: flex; align-items: center; gap: var(--space-30); list-style: none; margin: 0; padding: 0}
.board__page {display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 var(--space-8); border: none; border-radius: 0; font-size: var(--font-size-15); line-height: 1.8em; font-weight: 500; color: var(--color-text-muted, #808080); text-decoration: none; transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease}
.board__page:hover {background: #231815; color: #ffffff; border-color: transparent}
.board__page.is-active {color: var(--color-white, #ffffff); background: #454545; font-size: var(--font-size-16); font-weight: 600}
.board--work {gap: var(--space-20)}
.board--work .ongoing-grid {padding-top: var(--space-24); padding-bottom: var(--space-64); border-top: 1px solid var(--color-text-title, #242424); border-bottom: 1px solid var(--color-border, #ddd); margin-top: 0}
.real-cont > .portfolio-tabs,
.real-cont > .work-tabs {margin-top: 0; margin-bottom: var(--space-48)}
.board--portfolio {gap: var(--space-20)}
.board--portfolio .board__count strong {color: var(--color-text-title, #242424); font-weight: 600}
.board--portfolio .co-tabpanel .board__table-wrap {padding-top: 0; border-top: 0}
.board--portfolio .board__toolbar + .co-tabpanel .board__table-wrap {padding-top: 0}
.board__table--portfolio {min-width: 500px}
.board__table th.board__col-start,
.board__table td.board__col-start,
.board__table th.board__col-end,
.board__table td.board__col-end {width: 100px}
.board__table.board__table--portfolio th.board__col-start,
.board__table.board__table--portfolio td.board__col-start,
.board__table.board__table--portfolio th.board__col-end,
.board__table.board__table--portfolio td.board__col-end {width: 140px; padding-left: 8px; padding-right: 8px; white-space: nowrap}
.board__status-ongoing {color: var(--color-text-body, #454545)}
.board__list-m {display: none; border-top: 1px solid var(--color-text-title, #242424)}
.board__list-m-list {padding: 0; margin: 0; list-style: none}
.board__list-m-item {padding: var(--space-16) 0; border-bottom: 1px solid var(--color-border, #ddd)}
.board__list-m-item:last-child {border-bottom-color: var(--color-border, #ddd)}
.board__list-m-title {display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-6); color: var(--color-text-title, #242424); font-size: var(--font-size-16); font-weight: 600; line-height: 1.5em; letter-spacing: -0.02em}
.board__list-m-link {color: inherit; text-decoration: none}
.board__list-m-link:hover {color: var(--color-primary, #c8102e); text-decoration: underline}
.board__list-m-title .board__badge {margin-right: var(--space-4)}
.board__list-m-title .board__meta-icon {flex-shrink: 0}
.board__list-m-title .board__comment {font-size: var(--font-size-14); font-weight: 500; color: var(--color-accent, #c8102e)}
.board__list-m-info {margin-top: var(--space-8); color: var(--color-text-muted, #808080); font-size: var(--font-size-13); line-height: 1.4em}
.board__list-m-info > span {margin-right: var(--space-10)}
.board__list-m--portfolio .board__list-m-title {font-size: var(--font-size-15)}
.board__list-m--portfolio .board__list-m-info {font-size: var(--font-size-12)}
.board--work .co-tabpanel .ongoing-grid {padding-top: 0; border-top: 0}
.board--work .board__toolbar + .co-tabpanel .ongoing-grid {padding-top: var(--space-24); border-top: 1px solid var(--color-text-title, #242424)}
.portfolio-gallery {padding-top: var(--space-24); border-top: 1px solid var(--color-text-title, #242424); border-bottom: 1px solid var(--color-border, #ddd)}
.portfolio-gallery__list {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-64) var(--space-24); margin: 0 0 var(--space-64); padding: 0; list-style: none}
.portfolio-gallery__item {margin: 0; min-width: 0; text-align: center}
.portfolio-gallery__link {display: block; color: inherit; text-decoration: none}
.portfolio-gallery__link.is-unlinked {cursor: default; pointer-events: none}
.portfolio-gallery__thumb {position: relative; width: 100%; aspect-ratio: 3 / 2; margin-bottom: var(--space-16); overflow: hidden; background: #f5f5f5}
.portfolio-gallery__thumb::after {content: ""; position: absolute; inset: 0; border: 1px solid rgba(0, 0, 0, 0.08); pointer-events: none}
.portfolio-gallery__thumb img {display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease}
.portfolio-gallery__link:not(.is-unlinked):hover .portfolio-gallery__thumb img {transform: scale(1.05)}
.portfolio-gallery__title {margin: 0; font-size: var(--font-size-18); line-height: 1.44em; font-weight: 600; color: var(--color-text-title, #242424); letter-spacing: -0.02em; display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2}
.portfolio-gallery__link:not(.is-unlinked):hover .portfolio-gallery__title {color: var(--color-primary, #c8102e)}
/* Inquiry form (Figma template) */

.inquiry-board {display: flex; flex-direction: column; gap: 0; width: 100%; max-width: var(--content-max, 1660px)}
.inquiry-board__fields {width: 100%; border-top: 1px solid #242424}
.inquiry-board__row {display: flex; align-items: center; gap: var(--space-16); padding-right: var(--space-16); border-bottom: 1px solid var(--color-border, #ddd); background: var(--color-white, #ffffff)}
.inquiry-board__row--content {align-items: stretch}
.inquiry-board__label {display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 220px; min-height: 80px; border-right: 1px solid var(--color-border, #ddd); font-size: var(--font-size-18); line-height: 1.33em; font-weight: 600; color: var(--color-text-title, #242424); text-align: center}
.inquiry-board__row--content .inquiry-board__label {min-height: 380px}
.inquiry-board__control {display: flex; align-items: center; flex: 1 1 0; min-width: 0; gap: var(--space-16); padding: var(--space-16) 0}
.inquiry-board__row--content .inquiry-board__control {align-items: flex-start}
.inquiry-board__input,
.inquiry-board__textarea {width: 100%; border: 1px solid var(--color-border, #ddd); border-radius: 0; background: var(--color-white, #ffffff); color: var(--color-text-body, #454545); font-size: var(--font-size-16); line-height: 1.5em; font-weight: 500}
.inquiry-board__input {height: 48px; padding: 0 var(--space-16)}
.inquiry-board__textarea {height: 348px; min-height: 348px; padding: var(--space-12) var(--space-16); resize: vertical}
.inquiry-board__input::placeholder,
.inquiry-board__textarea::placeholder {color: var(--color-placeholder, #aaa)}
.inquiry-board__input:focus,
.inquiry-board__textarea:focus {outline: none; border-color: var(--color-accent, #c8102e)}
.inquiry-board__control--file .inquiry-board__input {flex: 1 1 0; min-width: 0}
.inquiry-board__file-btn {display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 100px; height: 48px; padding: 0 var(--space-16); border: none; border-radius: 0; background: var(--color-text-body, #454545); color: var(--color-white, #ffffff); font-size: var(--font-size-16); line-height: 1.5em; font-weight: 600; cursor: pointer; transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease}
.inquiry-board__file-btn:hover {background: var(--color-accent, #c8102e); color: #ffffff; border-color: transparent}
.inquiry-board__control--captcha .inquiry-board__captcha {flex-shrink: 0; width: 120px; height: 48px; object-fit: cover; border-radius: 0}
.inquiry-board__control--captcha .inquiry-board__input {flex: 1 1 0}
.inquiry-board__privacy {display: flex; flex-direction: column; gap: var(--space-20); align-items: center; width: 100%; margin-top: var(--space-56)}
.inquiry-board__privacy-head {display: flex; flex-direction: column; gap: var(--space-12); width: 100%}
.inquiry-board__privacy-title {margin-bottom: 0; font-size: var(--font-size-16); line-height: 1.5em; font-weight: 500; color: var(--color-text-body, #454545)}
.inquiry-board__privacy-box {width: 100%; padding: var(--space-16); border: 1px solid var(--color-border, #ddd); border-radius: 0; background: var(--color-white, #ffffff); font-size: var(--font-size-14); line-height: 1.57em; color: var(--color-text-muted, #808080)}
.inquiry-board__privacy-box p + p {margin-top: 0}
.inquiry-board__agree {display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--space-8)}
.inquiry-board__check {display: inline-flex; align-items: center; gap: var(--space-4); font-size: var(--font-size-16); line-height: 1.5em; color: var(--color-text-body, #454545); cursor: pointer}
.inquiry-board__check-icon {width: 20px; height: 20px; object-fit: contain}
.inquiry-board__check-icon--on {display: none}
.inquiry-board__check:has(input:checked) .inquiry-board__check-icon--off {display: none}
.inquiry-board__check:has(input:checked) .inquiry-board__check-icon--on {display: block}
.inquiry-board__policy-btn {display: inline-flex; align-items: center; justify-content: center; padding: var(--space-4) var(--space-8); border: 1px solid var(--color-border, #ddd); border-radius: 0; font-size: var(--font-size-12); line-height: 1.67em; font-weight: 500; color: #868686; text-decoration: none}
.inquiry-board__actions {display: flex; justify-content: center; width: 100%; margin-top: var(--space-64)}
.inquiry-board__submit {display: inline-flex; align-items: center; justify-content: center; width: 260px; height: 56px; border: none; border-radius: 0; background: var(--color-primary, #c8102e); color: var(--color-white, #ffffff); font-size: var(--font-size-16); font-weight: 700; letter-spacing: -0.03em; cursor: pointer; transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease}
a.inquiry-board__submit {text-decoration: none}
.inquiry-board__submit:hover {background: var(--color-accent, #c8102e); color: #ffffff; border-color: transparent}
/* Work detail view */

.real-cont:has(.work-view) {padding-bottom: var(--space-150)}
.work-view {max-width: 960px; margin: 0 auto}
.work-view__tags {display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-12); margin-bottom: var(--space-32)}
.work-view__tag {display: inline-flex; align-items: center; min-height: 36px; padding: 0 var(--space-16); border: 1px solid #dddddd; border-radius: 999px; font-size: var(--font-size-15); line-height: 1.47em; font-weight: 500; color: var(--color-text-body, #454545); text-decoration: none; transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease}
.work-view__tag:hover {border-color: var(--color-text-title, #242424); color: var(--color-text-title, #242424)}
.work-view__tag.is-active {border-color: var(--color-text-title, #242424); background: var(--color-text-title, #242424); color: #ffffff}
.work-view__info {margin: 0 0 var(--space-48); border-top: 1px solid #231815}
.work-view__info-row {display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: var(--space-24); margin: 0; padding: var(--space-20) 0; border-bottom: 1px solid #e5e5e5}
.work-view__info-row dt {margin: 0; font-size: var(--font-size-16); line-height: 1.62em; font-weight: 600; color: var(--color-text-title, #242424)}
.work-view__info-row dd {margin: 0; font-size: var(--font-size-16); line-height: 1.62em; color: var(--color-text-body, #454545)}
.work-view__figure {margin: 0 0 var(--space-64); text-align: center}
.work-view__figure img {display: block; width: 100%; max-width: 100%; height: auto; margin: 0 auto}
.work-view__actions {display: flex; justify-content: center; width: 100%}
.work-form-period {display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-10)}
.work-form-period__sep {color: var(--color-text-muted, #808080); font-size: var(--font-size-16); line-height: 1.5em}
.work-form-period__help {margin: var(--space-8) 0 0; color: var(--color-text-muted, #808080); font-size: var(--font-size-14); line-height: 1.5em}
.work-view-admin {max-width: 960px; margin: var(--space-24) auto 0}
.work-view__edit .fr-view {margin-top: var(--space-32)}
.work-view__edit {margin-bottom: var(--space-48);}
