@charset "utf-8";

.video-wrap {max-width:860px; margin:0 auto}
.video-container {position:relative;padding-bottom:56.25%;height:0;overflow:hidden;background:var(--color-black);}
.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 .total-page {float:left; color:var(--color-slate); font-size:var(--font-size-15); line-height:2.75em;}
.board-search .cate {float:left; margin-left:var(--space-15);}
.board-search .search {float:right;}
.board-search .search input.input {width:300px;}

/* 리스트 */
.board-list table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid var(--color-border-dark);}
.board-list table thead th {height:53px; padding:var(--space-9) var(--space-5); color:var(--color-heading); font-size:var(--font-size-16); font-weight:700; line-height:1.5em; background:var(--color-bg-table); border-bottom:1px solid var(--color-border);}
.board-list table tbody td {height:53px; padding:var(--space-9) var(--space-5); color:var(--color-text); font-size:var(--font-size-16); font-weight:400; line-height:1.5em; text-align:center; border-bottom:1px solid var(--color-border);}
.board-list table tbody td.subject {text-align:left; padding-left:var(--space-15); font-size: var(--font-size-18); line-height: 1.4em;}
.board-list table tbody td img {vertical-align:middle; margin:-.2em  0;}
.board-list table tbody td a:hover {text-decoration:underline;}
.board-list table tbody tr:hover td {background-color:var(--color-bg-table);}
.board-list .label {color:var(--color-white); font-weight:500; display:inline-block; padding:0 var(--space-12); font-size:var(--font-size-14); background:var(--color-orange); border-radius:4px;}
.board-list .comment {color:var(--color-accent-orange); font-size:.85em; font-weight:700; line-height:1.2em;}
.board-list .goods-name {color:var(--color-charcoal); font-weight:700;}

.board-list-m {display:none; border-top:2px solid var(--color-border-dark);}
.board-list-m li {padding:14px 0; border-bottom:1px solid var(--color-border);}
.board-list-m li img {vertical-align:middle; margin:-.2em  0; height:16px;}
.board-list-m li.none {padding:var(--space-40) 0; text-align:center; color:var(--color-text-light);}
.board-list-m .label {display:inline-block;vertical-align:middle;margin:-.2em var(--space-4) 0 0;padding:0 6px;color:var(--color-white);background:var(--color-orange);font-weight:500;font-size:12px;line-height:1.375em;border-radius:4px;}
.board-list-m .tit {color:var(--color-heading); font-size:15px; font-weight:700; line-height:1.4em; letter-spacing:-.03em;}
.board-list-m .info {color:var(--color-gray-mid); font-size:12px; font-weight:400; line-height:1.3em; margin-top:8px;}
.board-list-m .info span {margin-right:10px;}
.board-list-m .comment {color:var(--color-accent-orange); font-size:.85em; font-weight:700; line-height:1.2em;}
.board-list-m .store-name {color:var(--color-heading); font-size:17px; font-weight:700; line-height:1.4em; letter-spacing:-.03em;}
.board-list-m .store-addr {font-size:14px; font-weight:400; line-height:1.3em; color:var(--color-text); margin-top:4px;}
.board-list-m .btns {margin-top:12px;}
.board-list-m .btns .btn-map {line-height:1.75em; margin-right:4px;}
.board-list-m .goods-name {color:var(--color-text); font-size:15px; font-weight:700; line-height:1.3em; margin-bottom:4px;}

.gallery-list {padding:var(--space-25) 0 0 0; border-bottom:1px solid var(--color-border); border-top:2px solid var(--color-border-dark);}
.gallery-list ul {display:flex; flex-wrap:wrap; margin:0 -15px;}
.gallery-list ul li {width:25%; padding:0 var(--space-15); margin-bottom:var(--space-30); text-align:center;}
.gallery-list ul li.none {width:100%; padding:var(--space-70) 0; margin:0; text-align:center; color:var(--color-text-sub);}
.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:var(--color-heading); font-size:var(--font-size-16); line-height:1.4em;}
.gallery-list ul li .date {color:var(--color-text-sub); font-size:var(--font-size-14); line-height:1.3em; margin-top:var(--space-6);}

.news-list {border-top:2px solid var(--color-border-dark);}
.news-list ul li {display:flex; padding:var(--space-20) 0; border-bottom:1px solid var(--color-border);}
.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:var(--color-heading); 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:var(--color-text-sub); 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-13); color:var(--color-text-sub); font-size:var(--font-size-14); line-height:1.3em;}
.news-list ul li.none {display:block; width:100%; padding:var(--space-70) 0; margin:0; text-align:center; color:var(--color-text-sub);}

.event-list {padding:var(--space-40) 0 0; border-top:2px solid var(--color-border-dark); border-bottom:1px solid var(--color-border);}
.event-list ul {display:flex; flex-wrap:wrap; margin:0 -15px;}
.event-list ul li {width:33.33333333%; padding:0 var(--space-15); margin-bottom:var(--space-30); text-align:center;}
.event-list ul li a {display:block; position:relative; background:var(--color-white);}
.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:var(--color-heading); font-size:var(--font-size-16); font-weight:700; line-height:1.4em;}
.event-list ul li .date {color:var(--color-text-sub); font-size:var(--font-size-14); line-height:1.3em; margin-top:var(--space-6);}
.event-list ul li.none {width:100%; padding:var(--space-70) 0; margin:0; text-align:center; color:var(--color-text-sub);}
.event-list ul li.ended .ended-txt {position:absolute; top:0; left:0; right:0; bottom:0; display:flex; align-items:center; color:var(--color-white); background:rgba(0,0,0,.4);}
.event-list ul li.ended .ended-txt p {width:100%;}
.event-list ul li.ended .tit {color:var(--color-text-sub);}
.event-list ul li.ended .date {color:var(--color-text-sub);}

.page-faq {padding-top: var(--space-120);}
.faq {border-top:2px solid var(--color-border-dark);}
.faq ul li {border-bottom:1px solid var(--color-border);}
.faq ul li:last-child {margin-bottom:0;}
.faq .tit {color:var(--color-heading); font-size:var(--font-size-16); font-weight:600; line-height:1.5em;}
.faq .tit .category {margin-right: var(--space-20); min-width: max-content}
.faq .tit a, .faq .cnt-inner {position:relative; display:flex; align-items:center; padding:var(--space-12) var(--space-60) var(--space-12) var(--space-12); font-size: var(--font-size-18); line-height: 1.4em; 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; color:var(--color-text);}
.faq .cnt .buttons {margin:var(--space-20);}
.faq .q {display:inline-block; margin-right:var(--space-15); flex:0 0 38px; width:38px; height:38px; text-align:center; color:var(--color-white); font-size:var(--font-size-18); font-weight:600; line-height:2.375em; background:var(--color-text); border-radius:100%;}
.faq li.active {position:relative; background: var(--color-border-light);}
.faq li.active .tit {background:var(--primary-color); color: var(--color-white);}
.faq li.active .tit a:after {transform:rotate(-135deg); margin-top:var(--space-6); border-color:var(--color-white);}
.faq li.active .q {background: var(--color-white); color: var(--primary-color)}
.faq li.active .cnt-inner .q {color: var(--dark-color)}
.faq .none {padding:var(--space-70) 0; text-align:center; color:var(--color-text-light);}

.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:var(--color-heading); font-size:var(--font-size-33); line-height:1.15em;}
.calendar-head .cal-btn {display:inline-block; vertical-align:middle; width:46px; height:46px; overflow:hidden; text-indent:-999em; background-color:var(--primary-color); 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 var(--color-border); background:var(--color-border-light); 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 var(--color-border); color:var(--color-gray-text); 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 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:var(--color-border); 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:var(--color-text-sub); margin-bottom:var(--space-10);}
.calendar .cal-blank {background:#fcfcfc;}
.calendar .cal-holiday .cal-date {color:#ea4044 !important;}

/* 글작성 */
.board-white {padding-top: var(--space-120);}
.board-white table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid var(--color-border-dark); border-bottom:1px solid var(--color-border-dark); 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 var(--color-border-light); background:var(--color-bg-table); font-weight:700; color:var(--color-heading);}
.board-white table td {padding:var(--space-12) var(--space-20); border:1px solid var(--color-border-light); color:var(--color-text);}
.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 var(--color-border-dark); border-bottom:1px solid var(--color-border-dark); 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 var(--color-border-light); background:var(--color-bg-table); font-weight:700; color:var(--color-heading);}
.board-form table td {padding:var(--space-12) var(--space-20); border:1px solid var(--color-border-light); color:var(--color-text);}
.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);}

