@charset "utf-8";
/* biz_03 (HERITAGE) · 제품소개 갤러리 1 — 2열 대형 에디토리얼 카드
   이미지 3:2 + 세리프 캡션 + 이탤릭 영문 라벨.
   색은 테마 css/default.css 의 :root 변수를 씁니다. */

.b03p1_gall .ggrid{display:grid;grid-template-columns:repeat(2,1fr);gap:64px 48px}
.b03p1_gall .gitem{display:block}
.b03p1_gall .th{position:relative;aspect-ratio:var(--gw,3)/var(--gh,2);overflow:hidden;background:#EFE9DD}
.b03p1_gall .th img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.3,1)}
.b03p1_gall .gitem:hover .th img{transform:scale(1.05)}
.b03p1_gall .th[data-ph]::after{content:attr(data-ph);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--latin);font-size:15px;letter-spacing:.26em;color:#A79D8E}
.b03p1_gall .th .badge.n{position:absolute;left:0;top:0;padding:6px 14px;font-size:11px;letter-spacing:.1em}
.b03p1_gall .in{padding:24px 2px 0;position:relative}
.b03p1_gall .in::before{content:"";position:absolute;left:0;top:0;width:34px;height:1px;background:var(--ink);transition:width .4s,background .4s}
.b03p1_gall .gitem:hover .in::before{width:100%;background:var(--gold)}
.b03p1_gall .cat{display:block;font-family:var(--latin);font-style:italic;font-size:15px;letter-spacing:.2em;color:var(--gold);margin-bottom:10px}
.b03p1_gall h3{font-family:var(--serif);font-weight:400;font-size:23px;line-height:1.5;color:var(--ink);transition:color .25s}
.b03p1_gall .gitem:hover h3{color:var(--wine)}
.b03p1_gall .price{margin-top:10px;font-family:var(--latin);font-size:19px;letter-spacing:.04em;color:var(--graphite)}
.b03p1_gall .mt{margin-top:16px;display:flex;gap:18px;font-size:12px;color:#A79D8E}
.b03p1_gall .empty_list{grid-column:1/-1}

@media (max-width:768px){
  .b03p1_gall .ggrid{grid-template-columns:1fr;gap:44px}
  .b03p1_gall h3{font-size:20px}
}

/* ── 공통 : 목록 상단 · 분류 필터 · 페이징 ─────────────────── */
.gfilter{display:flex;flex-wrap:wrap;gap:6px}
.gfilter button{border:1px solid var(--line);background:none;padding:9px 18px;font-size:13px;color:var(--graphite);transition:.25s}
.gfilter button:hover{border-color:var(--ink);color:var(--ink)}
.gfilter button.on{border-color:var(--ink);background:var(--ink);color:#fff}
.srch-c{margin:44px auto 0;width:max-content;max-width:100%}

/* ── 제품 읽기 (prd 공통) ──────────────────────────────────── */
.b03p_view .prd-top{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:start;padding-bottom:56px;border-bottom:1px solid var(--line)}
.b03p_view .prd-img #bo_v_img img{width:100%;height:auto;margin:0 0 12px}
.b03p_view .prd-img .noimg{aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;background:#EFE9DD;color:#A79D8E;font-family:var(--latin);font-size:15px;letter-spacing:.24em}
.b03p_view .prd-info .cate{display:inline-block;font-family:var(--latin);font-style:italic;font-size:15px;letter-spacing:.18em;color:var(--gold);margin-bottom:12px}
.b03p_view .prd-info h2{font-family:var(--serif);font-weight:400;font-size:clamp(23px,2.8vw,32px);line-height:1.4}
.b03p_view .prd-info .price{margin-top:14px;font-family:var(--latin);font-size:24px;letter-spacing:.04em;color:var(--wine)}
.b03p_view .spec{width:100%;margin-top:28px;border-top:1px solid var(--ink);border-collapse:collapse;font-size:14px}
.b03p_view .spec th{width:132px;padding:14px 4px;border-bottom:1px solid var(--line);font-family:var(--latin);font-weight:400;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);text-align:left}
.b03p_view .spec td{padding:14px 4px;border-bottom:1px solid var(--line);color:#4A453C}
.b03p_view .prd-links{margin-top:22px;display:flex;gap:8px;flex-wrap:wrap}
.b03p_view #bo_v_file{margin-top:36px;border:1px solid var(--line);background:#fff;padding:20px 24px}
.b03p_view #bo_v_file h2{font-family:var(--latin);font-size:13px;letter-spacing:.2em;color:var(--graphite);margin-bottom:10px;font-weight:400}
.b03p_view #bo_v_file li{padding:6px 0;font-size:14px}
.b03p_view #bo_v_file a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line)}
.b03p_view #bo_v_file a:hover{color:var(--wine);text-decoration-color:var(--gold)}
.b03p_view .bo_v_file_cnt{margin-left:10px;font-size:12px;color:#A79D8E}
.b03p_view #bo_v_atc{padding:56px 0 10px}
.b03p_view .dtl-h{font-family:var(--serif);font-weight:400;font-size:21px;padding-bottom:14px;margin-bottom:30px;border-bottom:1px solid var(--ink)}
.b03p_view #bo_v_con{font-size:16px;line-height:2.1;color:#3A362D;word-break:break-word;overflow-wrap:break-word}
.b03p_view #bo_v_con img{height:auto}
.b03p_view .signature{margin-top:30px;padding-top:18px;border-top:1px dashed var(--line);color:var(--graphite);font-size:13px}
.b03p_view #bo_v_act{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:44px 0 0;padding-top:26px;border-top:1px solid var(--line);font-size:13px}
.b03p_view #bo_v_act a,.b03p_view #bo_v_act>span{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;border:1px solid var(--line);color:var(--graphite);transition:.25s}
.b03p_view #bo_v_act a:hover{border-color:var(--ink);color:var(--ink)}
.b03p_view .bo_v_act_gng{position:relative}
.b03p_view .bo_v_act_gng b{position:absolute;top:110%;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--ink);color:#fff;font-size:12px;padding:6px 12px;display:none;font-weight:300}
.b03p_view .bo_v_nb{margin-top:30px;border-top:1px solid var(--ink)}
.b03p_view .bo_v_nb li{border-bottom:1px solid var(--line)}
.b03p_view .bo_v_nb a{display:flex;align-items:baseline;gap:20px;padding:16px 6px;font-size:14px;transition:background .25s}
.b03p_view .bo_v_nb a:hover{background:#F6F1E9}
.b03p_view .bo_v_nb b{flex-shrink:0;font-family:var(--latin);font-weight:500;font-size:13px;letter-spacing:.12em;color:var(--gold)}
.b03p_view .bo_v_nb span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--graphite)}

/* ── 제품 등록 (prd 공통) ──────────────────────────────────── */
.b03p_write{max-width:900px;margin:0 auto}
.b03p_write .wr-guide{margin-bottom:34px;padding:20px 24px;border:1px solid var(--line);background:#fff;font-size:13px;line-height:1.9;color:var(--graphite)}
.b03p_write .wr-guide b{display:block;margin-bottom:4px;font-family:var(--latin);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.b03p_write .wr-guide strong{color:var(--ink);font-weight:500}
.b03p_write .write_div{margin-bottom:26px}
.b03p_write .lb{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--graphite);margin-bottom:8px}
.b03p_write .lb i{color:var(--gold);font-style:normal}
.b03p_write input[type=text],.b03p_write input[type=password],.b03p_write select{width:100%;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;height:auto;padding:11px 2px;font-size:16px}
.b03p_write input:focus,.b03p_write select:focus,.b03p_write textarea:focus{outline:0;border-color:var(--ink);box-shadow:none !important}
.b03p_write textarea{width:100%;min-height:320px;border:1px solid var(--line);background:#fff;padding:18px;font-size:15px;line-height:1.9}
.b03p_write .grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.b03p_write .chk_box{display:flex;gap:22px;flex-wrap:wrap;font-size:14px;color:var(--graphite)}
.b03p_write .chk_box label{display:inline-flex;align-items:center;gap:7px}
.b03p_write #autosave_wrapper{position:relative}
.b03p_write #btn_autosave{margin-top:10px}
.b03p_write #autosave_pop{display:none;position:absolute;top:100%;right:0;z-index:10;width:min(420px,90vw);border:1px solid var(--line);background:#fff;padding:18px;box-shadow:0 24px 48px -24px rgba(35,33,30,.4)}
.b03p_write #autosave_pop.autosave_pop_open{display:block}
.b03p_write #autosave_pop strong{display:block;margin-bottom:10px;font-family:var(--serif);font-weight:500;font-size:15px}
.b03p_write #autosave_pop li{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}
.b03p_write #autosave_pop li a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.b03p_write #autosave_pop .autosave_del{border:0;background:none;color:#B4423B;font-size:12px}
.b03p_write #autosave_pop>div{margin-top:10px;text-align:right}
.b03p_write #autosave_pop .autosave_close{border:1px solid var(--line);background:none;padding:6px 14px;font-size:12px}
.b03p_write .bo_w_file .file_dl{margin-bottom:14px}
.b03p_write .file_tip{margin-left:10px;font-size:12px;color:var(--gold)}
.b03p_write .file_del{display:block;margin-top:6px;font-size:12px;color:var(--graphite)}
.b03p_write .frm_info{font-size:12px;color:#A79D8E;margin-bottom:8px}
.b03p_write #char_count_wrap{margin-top:6px;text-align:right;font-size:12px;color:#A79D8E}
.b03p_write .btn_confirm{display:flex;justify-content:center;gap:10px;margin-top:36px}

/* ── 댓글 (view_comment 공통 마크업) ───────────────────────── */
#bo_vc{max-width:860px;margin:40px auto 0;border-top:1px solid var(--ink);padding-top:8px}
#bo_vc h2,#bo_vc_w h2{font-family:var(--latin);font-size:13px;letter-spacing:.2em;color:var(--graphite);font-weight:400;padding:14px 0}
#bo_vc .cm_wrap{border-bottom:1px solid var(--line);padding:20px 4px}
#bo_vc .pf_img{display:none}
#bo_vc .bo_vc_hdinfo{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--graphite);margin-bottom:8px}
#bo_vc .bo_vc_hdinfo .member,#bo_vc .bo_vc_hdinfo .guest{font-family:var(--serif);font-weight:500;font-size:15px;color:var(--ink)}
#bo_vc .cmt_contents{font-size:14px;line-height:1.9;color:#3A362D}
#bo_vc .bo_vc_act{margin-top:10px;display:flex;gap:8px;font-size:12px}
#bo_vc .bo_vc_act a,#bo_vc .bo_vl_opt a,#bo_vc .btn_cm_opt{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid var(--line);color:var(--graphite);font-size:12px;background:none;transition:.25s}
#bo_vc .bo_vc_act a:hover,#bo_vc .btn_cm_opt:hover{border-color:var(--ink);color:var(--ink)}
#bo_vc .cmt_btn{display:block;margin:0 auto;border:0;background:none;color:var(--graphite);font-size:12px;letter-spacing:.1em}
#bo_vc .cmt_more{text-align:center;padding:10px 0}
#bo_vc .total{font-family:var(--latin);color:var(--gold)}
#bo_vc_w{max-width:860px;margin:0 auto;padding-top:10px}
#bo_vc_w textarea,#bo_vc textarea{width:100%;min-height:110px;border:1px solid var(--line);background:#fff;padding:14px;font-size:14px;line-height:1.8}
#bo_vc_w textarea:focus,#bo_vc textarea:focus{outline:0;border-color:var(--ink);box-shadow:none !important}
#bo_vc_w .bo_vc_w_info{display:flex;gap:10px;margin-bottom:10px}
#bo_vc_w .bo_vc_w_info input{border:0;border-bottom:1px solid var(--line);background:none;padding:9px 2px;font-size:14px;width:160px}
#bo_vc_w .secret_cm{margin:10px 0;font-size:13px;color:var(--graphite)}
#bo_vc_w .btn_confirm{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
#bo_vc_w .btn_submit{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 24px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:13px;letter-spacing:.08em;transition:.25s}
#bo_vc_w .btn_submit:hover{background:var(--wine);border-color:var(--wine)}
#bo_vc_w #char_cnt{font-size:12px;color:#A79D8E}

/* ── 공통 반응형 ───────────────────────────────────────────── */
@media (max-width:900px){
  .b03p_view .prd-top{grid-template-columns:1fr;gap:28px;padding-bottom:36px}
  .b03p_view #bo_v_atc{padding-top:36px}
}
@media (max-width:768px){
  .b03p_write .grid2{grid-template-columns:1fr}
  .b03p_write textarea{min-height:240px}
  .b03p_write .file_tip{display:block;margin:4px 0 0}
  #bo_vc_w .bo_vc_w_info{flex-wrap:wrap}
  .srch-c{width:100%}
}
