@charset "utf-8";

/* 게시판 목록 */
#bo_cate {margin:25px 0}
#bo_cate h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {zoom:1}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {display:inline-block;padding:2px}
#bo_cate a {display:block;line-height:28px;padding:5px 15px;border-radius:30px;border:1px solid #d6e9ff;color:#6794d3}
#bo_cate a:focus, #bo_cate a:hover, #bo_cate a:active {text-decoration:none;background:#3a8afd;color:#fff}
#bo_cate #bo_cate_on {z-index:2;background:#3a8afd;color:#fff;font-weight:bold;border:1px solid #3a8afd;
-webkit-box-shadow:inset 0 2px 5px rgb(33, 135, 202);
-moz-box-shadow:inset 0 2px 5px rgb(33, 135, 202);
box-shadow:inset 0 2px 5px rgb(33, 135, 202)}
.td_subject img {margin-left:3px}

.selec_chk {position:absolute;top:0;left:0;width:0;height:0;opacity:0;outline:0;z-index:-1;overflow:hidden}
.chk_box {position:relative}
.chk_box input[type="checkbox"] + label {position:relative;padding-left:20px;color:#676e70;vertical-align:baseline}
.chk_box input[type="checkbox"] + label:hover{color:#2172f8}
.chk_box input[type="checkbox"] + label span {position:absolute;top:10px;left:10px;width:15px;height:15px;display:block;background:#fff;border:1px solid #d0d4df;border-radius:3px}
.write_div .chk_box input[type="checkbox"] + label, .bo_vc_w .chk_box input[type="checkbox"] + label {padding-left:20px}
.write_div .chk_box input[type="checkbox"] + label span, .bo_vc_w .chk_box input[type="checkbox"] + label span {position:absolute;top:2px;left:0;width:15px;height:15px;display:block;margin:0;background:#fff;border:1px solid #d0d4df;border-radius:3px}
.chk_box input[type="checkbox"]:checked + label {color:#000}
.chk_box input[type="checkbox"]:checked + label span {background:url(./img/chk.png) no-repeat 50% 50% #3a8afd;border-color:#1471f6;border-radius:3px}
.all_chk.chk_box input[type="checkbox"] + label span {top:0;left:0}


/* 갤러리 목록 */
#bo_gall h2 {margin:0;padding:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#bo_gall #gall_ul {margin:10px -10px 0;padding:0;list-style:none;zoom:1}
#bo_gall #gall_ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_gall .gall_li {}
#bo_gall .gall_li .gall_chk {position:absolute;top:0;left:0;padding:5px;z-index:1}
#bo_gall .gall_box {position:relative;margin:0 0 50px 0;border-radius:0 0 2px 2px}
#bo_gall .gall_con {position:relative}

.gall_row .col-gn-0,.gall_row .col-gn-1,.gall_row .col-gn-2,.gall_row .col-gn-3,.gall_row .col-gn-4,.gall_row .col-gn-5,.gall_row .col-gn-6,.gall_row .col-gn-7,.gall_row .col-gn-8,.gall_row .col-gn-9,.gall_row .col-gn-10 {position:relative;min-height:1px;padding-left:10px;*padding-left:0;padding-right:10px;*padding-right:0;float:left;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin-left:0}
.gall_row .col-gn-0,.gall_row .col-gn-1 {width:100%}
.gall_row .col-gn-2 {width:50%}
.gall_row .col-gn-3 {width:33.33333333%}
.gall_row .col-gn-4 {width:25%}
.gall_row .col-gn-5 {width:20%}
.gall_row .col-gn-6 {width:16.66666667%}
.gall_row .col-gn-7 {width:14.28571428%}
.gall_row .col-gn-8 {width:12.5%}
.gall_row .col-gn-9 {width:11.11111111%}
.gall_row .col-gn-10 {width:10%}

.gall_row .box_clear {clear:both}

#bo_gall .gall_now .gall_text_href a {color:#ff3061}

#bo_gall .gall_href a:link, #bo_gall .gall_href a:focus, #bo_gall .gall_href a:hover {text-decoration:none}
#bo_gall .gall_img {border-bottom:1px solid #eee;text-align:center;overflow:hidden}
#bo_gall .gall_img a,#bo_gall .gall_img .no_image,#bo_gall .gall_img .is_notice {display:block}
#bo_gall .gall_img img, #bo_gall .gall_img video {max-width:100%;height:auto !important}
#bo_gall .gall_img span {display:inline-block;background:#eaeaea;text-align:center;text-transform:uppercase;font-weight:bold;font-size:1.25em;color:#777}

#bo_gall .gall_text_href {margin:10px 0}
#bo_gall .gall_text_href a {font-weight:bold}
#bo_gall .gall_text_href img {margin:0 0 0 4px}
#bo_gall .bo_tit {display:block;line-height:30px;font-weight:bold;color:#000;font-size:1.2em}
#bo_gall .bo_tit .cnt_cmt {background:#e9eff5;color:#3a8afd;font-size:11px;height:16px;line-height:16px;padding:0 5px;border-radius:3px;vertical-align:middle}

#bo_gall .bo_cnt {color:#acacac;line-height:18px}
#bo_gall .profile_img img {border-radius:50%}
#bo_gall .bo_tit .fa-download {width:16px;height:16px;line-height:16px;background:#e89f31;color:#fff;text-align:center;font-size:10px;border-radius:2px;margin-right:2px;vertical-align:middle}
#bo_gall .bo_tit .fa-link {width:16px;height:16px;line-height:16px;background:#ad68d8;color:#fff;text-align:center;font-size:10px;border-radius:2px;margin-right:2px;vertical-align:middle;font-weight:normal}
#bo_gall .bo_tit .fa-link {width:16px;height:16px;line-height:16px;background:#ad68d8;color:#fff;text-align:center;font-size:10px;border-radius:2px;margin-right:2px;vertical-align:middle;margin-right:2px}
#bo_gall .bo_tit .new_icon {display:inline-block;width:16px;line-height:16px;font-size:0.825em;color:#23db79;background:#b9ffda;text-align:center;border-radius:2px;margin-left:2px;font-weight:bold;vertical-align:baseline}
#bo_gall .bo_tit .hot_icon {display:inline-block;width:16px;line-height:16px;font-size:0.833em;color:#fff;background:#e52955;text-align:center;border-radius:2px;vertical-align:middle;margin-right:2px}
#bo_gall .bo_tit .fa-lock {display:inline-block;line-height:16px;color:#999;text-align:center;vertical-align:middle}

#bo_gall .gall_info {line-height:1.5em;line-height:20px}
#bo_gall .gall_info strong {display:inline-block;margin:0}
#bo_gall .gall_info i {font-size:12px}
#bo_gall .gall_info .gall_date,
#bo_gall .gall_info .gall_view {display:inline-block;margin-left:10px;color:#777}

#bo_gall .gall_option {position:absolute;top:10px;right:10px}
#bo_gall .gall_option strong {background:#fff;padding:5px 10px;border-radius:30px;-webkit-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2)}

/* 게시판 목록 공통 */
#bo_btn_top {margin:10px 0}
#bo_btn_top:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx {margin-bottom:5px;float:right;zoom:1}
.bo_fx:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx ul {margin:0;padding:0;list-style:none}
#bo_list_total {float:left;line-height:34px;font-size:0.92em;color:#4e546f}

.btn_bo_user {float:right;margin:0;padding:0;list-style:none}
.btn_bo_user li {float:left;width:40px;text-align:center;margin-left:5px;background:#fff}
.btn_bo_user > li {position:relative}
.btn_bo_adm {float:left}
.btn_bo_adm li {float:left;margin-right:5px}
.btn_bo_adm input {padding:0 8px;border:0;background:#d4d4d4;color:#666;text-decoration:none;vertical-align:middle}
.bo_notice td {background:#fff6fa !important;border-bottom:1px solid #f8e6ee}
.bo_notice td a {font-weight:bold}
.bo_notice .notice_icon {display:inline-block;line-height:25px;border-radius:5px;font-weight:bold;color:#f9267f}

.more_opt {display:none;position:absolute;top:45px;right:0;background:#fff;border:1px solid #b8bfc4;z-index:999}
.more_opt:before {content:"";position:absolute;top:-8px;right:13px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #b8bfc4 transparent}
.more_opt:after {content:"";position:absolute;top:-6px;right:13px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #fff transparent}
.more_opt li {border-bottom:1px solid #f1f1f1;padding:10px;float:inherit;width:90px;margin:0;color:#6b757c;text-align:left}
.more_opt li:last-child {border-bottom:0}
.more_opt li button, .more_opt li a {width:100%;border:0;background:#fff;color:#6b757c}
.more_opt li:hover a,
.more_opt li:hover button {color:#000}
.more_opt li i {float:right;line-height:20px}

.td_num strong {color:#000}
.bo_cate_link {display:inline-block;background:#e2eaf6;color:#3a8afd;font-weight:normal !important;height:20px;line-height:10px;padding:5px 8px;border-radius:5px;font-size:0.95em} /* 글제목줄 분류스타일 */
.bo_cate_link:hover {text-decoration:none}
.bo_current {color:#e8180c}
#bo_list .profile_img {display:inline-block;margin-right:5px}
#bo_list .profile_img img {border-radius:50%}
#bo_list .cnt_cmt {display:inline-block;margin:0 0 0 3px;font-weight:bold;color:#ed6478;font-size:0.86em}

#bo_gall li.empty_list {padding:85px 0;text-align:center}

.bo_sch_wrap {display:none;width:100%;height:100%;position:fixed;top:0;left:0;z-index:999}
.bo_sch {position:absolute;top:50%;left:50%;background:#fff;text-align:left;width:330px;max-height:300px;margin-left:-125px;margin-top:-180px;overflow-y:auto;border-radius:5px;-webkit-box-shadow:1px 1px 18px rgba(0,0,0,0.2);-moz-box-shadow:1px 1px 18px rgba(0,0,0,0.2);box-shadow:1px 1px 18px rgba(0,0,0,0.2);border:1px solid #dde7e9;background:#fff;border-radius:3px}
.bo_sch:after {display:block;visibility:hidden;clear:both;content:""}
.bo_sch h3 {padding:15px;border-bottom:1px solid #e8e8e8}
.bo_sch legend {background:red}
.bo_sch form {padding:15px;display:block}
.bo_sch select {border:0;width:100%;height:40px;border:1px solid #d0d3db;border-radius:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075)}
.bo_sch .sch_bar {display:inline-block;width:100%;clear:both;margin-top:15px;border:1px solid #d0d3db;border-radius:2px;-webkit-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
-moz-box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075);
box-shadow:inset 0 1px 1px rgba(0, 0, 0, .075)}
.bo_sch .sch_input {width:250px;height:38px;border:0;padding:0;background-color:transparent;float:left}
.bo_sch .sch_btn {height:38px;float:right;color:#656565;background:none;border:0;width:40px;font-size:15px}
.bo_sch .bo_sch_cls {position:absolute;right:0;top:0;color:#b5b8bb;border:0;padding:12px 15px;font-size:16px;background:#fff}
.bo_sch_bg {background:#000;background:rgba(0,0,0,0.1);width:100%;height:100%}


/* 게시판 쓰기 */
#char_count_desc {display:block;margin:0 0 5px;padding:0}
#char_count_wrap {margin:5px 0 0;text-align:right}
#char_count {font-weight:bold}

#autosave_wrapper {position:relative}
#autosave_pop {display:none;z-index:10;position:absolute !important;top:34px;right:0;width:350px;height:auto !important;height:180px;max-height:180px;border:1px solid #565656;background:#fff;
-webkit-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
-moz-box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2);
box-shadow:2px 2px 3px 0px rgba(0,0,0,0.2)}
#autosave_pop:before {content:"";position:absolute;top:-8px;right:45px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #000 transparent}
#autosave_pop:after {content:"";position:absolute;top:-7px;right:45px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #fff transparent}
html.no-overflowscrolling #autosave_pop {height:auto;max-height:10000px !important} /* overflow 미지원 기기 대응 */
#autosave_pop strong {position:absolute;font-size:0;line-height:0;overflow:hidden}
#autosave_pop div {text-align:center;margin:0 !important}
#autosave_pop button {margin:0;padding:0;border:0}
#autosave_pop ul {padding:15px;border-top:1px solid #e9e9e9;list-style:none;overflow-y:scroll;height:130px;border-bottom:1px solid #e8e8e8}
#autosave_pop li {padding:8px 5px;border-bottom:1px solid #fff;background:#eee;zoom:1}
#autosave_pop li:after {display:block;visibility:hidden;clear:both;content:""}
#autosave_pop a {display:block;float:left}
#autosave_pop span {display:block;float:right;font-size:0.92em;font-style:italic;color:#999}
.autosave_close {cursor:pointer;width:100%;height:30px;background:none;color:#888;font-weight:bold;font-size:0.92em}
.autosave_close:hover {background:#f3f3f3;color:#3597d9}
.autosave_content {display:none}
.autosave_del {background:url(./img/close_btn.png) no-repeat 50% 50%;text-indent:-999px;overflow:hidden;height:20px;width:20px}

/* 게시판 읽기 */
#bo_v {margin-bottom:20px;background:#fff;box-sizing:border-box}

#bo_v_table {position:absolute;top:0;right:16px;margin:0;padding:0 5px;height:25px;background:#ff3061;color:#fff;font-weight:bold;line-height:2.2em}

#bo_v_title {}
#bo_v_title .bo_v_cate {display:inline-block;line-height:20px;background:#e2eaf6;color:#3a8afd;padding:0 10px;border-radius:3px;}
#bo_v_title .bo_v_tit {display:block;font-size:2em;margin:5px 0 0;word-break:break-all}

#bo_v_info {margin:0;border-bottom:1px solid #f1f1f1;color:#666}
#bo_v_info:after {display:block;visibility:hidden;clear:both;content:""} 
#bo_v_info h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_info .profile_info {margin:20px 0 10px;display:inline-block;float:left}
#bo_v_info .profile_info .pf_img {float:left;margin-right:10px}
#bo_v_info .profile_info .pf_img img {border-radius:50%;width:50px;height:50px}
#bo_v_info .profile_info .profile_info_ct {float:left;padding:5px 0;line-height:18px}

#bo_v_info strong {display:inline-block;margin:0 10px 0 0;font-weight:normal}
#bo_v_info .sv_member,
#bo_v_info .sv_guest,
#bo_v_info .member,
#bo_v_info .guest {font-weight:bold}
#bo_v_info .profile_img {display:none}
#bo_v_info .sv_member {color:#000}
#bo_v_info .if_date {margin:0;color:#888}

#bo_v_file h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_file ul {margin:0;list-style:none}
#bo_v_file li {padding:15px;position:relative;margin:10px 0;border:1px solid #dfdfdf;border-radius:5px;
-webkit-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
-moz-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%)}
#bo_v_file li i {float:left;color:#b2b2b2;font-size:2.35em;margin-right:20px}
#bo_v_file a {float:left;display:block;text-decoration:none;word-wrap:break-word;color:#000}
#bo_v_file a:focus, #bo_v_file li:hover a, #bo_v_file a:active {text-decoration:underline;color:#3a8afd}
#bo_v_file img {float:left;margin:0 10px 0 0}
#bo_v_file .bo_v_file_cnt {color:#b2b2b2;font-size:0.92em}
#bo_v_file li:hover {border-color:#bed4f4;color:#bed4f4}
#bo_v_file li:hover i {color:#3a8afd}
#bo_v_file li:hover .bo_v_file_cnt {color:#99c2fc}


#bo_v_link h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_file ul {margin:0;list-style:none}
#bo_v_link li {padding:15px;position:relative;margin:10px 0;border:1px solid #dfdfdf;border-radius:5px;
-webkit-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
-moz-box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%);
box-shadow:1px 1px 5px 0px hsl(232, 36%, 96%)}
#bo_v_link li i {float:left;color:#b2b2b2;font-size:2.35em;margin-right:20px}
#bo_v_link a {float:left;display:block;text-decoration:none;word-wrap:break-word;color:#000}
#bo_v_link a:focus, #bo_v_link li:hover a, #bo_v_link a:active {text-decoration:underline;color:#3a8afd}
#bo_v_link .bo_v_link_cnt {color:#b2b2b2;font-size:0.92em}
#bo_v_link li:hover {border-color:#bed4f4;color:#bed4f4}
#bo_v_link li:hover i {color:#3a8afd}
#bo_v_link li:hover .bo_v_link_cnt {color:#99c2fc}


#bo_v_top {zoom:1}
#bo_v_top:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_top h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_top ul {padding:0;list-style:none;word-break:break-all}

#bo_v_bot {zoom:1}
#bo_v_bot:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_bot h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_v_bot ul {padding:0;list-style:none}

.bo_v_com {margin:20px 0;float:right}
.bo_v_com > li {position:relative;float:left;margin-left:5px}

.bo_v_nb {margin:20px 0;position:relative;clear:both;text-align:left}
.bo_v_nb:after {display:block;visibility:hidden;clear:both;content:""}
.bo_v_nb li {border-top:1px solid #f1f1f1;padding:13px}
.bo_v_nb li:last-child {border-bottom:1px solid #f1f1f1}
.bo_v_nb li:hover {background:#f6f6f6}
.bo_v_nb li i {font-size:13px;color:#b3b3b3}
.bo_v_nb li .nb_tit {display:inline-block;padding-right:20px;color:#b3b3b3}
.bo_v_nb li .nb_date {float:right;color:#b3b3b3}

#bo_v_atc {min-height:200px;height:auto !important;height:200px}
#bo_v_atc_title {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_img {width:100%;overflow:hidden;zoom:1}
#bo_v_img:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_img a.view_image {display:block}
#bo_v_img img {margin-bottom:20px;max-width:100%;height:auto}

#bo_v_con {margin:10px 0 30px;width:100%;line-height:1.7em;min-height:200px;word-break:break-all;overflow:hidden}
#bo_v_con a {color:#000;text-decoration:underline}
#bo_v_con img {max-width:100%;height:auto}

#bo_v_act {margin-bottom:30px;text-align:center}
#bo_v_act .bo_v_act_gng {position:relative}
#bo_v_act a {margin-right:5px;vertical-align:middle;color:#4a5158}
#bo_v_act a:hover {background-color:#fff;color:#ff484f;border-color:#ff484f}
#bo_v_act i {font-size:1.4em;margin-right:5px}
#bo_v_act_good, #bo_v_act_nogood {display:none;position:absolute;top:30px;left:0;z-index:9999;padding:10px 0;width:165px;background:#ff3061;color:#fff;text-align:center}
#bo_v_act .bo_v_good {display:inline-block;border:1px solid #dedede;width:70px;line-height:46px;border-radius:30px}
#bo_v_act .bo_v_nogood {display:inline-block;border:1px solid #dedede;width:70px;line-height:46px;border-radius:30px}

#bo_v_sns {padding:0;list-style:none;zoom:1;float:left;display:inline-block}
#bo_v_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_sns li {float:left;width:135px;margin-right:5px;text-align:left}
#bo_v_sns li a {height:35px;line-height:35px;text-align:center;border-radius:5px;color:#fff;font-size:0.95em}
#bo_v_sns li img {vertical-align:middle;margin-right:5px}
#bo_v_sns li .sns_f {display:block;background:#3b5997}
#bo_v_sns li .sns_t {display:block;background:#09aeee}
#bo_v_sns li .sns_g {display:block;background:#ea4026}
#bo_v_sns li .sns_k {display:block;background:#fbe300}

#bo_v_share {position:relative;padding:20px 0}
#bo_v_share:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_share .btn {padding:0 10px;color:#555;font-weight:normal;font-size:1em;width:80px;line-height:35px;height:35px;border-color:#d5d5d5;border-radius:5px}
#bo_v_share .btn:hover {background:#fff}
#bo_v_share .btn i {margin-right:5px;color:#4b5259;vertical-align:middle}


/* 게시판 댓글 */
.cmt_btn {width:100%;text-align:left;border:0;border-bottom:1px solid #f0f0f0;background:#fff;font-weight:bold;margin:30px 0 0px;padding:0 0 15px}
.cmt_btn span.total {position:relative;display:inline-block;margin-right:5px;font-size:1em;color:#3a8afd}
.cmt_btn span.cmt_more {float:right;display:inline-block;width:15px;height:10px;background:url(./img/btn_cmt.png) no-repeat right 2px;margin-top:5px}
.cmt_btn_op span.cmt_more {background-position:right -8px}
.cmt_btn b {font-size:1.2em;color:#000}
.cmt_btn span.total:after {position:absolute;bottom:-17px;left:0;display:inline-block;background:#3a8afd;content:"";width:100%;height:2px}
#bo_vc {}
#bo_vc h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc article {margin:20px 0;position:relative;border-bottom:1px solid #f0f0f0}
#bo_vc article:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc article .profile_img img {border-radius:50%}
#bo_vc article .pf_img {float:left;margin-right:10px}
#bo_vc article .pf_img img {border-radius:50%;width:50px;height:50px}
#bo_vc article .cm_wrap {float:left;max-width:870px;width:90%}
#bo_vc header {position:relative;width:100%}
#bo_vc header:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc header .profile_img {display:none}
#bo_vc header .icon_reply {position:absolute;top:15px;left:-20px}
#bo_vc .member, #bo_vc .guest, #bo_vc .sv_member, #bo_vc .sv_guest {font-weight:bold}
.bo_vc_hdinfo {color:#777}
#bo_vc h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc .cmt_contents {line-height:1.8em;padding:0 0 20px}
#bo_vc p a {text-decoration:underline}
#bo_vc p a.s_cmt {text-decoration:underline;color:#ed6479}
#bo_vc_empty {margin:0;padding:80px 0 !important;color:#777;text-align:center}
#bo_vc #bo_vc_winfo {float:left}
#bo_vc .bo_vl_opt {position:absolute;top:0;right:0}

.bo_vc_act {display:none;position:absolute;right:0;top:40px;width:58px;text-align:right;border:1px solid #b8bfc4;margin:0;list-style:none;background:#fff;zoom:1;z-index:9999}
.bo_vc_act:before {content:"";position:absolute;top:-8px;right:5px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #b8bfc4 transparent}
.bo_vc_act:after {content:"";position:absolute;top:-6px;right:5px;width:0;height:0;border-style:solid;border-width:0 6px 8px 6px;border-color:transparent transparent #fff transparent}
.bo_vc_act li {border-bottom:1px solid #f0f0f0}
.bo_vc_act li:last-child {border-bottom:0}
.bo_vc_act li a {display:inline-block;padding:10px 15px}
.bo_vc_act li a:hover {color:#3a8afd}

.bo_vc_w {position:relative;margin:10px 0;display:block}
.bo_vc_w:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_w h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.bo_vc_w #char_cnt {display:block;margin:0 0 5px}
.bo_vc_w textarea {border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;width:100%;height:120px;
-webkit-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);
-moz-box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1);
box-shadow:inset 0 1px 2px rgba(0, 0, 0, 0.1)}
#wr_secret {}
.bo_vc_w_info {margin:10px 0;float:left}
.bo_vc_w_info:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_w_info .frm_input {float:left;margin-right:5px}
.bo_vc_w_info #captcha {padding-top:10px;display:block;clear:both}
.bo_vc_w .btn_confirm {clear:both;margin-top:10px}
.bo_vc_w .btn_confirm label {display:inline-block;margin-right:10px;border-radius:3px;font-size:1.5em;text-align:center}
.bo_vc_w .btn_submit {height:45px;padding:0 20px;border-radius:3px;font-weight:bold;font-size:1.083em}
.bo_vc_w .btn_confirm .secret_cm label {font-size:1em !important}
.bo_vc_w_wr:after {display:block;visibility:hidden;clear:both;content:""}
.secret_cm {display:inline-block;float:left}

#bo_vc_send_sns {display:inline-block;float:left}
#bo_vc_sns {display:inline-block;margin:0;padding:0;list-style:none;zoom:1}
#bo_vc_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc_sns li {float:left;margin:0 5px 0 0}
#bo_vc_sns .sns_li_f {border-radius:3px;background:#3a589b;height:40px;line-height:40px;padding:0 0 0 10px}
#bo_vc_sns .sns_li_t {border-radius:3px;background:#00aced;height:40px;line-height:40px;padding:0 0 0 10px}
#bo_vc_sns .sns_li_off {background:#bbb}
#bo_vc_sns a {display:inline-block;padding:0 15px 0 5px}
#bo_vc_sns input {margin:0 5px 0 0}

/*글쓰기*/
#bo_w .bo_v_option li {display:inline-block;float:left;text-align:left;margin:0 5px 0 0}
#bo_w .bo_v_option li label {vertical-align:baseline}
#bo_w .bo_v_option .chk_box input[type="checkbox"] + label span {margin-left:0;margin-right:5px}
#bo_w .write_div {margin:10px 0;position:relative}
#bo_w .write_div:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info:after {display:block;visibility:hidden;clear:both;content:""}
#bo_w .bo_w_info .frm_input {float:left;margin-bottom:1%}
#bo_w #wr_password, #bo_w #wr_homepage {margin-left:1%}
#bo_w .wr_content.smarteditor2 iframe {background:#fff}
#bo_w .bo_w_tit {position:relative}
#bo_w .bo_w_tit .frm_input {padding-right:120px}
#bo_w .bo_w_tit #btn_autosave {position:absolute;top:5px;right:5px;line-height:30px;height:30px}
#bo_w .bo_w_link label {position:absolute;top:1px;left:1px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;font-size:1.2em;text-align:center;color:#b2b2b2}
#bo_w .bo_w_link .frm_input {padding-left:50px}
#bo_w .bo_w_flie .lb_icon {position:absolute;top:0px;left:0px;border-radius:3px 0 0 3px;height:38px;line-height:38px;width:40px;font-size:1.2em;text-align:center;color:#b2b2b2}
#bo_w .bo_w_flie .frm_file {padding-left:50px;margin-top:3px}
#bo_w .bo_w_flie .file_wr {position:relative;border:1px solid #ccc;background:#fff;color:#000;vertical-align:middle;border-radius:3px;padding:5px;height:40px;margin:0}
#bo_w .bo_w_flie .frm_input {margin:10px 0 0}
#bo_w .bo_w_flie .file_del {position:absolute;top:10px;right:10px;font-size:0.92em;color:#7d7d7d}
#bo_w .bo_w_select select {border:1px solid #d0d3db;width:100%;height:40px;border-radius:3px}
#bo_w .btn_submit {padding:0 20px;font-size:1.167em;border-radius: 5px;}
#bo_w .btn_cancel {border-radius:3px;font-size:1.167em;line-height: 44px;}

/* custom */
/* ===== Toolbar / Buttons / Search (sub0301 only) ===== */
.sm-sub0301 .sub0301-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding: 14px 0 0;
  gap:16px;
  margin-bottom: 20px;
}

.sm-sub0301 .sub0301-total{
  margin:0;
  font-family: Pretendard, sans-serif;
  font-size: 13px;
  color:#6a7282;
}
.sm-sub0301 .sub0301-total-sep{ margin:0 8px; color:#cbd5e1; }

.sm-sub0301 .sub0301-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.sm-sub0301 .sub0301-btn{
  height: 34px;
  padding: 0 14px;
  border:1px solid #e5e7eb;
  border-radius: 999px;
  background:#fff;
  color:#111;
  font-family: Pretendard, sans-serif;
  font-size: 12px;
  letter-spacing: 1px;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}

.sm-sub0301 .sub0301-btn-primary{
  border-color:#111;
  background:#111;
  color:#fff;
}

.sm-sub0301 .sub0301-btn-danger{
  border-color:#ef4444;
  background:#ef4444;
  color:#fff;
}

.sm-sub0301 .sub0301-admin-actions{
  display:flex;
  gap:10px;
  align-items:center;
}

.sm-sub0301 .sub0301-bottombar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding: 18px 0 0;
}

/* ===== Search Overlay ===== */
.sm-sub0301 .sub0301-search{
  position:fixed;
  inset:0;
  display:none;
  z-index:9999;
}

.sm-sub0301 .sub0301-search.is-open{ display:block; }

.sm-sub0301 .sub0301-search-dim{
  position:absolute;
  inset:0;
  background: rgba(0,0,0,.45);
}

.sm-sub0301 .sub0301-search-panel{
  position:absolute;
  left:50%;
  top:18%;
  transform:translateX(-50%);
  width: min(720px, calc(100% - 48px));
  background:#fff;
  border-radius: 18px;
  padding: 22px 22px 18px;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
}

.sm-sub0301 .sub0301-search-title{
  margin:0 0 14px;
  font-family: Pretendard, sans-serif;
  font-size: 16px;
  color:#111;
}

.sm-sub0301 .sub0301-search-form{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.sm-sub0301 .sub0301-search-select{
  height: 38px;
  border:1px solid #e5e7eb;
  border-radius: 10px;
  padding: 0 10px;
  font-family: Pretendard, sans-serif;
}

.sm-sub0301 .sub0301-search-bar{
  display:flex;
  gap:10px;
}

.sm-sub0301 .sub0301-search-input{
  flex:1;
  height: 42px;
  border:1px solid #e5e7eb;
  border-radius: 10px;
  padding: 0 12px;
  font-family: Pretendard, sans-serif;
}

.sm-sub0301 .sub0301-search-submit{
  width: 90px;
  height: 42px;
  border:1px solid #111;
  background:#111;
  color:#fff;
  border-radius: 10px;
  font-family: Pretendard, sans-serif;
  cursor:pointer;
}

.sm-sub0301 .sub0301-search-close{
  height: 34px;
  border:none;
  background:transparent;
  color:#6a7282;
  font-family: Pretendard, sans-serif;
  cursor:pointer;
  align-self:flex-end;
}
/* 기존 list-skin 끝 */

/* 새로운 덮어쓰기 list-skin */
/* =========================================================
   SEOMOO - SUB0301 PORTFOLIO LIST (Gnuboard5 Skin)
   - Header/Footer는 공통에서 처리 (여기서는 본문만)
   - 시안 기준: 큰 타이틀 + 얇은 라인 + 라운드 썸네일 + 그리드(1번 크게)
   ========================================================= */

/* ---------- Base Reset (scope inside .sm-sub0301) ---------- */
.sm-sub0301, .sm-sub0301 * { box-sizing: border-box; }
.sm-sub0301 ul, .sm-sub0301 li { list-style: none; margin: 0; padding: 0; }
.sm-sub0301 a { color: inherit; text-decoration: none; }
.sm-sub0301 img { display:block; max-width:100%; height:auto; }
.sm-sub0301 .sound_only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }

/* ---------- Layout ---------- */
.sm-sub0301{
  width: 100%;
  background: #fff;
  color: #111;
}

.inner_1800.sub0301-wrap{
  max-width: 1800px;
  margin: 0 auto;
  padding: 110px 60px 120px;
}

/* ---------- Header (PORTFOLIO + ALL filter) ---------- */
.sub0301-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 24px;
}

.sub0301-title{
  margin: 0;
  font-size: 96px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.02em;
}

/* Filter */
.sub0301-filter{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  min-width: 120px;
}

/* category_option이 <li><a> 형태로 들어오는 경우 */
.sub0301-filter-list{
  display:flex;
  gap: 18px;
  align-items:flex-end;
  justify-content:flex-end;
  flex-wrap: wrap;
}

/* 카테고리 링크 공통 */
.sub0301-filter-list li a,
.sub0301-filter-item{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: rgba(0,0,0,0.65);
  padding: 6px 0;
  position: relative;
  text-transform: uppercase;
}

/* 활성 스타일 (그누보드 category_option은 보통 #bo_cate_on 같은 클래스가 붙음) */
.sub0301-filter-list li a#bo_cate_on,
.sub0301-filter-item.is-active{
  color: #111;
}

/* 활성 밑줄 */
.sub0301-filter-list li a#bo_cate_on::after,
.sub0301-filter-item.is-active::after{
  content:"";
  position:absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -6px;
  width: 24px;
  height: 2px;
  background: #111;
  border-radius: 999px;
}

/* Divider line under title */
.sub0301-divider{
  margin-top: 22px;
  height: 1px;
  background: rgba(0,0,0,0.08);
  margin-bottom: 50px;
}

/* ---------- Toolbar/AdminBar/BottomBar: 시안에는 안보이므로 숨김 ---------- */
/* .sub0301-toolbar,
.sub0301-adminbar,
.sub0301-bottombar{
  display:none !important;
} */

.sub0301-adminbar{
  padding: 20px 0;
}
.sm-sub0301 .sub0301-admin-actions{
  padding: 20px 0;
}

/* ---------- Grid (시안 핵심) ---------- */
/*
  3열 그리드 기준:
  1번 카드: col 1~2 span 2 / row span 2 (크게)
  2번 카드: col 3 / row 1
  3번 카드: col 3 / row 2
  4~6번: 다음 줄 3개 균등
*/
.sub0301-grid{
  margin-top: 46px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  align-items: start;
}

.sub0301-card{ min-width:0; }

/* 1~3 카드 배치 */
.sub0301-card:nth-child(1){
  grid-column: 1 / span 2;
  grid-row: 1 / span 2;
}
.sub0301-card:nth-child(2){
  grid-column: 3 / span 1;
  grid-row: 1 / span 1;
}
.sub0301-card:nth-child(3){
  grid-column: 3 / span 1;
  grid-row: 2 / span 1;
}

/* ---------- Card ---------- */
.sub0301-item{
  position: relative;
}

.sub0301-thumb{
  display:block;
  width:100%;
  border-radius: 22px;
  overflow:hidden;
  background:#f5f5f5;
  /* 기본: 소형 카드 (카드 2~6) */
  height: 335px;
}

/* 1번 카드: 대형 (span 2) */
.sub0301-card:nth-child(1) .sub0301-thumb{
  height: 780px;
}

.sub0301-thumb img{
  width:100%;
  height: 100%;
  object-fit: cover;
  border-radius: 22px;
  transition: transform .25s ease;
}

/* hover */
.sub0301-thumb:hover img{
  transform: scale(1.02);
}

/* No image */
.sub0301-noimg{
  display:flex;
  align-items:center;
  justify-content:center;
  height: 280px;
  color: rgba(0,0,0,0.35);
  font-weight:700;
  letter-spacing:0.12em;
  text-transform:uppercase;
}

.sub0301-card:first-child .sub0301-meta{
  margin-top: 60px;
}

/* Meta row under thumb */
.sub0301-meta{
  margin-top: 40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
}

.sub0301-text{
  min-width:0;
}

.sub0301-name{
  margin:0;
  font-size: 24px;
  line-height: 1.35;
  font-weight: 800;
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sub0301-name strong{
  font-weight: 700;
}

/* 1번 카드만 큰 타이틀 */
.sub0301-card:nth-child(1) .sub0301-name{
  font-size: 26px;
}

.sub0301-year{
  margin: 6px 0 0;
  font-size: 19px;
  color: rgba(0,0,0,0.45);
  letter-spacing: -0.01em;
}

/* Pill */
.sub0301-pill{
  margin:0;
  flex: 0 0 auto;
}
.sub0301-pill span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: 22px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.10);
  color: rgba(0,0,0,0.40);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  background: #fff;
}

/* Checkbox */
.sub0301-item-check{
  position:absolute;
  left: 10px;
  top: 10px;
  z-index: 5;
  /* background: rgba(255,255,255,0.9);
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 999px; */
  padding: 6px 10px;
  display:flex;
  gap: 8px;
  align-items:center;
}
.sub0301-item-check input{ transform: translateY(1px); }

/* Empty */
.sub0301-empty{
  grid-column: 1 / -1;
  padding: 60px 0;
  text-align:center;
  color: rgba(0,0,0,0.5);
  border-top: 1px solid rgba(0,0,0,0.06);
}

/* ---------- Pagination -> 시안의 "MORE PORTFOLIO" 버튼처럼 ---------- */
.sub0301-pagination{
  margin-top: 44px;
  display:flex;
  justify-content:center;
}

/* 그누보드 페이지네이션 클래스 대응 */
.sub0301-pagination .pg_wrap{ display:flex; justify-content:center; width:100%; }
.sub0301-pagination .pg{
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 8px;
}

/* 기본 숫자 페이지 숨기기(시안엔 안보임) */
.sub0301-pagination .pg_page,
.sub0301-pagination .pg_current{
  display:none !important;
}

/* 다음 버튼만 버튼형으로 노출 */
.sub0301-pagination .pg_next{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  height: 46px;
  padding: 0 22px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.22);
  background:#fff;
  position: relative;
  overflow:hidden;
  text-indent: -9999px; /* 원문 숨김 */
  transition: transform .12s ease, border-color .12s ease;
}
.sub0301-pagination .pg_next:hover{
  transform: translateY(-1px);
  border-color: rgba(0,0,0,0.45);
}

/* 버튼 라벨/아이콘은 CSS로 강제 출력 (텍스트 상관없이 동일) */
.sub0301-pagination .pg_next::after{
  content:"MORE PORTFOLIO  →";
  text-indent: 0;
  position:absolute;
  inset: 0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.18em;
  color:#111;
}

/* 이전 버튼 숨김 */
.sub0301-pagination .pg_prev,
.sub0301-pagination .pg_start,
.sub0301-pagination .pg_end{
  display:none !important;
}

/* ---------- Search Overlay ---------- */
.sub0301-search{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display:none;
}
.sub0301-search.is-open{ display:block; }

.sub0301-search-dim{
  position:absolute;
  inset: 0;
  background: rgba(0,0,0,0.35);
}

.sub0301-search-panel{
  position:absolute;
  left: 50%;
  top: 18%;
  transform: translateX(-50%);
  width: min(720px, calc(100% - 24px));
  background:#fff;
  border-radius: 22px;
  padding: 26px 22px;
  box-shadow: 0 18px 60px rgba(0,0,0,0.15);
}

.sub0301-search-title{
  margin:0 0 14px;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0.18em;
}

.sub0301-search-form{
  display:flex;
  gap: 10px;
  align-items:center;
  flex-wrap: wrap;
}

.sub0301-search-select{
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.14);
  padding: 0 12px;
  font-size: 13px;
}

.sub0301-search-bar{
  display:flex;
  gap: 8px;
  flex: 1 1 auto;
}

.sub0301-search-input{
  flex: 1 1 auto;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.14);
  padding: 0 14px;
  font-size: 14px;
  outline:none;
}
.sub0301-search-input:focus{
  border-color: rgba(0,0,0,0.35);
}

.sub0301-search-submit{
  height: 44px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.22);
  background:#fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  cursor:pointer;
}

.sub0301-search-close{
  height: 44px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,0.12);
  background:#fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  cursor:pointer;
}

/* ---------- Responsive ---------- */
@media (max-width: 1200px){
  .inner_1800.sub0301-wrap{ padding: 90px 40px 100px; }
  .sub0301-title{ font-size: 72px; }
  .sub0301-grid{ gap: 20px; }
  .sub0301-card:nth-child(1) .sub0301-thumb{ height: 460px; }
}

@media (max-width: 900px){
  .sub0301-head{ align-items:flex-start; }
  .sub0301-title{ font-size: 56px; }
  .sub0301-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  /* 태블릿에선 1번 카드 2열 전체, 이후 일반 */
  .sub0301-card:nth-child(1){
    grid-column: 1 / -1;
    grid-row: auto;
  }
  .sub0301-card:nth-child(1) .sub0301-thumb{ height: 400px; }
  .sub0301-card:nth-child(2),
  .sub0301-card:nth-child(3){
    grid-column: auto;
    grid-row: auto;
  }
  .sub0301-thumb{ height: 220px; }
}

@media (max-width: 560px){
  .inner_1800.sub0301-wrap{ padding: 70px 18px 90px; }
  .sub0301-title{ font-size: 44px; }
  .sub0301-grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }
  .sub0301-card:nth-child(1){ grid-column:auto; }
  .sub0301-card:nth-child(1) .sub0301-thumb{ height: 260px; }
  .sub0301-thumb{ height: 200px; }
}

/* 전역 테마가 checkbox를 숨기는 경우 강제 복구 */
.sm-sub0301 input[type="checkbox"]{
  -webkit-appearance: auto;
  appearance: auto;
  display: inline-block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  width: 16px;
  height: 16px;
  pointer-events: auto !important;
}
/* ===== Custom Checkbox (Portfolio List) ===== */
.sub0301-item-check{
  position:absolute;
  left: 14px;
  top: 14px;
  z-index: 10;
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  /* background: rgba(255,255,255,0.92);
  border: 1px solid rgba(0,0,0,0.10); */
  /* backdrop-filter: blur(6px); */
}

/* 기본 체크박스 숨김 (기능은 유지) */
.sub0301-item-check input[type="checkbox"]{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip: rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

/* 보이는 체크 UI */
.sub0301-check-ui{
  width: 18px;
  height: 18px;
  border-radius: 6px;
  border: 1.5px solid rgba(0,0,0,0.25);
  background: #fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition: transform .12s ease, border-color .12s ease, background .12s ease;
}

/* 체크 표시(✓) */
.sub0301-check-ui::after{
  content:"";
  width: 9px;
  height: 5px;
  border-left: 2px solid transparent;
  border-bottom: 2px solid transparent;
  transform: rotate(-45deg) translateY(-1px);
  transition: border-color .12s ease;
}

/* 체크되면 UI 변경 */
.sub0301-item-check input[type="checkbox"]:checked + .sub0301-check-ui{
  border-color: rgba(0,0,0,0.75);
  background: #111;
  transform: translateY(-0.5px);
}
.sub0301-item-check input[type="checkbox"]:checked + .sub0301-check-ui::after{
  border-left-color: #fff;
  border-bottom-color: #fff;
}

/* 포커스 접근성 */
.sub0301-item-check input[type="checkbox"]:focus + .sub0301-check-ui{
  outline: 2px solid rgba(0,0,0,0.2);
  outline-offset: 2px;
}




/* write */
/* =========================================================
   SEOMOO WRITE SKIN - FINAL (paste & replace)
   Scoped under .seomoo_pf_write
   ========================================================= */

/* container */
.seomoo_pf_write{padding:40px 0 80px;}
.seomoo_pf_write .inner_1800{
  width:min(1800px,calc(100% - 64px));
  margin:0 auto;
}

/* common blocks */
.seomoo_pf_write .write_div{margin:18px 0;}
.seomoo_pf_write label{display:inline-block;margin-bottom:8px;font-weight:700;}

/* titles / help */
.seomoo_pf_write .meta_title{
  margin:18px 0 10px;
  font-size:16px;
  font-weight:800;
  letter-spacing:1px;
}
.seomoo_pf_write .help_txt{
  margin:8px 0 0;
  font-size:12px;
  opacity:.7;
  line-height:1.6;
}

/* inputs unified */
.seomoo_pf_write .frm_input,
.seomoo_pf_write .frm_file,
.seomoo_pf_write select{
  width:100%;
  max-width:100%;
  height:44px;
  padding:10px 12px;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#fff;
  box-sizing:border-box;
}

.seomoo_pf_write .frm_file{
  height: auto;
}
.seomoo_pf_write textarea.frm_input{
  height:auto;
  min-height:120px;
  padding:12px;
  resize:vertical;
}
.seomoo_pf_write .frm_input:focus,
.seomoo_pf_write .frm_file:focus,
.seomoo_pf_write select:focus{
  outline:none;
  border-color:#c7c9cf;
}

/* editor wrapper */
.seomoo_pf_write .wr_content{
  border:1px solid #e5e7eb;
  border-radius:16px;
  overflow:hidden;
  background:#fff;
}

/* option list (공지/HTML/비밀/메일) */
.seomoo_pf_write .bo_v_option{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  margin:0;
  padding:0;
  list-style:none;
}
.seomoo_pf_write .bo_v_option .chk_box{margin:0;}

/* writer info (name/pw/email/homepage) */
.seomoo_pf_write .bo_w_info{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px 14px;
}

/* INFORMATION meta grid */
.seomoo_pf_write .seomoo_meta{
  border-top:1px solid #f3f4f6;
  padding-top:18px;
}
.seomoo_pf_write .meta_grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 18px;
}
.seomoo_pf_write .meta_row label{
  display:block;
  margin-bottom:6px;
  font-weight:700;
}

/* files */
.seomoo_pf_write .seomoo_files{
  border-top:1px solid #f3f4f6;
  padding-top:18px;
}
.seomoo_pf_write .file_row{
  padding:14px 0;
  border-bottom:1px solid #f3f4f6;
}
.seomoo_pf_write .file_row label{
  display:block;
  margin-bottom:8px;
}
.seomoo_pf_write .file_del{
  margin-top:10px;
  font-size:15px;
  opacity:.75;
  display: flex;
  align-items: center;
}

.seomoo_pf_write .file_row .file_del label{
  margin-bottom: 0;
  margin-left: 10px;
}

/* bottom buttons */
.seomoo_pf_write .btn_confirm{
  margin-top:26px;
  display:flex;
  gap:10px;
  justify-content:flex-end;
  align-items:center;
  flex-wrap:wrap;
}
.seomoo_pf_write .btn_confirm .btn,
.seomoo_pf_write .btn_confirm button{
  height:44px;
  padding:0 16px;
  border-radius:999px;
}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width:1024px){
  .seomoo_pf_write .inner_1800{width:min(1800px,calc(100% - 40px));}
}
@media (max-width:900px){
  .seomoo_pf_write .meta_grid{grid-template-columns:1fr;}
  .seomoo_pf_write .bo_w_info{grid-template-columns:1fr;}
}
@media (max-width:480px){
  .seomoo_pf_write .inner_1800{width:min(1800px,calc(100% - 24px));}
}



/* view.skin.php */
/* =========================================================
   SEOMOO Portfolio Detail - View Skin Only
   (Scoped to .seomoo_pf_detail to avoid collisions)
   ========================================================= */

.seomoo_pf_detail {
  width: 100%;
  background: #fff;
  color: #000;
  font-family: Arial, Pretendard, system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans KR", sans-serif;
}

.seomoo_pf_detail .inner_1800 {
  max-width: 1800px;
  margin: 0 auto;
  padding: 0 60px;
  box-sizing: border-box;
}

/* ---------------------------
   Title bar (PORTFOLIO)
   --------------------------- */
.seomoo_pf_detail .pf_titlebar {
  padding: 90px 0 26px;
  border-bottom: 1px solid #f3f4f6;
}

.seomoo_pf_detail .pf_title {
  margin: 0;
  font-size: 44px;
  font-weight: 900;
  letter-spacing: -0.6px;
  font-family: Arial;
}

/* ---------------------------
   Summary layout
   --------------------------- */
.seomoo_pf_detail .pf_summary {
  padding: 52px 0 60px;
}

.seomoo_pf_detail .pf_summary_grid {
  display: grid;
  grid-template-columns: 970px 1fr;
  gap: 70px;
  align-items: start;
}

/* Hero */
.seomoo_pf_detail .pf_hero {
  margin: 0;
  position: relative;
}

.seomoo_pf_detail .pf_hero_media {
  width: 100%;
  overflow: hidden;
}

.seomoo_pf_detail .pf_hero_media a.view_image {
  display: block;
  width: 100%;
}

.seomoo_pf_detail .pf_hero_media img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  aspect-ratio: 970/640;
}

.seomoo_pf_detail .pf_hero_caption {
  position: absolute;
  left: 24px;
  bottom: 18px;
  margin: 0;
  color: #fff;
  font-size: 42px;
  font-weight: 900;
  letter-spacing: -0.8px;
  line-height: 1.1;
}
.seomoo_pf_detail .pf_hero_caption strong{
  font-family: montserrat;
}
/* Info */
.seomoo_pf_detail .pf_info {
  padding-top: 8px;
}

.seomoo_pf_detail .pf_info_title {
  margin: 0;
  font-size: 25px;
  letter-spacing: 3.2px;
  font-weight: 900;
  font-family: arial;
}

.seomoo_pf_detail .pf_info_rule {
  margin-top: 14px;
  height: 1px;
  background: #101828;
  opacity: 0.4;
}

.seomoo_pf_detail .pf_info_list {
  margin: 22px 0 0;
}

.seomoo_pf_detail .pf_info_row {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 16px;
  padding: 18px 0;
  border-bottom: 1px solid #f3f4f6;
}

.seomoo_pf_detail .pf_info_row dt {
  color: #99a1af;
  font-weight: 700;
  line-height: 1.6;
}

.seomoo_pf_detail .pf_info_row dd {
  margin: 0;
  color: #000;
  line-height: 1.7;
}

.seomoo_pf_detail .pf_info_row dt,
.seomoo_pf_detail .pf_info_row dd,
.seomoo_pf_detail .pf_area_list li span{
  font-size: 24px;
  font-family: arial;
}

.seomoo_pf_detail .pf_upper {
  letter-spacing: 1px;
  text-transform: uppercase;
}

.seomoo_pf_detail .pf_info_row--area dd {
  padding-top: 2px;
}

.seomoo_pf_detail .pf_area_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}

.seomoo_pf_detail .pf_area_list li {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 12px;
  align-items: baseline;
}

.seomoo_pf_detail .pf_area_list li span {
  color: #99a1af;
  
}

.seomoo_pf_detail .pf_area_list li b {
  color: #000;
  
  font-weight: 500;
}

/* 문의 버튼 위치/스타일 (시안: 오른쪽 아래) */
.seomoo_pf_detail .pf_info_action {
  display: flex;
  justify-content: flex-end;
  margin-top: 22px;
}

/* ---------------------------
   Buttons (page scoped)
   --------------------------- */
.seomoo_pf_detail .pf_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 2.2px;
  text-transform: uppercase;
}

.seomoo_pf_detail .pf_btn--outline {
  width: auto;
  border: 1px solid #000;
  color: #000;
  background: transparent;
  font-size: 19px;
  padding: 20px 70px;
}

.seomoo_pf_detail .pf_btn--outline:hover {
  background: rgba(0,0,0,0.04);
}

.seomoo_pf_detail .pf_btn--ghost {
  /* width: 90px;
  height: 32px; */
  border: 1px solid #e5e7eb;
  color: #000;
  background: transparent;
  padding: 20px 50px;
}

.seomoo_pf_detail .pf_btn--ghost:hover {
  background: rgba(0,0,0,0.03);
}

/* ---------------------------
   Gallery layout (시안: 2장 / 1장 / 2장)
   --------------------------- */
.seomoo_pf_detail .pf_gallery {
  padding: 150px 0;
}

.seomoo_pf_detail .pf_gallery_row {
  display: grid;
  gap: 70px;
  margin-top: 150px;
}

.seomoo_pf_detail .pf_gallery_row--two {
  grid-template-columns: 1fr 1fr;
}

.seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(1),
.seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(1) a,
.seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(1) img{
 height: 870px;
}

.seomoo_pf_detail .pf_gallery_row--two .pf_gallery_item:nth-child(2){
  margin-top: 140px;
}

.seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(2),
.seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(2) a,
.seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(2) img{
 height: 740px;
}



.seomoo_pf_detail .pf_gallery_row--two.pf_last{
  grid-template-columns: 1fr 940px;
}

.seomoo_pf_detail .pf_gallery_row--full {
  grid-template-columns: 1fr;
}

.seomoo_pf_detail .pf_gallery_item a.view_image {
  display: block;
}

.seomoo_pf_detail .pf_gallery_item img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.seomoo_pf_detail .pf_gallery_row--full .pf_gallery_item{
  height: 720px;
}

.seomoo_pf_detail .pf_gallery_row--full .pf_gallery_item a.view_image{
  height: 100%;
}

.seomoo_pf_detail .pf_gallery_row--full .pf_gallery_item img{
  height: 100%;
}

/* bottom action (목록) */
.seomoo_pf_detail .pf_bottom_action {
  margin-top: 80px;
  padding-top: 55px;
  border-top: 1px solid #f3f4f6;
  display: flex;
  justify-content: flex-end;
}

/* ---------------------------
   Brand section (시안 하단)
   --------------------------- */
.seomoo_pf_detail .pf_brand {
  background: #fafafa;
  margin-top: 80px;
  padding: 110px 0;
  overflow: hidden;
}

.seomoo_pf_detail .pf_brand_grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 80px;
  align-items: start;
}

.seomoo_pf_detail .pf_brand_left {
  padding-top: 10px;
}

.seomoo_pf_detail .pf_brand_big {
  margin: 0;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 54px;
  letter-spacing: -2px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1.05;
}

.seomoo_pf_detail .pf_brand_big--ghost {
  color: #e5e7eb;
  margin-top: 10px;
}

.seomoo_pf_detail .pf_brand_heading {
  margin: 46px 0 16px;
  font-family: Pretendard, Arial, sans-serif;
  font-size: 18px;
  font-weight: 700;
}

.seomoo_pf_detail .pf_brand_desc {
  margin: 0;
  font-family: Pretendard, Arial, sans-serif;
  font-size: 13px;
  color: #6a7282;
  line-height: 2.0;
  max-width: 620px;
}

/* Card */
.seomoo_pf_detail .pf_brand_card {
  background: #fff;
  border-radius: 46px;
  box-shadow: 0 34px 68px -16px rgba(0,0,0,0.25);
  min-height: 360px;
  position: relative;
  overflow: hidden;
}

.seomoo_pf_detail .pf_brand_card_inner {
  padding: 56px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.seomoo_pf_detail .pf_brand_number {
  font-family: Montserrat, Arial, sans-serif;
  font-size: 120px;
  font-weight: 900;
  color: #f9fafb;
  line-height: 1;
}

.seomoo_pf_detail .pf_brand_card_text {
  text-align: right;
}

.seomoo_pf_detail .pf_brand_card_title {
  margin: 0;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 12px;
  letter-spacing: 6px;
  text-transform: uppercase;
  color: #d1d5dc;
  font-weight: 600;
}

.seomoo_pf_detail .pf_brand_card_rule {
  height: 1px;
  background: #f3f4f6;
  margin: 16px 0 12px;
}

.seomoo_pf_detail .pf_brand_card_sub {
  margin: 0;
  font-family: Prata, serif;
  font-size: 12px;
  color: #99a1af;
}

/* ---------------------------
   Responsive
   --------------------------- */
@media (max-width: 1200px) {
  .seomoo_pf_detail .inner_1800 { padding: 0 24px; }

  .seomoo_pf_detail .pf_summary_grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .seomoo_pf_detail .pf_gallery_row {
    gap: 24px;
  }

  .seomoo_pf_detail .pf_brand_grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

@media (max-width: 640px) {
  .seomoo_pf_detail .pf_titlebar { padding: 60px 0 18px; }
  .seomoo_pf_detail .pf_title { font-size: 34px; }

  .seomoo_pf_detail .pf_gallery_row--two { grid-template-columns: 1fr; }
  .seomoo_pf_detail .pf_hero_caption { font-size: 30px; }
  
}

.sub0301-loadmore-wrap{
  display:flex;
  justify-content:center;
  margin:40px 0 10px;
}
.sub0301-loadmore-btn{
  min-width:370px;
  height:84px;
  padding: 0 28px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,0.22);
  background:#fff;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0.18em;
  color: #111;
  cursor:pointer;
  transition: transform .12s ease, border-color .12s ease;
}
.sub0301-loadmore-btn:hover{
  transform: translateY(-1px);
  border-color: rgba(0,0,0,0.45);
}
.sub0301-loadmore-btn:disabled{
  opacity:.5;
  cursor:default;
  transform:none;
}

.sub0301-loadmore-btn span{
  padding-left: 20px;
}

/* =========================================================
   Gallery Skin Responsive Refresh (list / view / write)
   - mobile horizontal gutter: 20px
   - stable on smartphone / tablet / desktop
   ========================================================= */

/* ---------- LIST (sub0301) ---------- */
@media (max-width: 1024px){
  .sm-sub0301 .inner_1800.sub0301-wrap{
    width: calc(100% - 40px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 64px 0 78px !important;
  }

  .sub0301-head{
    gap: 16px;
  }

  .sub0301-title{
    font-size: clamp(40px, 8.6vw, 56px);
    line-height: .96;
  }

  .sub0301-divider{
    margin: 20px 0;
  }

  .sub0301-toolbar{
    gap: 12px;
    margin-bottom: 18px;
    align-items: flex-start;
    flex-direction: column;
  }

  .sub0301-actions{
    flex-wrap: wrap;
    gap: 8px;
  }

  .sub0301-btn{
    min-height: 42px;
    height: auto;
    padding: 10px 14px;
    font-size: 12px;
    letter-spacing: .1em;
  }

  .sub0301-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .sub0301-card:nth-child(1){
    grid-column: 1 / -1;
  }

  .sub0301-card:nth-child(1) .sub0301-thumb{
    height: 340px;
  }

  .sub0301-thumb{
    height: 220px;
    border-radius: 14px;
  }

  .sub0301-meta{
    margin-top: 10px;
    gap: 8px;
  }

  .sub0301-name,
  .sub0301-card:nth-child(1) .sub0301-name{
    font-size: 20px;
    line-height: 1.3;
  }

  .sub0301-card:first-child .sub0301-meta{
    margin-top: 10px;
  }

  .sub0301-year{
    font-size: 12px;
  }

  .sub0301-pill span{
    font-size: 11px;
    padding: 6px 10px;
  }

  .sub0301-loadmore-wrap{
    margin-top: 28px;
  }

  .sub0301-loadmore-btn{
    min-width: 280px;
    width: 100%;
    max-width: 360px;
    height: 58px;
    font-size: 13px;
    letter-spacing: .12em;
  }
}

@media (max-width: 768px){
  .sub0301-grid{
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .sub0301-card:nth-child(1) .sub0301-thumb{
    height: 260px;
  }

  .sub0301-thumb{
    height: 210px;
  }

  .sub0301-search-panel{
    top: 10%;
    width: calc(100% - 40px);
    padding: 16px 14px;
    border-radius: 14px;
  }

  .sub0301-search-form{
    gap: 8px;
  }

  .sub0301-search-bar{
    width: 100%;
  }
}

@media (max-width: 480px){
  .sm-sub0301 .inner_1800.sub0301-wrap{
    padding-top: 52px !important;
    padding-bottom: 66px !important;
  }

  .sub0301-title{
    font-size: clamp(32px, 10.4vw, 40px);
  }

  .sub0301-total{
    font-size: 12px;
  }

  .sub0301-thumb{
    height: 190px;
  }

  .sub0301-loadmore-btn{
    height: 52px;
    font-size: 12px;
  }

    .sub0301-name,
  .sub0301-card:nth-child(1) .sub0301-name{
    font-size: 16px;
    
  }
}

/* ---------- WRITE ---------- */
@media (max-width: 1024px){
  .seomoo_pf_write{
    padding: 30px 0 64px;
  }

  .seomoo_pf_write .inner_1800{
    width: calc(100% - 40px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .seomoo_pf_write #fwrite{
    width: 100% !important;
    max-width: 100% !important;
  }

  .seomoo_pf_write .meta_grid,
  .seomoo_pf_write .bo_w_info{
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .seomoo_pf_write .frm_input,
  .seomoo_pf_write .frm_file,
  .seomoo_pf_write select{
    height: 42px;
    border-radius: 10px;
    font-size: 14px;
  }

  .seomoo_pf_write .btn_confirm{
    justify-content: stretch;
    gap: 8px;
  }

  .seomoo_pf_write .btn_confirm .btn,
  .seomoo_pf_write .btn_confirm button{
    flex: 1 1 auto;
    height: 46px;
  }
}

@media (max-width: 480px){
  .seomoo_pf_write{
    padding: 22px 0 52px;
  }

  .seomoo_pf_write .meta_title{
    font-size: 14px;
    letter-spacing: .04em;
  }

  .seomoo_pf_write .help_txt{
    font-size: 11px;
  }
}

/* ---------- VIEW ---------- */
@media (max-width: 1280px){
  .seomoo_pf_detail .pf_summary_grid{
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .seomoo_pf_detail .pf_hero_media img{
    aspect-ratio: 16 / 10;
  }

  .seomoo_pf_detail .pf_info{
    padding-top: 0;
  }

  .seomoo_pf_detail .pf_gallery{
    padding-top: 84px;
    padding-bottom: 84px;
  }

  .seomoo_pf_detail .pf_gallery_row{
    margin-top: 64px;
    gap: 24px;
  }

  .seomoo_pf_detail .pf_gallery_row--two,
  .seomoo_pf_detail .pf_gallery_row--two.pf_last{
    grid-template-columns: 1fr 1fr;
  }

  .seomoo_pf_detail .pf_gallery_row--two .pf_gallery_item:nth-child(2){
    margin-top: 0;
  }

  .seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(1),
  .seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(1) a,
  .seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(1) img,
  .seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(2),
  .seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(2) a,
  .seomoo_pf_detail .pf_gallery_row--two.pf_last .pf_gallery_item:nth-child(2) img{
    height: auto;
  }

  .seomoo_pf_detail .pf_gallery_row--full .pf_gallery_item{
    height: auto;
  }
}

@media (max-width: 1024px){
  .seomoo_pf_detail .inner_1800{
    width: calc(100% - 40px) !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .seomoo_pf_detail .pf_titlebar{
    padding: 58px 0 16px;
  }

  .seomoo_pf_detail .pf_title{
    font-size: clamp(34px, 7.8vw, 44px);
  }

  .seomoo_pf_detail .pf_summary{
    padding: 32px 0 42px;
  }

  .seomoo_pf_detail .pf_hero_caption{
    left: 14px;
    bottom: 12px;
    font-size: clamp(22px, 6vw, 34px);
    line-height: 1.06;
  }

  .seomoo_pf_detail .pf_info_title{
    font-size: 18px;
    letter-spacing: .12em;
  }

  .seomoo_pf_detail .pf_info_row{
    grid-template-columns: 92px 1fr;
    gap: 10px;
    padding: 12px 0;
  }

  .seomoo_pf_detail .pf_info_row dt,
  .seomoo_pf_detail .pf_info_row dd,
  .seomoo_pf_detail .pf_area_list li span{
    font-size: 14px;
    line-height: 1.55;
  }

  .seomoo_pf_detail .pf_area_list li{
    grid-template-columns: 84px 1fr;
    gap: 8px;
  }

  .seomoo_pf_detail .pf_btn--outline{
    padding: 12px 22px;
    font-size: 12px;
    letter-spacing: .1em;
  }

  .seomoo_pf_detail .pf_gallery{
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .seomoo_pf_detail .pf_gallery_row{
    margin-top: 16px;
    gap: 12px;
  }

  .seomoo_pf_detail .pf_gallery_item img{
    aspect-ratio: 4 / 3;
    object-fit: cover;
  }

  .seomoo_pf_detail .pf_bottom_action{
    margin-top: 36px;
    padding-top: 20px;
    justify-content: flex-start;
    gap: 8px;
    flex-wrap: wrap;
  }

  .seomoo_pf_detail .pf_btn--ghost{
    padding: 10px 14px;
    font-size: 12px;
    letter-spacing: .08em;
  }
}

@media (max-width: 640px){
  .seomoo_pf_detail .pf_gallery_row--two,
  .seomoo_pf_detail .pf_gallery_row--two.pf_last{
    grid-template-columns: 1fr;
  }

  .seomoo_pf_detail .pf_info_action{
    justify-content: flex-start;
  }
}