.attach-field {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-10);}
.attach-box {position:relative;display:flex;flex:0 0 auto;align-items:center;width:265px;height:clamp(38px,calc(56 / var(--inner) * 100vw),56px);padding:0 var(--space-12);box-sizing:border-box;border:1px solid var(--color-border);border-radius:4px;background:var(--color-white);gap:var(--space-10);}
.attach-box .attach-name {flex:1 1 auto;min-width:0;height:32px;margin:0;padding:0;border:0;background:transparent;font-family:inherit;font-size:var(--font-size-16);color:var(--dark-color);letter-spacing:-0.03em;line-height:2em;}
.attach-box .attach-name:focus {outline:0;}
.btn-attach {display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:72px;height:32px;padding:var(--space-6) var(--space-12);border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-light);font-size:var(--font-size-14);font-weight:400;color:var(--color-text);letter-spacing:-0.05em;cursor:pointer;box-sizing:border-box;}
.attach-file {position:absolute;width:1px;height:1px;padding:0;margin:;overflow:hidden;clip:rect(0,0,0,0);border:0;}
.btn-file-add {flex-shrink:0;width:80px;min-width:80px;height:clamp(38px,calc(56 / var(--inner) * 100vw),56px);padding:0;border:0;border-radius:4px;background:var(--color-text);font-size:var(--font-size-16);font-weight:600;color:var(--color-white);letter-spacing:-0.05em;line-height:clamp(38px,calc(56 / var(--inner) * 100vw),56px);text-align:center;cursor:pointer;}
.btn-file-del {flex-shrink:0;width:80px;min-width:80px;height:clamp(38px,calc(56 / var(--inner) * 100vw),56px);padding:0;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-light);font-size:var(--font-size-16);font-weight:400;color:var(--color-text);letter-spacing:-0.05em;line-height:clamp(38px,calc(56 / var(--inner) * 100vw),56px);text-align:center;cursor:pointer;}

.captcha-wrap {display:flex; gap:var(--space-10); height:clamp(38px, calc(56 / var(--inner) * 100vw), 56px);}
.captcha-wrap .input {width:160px; height:100%;}
#kcaptcha_image {cursor:pointer; max-width: 130px; height: 100%; aspect-ratio: 130 / 60;}

.files-upload {max-width:600px;}
.files-upload-group {padding:var(--space-20) 0; border-top:1px dashed var(--color-border);}
.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-10);}
.files-upload-text .upfiles-alt {display:flex; align-items:center; background:var(--color-bg-table); padding:0 var(--space-15); font-size:var(--font-size-15); border:1px solid var(--color-border); border-right:0;}
.files-upload-text .input {flex:1 1 auto; min-width:0; width:1%;}

.form-agree h3 {color:var(--color-heading); 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:var(--color-slate); font-size:var(--font-size-15); line-height:1.5em; text-align:center;}
.form-agree .scroll-box {padding:var(--space-10); color:var(--color-text-sub); font-size:var(--font-size-14); font-weight:400; line-height:1.4em; background:var(--color-bg-table); border:1px solid var(--color-border);}
.form-agree .check {text-align:center; color:var(--color-text); font-size:var(--font-size-16); line-height:1.5em; margin-top:var(--space-20);}
.form-agree .check a {display:inline-block; background:var(--color-white); margin-left:var(--space-6); padding:0 var(--space-10); font-size:var(--font-size-13); line-height:1.625em; letter-spacing:-.03em; border:1px solid var(--color-border);}

/* 상세보기 */
.board-view {border-top:2px solid var(--color-border-dark); margin-top: var(--space-120);;}
.board-view-tit {padding:var(--space-16) var(--space-16); border-bottom:1px solid var(--color-border);}
.board-view-tit h3 {color:var(--color-heading); font-size:var(--font-size-20); font-weight:700; line-height:1.3em; letter-spacing:-.015em;}
.board-view-info {padding:var(--space-13) var(--space-16); color:var(--color-text-sub); font-size:var(--font-size-15); line-height:1.3em; border-bottom:1px solid var(--color-border); overflow:hidden;}
.board-view-info strong {color:var(--color-heading); font-weight:700;}
.board-view-info.type2 {display: flex; justify-content: space-between; align-items: center; gap: 10px 30px;}
.board-view-info .name {float:left; margin-right:var(--space-15);}
.board-view-info .date {float:left;}
.board-view-info .hit {float:right;}
.board-view-info .hit strong {margin-right:var(--space-5);}
.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-10); right:0; text-align:left; font-size:var(--font-size-12); font-weight:400; line-height:1.5em; border:1px solid #f0f0f0; background:#f7f7f7; padding:var(--space-9)  var(--space-9) var(--space-11); 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-15) var(--space-16) var(--space-60); border-bottom:1px solid var(--color-border);}
.board-view-cnt ul {list-style-type:disc; margin-left:1.25em;}
.board-view-cnt ol {list-style-type:decimal; margin-left:1.2em;}
/* 본문 이미지: 구 사이트 이관분은 인라인 style="height:NNNpx; width:NNNpx" 가 박혀 있어 모바일에서 폭만 줄고 높이는 고정돼 세로로 늘어났다(2026-09 고객 피드백 2-1). !important 로 인라인 높이를 무시하고 원본 비율 유지 */
.board-view-cnt img {max-width:100%; height:auto !important;}
.target.cate {display: inline-block; padding: 2px 10px; font-size: 13px;  border: 1px solid var(--color-orange); color: var(--color-orange);}

/* 이전글,다음글 */
.board-prev-next {border-top:1px solid var(--color-border); border-bottom:1px solid var(--color-border); 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:var(--color-heading); 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:var(--color-text); 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 var(--color-border-light);}
.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-5);}
.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:var(--color-bg-table);color:var(--color-heading);border:1px solid var(--color-border);text-align:center;text-decoration:none !important;vertical-align:top;white-space:nowrap;cursor:pointer;}
.btn-pack.focus {background:var(--primary-color); border:1px solid var(--primary-color); color:var(--color-white);}
.btn-pack.dark {background:var(--color-btn-gray); border:1px solid var(--color-btn-gray); color:var(--color-white);}
.btn-pack.dark:focus {outline-color:#f37736;}
.btn-pack.border {background:var(--color-white); border:1px solid var(--primary-color); color:var(--primary-color);}
.btn-pack.small {height:30px;padding:0 var(--space-15);line-height:1.75em;font-size:var(--font-size-13);}
.btn-pack.medium {height:44px;padding:0 var(--space-20);line-height:2.6875em;font-size:var(--font-size-16);}
.btn-pack.large {min-width:130px; height:50px;padding:0 var(--space-30);line-height:3em;font-size:var(--font-size-18);font-weight:500;}
.btn-pack.xlarge {min-width:180px; height:60px;padding:0 var(--space-40);line-height:3.625em;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:var(--color-white);color:var(--primary-color);border:1px solid var(--primary-color);}

.btn-map {display:inline-block; padding:0 var(--space-15); color:var(--color-text); font-size:var(--font-size-14); font-weight:400; line-height:2em; letter-spacing:-.03em; border-radius:30px; background:var(--color-white); border:1px solid var(--color-text); text-align:center; text-decoration:none !important;}
.btn-map:hover {color:var(--color-white); background:var(--color-heading); border-color:var(--color-heading);}

/* 페이지목록 */
.paginate {margin-top:var(--space-40);text-align:center;}
.paginate a,
.paginate strong{display:inline-block;padding:0;margin:0 3px;width:38px;height:38px;font-size:var(--font-size-15);font-weight:500;line-height:2.375em;color:var(--color-btn-gray);border-radius:100%;text-decoration:none;text-align:center;vertical-align:middle;}
.paginate strong{color:var(--color-white);border-color:var(--dark-color);background-color:var(--dark-color);font-weight:700;}
.paginate a:focus,
.paginate a:hover {background-color:var(--color-bg-muted);}
.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-15); color:var(--color-heading); 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 var(--color-border); background:var(--color-bg-muted);}
.comment-write .byte {font-size:var(--font-size-14); line-height:1.3em; color:var(--color-text); 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-15);}
.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-10);}
.comment-info .name {font-weight:700; color:var(--color-heading); margin-right:var(--space-8);}
.comment-info .date {color:var(--color-text-muted); font-family:"Arial",sans-serif; font-size:var(--font-size-12); letter-spacing:0;}
.comment-link {margin-top:var(--space-10); color:var(--color-text-muted); font-size:var(--font-size-14); font-weight:400; line-height:1.3em;}
.comment-link a:hover {text-decoration:underline;}
.comment-txt {color:var(--color-text); font-size:var(--font-size-15); line-height:1.7em;}
.comment-ctr {position:absolute; top:0; right:0; color:var(--color-text-muted); 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:var(--color-border); margin:0 var(--space-5);}
.comment-input {border:1px solid var(--color-border); padding:var(--space-15);}
.comment-input .byte {font-size:var(--font-size-12); line-height:1.3em; color:var(--color-text-muted); 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-5);}
.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 var(--color-border); border-radius:10px;}
.board-password dt {color:var(--color-heading); font-size:var(--font-size-16); font-weight:700; padding-bottom:;}
.board-password dd {display:flex; align-items:center;}
.board-password dd label {color:var(--color-text); font-size:var(--font-size-15); font-weight:400; margin-right:var(--space-13);}
.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-25) 8%; border:1px solid var(--color-border); 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:var(--color-heading); padding:0 var(--space-12); font-size:var(--font-size-14); font-weight:600; line-height:1.5em; letter-spacing:-.03em; background:var(--color-white); border:1px solid var(--color-heading); border-radius:30px; transform:translate(-50%,-50%); z-index:2;}
.store-search .map-img .local.hover {color:var(--primary-color); background:var(--color-white); border-color:var(--primary-color);}
.store-search .map-img .local.active {color:var(--color-white); background:var(--primary-color); border-color:var(--primary-color);}
.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:var(--color-heading); font-size:var(--font-size-18); font-weight:700; line-height:1.4em; letter-spacing:-.03em; margin-bottom:var(--space-25);}
.store-search .search-area dl {display:flex; align-items:center; margin-top:var(--space-25);}
.store-search .search-area dl dt {width:90px; color:var(--color-heading); 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-5);}
.store-search .search-area select.input {width:calc(50% - 50px); margin-right:var(--space-5);}
.store-search .search-area .btn-pack.medium {width:90px; padding:0;}

