/* 홍판사 기업·단체 우산 전문몰 */
#hd.umb_header { background:#fff; color:#16324c; border-bottom:1px solid #d6e1e5; }
.umb_header #logo img { display:block; width:210px; height:auto; }
.umb_header #hd_sch #sch_str { background:#f1f6f8; color:#16324c; }
.umb_header #hd_sch #sch_str::placeholder { color:#536977; opacity:1; }
.umb_header :is(a, button, input):focus-visible { outline:2px solid #246577; outline-offset:2px; }
.umb_header_pc #tnb { background:#f4f8f9; border-bottom-color:#d6e1e5; }
.umb_header_pc :is(#hd_qnb, #hd_define) li { border-right-color:#c5d6dc; }
.umb_header_pc :is(#hd_qnb, #hd_define) li a { color:#405b69; }
.umb_header_pc #hd_define li.active a { color:#16324c; font-weight:700; }
.umb_header_pc #hd_wrapper { display:flex; align-items:center; gap:40px; min-height:96px; }
.umb_header_pc #hd_wrapper:after { display:none; }
.umb_header_pc #logo, .umb_header_pc .hd_sch_wr { float:none; padding:0; margin:0; }
.umb_header_pc #hd_sch { border:1px solid #c5d6dc; border-radius:10px; overflow:visible; }
.umb_header_pc #hd_sch form { display:flex; }
.umb_header_pc #hd_sch #sch_str { flex:1; min-width:0; width:auto; height:46px; border-radius:9px 0 0 9px; }
.umb_header_pc #hd_sch #sch_submit { height:46px; border-radius:0 9px 9px 0; background:#16324c; }
.umb_header_pc .hd_login { display:flex; align-items:center; position:static; margin-left:auto; }
.umb_header_pc .hd_login > li.shop_login { margin-top:0; }
.umb_header_pc .hd_login > li a, .umb_header_pc .btn_member_mn { color:#16324c; }
.umb_header_pc .hd_login > li.login a { display:inline-flex; align-items:center; min-height:44px; padding:0 16px; border-color:#b2c7cf; border-radius:8px; }
.umb_header_pc #hd_menu { background:#fff; border-top:1px solid #d6e1e5; }
.umb_header_pc #hd_menu button#menu_open { background:#eaf3f6; color:#16324c; }
.umb_header_pc #hd_menu #category { top:100%; }
.umb_header_pc #hd_menu .cate_li_1_a { color:#246577; }
.umb_header_pc .hd_menu { display:flex; }
.umb_header_pc .hd_menu li { flex:1; width:auto; padding:0; }
.umb_header_pc .hd_menu li a { display:flex; justify-content:center; align-items:center; min-height:50px; border:0; color:#16324c; font-weight:700; }
.umb_header_pc .hd_menu li a:hover { background:#eaf3f6; }
.umb_header_pc .hd_menu li a.umb_header_quote { background:#16324c; color:#fff; }
.umb_header_pc .hd_menu li a.umb_header_quote:hover { background:#246577; }
#hd.umb_header_mobile #logo a { width:calc(100% - 180px); max-width:184px; height:64px; margin:auto; padding:0; display:flex; align-items:center; justify-content:center; }
#hd.umb_header_mobile #logo img { width:100%; height:auto; }
.umb_header_mobile :is(#btn_hdcate, #btn_hdsch, #btn_hduser, #btn_hdcart) { color:#16324c; height:64px; line-height:64px; }
.umb_header_mobile #hd_sch { z-index:2; background:#fff; border-bottom:1px solid #d6e1e5; }
.umb_header_mobile #hd_sch #sch_str { height:44px; border:1px solid #c5d6dc; border-radius:8px; font-size:16px; }
.umb_header_mobile #hd_sch :is(.sch_submit, .btn_close) { height:44px; color:#16324c; }

/* PC 전 페이지 공통 폭과 고정 퀵메뉴 여백 */
body:has(#hd.umb_header_pc) {
    --umb_pc_content: min(1440px, calc(100% - 104px));
    --umb_pc_left: clamp(14px, calc((100% - 1440px) / 2), calc(100% - var(--umb_pc_content) - 90px));
    --umb_pc_sidebar: clamp(190px, 19vw, 265px);
}
body:has(#hd.umb_header_pc) :is(#hd.umb_header_pc, #wrapper, #ft) { min-width:0; }
body:has(#hd.umb_header_pc) :is(.umb_header_pc #hd_wrapper, .umb_header_pc #tnb .inner, .umb_header_pc #hd_menu, .umb_header_pc #hd_pop, #wrapper #container, #ft_wr, #ft_copy) {
    width:var(--umb_pc_content);
    margin-left:var(--umb_pc_left);
    margin-right:0;
}
body:has(#hd.umb_header_pc) #ft_wr { display:block; max-width:none; }
body:has(#hd.umb_header_pc) .umb_header_pc #hd_wrapper { gap:clamp(12px, 2.5vw, 40px); }
body:has(#hd.umb_header_pc) .umb_header_pc #logo { flex-shrink:0; }
body:has(#hd.umb_header_pc) .umb_header_pc .hd_sch_wr { flex:0 1 560px; min-width:0; }
body:has(#hd.umb_header_pc) .umb_header_pc .hd_login { flex-shrink:0; }
body:has(#hd.umb_header_pc) .umb_header_pc #hd_menu { display:flex; }
body:has(#hd.umb_header_pc) .umb_header_pc #hd_menu::after { display:none; }
body:has(#hd.umb_header_pc) .umb_header_pc #menu_open { flex:0 0 var(--umb_pc_sidebar); width:auto; }
body:has(#hd.umb_header_pc) .umb_header_pc .hd_menu { flex:1; min-width:0; width:auto; }
/* 상품 상세 등 고정 1200px 영역을 공통 폭에 맞춘다 */
body:has(#hd.umb_header_pc) :is(#sit_ov_wrap, #sit_tab, #sit_tab_con) { width:auto; box-sizing:border-box; }
body:has(#hd.umb_header_pc) #sit_ov_wrap { display:flow-root; }
body:has(#hd.umb_header_pc) #wrapper_title { padding-left:0; padding-right:0; }
.shop-content.is_search #ssch_frm #ssch_q { width:min(560px, calc(100% - 150px)); }
.umb_home_layout #container { display:grid; grid-template-columns:var(--umb_pc_sidebar, 265px) minmax(0, 1fr); align-items:start; gap:20px; padding-top:20px; }
.umb_home_layout #container::after { display:none; }
.umb_home_layout #container .is_index { min-width:0; margin-left:0; padding-top:0; }
.umb_home_layout #aside { position:relative; z-index:1; width:auto; margin:0; }
.umb_home_layout #aside #gnb,
.umb_home_side { margin-bottom:14px; border:1px solid #d6e1e5; border-radius:12px; background:#fff; color:#16324c; }
.umb_home_side h2, .umb_home_layout #aside #gnb h2 { margin:0; padding:14px 16px; font-size:16px; line-height:1.4; }
.umb_home_layout #aside #gnb h2 { position:static; border-bottom:1px solid #d6e1e5; }
.umb_home_layout #aside .gnb_2dul { left:100%; }
.umb_home_side ul { margin:0; padding:0; list-style:none; }
.umb_home_side li { border-top:1px solid #e4ecef; }
.umb_home_side li a { display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:44px; padding:0 16px; color:#16324c; font-size:14px; }
.umb_home_side li a::after { content:""; width:6px; height:6px; border-top:1px solid #246577; border-right:1px solid #246577; transform:rotate(45deg); }
.umb_home_side li a:hover { background:#f4f8f9; }
.umb_home_support { padding:16px; background:#f4f8f9; }
.umb_home_support h2 { padding:0; }
.umb_home_support p { margin:8px 0 14px; color:#405b69; font-size:14px; line-height:1.6; word-break:keep-all; }
.umb_home_support a { display:flex; justify-content:center; align-items:center; min-height:44px; border-radius:8px; color:#16324c; font-size:14px; }
.umb_home_support .umb_side_quote { background:#16324c; color:#fff; font-weight:700; }
.umb_home_support .umb_side_quote:hover { background:#246577; }
.umb_home_support .umb_side_phone { margin-top:8px; border:1px solid #b2c7cf; background:#fff; font-weight:700; }
.umb_home_support .umb_side_guide { text-decoration:underline; text-underline-offset:3px; }
.umb_home_side a:focus-visible { outline:2px solid #246577; outline-offset:-2px; }
.umb_home_layout #umb_home .umb_hero { padding:40px; }
@media (max-width:1000px) {
    body:has(#hd.umb_header_pc) .umb_header_pc #logo img { width:160px; }
    .umb_home_layout #umb_home .umb_hero { padding:24px; }
    .umb_home_layout #umb_home .umb_hero_layout { grid-template-columns:minmax(0,1fr); }
    .umb_home_layout #umb_home .umb_hero_art { max-width:220px; }
}
@media (max-width:840px) {
    .umb_home_layout #container { grid-template-columns:minmax(0,1fr); }
    .umb_home_layout #aside .gnb_2dul { position:static; width:100%; }
}

#umb_home { color:#16324c; }
#umb_home .umb_inner { max-width:1200px; margin:0 auto; padding:0 16px; }
#umb_home .umb_hero { background:#eaf3f6; padding:clamp(24px, 5vw, 56px); border-radius:16px; }
#umb_home .umb_hero_layout { display:grid; grid-template-columns:minmax(0, 3fr) minmax(0, 2fr); align-items:center; gap:24px; padding:0; }
#umb_home .umb_hero_art { display:block; width:100%; max-width:420px; margin:auto; }
#umb_home .umb_eyebrow { margin:0 0 10px; font-size:14px; font-weight:700; color:#246577; }
#umb_home .umb_hero h2 { margin:0 0 14px; font-size:clamp(28px, 4vw, 46px); line-height:1.25; letter-spacing:-.035em; word-break:keep-all; }
#umb_home .umb_sub { margin:0 0 24px; font-size:16px; line-height:1.65; color:#405b69; word-break:keep-all; }
#umb_home .umb_cta { display:flex; flex-wrap:wrap; gap:10px; }
#umb_home .umb_btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 20px; border:1px solid #b2c7cf; border-radius:8px; background:#fff; color:#16324c; font-size:15px; font-weight:700; text-decoration:none; }
#umb_home .umb_btn.primary { background:#16324c; border-color:#16324c; color:#fff; }
#umb_home .umb_btn:hover, #umb_home .umb_grid a:hover { border-color:#246577; background:#f3f9fa; }
#umb_home .umb_btn.primary:hover { background:#246577; }
#umb_home :is(a, summary):focus-visible { outline:3px solid #246577; outline-offset:3px; }
#umb_home .umb_sec { padding:44px 0; }
#umb_home .umb_sec.alt { background:#f4f8f9; border-radius:16px; }
#umb_home .umb_sec h3 { margin:0 0 20px; font-size:22px; }
#umb_home .umb_grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
#umb_home .umb_purposes { grid-template-columns:repeat(4,minmax(0,1fr)); }
#umb_home .umb_grid a { display:block; box-sizing:border-box; height:100%; padding:16px; min-height:88px; background:#fff; border:1px solid #d6e1e5; border-radius:12px; color:#16324c; text-decoration:none; word-break:keep-all; }
#umb_home .umb_grid strong { display:block; margin-bottom:6px; font-size:17px; }
#umb_home .umb_grid span { font-size:14px; color:#405b69; }
#umb_home .umb_grid .umb_type_number { display:grid; place-items:center; width:36px; height:36px; margin-bottom:12px; border-radius:50%; background:#eaf3f6; color:#246577; font-weight:700; }
#umb_home .umb_consult { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:32px; padding:24px; border-radius:12px; background:#16324c; color:#fff; }
#umb_home .umb_consult h3 { margin-bottom:8px; }
#umb_home .umb_consult p { margin:0; font-size:15px; line-height:1.6; }
#umb_home .umb_consult .umb_btn { flex-shrink:0; }
#umb_home .umb_steps { display:flex; gap:12px; margin:0; padding:0; list-style:none; }
#umb_home .umb_steps li { flex:1; padding:16px 8px; text-align:center; background:#f4f6f9; border-radius:8px; }
#umb_home .umb_steps b { display:inline-block; width:28px; height:28px; line-height:28px; margin-bottom:6px; border-radius:50%; background:#16324c; color:#fff; font-size:14px; }
#umb_home .umb_steps span { display:block; font-size:15px; }
#umb_home .umb_note { margin:14px 0 0; font-size:13px; color:#667; }
#umb_home .umb_faq details { margin-bottom:8px; background:#fff; border:1px solid #dde3ec; border-radius:8px; }
#umb_home .umb_faq summary { padding:14px 16px; min-height:44px; box-sizing:border-box; cursor:pointer; font-weight:600; }
#umb_home .umb_faq p { margin:0; padding:0 16px 16px; line-height:1.6; color:#445; }

/* 모바일 하단 고정 CTA */
#umb_cta_bar { display:none; }
@media (min-width:1280px) {
    #umb_home .umb_types { grid-template-columns:repeat(6,minmax(0,1fr)); }
}
@media (max-width:768px) {
    #umb_home .umb_hero_layout { grid-template-columns:minmax(0,1fr); gap:12px; }
    #umb_home .umb_hero_art { max-width:230px; }
    #umb_home .umb_cta .umb_btn { flex:1 1 auto; }
    #umb_home .umb_sec { padding:28px 0; }
    #umb_home .umb_grid, #umb_home .umb_purposes { grid-template-columns:repeat(2,minmax(0,1fr)); }
    #umb_home .umb_consult { flex-direction:column; align-items:stretch; }
    #umb_home .umb_steps { flex-wrap:wrap; }
    #umb_home .umb_steps li { flex:1 1 30%; }
    #umb_cta_bar { display:flex; position:fixed; left:0; right:0; bottom:0; z-index:900; background:#fff; border-top:1px solid #dde3ec; padding-bottom:env(safe-area-inset-bottom); }
    #umb_cta_bar a { flex:1; display:flex; align-items:center; justify-content:center; min-height:52px; font-size:16px; font-weight:700; text-decoration:none; }
    #umb_cta_bar .tel { color:#16324c; }
    #umb_cta_bar .quote { background:#16324c; color:#fff; }
    body { padding-bottom:calc(56px + env(safe-area-inset-bottom)); }
}

/* 상품 상세: 대량 주문·인쇄 안내 */
#umb_specs { margin:16px 0; padding:16px; border:1px solid #dde3ec; border-radius:8px; background:#fafbfd; color:#222; }
#umb_specs h3 { margin:0 0 12px; font-size:16px; }
#umb_specs .umb_tier { width:100%; border-collapse:collapse; margin-bottom:8px; font-size:14px; }
#umb_specs .umb_tier th, #umb_specs .umb_tier td { padding:9px 10px; border:1px solid #dde3ec; text-align:left; }
#umb_specs .umb_tier thead th { background:#eef2f8; }
#umb_specs .umb_tier tr.on td { background:#fff4d6; font-weight:700; }
#umb_specs .umb_est { margin:0 0 12px; min-height:20px; font-size:14px; color:#16324c; }
#umb_specs .umb_spec_list { margin:0 0 10px; }
#umb_specs .umb_spec_list div { display:flex; gap:10px; padding:7px 0; border-top:1px solid #e6ebf2; font-size:14px; }
#umb_specs .umb_spec_list dt { flex:0 0 120px; color:#556; }
#umb_specs .umb_spec_list dd { margin:0; flex:1; word-break:keep-all; }
#umb_specs .umb_note { margin:0 0 12px; font-size:12px; color:#778; }
#umb_specs .umb_actions { display:flex; gap:8px; margin:0; }
#umb_specs .umb_actions a { flex:1; display:flex; align-items:center; justify-content:center; min-height:46px; border-radius:6px; font-weight:700; text-decoration:none; font-size:15px; }
#umb_specs .umb_btn_quote { background:#16324c; color:#fff; }
#umb_specs .umb_btn_tel { border:1px solid #16324c; color:#16324c; background:#fff; }
@media (max-width:480px) {
    #umb_specs .umb_spec_list dt { flex-basis:96px; }
    #umb_specs .umb_actions { flex-direction:column; }
}

/* 상품 목록 카드: 최소수량·인쇄가능·기준 단가 배지 */
.umb_badges { display:flex; flex-wrap:wrap; gap:4px; margin:6px 0 4px; }
.umb_badge { display:inline-block; padding:2px 7px; border-radius:10px; font-size:12px; line-height:18px; background:#eef2f8; color:#16324c; }
.umb_badge.print { background:#e3f4f1; color:#0d5c52; }
.umb_ref { display:inline-block; font-size:12px; line-height:18px; color:#667; }

/* 메인 상품 영역 */
.umb_main_sct { max-width:1200px; margin:32px auto 0; padding:0 16px; }
.umb_main_sct > header { display:flex; align-items:baseline; justify-content:space-between; }
.umb_main_sct h2 { font-size:20px; color:#16324c; }
.umb_main_sct h2 a { color:inherit; }
.umb_more { font-size:13px; color:#667; text-decoration:none; }
.umb_more:hover { color:#16324c; text-decoration:underline; }
@media (max-width:768px) { .umb_main_sct { margin-top:24px; padding:0 12px; } .umb_main_sct h2 { font-size:17px; } }

/* PC 우측 퀵메뉴 */
#side_menu { padding-left:74px; border-left-color:#d6e1e5; }
#quick { width:74px; max-height:calc(100% - 112px); overflow-y:auto; scrollbar-width:thin; margin-top:0; padding:4px; transform:translateY(-50%); }
#quick :is(.umb_qk, li button) { display:flex; width:100%; min-height:46px; height:auto; padding:5px 1px; flex-direction:column; align-items:center; justify-content:center; gap:4px; border-radius:7px; background:#fff; color:#16324c; font-size:17px; line-height:1; text-decoration:none; }
#quick li .qk_tit { display:block; position:static; padding:0; color:inherit; background:none; font-size:11px; line-height:1.3; }
#quick .qk_tit:after { content:none; }
#quick :is(.umb_qk, li button):hover, #quick button[aria-expanded="true"] { background:#eaf3f6; }
#quick a.umb_qk_quote { background:#16324c; color:#fff; }
#quick a.umb_qk_quote:hover { background:#246577; }
#quick .umb_qk_sep { height:1px; margin:5px 7px; background:#d6e1e5; }
#quick .umb_qk_admin { color:#405b69; }
#side_menu #top_btn { width:74px; color:#16324c; }
#side_menu #top_btn:hover { background:#eaf3f6; border-color:#d6e1e5; }
#side_menu :is(a, button):focus-visible { outline:2px solid #246577; outline-offset:-2px; }

/* 로고 크기 (PC 상단) */
#hd #logo img { height:56px; width:auto; display:block; }
#logo { padding-top:22px; }

/* 공급업체 승인본 공개: 상품 소개 */
#umb_supply_info { margin:16px 0; padding:16px; border:1px solid #d6e1e5; border-radius:12px; background:#fff; color:#16324c; }
#umb_supply_info h3 { margin:0 0 12px; font-size:18px; }
#umb_supply_info h4 { margin:14px 0 6px; font-size:15px; color:#246577; }
#umb_supply_info p { margin:0 0 8px; line-height:1.7; word-break:keep-all; overflow-wrap:anywhere; }
#umb_supply_info .umb_si_img { text-align:center; }
#umb_supply_info .umb_si_img img { max-width:100%; height:auto; border-radius:8px; }