/* 제품 */
.product-list ul {display:flex; flex-wrap:wrap; margin:0 -13px;}
.product-list ul li {width:20%; padding:0 var(--space-13); margin-bottom:var(--space-30); text-align:center;}
.product-list ul li.none {width:100%; padding:var(--space-70) 0; margin:0; text-align:center; color:var(--color-text-sub);}
.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:var(--color-heading); font-size:var(--font-size-16); line-height:1.4em;}
.product-list ul li .date {color:var(--color-text-sub); font-size:var(--font-size-14); line-height:1.3em; margin-top:var(--space-6);}

.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:var(--color-heading); font-size:var(--font-size-28); line-height:1.3em; padding-bottom:var(--space-20); margin-bottom:var(--space-20); border-bottom:1px solid var(--color-border);}
.product-info .txt {color:var(--color-text);}
.product-detail {color:var(--color-text); padding-bottom:var(--space-50); margin-bottom:var(--space-40); border-bottom:1px solid var(--color-border);}
.product-detail .tit {color:var(--color-heading); font-size:var(--font-size-22); line-height:1.3em; padding-bottom:var(--space-12); margin-bottom:var(--space-20); border-bottom:1px solid var(--color-border);}

/* 검색결과 */
.result-top {margin-bottom:var(--space-30); color:var(--color-heading); 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 var(--color-border); padding:var(--space-30) 0;}
.result-group h3 {margin:0 0 var(--space-20); color:var(--color-heading); 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-5); font-size:var(--font-size-14); line-height:1.5em; color:var(--color-text); 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:var(--color-text-light); font-size:var(--font-size-13);}
.result-group .gall {display:flex; flex-wrap:wrap; margin:0 -13px;}
.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:var(--color-heading); 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:var(--color-text-sub); text-decoration:underline;}

/* BR뇌교육 게시판 */
.board-search.br {display:flex; display: none; align-items:center; justify-content:space-between; margin-bottom:var(--space-40);}
.board-search.br .total-page {float:none; margin:0; color:var(--color-text); font-size:var(--font-size-16); line-height:1.2em;}
.board-search.br .cate {float:none; margin:0;}
.board-search.br .cate .input {width:139px; height:56px; padding:0 var(--space-30); border:1px solid var(--dark-color); border-radius:var(--radius-32); background:var(--color-white) url("/images/bbs/select.svg") no-repeat right 20px center; background-size:11px auto; font-size:var(--font-size-16); font-weight:600; color:var(--dark-color); appearance:none;}
.board-search.br .search {float:none; position:relative; width:340px; height:56px; border:1px solid var(--dark-color); border-radius:var(--radius-32); background:var(--color-white);}
.board-search.br .search .input {width:100%; height:100%;  border:0; background:transparent; font-size:var(--font-size-16); color:var(--dark-color); box-sizing:border-box;}
.board-search.br .search .input::placeholder {color:var(--color-text-muted);}
.board-search.br .search .input:focus {outline:0;}
.board-search.br .search .btn-search {position:absolute; top:0; right:0; width:calc(24px + var(--space-30) * 2); height:100%; padding:0; border:0; background:url("/images/bbs/icon_search.svg") no-repeat 50% 50%; cursor:pointer;;}
.board-search.br .left {display:flex; align-items:center; gap:var(--space-20);}



.page-review-list {padding-top: var(--space-150);}
.review-cate {width: 100%; margin-bottom: var(--space-100);}
.review-cate .slick-list {margin: 0 ;}
.review-cate ul {display: flex; width: max-content; margin: 0 auto;}
.review-cate li {flex: 1 1 auto; width: auto; padding: 0 var(--space-5);}
.review-cate a {display:inline-flex; align-items:center; justify-content:center; min-width:166px; height:52px; padding:var(--space-12) 25px; border-radius:99px; background:var(--color-bg-muted); color:var(--color-text); font-size:var(--font-size-16); font-weight:600; letter-spacing:-0.03em; text-decoration:none !important;}
.review-cate li.active a{background:var(--primary-color); color:var(--color-white); font-weight:700;}
.review-list {border-top:2px solid var(--dark-color);}
.review-list > ul > li {border-bottom:1px solid var(--color-border);}
.review-list > ul > li.none {padding:var(--space-70) 0; text-align:center; color:var(--color-text-sub);}
.review-list > ul > li > a {display:flex; align-items:center; justify-content:space-between; gap:var(--space-40); padding:var(--space-40) var(--space-20); text-decoration:none !important;}
.review-list .thumb {flex-shrink:0; max-width: 450px; width:35%; aspect-ratio: 450 / 254; border-radius:var(--radius-16); overflow:hidden; background:var(--color-bg-muted);}
.review-list .thumb img {width:100%; height:100%; object-fit:cover;}
.review-list .thumb.noimg {display:flex; align-items:center; justify-content:center;}
.review-list .thumb.noimg img {width:auto; height:62px; object-fit:contain;}
.review-list .info, .best-review-list .info {flex:1 1 auto; min-width:0; width:1%;}
.review-list .meta, .best-review-list .meta {display:flex; align-items:center; justify-content:space-between; gap:var(--space-10); margin-bottom:var(--space-20);}
.review-list .labels, .best-review-list .labels {display:flex; flex-wrap:wrap; gap:var(--space-5);}
.review-list .label, .best-review-list .label, .faq .tit .category, .board-view-info span.label.cate {display:inline-flex; align-items:center; padding:var(--space-5); border-radius:8px; font-size:var(--font-size-14); font-weight:600; line-height:1.2em; letter-spacing:-0.03em;}
.review-list .label.cate, .best-review-list .label.cate, .faq .tit .category, .board-view-info span.label.cate {background:#FFF0E4; color:var(--color-orange);}
.review-list .label.area, .best-review-list .label.area {background:#def9dd; color:var(--color-green);}
.review-list .label.grade, .best-review-list .label.grade {background:#e8f0fb; color:var(--primary-color);}
.review-list .author, .best-review-list .author {color:var(--color-text-muted); font-size:var(--font-size-14); font-weight:600; letter-spacing:-0.03em;}
.review-list .tit, .best-review-list .tit {color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.review-list .txt, .best-review-list .txt {margin-top:var(--space-30); color:var(--color-text); font-size:var(--font-size-16); line-height:1.625em; letter-spacing:-0.03em; max-height:4.875em; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical;}

.page-review-best {margin-top: var(--space-120); padding: var(--space-120) 0; background: url('/images/sub/bg-best-review.jpg') no-repeat center center / cover;}
.review-best-title {margin-bottom: var(--space-60); text-align: center; color: var(--color-white); font-size: var(--font-size-18); line-height:1.3em;}
.review-best-title h3 {margin-bottom: var(--space-30); font-size: var(--font-size-40); line-height:1.2em;}
.best-review-list {position: relative;}
.best-review-list .slick-arrow {position: absolute; left: 0; top: 15%; transform: translateY(50%); z-index: 1; display: flex; justify-content: center; align-items: center; width: clamp(44px, calc(56 / var(--inner) * 100vw), 56px); height: clamp(44px, calc(56 / var(--inner) * 100vw), 56px); border-radius: 100%; border: 1px solid var(--color-border); background: var(--color-white); overflow: hidden; text-indent: -99999em;}
.best-review-list .slick-arrow.slick-next {left: auto; right: 0;}
.best-review-list .slick-arrow:before {content: ''; display: block; width: 14px; height: 24px; background: url('/images/sub/gallery-arrow.svg') no-repeat center center / contain;}
.best-review-list .slick-arrow.slick-next:before {transform: scaleX(-1);}
.best-review-list .slick-list {margin: 0 calc(var(--space-20) * -1);}
.best-review-list .slick-slide {padding: 0 var(--space-20);}
.best-review-item {position: relative; display: flex; flex-direction: column; gap: var(--space-30); padding:var(--space-50) var(--space-40); border-radius: var(--radius-16); overflow: hidden; background: var(--color-white);}
.best-review-item > .badge-best {position: absolute; top: 8px; right: calc(var(--space-40) - 8px); z-index: 2; width: 52px; height: auto; filter: drop-shadow(0 2px 3px rgba(0,0,0,.15));}
.best-review-item .thumb {max-width: 360px; width: 100%; margin-bottom: var(--space-20); aspect-ratio: 360 / 203; border-radius: var(--radius-16); overflow: hidden;}
.best-review-item .thumb img {width: 100%; height: 100%; object-fit: cover;}
.best-review-list .info {width: 100%; display: flex; flex-direction: column;}
.best-review-list .txt {margin-top: var(--space-20); -webkit-line-clamp:4; max-height: none;}
/* 카드 높이 통일 : slick 슬라이드는 기본이 float 라 카드마다 제목/본문 길이만큼 높이가 달라진다.
   트랙을 flex 로 바꿔 슬라이드를 같은 높이로 늘리고, 카드가 그 높이를 채우게 한다. */
.best-review-list .slick-track {display: flex; align-items: stretch;}
.best-review-list .slick-slide {height: auto;}
.best-review-list .slick-slide > div {height: 100%;}
.best-review-item {height: 100%;}
/* 제목은 2줄로 고정 — 1줄짜리 제목 때문에 카드마다 본문 시작 위치가 어긋나는 것을 막는다 */
.best-review-list .tit {display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.4em; word-break: keep-all;}
.best-review-list .txt {flex: 1 1 auto;}

.page-news {padding-top: var(--space-120);}
.news-card-list > ul {display:flex; flex-direction:column; gap:var(--space-40);}
.news-card-list > ul > li.none {padding:var(--space-70) 0; text-align:center; color:var(--color-text-sub);}
.news-card-list .item {display:flex; align-items:stretch; overflow:hidden; border:1px solid var(--color-border); border-radius:var(--radius-24); background:var(--color-white);}
.news-card-list .item:hover {border-color:var(--primary-color);}
.news-card-list .item > a {display:flex; align-items:stretch; width:100%; text-decoration:none !important;}
.news-card-list .thumb {flex-shrink:0; overflow:hidden; width: 39%;}
.news-card-list .body {position: relative; display:flex; flex:1 1 auto; flex-direction:column; justify-content:center; min-width:0; height: 100%; padding:var(--space-50);}
.news-card-list .inner {display:flex; flex-direction:column; gap:var(--space-10); height: 100%; justify-content: space-between; width:100%;}
.news-card-list .content {display:flex; flex-direction:column; gap:var(--space-25);}
.news-card-list .text-group {display:flex; flex-direction:column; gap:var(--space-16);}
.news-card-list .cate {display:inline-flex; align-self:flex-start; padding:var(--space-5); border-radius:8px; background:#e8f0fb; color:var(--primary-color); font-size:var(--font-size-14); font-weight:600; line-height:1.2em; letter-spacing:-0.03em;}
.news-card-list .tit {color:var(--dark-color); font-size:var(--font-size-28); font-weight:700; line-height:1.3em; letter-spacing:-0.03em; overflow: hidden; white-space: normal; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-break: keep-all;}
.news-card-list .txt {color:var(--color-text); font-size:var(--font-size-16); line-height:1.625em; letter-spacing:-0.03em; max-height:3.25em; overflow:hidden; text-overflow:ellipsis; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.news-card-list .date {color:var(--color-text-muted); font-size:var(--font-size-14); line-height:1.2em; letter-spacing:-0.03em;}
.news-card-list .more {display: flex; justify-content: center; align-items: center; flex-shrink:0; width:clamp(44px, calc(56 / var(--inner) * 100vw), 56px); height:clamp(44px, calc(56 / var(--inner) * 100vw), 56px); margin-left: auto; background:var(--color-bg-muted); border-radius: 100%;}
.news-card-list .more:after {content: ''; width: 16px; height: 16px; background: url('/images/bbs/icon_more.svg') no-repeat center center / contain;}
.news-card-list .item:hover .more {background: var(--primary-color);}
.news-card-list .item:hover .more:after {filter: brightness(0) invert(1);}
.news-card-list.news-press .thumb {max-width:460px; aspect-ratio:460/345;}
.news-card-list.news-press .thumb img {width:100%; height:100%; object-fit:cover;}
.news-card-list.news-video .thumb {max-width:544px; aspect-ratio: 544/306}
.news-card-list.news-video .thumb img {width:100%; height:100%; object-fit:cover;}
/* 사회공헌 소식: 대표이미지를 줄이고 텍스트 영역을 넓혀 한 화면에 더 많은 항목이 보이게 (2026-09 고객 피드백 3-1) */
.news-card-list.news-social > ul {gap:var(--space-20);}
.news-card-list.news-social .item {border-radius:var(--radius-16);}
.news-card-list.news-social .thumb {width:24%; max-width:260px; aspect-ratio:4/3;}
.news-card-list.news-social .thumb img {width:100%; height:100%; object-fit:cover;}
.news-card-list.news-social .body {padding:var(--space-25) var(--space-40);}
.news-card-list.news-social .content {gap:var(--space-12);}
.news-card-list.news-social .text-group {gap:var(--space-10);}
.news-card-list.news-social .tit {font-size:var(--font-size-28); line-height: 1.4em;}

.page-notice {padding-top: var(--space-120);}
.board-list.br table {border-top:2px solid var(--dark-color);}
.board-list.br table thead th {height:60px; padding:0 var(--space-10); border-bottom:1px solid var(--color-border); background:var(--color-bg-light); color:var(--dark-color); font-size:var(--font-size-18); font-weight:700; letter-spacing:-0.03em;}
.board-list.br table tbody td {height:65px; padding:0 var(--space-10); color:#484848; font-size:var(--font-size-18); letter-spacing:-0.03em; border-bottom:1px solid var(--color-border);}
.board-list.br table tbody tr:hover td {background:var(--color-bg-table);}
.board-list.br table tbody td.subject {text-align:left; padding-left:var(--space-15);}
.board-list.br table tbody td.subject a {color:#484848; text-decoration:none;}
.board-list.br table tbody td.subject a:hover {text-decoration:underline;}
.board-list.br .label {display:inline-flex; align-items:center; justify-content:center; min-width:50px; height:24px; padding:0 var(--space-8); border-radius:4px; background:var(--color-orange); color:var(--color-white); font-size:var(--font-size-14); font-weight:700; line-height:1.2em;}
.board-list.br .label.new {width:18px; min-width:18px; height:18px; padding:0; border-radius:4px; background:var(--primary-color); font-size:11px; font-weight:700;}

.page-store {padding-top: var(--space-120);}
.find-store-wrap {position:relative; display:flex; height:900px; max-height: calc(100vh - var(--header-height)); border:1px solid var(--color-charcoal-dark); border-radius: var(--radius-24); overflow: hidden;}
.find-store-list {display:flex; flex-direction:column; position:relative; z-index:10; width:25%; min-width:290px; background:var(--color-white); border-right:1px solid var(--color-charcoal-dark); overflow:hidden;}
.find-store-list .search-wrap {display: flex; flex-direction: column; gap: var(--space-30); border-bottom:1px solid var(--color-border); padding: var(--space-50) var(--space-30);}
.find-store-list .search-wrap .tab-area {font-size: var(--font-size-32); font-weight: 700; color: var(--dark-color); line-height:1.2em;}
.find-store-list .tab-area .tabs {display:flex;}
.find-store-list .tab-area .tabs li {width:50%;}
.find-store-list .tab-area .tabs li a {display:flex; justify-content:center; align-items:center; width:100%; height:60px; padding:var(--space-4); background:#f7f7f7; font-size:var(--font-size-16); font-weight:700; line-height:1.3em; letter-spacing:-.04em; color:var(--color-text-sub); text-align:center; text-decoration:none !important;}
.find-store-list .tab-area .tabs li.active a {background:var(--color-charcoal-dark); color:var(--color-white);}
.find-store-list .search-area {position:relative; display:flex; gap:var(--space-10);}
.find-store-list .search-area .input {display:block; width:100%; height:44px; color:var(--color-text); font-size:var(--font-size-15); letter-spacing:-.04em; border:1px solid var(--color-border); border-radius:4px;}
.find-store-list .search-area .input[type=search] {padding-right:var(--space-40);}
.find-store-list .search-area .submit {position:absolute; top:50%; right:5px; margin-top:-16px; width:32px; height:32px; border:0; background:none; cursor:pointer;}
.find-store-list .search-area .submit svg {display:block; width:18px; margin:0 auto;}
.find-store-list .total {padding:0 var(--space-16) var(--space-12); color:var(--color-charcoal-dark); font-size:var(--font-size-14); line-height:1.3em; letter-spacing:-.04em;}
.find-store-list .total strong {color:#00a3a8;}
.find-store-list .list-area {position:relative; overflow:auto; flex:1 1 auto; min-height:0; height:1%;}
.find-store-list .list-area::-webkit-scrollbar {width:5px; height:5px; border-radius:5px; background-color:transparent;}
.find-store-list .list-area::-webkit-scrollbar-thumb {background:rgba(0,0,0,.2); border-radius:5px;}
.find-store-list .list-area ul li {display:grid; gap:var(--space-15); padding:var(--space-30); border-bottom:1px solid var(--color-border); font-size:var(--font-size-14); line-height:1.5715em; letter-spacing:-.04em; color:var(--color-text); cursor:pointer;}
.find-store-list .list-area ul li:last-child {border-bottom:0;}
.find-store-list .list-area ul li.active {background:var(--color-bg-gray);}
.find-store-list .list-area .name {margin-bottom:var(--space-4); font-size:var(--font-size-18); line-height:1.33em; letter-spacing:-.04em; color:var(--color-charcoal-dark);}
.find-store-list .list-area .name strong {display: block; font-size: var(--font-size-20); line-height:1.2em; font-weight:600;}
.find-store-list .list-area .func {display: flex; justify-content: space-between; gap: 10px 25px;}
.find-store-list .list-area .tel {display: flex; align-items: center; gap: var(--space-5); font-weight:700; color:var(--dark-color);}
.find-store-list .list-area .tel:before {content: ''; display: block; width: 16px; height: 16px; background: url('/images/sub/icon-store-tel.svg') no-repeat center center / contain;}
.find-store-list .list-area .btn-inquiry {display: flex; padding: 10px; border: 1px solid var(--primary-color); border-radius: 100px; font-size: var(--font-size-16); line-height: 1; font-weight: 500; color: var(--primary-color)}
.find-store-list .list-area .btn-inquiry:hover {background: var(--primary-color); color: #fff;}
.find-store-map {position:relative; overflow:hidden; flex:1;}
.find-store-map #map {position:relative; width:100%; height:100%;}
.btn-get-position {position:absolute; bottom:20px; right:20px; z-index:10; width:48px; height:48px; background:var(--color-white); border:1px solid var(--color-charcoal-dark); border-radius:12px; cursor:pointer;}
.btn-get-position svg {display:block; margin:0 auto; width:20px;}
.btn-view-map {display:none;}
.btn-view-list {display:none;}

.board-inquiry {padding-top: var(--space-120);}
.board-inquiry .inquiry-type {margin-bottom:var(--space-50); text-align:center;}
.board-inquiry .inquiry-type h3 {color:var(--dark-color); font-size:var(--font-size-40); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.board-inquiry .type-group {display:flex; gap:var(--space-20); margin-top:var(--space-50);}
.board-inquiry .type-item {flex:1 1 auto; min-width:0; padding:var(--space-40) var(--space-30); border:3px solid var(--color-border); border-radius:var(--radius-16); background:var(--color-white);}
.board-inquiry .type-item.active {border-color:var(--primary-color);}
.board-inquiry .type-item.type-test.active {border-color: var(--color-green)}
.board-inquiry .type-item.type-camp.active {border-color: var(--color-purple)}
.board-inquiry .type-item .row {display:flex; align-items:center; gap:var(--space-20);}
.board-inquiry .type-item .tit {display: block; margin-bottom: var(--space-20); color:var(--primary-color); font-size:var(--font-size-24); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.board-inquiry .type-item.active .tit {color:var(--primary-color);}
.board-inquiry .type-item.type-test .tit {color:var(--color-green);}
.board-inquiry .type-item.type-camp .tit {color:var(--color-purple);}
.board-inquiry .type-item .txt {color:var(--color-text); font-size:var(--font-size-16); line-height:1.55em; letter-spacing:-0.03em; text-align: left;}
.board-inquiry .form-wrap {padding:var(--space-40) var(--space-60); border: var(--space-40) solid var(--color-bg-muted); border-radius:var(--radius-16); background:var(--color-white);}
.board-inquiry .field {margin-bottom:var(--space-40);}
.board-inquiry .field-label {display:flex; align-items:center; gap:var(--space-10); margin-bottom:var(--space-20); color:var(--dark-color); font-size:var(--font-size-22); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.board-inquiry .field-label .req {width:6px; height:6px; background: var(--color-red); border-radius: 100%;}
.board-inquiry .field-row {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--space-80);}
.board-inquiry .field-col {min-width:0;}
.board-inquiry .field-row.child-row {grid-template-columns:minmax(0, 1fr) auto; gap:var(--space-30);}
.board-inquiry .field-row.branch-row {grid-template-columns:minmax(0, 1fr) auto; gap:var(--space-10);}
.board-inquiry .field-row.referral-row {grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:var(--space-10);}
.board-inquiry .field .input {width: 100%; height: clamp(38px, calc(56 / var(--inner) * 100vw), 56px); border-radius: 4px;}
.board-inquiry .field textarea.input {height: 200px;}
.board-inquiry .field .input::placeholder {color:var(--color-text-muted);}
.board-inquiry .gender {display:flex; align-items:center; gap:var(--space-20);}
.board-inquiry .gender .radiobox label {color:var(--color-text); font-size:var(--font-size-18);}
.board-inquiry .btn-branch {display:inline-flex; align-items:center; justify-content:center; height:clamp(38px, calc(56 / var(--inner) * 100vw), 56px); padding:0 var(--space-20); border:0; border-radius:4px; background:var(--primary-color); color:var(--color-white); font-size:var(--font-size-16); font-weight:600; cursor:pointer;}
.board-inquiry .form-agree {margin:var(--space-50) 0;}
.board-inquiry .form-agree h3 {font-size:var(--font-size-20); color: var(--dark-color)}
.board-inquiry .buttons .btn-pack.large {min-width:200px; height:60px; border-radius:4px; font-size:var(--font-size-20); font-weight:700;}
.field-hint {margin-top: var(--space-15);}

.faq.br {border-top:2px solid var(--dark-color);}
.faq.br ul li {border-bottom:1px solid var(--color-border);}
.faq.br .tit a {display:flex; align-items:center; justify-content:space-between; gap:var(--space-30); padding:var(--space-25) var(--space-30); color:var(--dark-color); font-size:var(--font-size-18); font-weight:600; letter-spacing:-0.03em; text-decoration:none !important;}
.faq.br .tit a:after {position:static; width:20px; height:11px; margin:0; border:0; background:url("/images/bbs/faq_arrow.svg") no-repeat 50% 50%; background-size:contain; transform:none;}
.faq.br li.active .tit {background:var(--primary-color);}
.faq.br li.active .tit a {color:var(--color-white);}
.faq.br li.active .tit a:after {background-image:url("/images/bbs/faq_arrow_active.svg"); transform:rotate(180deg);}
.faq.br .q {flex-shrink:0; width:40px; height:40px; margin:0; border-radius:50%; background:url("/images/bbs/faq_q_off.svg") no-repeat 50% 50%; background-size:contain; font-size:0; line-height:0;}
.faq.br li.active .q {background-image:url("/images/bbs/faq_q_on.svg");}
.faq.br .cnt {display:none; padding:var(--space-40) var(--space-30); background:var(--color-border-light);}
.faq.br li.active .cnt {display:block;}
.faq.br .cnt-inner {display:flex; gap:var(--space-30);}
.faq.br .a {flex-shrink:0; width:40px; height:40px; border-radius:50%; background:url("/images/bbs/faq_a.svg") no-repeat 50% 50%; background-size:contain; font-size:0; line-height:0;}
.faq.br .answer {flex:1 1 auto; min-width:0; color:var(--color-text); font-size:var(--font-size-16); line-height:1.625em; letter-spacing:-0.03em;}
.faq.br .cnt-btns {display:flex; justify-content:flex-end; gap:var(--space-10); margin-top:var(--space-30);}
.faq.br .q-txt {flex:1 1 auto; min-width:0; text-align:left;}
.faq.br .tit a .q-txt {margin-right:auto;}

.board-inquiry .type-item {cursor:pointer;}
.board-inquiry .type-item input.blind {position:absolute; width:1px; height:1px; margin:; padding:0; overflow:hidden; clip:rect(0,0,0,0); border:0;}

/* recruit — apply */
.page-recruit-apply {padding-top: var(--space-120);}
.board-recruit-apply {max-width:1400px; margin:0 auto;}
.board-recruit-apply .apply-form-wrap {display:flex; flex-direction:column; gap:var(--space-100);}
.board-recruit-apply .apply-sec-head {display:flex; align-items:center; gap:var(--space-12); margin-bottom:var(--space-30);}
.board-recruit-apply .apply-sec-head .num {flex:0 0 40px; width:40px; height:40px; display:flex; align-items:center; justify-content:center; border-radius:50%; background:var(--primary-color); color:var(--color-white); font-size:var(--font-size-20); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.board-recruit-apply .apply-sec-head h3 {font-size:var(--font-size-32); font-weight:700; line-height:1.2em; color:var(--dark-color); letter-spacing:-0.03em;}
.board-recruit-apply .form-box {padding:var(--space-60) var(--space-40); border:var(--space-40) solid var(--color-bg-muted); border-radius:var(--radius-16); background:var(--color-white);}
.board-recruit-apply .field {margin-bottom:var(--space-60);}
.board-recruit-apply .field:last-child {margin-bottom:0;}
.board-recruit-apply .field-label {display:flex; align-items:center; gap:var(--space-10); margin-bottom:var(--space-20); color:var(--dark-color); font-size:var(--font-size-22); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.board-recruit-apply .field-label .req {width:6px; height:6px; background:var(--color-red); border-radius:100%;}
.board-recruit-apply .field-row {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--space-60);}
.board-recruit-apply .field-col {min-width:0;}
.board-recruit-apply .field-row.name-row {display:flex; align-items:center; gap:var(--space-30); grid-template-columns:none;}
.board-recruit-apply .field-row.name-row .input {flex:1; max-width:570px;}
.board-recruit-apply .field-row.branch-row {grid-template-columns:minmax(0, 1fr) auto; gap:var(--space-20);}
.board-recruit-apply .field .input {width:100%; height:clamp(38px, calc(56 / var(--inner) * 100vw), 56px); border-radius:4px;}
.board-recruit-apply .field textarea.input {height:200px;}
.board-recruit-apply .field .input::placeholder {color:var(--color-text-muted);}
.board-recruit-apply .field .file-input {padding:var(--space-17) var(--space-20); line-height:1.2em;}
.board-recruit-apply .field-hint {margin-top:var(--space-15); font-size:var(--font-size-14); line-height:1.2em; color:var(--color-text-muted); letter-spacing:-0.03em;}
.board-recruit-apply .gender {display:flex; align-items:center; gap:var(--space-20); flex-shrink:0;}
.board-recruit-apply .gender .radiobox label {color:var(--color-text); font-size:var(--font-size-18);}
.board-recruit-apply .birth-row {display:flex; flex-wrap:wrap; gap:var(--space-20); align-items:center;}
.board-recruit-apply .birth-row select.input {flex:0 0 auto; width:140px;}
.board-recruit-apply .birth-row select.input:nth-child(2),
.board-recruit-apply .birth-row select.input:nth-child(3) {width:110px;}
.board-recruit-apply .email-row {display:flex; gap:var(--space-20); align-items:center;}
.board-recruit-apply .email-row .email-id {flex:1; max-width:330px;}
.board-recruit-apply .email-row .email-domain {flex:0 0 220px; width:220px;}
.board-recruit-apply .apply-path {display:flex; flex-wrap:wrap; gap:var(--space-20) var(--space-60); align-items:center;}
.board-recruit-apply .apply-path .radiobox label {color:var(--color-text); font-size:var(--font-size-18);}
.board-recruit-apply .edu-status {display:flex; flex-wrap:wrap; gap:var(--space-20); align-items:center;}
.board-recruit-apply .edu-status .radiobox label {color:var(--color-text); font-size:var(--font-size-18);}
.board-recruit-apply .edu-status .edu-etc {flex:0 0 229px; width:229px; max-width:100%;}
.board-recruit-apply .school-row {display:flex; gap:var(--space-20);}
.board-recruit-apply .school-row .input {flex:1;}
.board-recruit-apply .btn-action {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; height:clamp(38px, calc(56 / var(--inner) * 100vw), 56px); padding:0 var(--space-20); border:0; border-radius:4px; background:var(--primary-color); color:var(--color-white); font-size:var(--font-size-16); font-weight:600; letter-spacing:-0.03em; cursor:pointer;}
.board-recruit-apply .captcha-wrap {display:flex; gap:var(--space-10); align-items:flex-start;}
.board-recruit-apply .captcha-wrap .input { flex:1; max-width:250px;}
.board-recruit-apply .form-agree {margin-top:0;}
.board-recruit-apply .form-agree h3 {font-size:var(--font-size-20); font-weight:600; line-height:1.5em; color:var(--dark-color); letter-spacing:-0.05em;}
.board-recruit-apply .form-agree .scroll-box {margin-top:var(--space-40); padding:var(--space-15); border:1px solid var(--color-border); border-radius:4px; background:var(--color-bg-muted); font-size:var(--font-size-14); line-height:1.5em; color:var(--color-text); overflow-y:auto;}
.board-recruit-apply .form-agree .check {display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:var(--space-6); margin-top:var(--space-25); font-size:var(--font-size-16); line-height:1.5em; color:var(--color-text);}
.board-recruit-apply .form-agree .check a {display:inline-flex; align-items:center; justify-content:center; min-width:70px; height:30px; padding:0 var(--space-10); border:1px solid var(--color-border); border-radius:4px; background:var(--color-white); color:var(--color-text); font-size:var(--font-size-14); font-weight:600; text-decoration:none;}
.board-recruit-apply .apply-submit {text-align:center;}
.page-program-list .sec-program-information {position:relative; padding:var(--space-150) 0; background:url('/images/sub/bg-program-info.jpg') no-repeat center center / cover; overflow:hidden;}
.page-program-list .sec-program-information .contain {position:relative; z-index:1;}
.page-program-list .program-info-head {margin-bottom:var(--space-60); text-align:center;}
.page-program-list .program-info-head h3 {color:var(--dark-color); font-size:var(--font-size-40); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-list .program-info-head p {margin-top:var(--space-20); color:var(--color-text); font-size:var(--font-size-24); line-height:1.4em; letter-spacing:-0.03em;}
.page-program-list .program-info-grid {display:grid; grid-template-columns: repeat(4, 1fr); gap:var(--space-40); margin:0; padding:0; list-style:none;}
.page-program-list .program-info-card {position:relative; display: flex; flex-direction: column; height: 100%;}
.page-program-list .program-info-badge {position: relative; z-index:2; display:flex; align-items:center; justify-content:center; width: fit-content; height:38px; margin: 0 auto -17px; padding:0 var(--space-20); border-radius:99px; color:var(--color-white); font-size:var(--font-size-16); font-weight:700; line-height:1.2em; letter-spacing:-0.03em; white-space:nowrap;}
.page-program-list .program-info-card-inner {flex: 1; display:flex; flex-direction:column; padding:var(--space-50) var(--space-30) var(--space-30); border:2px solid; border-radius:var(--radius-16); background:var(--color-white); box-sizing:border-box;}
.page-program-list .program-info-card .thumb {display:flex; align-items:center; justify-content:center; margin-bottom:var(--space-25); border-radius:12px; overflow:hidden;}
.page-program-list .program-info-text {flex: 1; display:flex; flex-direction:column; gap:var(--space-16); text-align: center; padding-bottom: var(--space-20); margin-bottom: var(--space-20); border-bottom: 1px dashed #f0568c;}
.page-program-list .program-info-card .tit {font-size:var(--font-size-24); font-weight:700; line-height:1.35em; letter-spacing:-0.03em; color:var(--dark-color);}
.page-program-list .program-info-card .txt {color:var(--color-text); font-size:var(--font-size-16); line-height:1.625em; letter-spacing:-0.03em;}
.page-program-list .program-info-divider {margin:var(--space-25) 0; border:0; border-top:1px dashed var(--color-border);}
.page-program-list .program-info-tags {display:flex; flex-direction:column; gap:var(--space-10); margin:0; padding:0; list-style:none;}
.page-program-list .program-info-tags li {display:flex; align-items:center; gap:var(--space-8); padding:var(--space-10) var(--space-12); border-radius:8px; background:var(--color-bg-muted); color:var(--color-text); font-size:var(--font-size-16); font-weight:600; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-list .program-info-tags li img {flex-shrink:0;}
.page-program-list .theme-pink .program-info-badge {background:#f0568c;}
.page-program-list .theme-pink .program-info-card-inner {border-color:#f0568c;}
.page-program-list .theme-pink .thumb {background:rgba(240,86,140,0.08);}
.page-program-list .theme-orange .program-info-badge {background:#f29c38;}
.page-program-list .theme-orange .program-info-card-inner {border-color:#f29c38;}
.page-program-list .theme-orange .program-info-text {border-color: #f29c38;}
.page-program-list .theme-orange .thumb {background:rgba(242,156,56,0.08);}
.page-program-list .theme-green .program-info-badge {background:#34a96b;}
.page-program-list .theme-green .program-info-card-inner {border-color:#34a96b;}
.page-program-list .theme-green .program-info-text {border-color: #34a96b;}
.page-program-list .theme-green .thumb {background:rgba(52,169,107,0.08);}
.page-program-list .theme-purple .program-info-badge {background:#7b6ef0;}
.page-program-list .theme-purple .program-info-card-inner {border-color:#7b6ef0;}
.page-program-list .theme-purple .program-info-text {border-color: #7b6ef0;}
.page-program-list .theme-purple .thumb {background:rgba(123,110,240,0.08);}
.page-program-list .program-info-banner {margin-top:var(--space-60); padding:var(--space-40) 0; border:1px solid var(--color-border); border-radius:var(--radius-16); background:var(--color-white);}
.page-program-list .program-info-banner ul {display:flex; align-items:center; justify-content:center; margin:0; padding:0; list-style:none;}
.page-program-list .program-info-banner li {position:relative; display:flex; flex:1 1 auto; align-items:center; gap:var(--space-16); min-width:0; padding:0 var(--space-20); line-height:1.5em;}
.page-program-list .program-info-banner li + li:before {content:""; position:absolute; top:50%; left:0; width:1px; height:80px; background:var(--color-border); transform:translateY(-50%);}
.page-program-list .program-info-feature-icon {display:flex; align-items:center; justify-content:center; width:72px; height:72px; border-radius:50%;}
.page-program-list .program-info-feature-icon.tone-purple {background:#654c9f;}
.page-program-list .program-info-feature-icon.tone-blue {background:#3f6fb5;}
.page-program-list .program-info-banner h5 {margin:0 0 var(--space-8); color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1.35em; letter-spacing:-0.03em;}

/* 프로그램 소개 — 검색·목록 */
.page-program-list .sec-program-list {padding:var(--space-150) 0;}
.page-program-list .program-list-head {margin-bottom:var(--space-60);}
.page-program-list .program-list-head > h3 {color:var(--dark-color); font-size:var(--font-size-32); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-list .program-search-form {margin-top:var(--space-30); padding:var(--space-60) var(--space-30); border-radius:var(--radius-24); background:var(--color-bg-muted);}
.page-program-list .program-search-row {display:flex; align-items:flex-start; margin:0; padding:0; border:0;}
.page-program-list .program-search-row + .program-search-row {margin-top:var(--space-40);}
.page-program-list .program-search-label {display:flex; flex-shrink:0; align-items:center; gap:var(--space-8); width:200px; padding:var(--space-13) 0 var(--space-13) var(--space-60); color:var(--dark-color); font-size:var(--font-size-20); font-weight:600; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-list .program-search-label img {flex-shrink:0; width:24px; height:24px; object-fit:contain;}
.page-program-list .program-filter-list {display:grid; grid-template-columns: repeat(5, 1fr); flex:1 1 auto; gap:var(--space-10); min-width:0;}
.page-program-list .program-filter-chip {display:inline-flex; cursor:pointer;}
.page-program-list .program-filter-chip .chip-inner {display:inline-flex; align-items:center; gap:var(--space-10); width:100%; max-width:100%; height:50px; padding:0 var(--space-30); border:1px solid var(--color-border); border-radius:8px; background:var(--color-white); color:var(--color-text); font-size:var(--font-size-16); font-weight:400; line-height:1.2em; letter-spacing:-0.03em; box-sizing:border-box;}
.page-program-list .program-filter-chip .chip-inner img {flex-shrink:0; width:16px; height:12px; object-fit:contain;}
.page-program-list .program-filter-chip .chip-inner .ico-on {display:none;}
.page-program-list .program-filter-chip input:checked + .chip-inner {border:2px solid var(--primary-color); color:var(--primary-color); font-weight:700;}
.page-program-list .program-filter-chip input:checked + .chip-inner .ico-off {display:none;}
.page-program-list .program-filter-chip input:checked + .chip-inner .ico-on {display:block;}
.page-program-list .program-list-body {display:flex; flex-direction:column; gap:var(--space-150);}
.page-program-list .program-list-group {display:flex; flex-direction:column; gap:var(--space-30);}
.page-program-list .program-list-sec-tit {display:flex; align-items:center; gap:var(--space-10); margin:0; color:var(--dark-color); font-size:var(--font-size-28); font-weight:700; line-height:1.2em; letter-spacing:-0.04em;}
.page-program-list .program-list-sec-tit .mark {position:relative; flex-shrink:0; width:28px; height:28px; background: url('/images/sub/deco-tit.svg') no-repeat center center / contain;}
.page-program-list .program-list > ul {display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:var(--space-60); margin:0; padding:0; list-style:none;}
.page-program-list .program-list > ul > li {margin:0; padding:0; list-style:none;}
.page-program-list .program-list > ul > li.none {width:100%; padding:var(--space-70) 0; text-align:center; color:var(--color-text-sub);}
.page-program-list .program-list a {display:flex; flex-direction:column; gap:var(--space-20); max-width: 305px; height:100%; text-decoration:none !important;}
.page-program-list .program-list .thumb {position:relative; aspect-ratio:305 / 229; overflow:hidden; border:1px solid var(--color-border); border-radius:var(--radius-16); background:var(--dark-color);}
.page-program-list .program-list .thumb img {width:100%; height:100%; object-fit:cover;}
.page-program-list .program-list .thumb.noimg {background:var(--dark-color);}
.page-program-list .program-list .info {display:flex; flex-direction:column; gap:var(--space-20); padding:0 var(--space-10);}
.page-program-list .program-list .meta {display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-10);}
.page-program-list .program-list .label {display:inline-flex; align-items:center; padding:var(--space-6) var(--space-10); border-radius:4px; background:var(--primary-color); color:var(--color-white); font-size:var(--font-size-15); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-list .program-list .age {color:var(--color-text); font-size:var(--font-size-18); font-weight:600; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-list .program-list .tit {margin:0; color:var(--dark-color); font-size:var(--font-size-24); font-weight:600; line-height:1.25em; letter-spacing:-0.03em;}
.page-program-list .program-list .txt {margin:0; color:var(--color-text); font-size:var(--font-size-16); line-height:1.5em; letter-spacing:-0.03em;}

.prd-list {border-top:2px solid var(--color-border-dark);}
.prd-list ul li {display:flex; padding:var(--space-30) 0; align-items:center; border-bottom:1px solid var(--color-border);}
.prd-list .image {width:410px; margin-right:var(--space-50); display:block;}
.prd-list .thumb {display:block; position:relative; padding-bottom:70%; overflow:hidden;}
.prd-list .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08);}
.prd-list .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;}
.prd-list .info {flex:1 1 auto; min-width:0; width:1%;}
.prd-list .tit {color:var(--color-charcoal); font-size:var(--font-size-20); font-weight:500; letter-spacing:-.03em; line-height:1.4em; max-height:1.4em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:nowrap;}
.prd-list .txt {margin-top:var(--space-15); font-size:var(--font-size-16); line-height:1.6em; max-height:4.8em; -webkit-line-clamp:3; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-box-orient:vertical;}
.prd-list .spec {margin-top:var(--space-60); color:var(--color-text-muted);}
.prd-list ul li.none {display:block; width:100%; padding:var(--space-70) 0; margin:0; text-align:center; color:var(--color-text-sub);}

.page-program-view {padding-top: var(--space-120);}
.prd-summary {display:flex; gap: var(--space-25) clamp(120px, calc(120 / var(--inner) * 100vw), 120px); margin-bottom: var(--space-150);}

.prd-slider-for {position: relative; margin-bottom: var(--space-10);}
.prd-slider-nav {margin:0 -10px;}
.prd-slider-nav .image {padding:0 var(--space-5);}

.prd-image {width:50%; max-width: 700px;}
.prd-image .img {position:relative; aspect-ratio: 700 / 526; overflow:hidden; border-radius: var(--radius-16);}
.prd-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;}
.prd-image .img:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08); border-radius: var(--radius-16);}
/* 대표이미지가 박스(700x526)보다 작을 때 생기는 흰 여백 처리 (요청 8-2)
   — 원본 사진은 확대하지 않고(흐려짐 방지) 그대로 두고, 같은 사진을 흐리게 깔아 박스를 채운다.
   규격(4:3, 1400x1052 권장)대로 올린 사진은 박스를 꽉 채우므로 이 배경은 보이지 않는다. */
.prd-image .prd-slider-for .img img.bg {width:100% !important; height:100% !important; max-width:none; max-height:none; object-fit:cover; transform:translate(-50%,-50%) scale(1.12); filter:blur(16px) saturate(1.1); opacity:.55; pointer-events:none;}
.prd-image .prd-slider-nav .img:after {background: rgba(255, 255, 255, 0.5);}
.prd-image .prd-slider-nav .slick-current .img:after {background: transparent; border-color: var(--primary-color);}

.prd-slider-for .slick-arrow, .prd-related-slider .slick-arrow {position: absolute; z-index: 1; top: 50%; left: 10px; transform: translateY(-50%); display: flex; justify-content: center; align-items: center; width: clamp(44px, calc(56 / var(--inner) * 100vw), 56px); height: clamp(44px, calc(56 / var(--inner) * 100vw), 56px); border-radius: 100%; border: 0; background: rgba(0, 0, 0, 0.5); overflow: hidden; text-indent: -9999em; transition: .2s;}
.prd-slider-for .slick-arrow:before, .prd-related-slider .slick-arrow:before {content: ''; display: block; width: 10px; height: 18px; background: url('/images/main/visual-arrow.svg') no-repeat center center / contain;}
.prd-slider-for .slick-arrow.slick-next, .prd-related-slider .slick-arrow.slick-next {left: auto; right: 10px;}
.prd-slider-for .slick-arrow.slick-next:before, .prd-related-slider .slick-arrow.slick-next:before {transform: scaleX(-1);}
.prd-slider-for .slick-arrow:hover {background: var(--color-black);}

.prd-info {display: flex; flex-direction: column; flex:1 1 auto; min-width:0; width:1%; position:relative;}
.prd-info .top {padding:var(--space-40) 0; border-bottom: 1px solid var(--color-border); position:relative;}
.prd-info .top .part {font-size:var(--font-size-18); font-weight: 600; margin-bottom:var(--space-15); color:var(--color-orange); letter-spacing:-.03em; line-height:1.3em;}
.prd-info .top p {letter-spacing:-.03em; font-size: var(--font-size-18); line-height:1.6667em;}
.prd-info .tit {font-size:var(--font-size-48); margin-bottom:var(--space-30); line-height:1.3em; color:var(--dark-color); letter-spacing:-.03em;}
.prd-info .txt {flex: 1; padding: var(--space-40) 0;}
.prd-info .txt dl {margin-bottom:var(--space-15); display:flex; gap: var(--space-30); letter-spacing:-.03em;}
.prd-info .txt dl:not(:last-child) {margin-bottom: var(--space-30);}
.prd-info .txt dl dt {min-width:31px; display:block; font-weight: 700; font-size: var(--font-size-18);}
.prd-info .txt dl dd {flex:1; color: var(--dark-color);;}

.prd-info .btns-wrap {gap:0 var(--space-10); display:flex; width:100%;}
.prd-info .btns-wrap .btn {flex: 1; display: block; padding: var(--space-15); border-radius: 100px; text-align: center; font-size:var(--font-size-18); font-weight: 600; line-height:1.6667em;}
.prd-info .btns-wrap .list {background: var(--color-border-light);}
.prd-info .btns-wrap .apply {background: var(--primary-color); color: var(--color-white);}

.prd-detail {margin-bottom:var(--space-150);}
.page-program-view .prd-sec-head {display:flex; flex-direction:column; gap:var(--space-20); margin-bottom:var(--space-60);}
.page-program-view .prd-sec-tit {margin:0; color:var(--dark-color); font-size:var(--font-size-24); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-view .prd-sec-line {position:relative; width:100%; height:2px; background:var(--color-border);}
.page-program-view .prd-sec-line .bar {position:absolute; top:0; left:0; width:168px; height:2px; background:var(--dark-color);}
.page-program-view .prd-sec-line.is-related .bar {width:127px;}
.page-program-view .prd-detail-cnt {position: relative; display:flex; gap:var(--space-80);}
.page-program-view .prd-detail-edit {flex:1 1 auto; min-width:0; max-width:1000px;}
/* 에디터 본문 미디어 반응형 (요청 8-1)
   — Froala 가 <video> 에 고정 px 인라인 스타일(width:800px 등)을 박아 넣어 모바일에서 본문 폭을 넘쳐 잘리고,
     이미지는 원본 크기(width:auto)라 동영상과 폭이 제각각이었다. 둘 다 본문 폭 기준으로 맞춘다. */
.page-program-view .prd-detail-edit video,
.page-program-view .prd-detail-edit iframe {display:block; width:100% !important; max-width:100%; height:auto !important; margin-left:auto; margin-right:auto;}
.page-program-view .prd-detail-edit iframe {aspect-ratio:16 / 9;}
/* Froala 는 <video> 를 <span class="fr-video"> 로 감싼다. froala_style 의 .fr-video 규칙(position:relative; height:0;
   padding-bottom:56.25%; overflow:hidden)은 iframe 임베드용인데, 이 span 이 inline 이라 폭이 0 이 되고
   그 안의 video(position:absolute; width:100%)도 0 폭 → 모바일에서 동영상이 통째로 사라지던 원인. */
.page-program-view .prd-detail-edit .fr-video {display:block; position:relative; width:100%; max-width:100%; margin:0 auto;}
.page-program-view .prd-detail-edit .fr-video:has(> video) {height:auto; padding-bottom:0; overflow:visible; background:transparent;}
.page-program-view .prd-detail-edit .fr-video video {position:static;}
.page-program-view .prd-detail-edit img {max-width:100%; height:auto;}
.page-program-view .prd-detail-edit img.fr-dib {display:block; margin-left:auto; margin-right:auto;}
.page-program-view .prd-detail-follow {position:sticky; top:calc(var(--header-height) + 20px); height: fit-content; flex:0 0 320px; width:320px; max-width:100%;}
.page-program-view .prd-detail-follow .follow-inner {padding:var(--space-40) var(--space-30); border:1px solid var(--color-border); border-radius:var(--radius-16); background:var(--color-white);}
.page-program-view .prd-detail-follow .follow-top {display:flex; flex-direction:column; gap:var(--space-15);}
.page-program-view .prd-detail-follow .follow-top .tit {margin:0; color:var(--dark-color); font-size:var(--font-size-20); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-view .prd-detail-follow .follow-top .txt {margin:0; color:var(--color-text); font-size:var(--font-size-14); line-height:1.43em; letter-spacing:-0.03em;}
.page-program-view .prd-detail-follow .follow-meta {margin-top:var(--space-20); padding-top:var(--space-20); border-top:1px solid var(--color-border-light);}
.page-program-view .prd-detail-follow .follow-meta dl {display:flex; flex-direction:column; gap:var(--space-8); margin:0 0 var(--space-30); padding:0 var(--space-5);}
.page-program-view .prd-detail-follow .follow-meta dl:last-child {margin-bottom:0;}
.page-program-view .prd-detail-follow .follow-meta dt {color:var(--dark-color); font-size:var(--font-size-14); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-view .prd-detail-follow .follow-meta dd {margin:0; color:var(--color-text); font-size:var(--font-size-14); font-weight:600; line-height:1.43em; letter-spacing:-0.03em;}
.page-program-view .prd-detail-follow .follow-btns {display:flex; gap:var(--space-10); margin-top:var(--space-20); padding-top:var(--space-20); border-top:1px solid var(--color-border-light);}
.page-program-view .prd-detail-follow .follow-btns .btn {flex:1 1 auto; display:flex; align-items:center; justify-content:center; height:46px; border-radius:99px; font-size:var(--font-size-14); font-weight:600; line-height:1.2em; letter-spacing:-0.03em; text-decoration:none !important;}
.page-program-view .prd-detail-follow .follow-btns .list {background:var(--color-border-light); color:var(--color-text);}
.page-program-view .prd-detail-follow .follow-btns .apply {background:var(--primary-color); color:var(--color-white); font-weight:700;}
.page-program-view .prd-related-wrap {position:relative;}
.page-program-view .prd-related-slider {padding: 0 clamp(48px, calc(96 / var(--inner) * 100vw), 96px); margin: 0 calc(clamp(48px, calc(96 / var(--inner) * 100vw), 96px) * -1);}
.page-program-view .prd-related-slider .item {padding:0 var(--space-20);}
.page-program-view .prd-related-slider a {display:flex; flex-direction:column; gap:var(--space-30); text-decoration:none !important;}
.page-program-view .prd-related-slider .thumb {overflow:hidden; aspect-ratio:320 / 240; border:1px solid var(--color-border); border-radius:var(--radius-16);}
.page-program-view .prd-related-slider .thumb img {width:100%; height:100%; object-fit:cover;}
.page-program-view .prd-related-slider .info {display:flex; flex-direction:column; gap:var(--space-15); padding:0 var(--space-10);}
.page-program-view .prd-related-slider .tit {margin:0; color:var(--dark-color); font-size:var(--font-size-20); font-weight:700; line-height:1.2em; letter-spacing:-0.03em;}
.page-program-view .prd-related-slider .txt {margin:0; color:var(--color-text); font-size:var(--font-size-14); line-height:1.43em; letter-spacing:-0.03em;}
.prd-related-slider .slick-arrow {left: 0; background: var(--color-white); border: 1px solid var(--color-border);}
.prd-related-slider .slick-arrow.slick-next {right: 0;}
.prd-related-slider .slick-arrow:before {filter: brightness(.4)}
.prd-related-slider .slick-arrow:hover {border-color: var(--dark-color); background: var(--dark-color);}
.prd-related-slider .slick-arrow:hover:before {filter: none;}

@media (max-width: 1024px) {
	.prd-list ul li {padding:var(--space-20) 0;}
	.prd-list .image {width:320px;}
	.prd-list .spec {margin-top:var(--space-30);}
	.prd-list .tit {font-size:var(--font-size-17);}
	.prd-list .txt {font-size:var(--font-size-14);}
	.prd-list .date {font-size:var(--font-size-13);}

	.prd-info .top {margin:0 0 var(--space-40);}
	.prd-info .top:after {bottom:-20px;}
	.prd-info .txt ul {max-height:220px;}
	.prd-info .txt ul li {margin-bottom:var(--space-10);}
	.prd-info .btns-wrap .btn {height:50px;}
	.prd-image {width:450px;}
	.prd-info .tit {font-size:25px;}
	.page-program-view .prd-detail-cnt {flex-direction:column; gap:var(--space-40);}
	.page-program-view .prd-detail-follow {position:relative; top:auto; flex:0 0 auto; width:100%;}

}

@media (max-width: 700px) {
	.prd-list ul li {display:block;}
	.prd-list .image {width:100%; margin-right:0; margin-bottom:var(--space-20);}
	.prd-list .info {width:100%;}
	.prd-list .spec {margin-top:var(--space-15);}
	.prd-list .txt {-webkit-line-clamp:2; max-height:3.2em;}

	.prd-summary {margin-bottom:var(--space-50); display:block;}
	.prd-image {margin-bottom:var(--space-30); width:100%; margin-right:0;}

	.prd-info {width:100%;}
	.prd-info .tit {font-size:var(--font-size-22); padding-bottom:var(--space-14); margin-bottom:var(--space-14);}
	.prd-info .btns-wrap {gap:0 var(--space-10); position:relative; bottom:auto; left:auto;}
	.prd-info .txt ul dl {margin-bottom:var(--space-20);}
	.prd-info .txt ul dl dt {width:100px;}
	.prd-info .txt ul {margin-bottom:var(--space-20); max-height:100%;}

	.page-program-view .prd-sec-tit {font-size:var(--font-size-20);}
	.page-program-view .prd-related-slider .tit {font-size:var(--font-size-18);}
	.prd-info .btns-wrap .btn {height:40px;}
}