@charset "utf-8";

/* =========================================================
   KCCMIC 조합원 전용 공동구매몰 V2
   Prefix: kcc_
   ========================================================= */

:root {
    --kcc-navy: #0b2854;
    --kcc-navy-2: #123d79;
    --kcc-blue: #1e64b7;
    --kcc-blue-2: #2f7bd1;
    --kcc-sky: #eaf3ff;
    --kcc-ink: #152237;
    --kcc-text: #34445b;
    --kcc-muted: #78869a;
    --kcc-line: #dce4ed;
    --kcc-line-soft: #edf1f5;
    --kcc-surface: #f5f8fb;
    --kcc-white: #fff;
    --kcc-shadow: 0 24px 70px rgba(11, 40, 84, .12);
    --kcc-shadow-soft: 0 14px 38px rgba(26, 53, 84, .08);
    --kcc-radius-xl: 32px;
    --kcc-radius-lg: 24px;
    --kcc-radius-md: 16px;
    --kcc-radius-sm: 10px;
}

html {scroll-behavior:smooth;}
body {
    margin:0;
    background:#fff;
    color:var(--kcc-text);
    font-family:"Pretendard Variable","Pretendard","Noto Sans KR","Malgun Gothic",Arial,sans-serif;
    font-size:15px;
    line-height:1.55;
    word-break:keep-all;
    -webkit-font-smoothing:antialiased;
}
body.kcc_no_scroll {overflow:hidden;}
body *, body *::before, body *::after {box-sizing:border-box;}
a {color:inherit; text-decoration:none;}
button, input, select {font:inherit;}
button {cursor:pointer;}
img {max-width:100%;}
.sound_only {
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    padding:0 !important;
    margin:-1px !important;
    overflow:hidden !important;
    clip:rect(0,0,0,0) !important;
    white-space:nowrap !important;
    border:0 !important;
}
.kcc_container {width:min(1380px, calc(100% - 56px)); margin:0 auto;}
.kcc_content {display:block; min-height:55vh; overflow:hidden;}

/* 접근성 */
.kcc_skip {position:absolute; left:0; top:0; z-index:99999;}
.kcc_skip a {
    position:absolute;
    left:-9999px;
    top:0;
    padding:12px 20px;
    background:#111;
    color:#fff;
    font-weight:700;
    white-space:nowrap;
}
.kcc_skip a:focus {left:16px; top:16px;}

/* =========================================================
   HEADER
   ========================================================= */

.kcc_header {
    position:relative;
    z-index:1000;
    background:#fff;
    border-bottom:1px solid var(--kcc-line-soft);
}
.kcc_header_notice {background:var(--kcc-navy); color:rgba(255,255,255,.78);}
.kcc_header_notice_inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:38px;
    gap:24px;
    font-size:12px;
}
.kcc_header_notice_inner p {display:flex; align-items:center; gap:9px; margin:0;}
.kcc_notice_dot {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#79c9ff;
    box-shadow:0 0 0 5px rgba(121,201,255,.12);
}
.kcc_header_util {display:flex; align-items:center; gap:18px;}
.kcc_header_util a {color:#fff; transition:.2s ease;}
.kcc_header_util a:hover {color:#9edbff;}
.kcc_header_util strong {color:#fff;}

.kcc_header_primary {background:#fff;}
.kcc_header_primary_inner {
    display:flex;
    align-items:center;
    min-height:96px;
    gap:42px;
}
.kcc_brand {display:flex; align-items:center; flex:0 0 auto; gap:13px;}
.kcc_brand_symbol {
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    height:52px;
}
.kcc_brand_symbol img {display:block; width:100%; height:100%;}
.kcc_brand_copy {display:flex; flex-direction:column; min-width:240px;}
.kcc_brand_copy strong {
    color:var(--kcc-ink);
    font-size:17px;
    line-height:1.25;
    letter-spacing:-.045em;
}
.kcc_brand_copy small {
    margin-top:5px;
    color:#74839a;
    font-size:10px;
    font-weight:750;
    letter-spacing:.12em;
}

.kcc_header_search {
    display:flex;
    align-items:center;
    flex:1 1 560px;
    max-width:620px;
    height:52px;
    margin-left:auto;
    overflow:hidden;
    border:1px solid #bfcbd9;
    border-radius:13px;
    background:#fff;
    transition:.2s ease;
}
.kcc_header_search:focus-within {
    border-color:var(--kcc-blue);
    box-shadow:0 0 0 4px rgba(30,100,183,.09);
}
.kcc_header_search_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:52px;
    color:#75859a;
}
.kcc_header_search_icon svg,
.kcc_header_action_icon svg,
.kcc_all_category svg,
.kcc_filter_keyword svg,
.kcc_filter_open svg,
.kcc_value_icon svg,
.kcc_home_float_icon svg {
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.kcc_header_search_icon svg {width:20px; height:20px;}
.kcc_header_search input {
    flex:1;
    min-width:0;
    height:100%;
    padding:0 12px 0 0;
    border:0;
    outline:0;
    color:var(--kcc-ink);
    background:transparent;
}
.kcc_header_search input::placeholder {color:#98a4b3;}
.kcc_header_search button {
    align-self:stretch;
    width:82px;
    border:0;
    background:var(--kcc-blue);
    color:#fff;
    font-size:13px;
    font-weight:750;
    transition:.2s ease;
}
.kcc_header_search button:hover {background:var(--kcc-navy-2);}

.kcc_header_actions {display:flex; align-items:center; flex:0 0 auto; gap:20px;}
.kcc_header_action {
    position:relative;
    display:flex;
    align-items:center;
    flex-direction:column;
    justify-content:center;
    min-width:62px;
    gap:5px;
    color:#455469;
    font-size:11px;
    font-weight:650;
}
.kcc_header_action_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    width:25px;
    height:25px;
    color:var(--kcc-navy-2);
}
.kcc_header_action_icon svg {width:23px; height:23px;}
.kcc_header_action:hover {color:var(--kcc-blue);}
.kcc_header_cart em {
    position:absolute;
    right:5px;
    top:-4px;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:19px;
    height:19px;
    padding:0 5px;
    border-radius:10px;
    background:#ef5350;
    color:#fff;
    font-size:10px;
    font-style:normal;
    line-height:1;
}
.kcc_mobile_toggle {display:none;}

.kcc_header_navbar {
    position:relative;
    border-top:1px solid var(--kcc-line-soft);
    background:#fff;
}
.kcc_header_navbar_inner {display:flex; align-items:center; min-height:60px;}
.kcc_all_category {
    display:flex;
    align-items:center;
    align-self:stretch;
    flex:0 0 220px;
    gap:12px;
    padding:0 22px;
    border:0;
    background:var(--kcc-blue);
    color:#fff;
    font-size:14px;
    text-align:left;
}
.kcc_all_category > svg {width:18px; height:18px; margin-left:auto; transition:.2s ease;}
.kcc_all_category[aria-expanded="true"] > svg {transform:rotate(180deg);}
.kcc_all_category_icon {display:flex; flex-direction:column; width:18px; gap:4px;}
.kcc_all_category_icon i {display:block; width:18px; height:2px; border-radius:2px; background:#fff;}
.kcc_primary_nav {display:flex; align-items:center; height:60px; padding-left:24px;}
.kcc_primary_nav_item {position:relative; display:flex; align-items:center; height:60px;}
.kcc_primary_nav_item > a,
.kcc_secondary_nav a {
    display:flex;
    align-items:center;
    height:60px;
    padding:0 17px;
    color:#26364c;
    font-size:14px;
    font-weight:700;
    letter-spacing:-.025em;
    transition:.2s ease;
}
.kcc_primary_nav_item > a:hover,
.kcc_secondary_nav a:hover {color:var(--kcc-blue);}
.kcc_primary_nav_item.has_submenu > a::after {
    content:"";
    width:6px;
    height:6px;
    margin-left:8px;
    border-right:1px solid currentColor;
    border-bottom:1px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
}
.kcc_primary_submenu {
    position:absolute;
    left:50%;
    top:calc(100% - 1px);
    z-index:120;
    display:grid;
    grid-template-columns:1fr 1fr;
    width:230px;
    padding:14px;
    opacity:0;
    visibility:hidden;
    transform:translate(-50%, 8px);
    border:1px solid var(--kcc-line);
    border-radius:12px;
    background:#fff;
    box-shadow:0 16px 34px rgba(12,37,70,.16);
    transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
    pointer-events:none;
}
.kcc_primary_submenu::before {
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:-10px;
    height:10px;
}
.kcc_primary_submenu strong {
    grid-column:1 / -1;
    padding:2px 5px 9px;
    color:var(--kcc-ink);
    font-size:12px;
}
.kcc_primary_submenu_label {
    grid-column:1 / -1;
    margin:9px 3px 3px;
    padding-top:11px;
    border-top:1px solid var(--kcc-line-soft);
    color:#7a899c;
    font-size:10px;
    font-weight:800;
    letter-spacing:.04em;
}
.kcc_primary_submenu a {
    display:flex;
    align-items:center;
    justify-content:center;
    height:36px;
    margin:3px;
    padding:0 8px;
    border-radius:7px;
    background:#f4f7fa;
    color:#607086;
    font-size:12px;
    font-weight:650;
    transition:.18s ease;
}
.kcc_primary_submenu a.kcc_primary_submenu_all {
    grid-column:1 / -1;
    justify-content:flex-start;
    padding:0 12px;
    background:#eaf3ff;
    color:var(--kcc-blue);
    font-weight:800;
}
.kcc_primary_submenu a:hover,
.kcc_primary_submenu a.is_active,
.kcc_primary_submenu a.kcc_primary_submenu_all:hover {background:var(--kcc-blue); color:#fff;}
.kcc_primary_nav_item.has_submenu:hover .kcc_primary_submenu,
.kcc_primary_nav_item.has_submenu:focus-within .kcc_primary_submenu {
    opacity:1;
    visibility:visible;
    transform:translate(-50%, 0);
    pointer-events:auto;
}
.kcc_secondary_nav {display:flex; align-items:center; margin-left:auto;}
.kcc_secondary_nav a {padding:0 13px; color:#6e7c8f; font-size:13px; font-weight:600;}

.kcc_mega_menu {
    position:absolute;
    left:0;
    right:0;
    top:100%;
    z-index:100;
    opacity:0;
    transform:translateY(-8px);
    border-top:1px solid var(--kcc-line-soft);
    background:#fff;
    box-shadow:0 28px 55px rgba(12,37,70,.14);
    transition:opacity .2s ease, transform .2s ease;
}
.kcc_mega_menu.is-open {opacity:1; transform:translateY(0);}
.kcc_mega_menu_inner {display:grid; grid-template-columns:260px 1fr; gap:44px; padding-top:34px; padding-bottom:40px;}
.kcc_mega_intro {
    padding:30px;
    border-radius:22px;
    background:linear-gradient(150deg,var(--kcc-navy),#174a8c);
    color:#fff;
}
.kcc_mega_intro span {display:block; color:#8fcaff; font-size:11px; font-weight:800; letter-spacing:.13em;}
.kcc_mega_intro strong {display:block; margin-top:17px; font-size:25px; line-height:1.35; letter-spacing:-.05em;}
.kcc_mega_intro p {margin:15px 0 0; color:rgba(255,255,255,.68); font-size:12px; line-height:1.7;}
.kcc_mega_grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px 28px;}
.kcc_mega_group {min-width:0;}
.kcc_mega_group_title {display:flex; align-items:center; gap:13px; padding-bottom:12px; border-bottom:1px solid var(--kcc-line);}
.kcc_mega_group_thumb {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 54px;
    width:54px;
    height:46px;
    overflow:hidden;
    border-radius:10px;
    background:#eff4f8;
}
.kcc_mega_group_thumb img {width:100%; height:100%; object-fit:cover;}
.kcc_mega_group_title > span:last-child {display:flex; flex-direction:column; min-width:0;}
.kcc_mega_group_title small {color:var(--kcc-blue); font-size:9px; font-weight:800; letter-spacing:.08em;}
.kcc_mega_group_title strong {margin-top:2px; color:var(--kcc-ink); font-size:15px;}
.kcc_mega_group ul {display:grid; grid-template-columns:1fr 1fr; gap:4px 12px; margin:12px 0 0; padding:0; list-style:none;}
.kcc_mega_group li a {display:block; padding:6px 0; color:#657489; font-size:12px; transition:.2s ease;}
.kcc_mega_group li a:hover {padding-left:4px; color:var(--kcc-blue);}
.kcc_mega_empty {margin:13px 0 0; color:#9aa6b4; font-size:12px;}

.kcc_mobile_panel,
.kcc_mobile_dim {display:none;}

/* =========================================================
   HOME HERO
   ========================================================= */

.kcc_home_hero {
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 10% 20%, rgba(47,123,209,.12), transparent 34%),
        linear-gradient(135deg,#f7fbff 0%,#eaf3ff 55%,#f9fbfd 100%);
}
.kcc_home_hero::before {
    content:"";
    position:absolute;
    left:-130px;
    bottom:-240px;
    width:520px;
    height:520px;
    border-radius:50%;
    border:80px solid rgba(30,100,183,.04);
}
.kcc_home_hero_inner {
    position:relative;
    display:grid;
    grid-template-columns:minmax(0, .92fr) minmax(520px, 1.08fr);
    align-items:center;
    min-height:670px;
    gap:52px;
}
.kcc_home_hero_copy {position:relative; z-index:2; padding:82px 0 74px;}
.kcc_home_hero_badge {
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:9px 14px;
    border:1px solid rgba(30,100,183,.18);
    border-radius:999px;
    background:rgba(255,255,255,.72);
    color:var(--kcc-blue);
    font-size:11px;
    font-weight:850;
    letter-spacing:.1em;
    backdrop-filter:blur(8px);
}
.kcc_home_hero_badge span {width:7px; height:7px; border-radius:50%; background:#2a82da; box-shadow:0 0 0 5px rgba(42,130,218,.12);}
.kcc_home_hero h1 {
    margin:28px 0 0;
    color:var(--kcc-ink);
    font-size:50px;
    line-height:1.2;
    letter-spacing:-.065em;
    font-weight:760;
}
.kcc_home_hero h1 strong {color:var(--kcc-blue); font-weight:850;}
.kcc_home_hero_copy > p {margin:25px 0 0; color:#607086; font-size:17px; line-height:1.75;}
.kcc_home_hero_actions {display:flex; gap:12px; margin-top:34px;}
.kcc_home_hero_actions a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:150px;
    height:52px;
    padding:0 24px;
    border-radius:12px;
    font-size:14px;
    font-weight:750;
    transition:.22s ease;
}
.kcc_home_hero_primary {background:var(--kcc-blue); color:#fff !important; box-shadow:0 14px 25px rgba(30,100,183,.22);}
.kcc_home_hero_primary:hover {transform:translateY(-2px); background:var(--kcc-navy-2);}
.kcc_home_hero_secondary {border:1px solid #c3d0de; background:rgba(255,255,255,.78); color:var(--kcc-ink);}
.kcc_home_hero_secondary:hover {border-color:var(--kcc-blue); color:var(--kcc-blue);}
.kcc_home_hero_stats {display:flex; align-items:center; margin-top:48px;}
.kcc_home_hero_stats > div {min-width:128px; padding-right:28px; margin-right:28px; border-right:1px solid rgba(77,105,139,.2);}
.kcc_home_hero_stats > div:last-child {padding-right:0; margin-right:0; border-right:0;}
.kcc_home_hero_stats strong {display:block; color:var(--kcc-navy); font-size:20px; line-height:1;}
.kcc_home_hero_stats span {display:block; margin-top:8px; color:#8190a3; font-size:11px;}

.kcc_home_hero_visual {position:relative; min-height:590px; align-self:end;}
.kcc_home_hero_visual > img {
    position:absolute;
    left:0;
    right:-85px;
    bottom:10px;
    z-index:2;
    width:100%;
    max-width:none;
    filter:drop-shadow(0 25px 35px rgba(13,51,94,.13));
}
.kcc_home_hero_visual_glow {
    position:absolute;
    right:30px;
    top:100px;
    width:430px;
    height:430px;
    border-radius:50%;
    background:rgba(255,255,255,.72);
    filter:blur(2px);
}
.kcc_home_hero_float {
    position:absolute;
    z-index:4;
    display:flex;
    align-items:center;
    gap:12px;
    min-width:205px;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.86);
    border-radius:16px;
    background:rgba(255,255,255,.84);
    box-shadow:0 15px 38px rgba(16,54,96,.14);
    backdrop-filter:blur(12px);
}
.kcc_home_hero_float_top {right:10px; top:145px;}
.kcc_home_hero_float_bottom {left:15px; bottom:74px;}
.kcc_home_float_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:12px;
    background:#e8f2ff;
    color:var(--kcc-blue);
}
.kcc_home_float_icon svg {width:22px; height:22px;}
.kcc_home_hero_float > span:last-child {display:flex; flex-direction:column;}
.kcc_home_hero_float small {color:#8a99ab; font-size:8px; font-weight:850; letter-spacing:.1em;}
.kcc_home_hero_float strong {margin-top:2px; color:var(--kcc-ink); font-size:12px;}

/* 공통 섹션 제목 */
.kcc_section_heading {display:flex; align-items:flex-end; justify-content:space-between; gap:40px; margin-bottom:42px;}
.kcc_section_heading > div > span,
.kcc_featured_head > div > span,
.kcc_panel_heading > div > span {
    display:block;
    margin-bottom:12px;
    color:var(--kcc-blue);
    font-size:11px;
    font-weight:850;
    letter-spacing:.12em;
}
.kcc_section_heading h2,
.kcc_featured_head h2,
.kcc_panel_heading h2 {
    margin:0;
    color:var(--kcc-ink);
    font-size:34px;
    line-height:1.28;
    letter-spacing:-.055em;
}
.kcc_section_heading > p {margin:0; color:#7a899b; font-size:14px; line-height:1.75; text-align:right;}
.kcc_section_heading_compact {align-items:center;}
.kcc_section_heading_compact h2 {font-size:31px;}

/* =========================================================
   CATEGORY SHOWCASE
   ========================================================= */

.kcc_home_category {padding:104px 0 112px; background:#fff;}
.kcc_category_showcase {display:grid; grid-template-columns:repeat(3,1fr); gap:18px;}
.kcc_category_showcase_card {
    position:relative;
    display:block;
    min-height:280px;
    overflow:hidden;
    padding:30px;
    border:1px solid rgba(24,55,91,.08);
    border-radius:25px;
    background:#f4f8fc;
    box-shadow:0 1px 0 rgba(255,255,255,.8) inset;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.kcc_category_showcase_card:hover {transform:translateY(-6px); border-color:rgba(30,100,183,.18); box-shadow:var(--kcc-shadow-soft);}
.kcc_category_showcase_card.kcc_tone_blue {background:linear-gradient(145deg,#eff7ff,#dcecff);}
.kcc_category_showcase_card.kcc_tone_slate {background:linear-gradient(145deg,#f6f9fb,#e2eaf0);}
.kcc_category_showcase_card.kcc_tone_teal {background:linear-gradient(145deg,#eff9f7,#dceeea);}
.kcc_category_showcase_card.kcc_tone_amber {background:linear-gradient(145deg,#fff9ed,#f7e7c5);}
.kcc_category_showcase_card.kcc_tone_violet {background:linear-gradient(145deg,#f7f4ff,#e5dff6);}
.kcc_category_showcase_card.kcc_tone_sky {background:linear-gradient(145deg,#f0f7ff,#dcebf9);}
.kcc_category_showcase_number {position:absolute; left:28px; top:25px; color:rgba(21,50,84,.33); font-size:11px; font-weight:800; letter-spacing:.1em;}
.kcc_category_showcase_copy {position:relative; z-index:3; max-width:58%; padding-top:38px;}
.kcc_category_showcase_copy small {display:block; color:var(--kcc-blue); font-size:9px; font-weight:850; letter-spacing:.11em;}
.kcc_category_showcase_copy strong {display:block; margin-top:7px; color:var(--kcc-ink); font-size:25px; letter-spacing:-.05em;}
.kcc_category_showcase_copy p {margin:11px 0 0; color:#65758a; font-size:12px; line-height:1.65;}
.kcc_category_showcase_children {display:block; margin-top:19px; color:#69788a; font-size:10px;}
.kcc_category_showcase_image {
    position:absolute;
    right:-18px;
    bottom:-20px;
    width:58%;
    height:84%;
    transition:transform .3s ease;
}
.kcc_category_showcase_image img {width:100%; height:100%; object-fit:contain;}
.kcc_category_showcase_card:hover .kcc_category_showcase_image {transform:scale(1.05) translate(-3px,-3px);}
.kcc_category_showcase_arrow {
    position:absolute;
    right:22px;
    top:22px;
    z-index:4;
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:rgba(255,255,255,.72);
    color:var(--kcc-blue);
    font-size:18px;
    transition:.2s ease;
}
.kcc_category_showcase_card:hover .kcc_category_showcase_arrow {background:var(--kcc-blue); color:#fff;}

/* =========================================================
   FEATURED PRODUCTS
   ========================================================= */

.kcc_home_featured {
    position:relative;
    overflow:hidden;
    padding:105px 0 118px;
    background:linear-gradient(135deg,#081f43,#123c78);
}
.kcc_home_featured::before,
.kcc_home_featured::after {content:""; position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.08);}
.kcc_home_featured::before {width:420px; height:420px; right:-120px; top:-150px;}
.kcc_home_featured::after {width:260px; height:260px; left:-100px; bottom:-100px;}
.kcc_featured_head {position:relative; z-index:2; display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:40px;}
.kcc_featured_head > div > span {color:#83c6ff;}
.kcc_featured_head h2 {color:#fff;}
.kcc_featured_head > a {color:rgba(255,255,255,.74); font-size:13px;}
.kcc_featured_head > a b {margin-left:8px; color:#fff; font-size:18px;}
.kcc_featured_grid {position:relative; z-index:2; display:grid; grid-template-columns:1.45fr repeat(3,1fr); gap:16px;}
.kcc_featured_card {
    display:flex;
    min-width:0;
    flex-direction:column;
    overflow:hidden;
    border-radius:22px;
    background:#fff;
    box-shadow:0 20px 45px rgba(0,0,0,.12);
}
.kcc_featured_card_image {position:relative; display:flex; align-items:center; justify-content:center; height:235px; overflow:hidden; background:#f2f6fa;}
.kcc_featured_card.is_primary .kcc_featured_card_image {height:310px;}
.kcc_featured_card_image img {width:100%; height:100%; object-fit:contain; transition:transform .3s ease;}
.kcc_featured_card:hover .kcc_featured_card_image img {transform:scale(1.045);}
.kcc_product_badge {
    position:absolute;
    left:18px;
    top:18px;
    padding:7px 10px;
    border-radius:999px;
    background:var(--kcc-blue);
    color:#fff;
    font-size:10px;
    font-weight:800;
}
.kcc_featured_card_body {display:flex; flex:1; flex-direction:column; padding:22px;}
.kcc_product_meta_line {display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--kcc-blue); font-size:10px; font-weight:750;}
.kcc_product_meta_line em {color:#98a3b0; font-style:normal; font-weight:500;}
.kcc_featured_card h3,
.kcc_product_card h3,
.kcc_list_product_card h2 {margin:9px 0 0; color:var(--kcc-ink); letter-spacing:-.035em;}
.kcc_featured_card h3 {font-size:17px; line-height:1.45;}
.kcc_featured_card.is_primary h3 {font-size:22px;}
.kcc_featured_card_body > p {margin:9px 0 0; color:#8793a3; font-size:12px; line-height:1.65;}
.kcc_featured_card_bottom {display:flex; align-items:center; justify-content:space-between; gap:15px; margin-top:auto; padding-top:22px;}
.kcc_product_price strong {display:inline-flex; align-items:baseline; color:var(--kcc-ink); font-size:20px; letter-spacing:-.035em;}
.kcc_product_price strong span {margin-left:2px; font-size:12px; font-weight:600;}
.kcc_product_price > a {color:var(--kcc-blue); font-size:12px; font-weight:750;}
.kcc_product_round_link {
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:1px solid var(--kcc-line);
    border-radius:50%;
    color:var(--kcc-blue);
    font-size:18px;
    transition:.2s ease;
}
.kcc_product_round_link:hover {border-color:var(--kcc-blue); background:var(--kcc-blue); color:#fff;}
.kcc_empty_products {padding:70px 20px; border-radius:22px; background:#f5f8fb; text-align:center;}
.kcc_empty_products strong {display:block; color:var(--kcc-ink); font-size:20px;}
.kcc_empty_products p {margin:8px 0 0; color:var(--kcc-muted);}
.kcc_home_featured .kcc_empty_products {position:relative; z-index:2; background:rgba(255,255,255,.09); color:#fff;}
.kcc_home_featured .kcc_empty_products strong {color:#fff;}
.kcc_home_featured .kcc_empty_products p {color:rgba(255,255,255,.65);}

/* =========================================================
   STORY / EDITORIAL
   ========================================================= */

.kcc_home_story {padding:105px 0 0; background:#fff;}
.kcc_story_grid {display:grid; grid-template-columns:1fr 1fr; gap:20px;}
.kcc_story_card {
    position:relative;
    display:block;
    min-height:360px;
    overflow:hidden;
    padding:48px;
    border-radius:30px;
    background:#eef5fc;
}
.kcc_story_card_2 {background:#f5f1ff;}
.kcc_story_copy {position:relative; z-index:3; max-width:48%;}
.kcc_story_copy > span {color:var(--kcc-blue); font-size:10px; font-weight:850; letter-spacing:.12em;}
.kcc_story_copy h2 {margin:12px 0 0; color:var(--kcc-ink); font-size:36px; letter-spacing:-.055em;}
.kcc_story_copy p {margin:15px 0 0; color:#6d7d91; font-size:13px; line-height:1.75;}
.kcc_story_copy strong {display:inline-flex; align-items:center; gap:10px; margin-top:31px; color:var(--kcc-navy-2); font-size:13px;}
.kcc_story_copy strong i {font-size:18px; font-style:normal; transition:.2s ease;}
.kcc_story_card:hover .kcc_story_copy strong i {transform:translateX(4px);}
.kcc_story_card > img {
    position:absolute;
    right:-20px;
    bottom:-40px;
    width:60%;
    height:105%;
    object-fit:contain;
    transition:transform .35s ease;
}
.kcc_story_card:hover > img {transform:scale(1.05) translate(-5px,-5px);}

/* =========================================================
   NEW PRODUCTS
   ========================================================= */

.kcc_home_new {padding:105px 0 112px; background:#fff;}
.kcc_product_grid {display:grid; grid-template-columns:repeat(5,1fr); gap:16px;}
.kcc_product_card {
    overflow:hidden;
    border:1px solid var(--kcc-line);
    border-radius:21px;
    background:#fff;
    transition:.25s ease;
}
.kcc_product_card:hover {transform:translateY(-5px); border-color:#b9cadc; box-shadow:var(--kcc-shadow-soft);}
.kcc_product_card_image {
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    height:230px;
    overflow:hidden;
    background:#f3f6f9;
}
.kcc_product_card_image img {width:100%; height:100%; object-fit:contain; transition:transform .3s ease;}
.kcc_product_card:hover .kcc_product_card_image img {transform:scale(1.05);}
.kcc_product_card_view {
    position:absolute;
    left:50%;
    bottom:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:86px;
    height:34px;
    padding:0 14px;
    opacity:0;
    transform:translate(-50%,10px);
    border-radius:999px;
    background:rgba(11,40,84,.88);
    color:#fff;
    font-size:11px;
    font-weight:700;
    transition:.25s ease;
}
.kcc_product_card:hover .kcc_product_card_view {opacity:1; transform:translate(-50%,0);}
.kcc_product_card_body {padding:20px;}
.kcc_product_card h3 {height:46px; overflow:hidden; font-size:16px; line-height:1.45;}
.kcc_product_minimum {margin:11px 0 0; color:#8a96a5; font-size:11px;}
.kcc_product_card .kcc_product_price {margin-top:15px;}
.kcc_product_card .kcc_product_price strong {font-size:18px;}

/* =========================================================
   VALUE BAND
   ========================================================= */

.kcc_home_value {padding:0 0 108px; background:#fff;}
.kcc_value_grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    overflow:hidden;
    border:1px solid var(--kcc-line);
    border-radius:24px;
    background:#fff;
}
.kcc_value_grid article {display:flex; gap:16px; min-height:145px; padding:30px 26px; border-right:1px solid var(--kcc-line);}
.kcc_value_grid article:last-child {border-right:0;}
.kcc_value_icon {
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 48px;
    width:48px;
    height:48px;
    border-radius:15px;
    background:#ecf4ff;
    color:var(--kcc-blue);
}
.kcc_value_icon svg {width:24px; height:24px;}
.kcc_value_grid strong {display:block; color:var(--kcc-ink); font-size:15px;}
.kcc_value_grid p {margin:7px 0 0; color:#7b899a; font-size:11px; line-height:1.7;}

/* =========================================================
   NOTICE / ORDER GUIDE
   ========================================================= */

.kcc_home_bottom {padding:100px 0 112px; background:#f4f7fa;}
.kcc_home_bottom_grid {display:grid; grid-template-columns:.72fr 1.28fr; gap:20px;}
.kcc_notice_panel,
.kcc_process_panel {padding:34px; border:1px solid var(--kcc-line); border-radius:25px; background:#fff;}
.kcc_panel_heading {display:flex; align-items:flex-end; justify-content:space-between; gap:20px; padding-bottom:23px; border-bottom:1px solid var(--kcc-line);}
.kcc_panel_heading > div > span {margin-bottom:6px;}
.kcc_panel_heading h2 {font-size:24px;}
.kcc_panel_heading > a {color:#778699; font-size:12px;}
.kcc_panel_heading > p {margin:0; color:#8b97a5; font-size:11px;}
.kcc_notice_latest {padding-top:17px;}
.kcc_notice_latest .lat,
.kcc_notice_latest .lt {margin:0 !important; padding:0 !important; border:0 !important; background:transparent !important;}
.kcc_notice_latest .lat_title,
.kcc_notice_latest .lt_title,
.kcc_notice_latest .lat_more,
.kcc_notice_latest .lt_more {display:none !important;}
.kcc_notice_latest ul {margin:0 !important; padding:0 !important; list-style:none !important;}
.kcc_notice_latest li {position:relative; padding:12px 90px 12px 12px !important; border-bottom:1px solid var(--kcc-line-soft); font-size:13px;}
.kcc_notice_latest li::before {content:""; position:absolute; left:0; top:20px; width:4px; height:4px; border-radius:50%; background:var(--kcc-blue);}
.kcc_notice_latest li:last-child {border-bottom:0;}
.kcc_notice_latest li a {display:block; overflow:hidden; color:#47576c; text-overflow:ellipsis; white-space:nowrap;}
.kcc_notice_latest .lt_date,
.kcc_notice_latest .lat_date {position:absolute; right:0; top:12px; color:#9aa5b2; font-size:10px;}
.kcc_order_process {display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin:24px 0 0; padding:0; list-style:none;}
.kcc_order_process li {position:relative; min-height:150px; padding:22px 16px; border-radius:16px; background:#f4f7fa;}
.kcc_order_process li:not(:last-child)::after {content:"→"; position:absolute; right:-12px; top:50%; z-index:2; display:flex; align-items:center; justify-content:center; width:24px; height:24px; transform:translateY(-50%); border-radius:50%; background:#fff; color:#9aabba; font-size:12px; box-shadow:0 3px 12px rgba(24,54,86,.08);}
.kcc_order_process li > span {display:block; color:var(--kcc-blue); font-size:11px; font-weight:850;}
.kcc_order_process strong {display:block; margin-top:22px; color:var(--kcc-ink); font-size:14px;}
.kcc_order_process p {margin:7px 0 0; color:#8793a2; font-size:10px; line-height:1.55;}

/* =========================================================
   LIST PAGE HERO
   ========================================================= */

.kcc_list_hero {overflow:hidden; border-bottom:1px solid var(--kcc-line); background:linear-gradient(135deg,#f4f8fc,#e7f1fb);}
.kcc_list_hero.kcc_tone_teal {background:linear-gradient(135deg,#f1faf8,#dceeea);}
.kcc_list_hero.kcc_tone_amber {background:linear-gradient(135deg,#fffaf0,#f6e6c5);}
.kcc_list_hero.kcc_tone_violet {background:linear-gradient(135deg,#f7f4ff,#e7e0f8);}
.kcc_list_hero.kcc_tone_slate {background:linear-gradient(135deg,#f6f9fb,#e1e9ef);}
.kcc_list_hero_inner {display:grid; grid-template-columns:1fr 440px; align-items:center; min-height:360px; gap:50px;}
.kcc_list_hero_copy {padding:52px 0;}
.kcc_breadcrumb {display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:30px; color:#8593a4; font-size:11px;}
.kcc_breadcrumb a:hover {color:var(--kcc-blue);}
.kcc_breadcrumb strong {color:#526175; font-weight:650;}
.kcc_list_hero_eyebrow {display:block; color:var(--kcc-blue); font-size:10px; font-weight:850; letter-spacing:.13em;}
.kcc_list_hero h1 {margin:10px 0 0; color:var(--kcc-ink); font-size:43px; line-height:1.2; letter-spacing:-.06em;}
.kcc_list_hero_copy > p {margin:17px 0 0; color:#68788c; font-size:14px; line-height:1.75;}
.kcc_list_hero_summary {display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:24px;}
.kcc_list_hero_summary span {padding:8px 12px; border:1px solid rgba(30,100,183,.14); border-radius:999px; background:rgba(255,255,255,.6); color:#617186; font-size:10px;}
.kcc_list_hero_summary strong {color:var(--kcc-blue);}
.kcc_list_hero_image {align-self:stretch; display:flex; align-items:center; justify-content:center; padding:20px 0;}
.kcc_list_hero_image img {width:100%; height:310px; object-fit:contain; filter:drop-shadow(0 20px 28px rgba(16,50,84,.12));}

.kcc_list_subnav {border-bottom:1px solid var(--kcc-line); background:#fff;}
.kcc_list_subnav_scroll {display:flex; align-items:center; min-height:72px; gap:8px; overflow-x:auto; scrollbar-width:none;}
.kcc_list_subnav_scroll::-webkit-scrollbar {display:none;}
.kcc_list_subnav a {display:flex; align-items:center; justify-content:center; flex:0 0 auto; min-width:92px; height:40px; padding:0 18px; border:1px solid var(--kcc-line); border-radius:999px; color:#607086; font-size:12px; font-weight:650; transition:.2s ease;}
.kcc_list_subnav a:hover,
.kcc_list_subnav a.is_active {border-color:var(--kcc-blue); background:var(--kcc-blue); color:#fff;}

/* =========================================================
   LIST LAYOUT / FILTER
   ========================================================= */

.kcc_list_body {padding:55px 0 105px; background:#fff;}
.kcc_list_layout {display:grid; grid-template-columns:245px minmax(0,1fr); align-items:start; gap:38px;}
.kcc_filter {position:sticky; top:20px; border-top:2px solid var(--kcc-ink);}
.kcc_filter_form {margin:0;}
.kcc_filter_mobile_head {display:none;}
.kcc_filter_block {padding:24px 0; border-bottom:1px solid var(--kcc-line);}
.kcc_filter_title {display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:15px;}
.kcc_filter_title strong {color:var(--kcc-ink); font-size:14px;}
.kcc_filter_title > span {display:flex; align-items:center; justify-content:center; min-width:22px; height:22px; padding:0 6px; border-radius:11px; background:#edf3fa; color:var(--kcc-blue); font-size:9px; font-weight:800;}
.kcc_filter_category {display:flex; flex-direction:column; gap:3px;}
.kcc_filter_category a {display:flex; align-items:center; justify-content:space-between; min-height:38px; padding:0 11px; border-radius:8px; color:#68778a; font-size:12px; transition:.2s ease;}
.kcc_filter_category a b {opacity:0; color:var(--kcc-blue); font-size:14px; transition:.2s ease;}
.kcc_filter_category a:hover,
.kcc_filter_category a.is_active {background:#eef5fd; color:var(--kcc-blue); font-weight:700;}
.kcc_filter_category a:hover b,
.kcc_filter_category a.is_active b {opacity:1;}
.kcc_filter_keyword {display:flex; height:43px; overflow:hidden; border:1px solid #cbd5e0; border-radius:9px; background:#fff;}
.kcc_filter_keyword:focus-within {border-color:var(--kcc-blue); box-shadow:0 0 0 3px rgba(30,100,183,.07);}
.kcc_filter_keyword input {flex:1; min-width:0; padding:0 12px; border:0; outline:0; font-size:11px;}
.kcc_filter_keyword button {display:flex; align-items:center; justify-content:center; width:42px; border:0; background:#fff; color:var(--kcc-blue);}
.kcc_filter_keyword svg {width:18px; height:18px;}
.kcc_filter_price {display:grid; grid-template-columns:1fr 14px 1fr; align-items:end; gap:6px;}
.kcc_filter_price label {min-width:0;}
.kcc_filter_price label span {display:block; margin-bottom:6px; color:#8a96a4; font-size:9px;}
.kcc_filter_price input {width:100%; height:39px; padding:0 8px; border:1px solid #d1dae4; border-radius:8px; outline:0; font-size:10px;}
.kcc_filter_price i {padding-bottom:10px; color:#8d99a7; font-style:normal; text-align:center;}
.kcc_filter_submit {width:100%; height:42px; margin-top:10px; border:0; border-radius:9px; background:var(--kcc-navy); color:#fff; font-size:11px; font-weight:700;}
.kcc_filter_login {padding:15px; border-radius:10px; background:#f0f5fb;}
.kcc_filter_login span {display:block; color:#718094; font-size:10px; line-height:1.6;}
.kcc_filter_login a {display:inline-block; margin-top:9px; color:var(--kcc-blue); font-size:11px; font-weight:750;}
.kcc_filter_help {margin-top:24px; padding:23px; border-radius:18px; background:linear-gradient(145deg,var(--kcc-navy),#154986); color:#fff;}
.kcc_filter_help > span {color:#8acbff; font-size:8px; font-weight:850; letter-spacing:.11em;}
.kcc_filter_help strong {display:block; margin-top:11px; font-size:18px; line-height:1.45; letter-spacing:-.035em;}
.kcc_filter_help p {margin:12px 0 0; color:rgba(255,255,255,.65); font-size:10px; line-height:1.65;}
.kcc_filter_dim {display:none;}

.kcc_list_products {min-width:0;}
.kcc_list_products #sct {margin:0; padding:0;}
.kcc_list_products #sct_location {display:none;}
.kcc_list_products #sct_sortlst {margin-top:16px;}
.kcc_list_products .shop-option-filter {margin-top:18px;}
.kcc_list_products_skin {min-width:0;}
.kcc_list_toolbar {display:flex; align-items:center; justify-content:space-between; min-height:62px; padding-bottom:18px; border-bottom:1px solid var(--kcc-ink);}
.kcc_list_count {display:flex; align-items:baseline; gap:5px; color:#7c899a; font-size:12px;}
.kcc_list_count strong {color:var(--kcc-blue); font-size:20px;}
.kcc_list_count em {font-style:normal;}
.kcc_list_toolbar_actions {display:flex; align-items:center; gap:9px;}
.kcc_filter_open {display:none;}
.kcc_sort_form select {height:40px; min-width:126px; padding:0 34px 0 12px; border:1px solid #ccd5df; border-radius:9px; background:#fff; color:#526175; font-size:11px; outline:0;}
.kcc_active_filter {display:flex; align-items:center; gap:9px; margin-top:16px; padding:12px 15px; border-radius:10px; background:#eef5fd; color:#718095; font-size:10px;}
.kcc_active_filter strong {color:var(--kcc-blue); font-size:11px;}
.kcc_active_filter a {display:flex; align-items:center; justify-content:center; width:19px; height:19px; margin-left:auto; border-radius:50%; background:#fff; color:#6c7a8c;}

/* =========================================================
   LIST PRODUCT CARDS
   ========================================================= */

.kcc_list_product_grid {display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:22px;}
.kcc_list_product_card {overflow:hidden; border:1px solid var(--kcc-line); border-radius:20px; background:#fff; transition:.25s ease;}
.kcc_list_product_card:hover {transform:translateY(-5px); border-color:#b8c9db; box-shadow:var(--kcc-shadow-soft);}
.kcc_list_product_image {position:relative; display:flex; align-items:center; justify-content:center; height:270px; overflow:hidden; background:#f3f6f9;}
.kcc_list_product_image img {width:100%; height:100%; object-fit:contain; transition:transform .3s ease;}
.kcc_list_product_card:hover .kcc_list_product_image img {transform:scale(1.055);}
.kcc_list_product_badges {position:absolute; left:15px; top:15px; display:flex; gap:5px;}
.kcc_list_product_badges em {padding:6px 9px; border-radius:999px; background:var(--kcc-blue); color:#fff; font-size:9px; font-style:normal; font-weight:750;}
.kcc_list_product_badges em.is_soldout {background:#5f6b78;}
.kcc_list_product_hover {
    position:absolute;
    left:50%;
    bottom:17px;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:84px;
    height:34px;
    opacity:0;
    transform:translate(-50%,10px);
    border-radius:999px;
    background:rgba(11,40,84,.9);
    color:#fff;
    font-size:10px;
    font-weight:700;
    transition:.25s ease;
}
.kcc_list_product_card:hover .kcc_list_product_hover {opacity:1; transform:translate(-50%,0);}
.kcc_list_product_body {padding:21px;}
.kcc_list_product_card h2 {height:48px; overflow:hidden; font-size:17px; line-height:1.45;}
.kcc_list_product_desc {height:38px; margin:9px 0 0; overflow:hidden; color:#8491a1; font-size:10px; line-height:1.65;}
.kcc_list_product_info {display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-top:14px;}
.kcc_list_product_info span {padding:5px 8px; border-radius:6px; background:#f2f5f8; color:#7b8795; font-size:9px;}
.kcc_list_product_bottom {display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-top:18px; padding-top:17px; border-top:1px solid var(--kcc-line-soft);}
.kcc_list_product_bottom .kcc_product_price strong {font-size:19px;}
.kcc_list_product_link {display:flex; align-items:center; gap:7px; color:#66758a; font-size:10px; font-weight:700;}
.kcc_list_product_link span {color:var(--kcc-blue); font-size:16px;}
.kcc_list_product_link:hover {color:var(--kcc-blue);}
.kcc_list_empty {padding:80px 20px; text-align:center;}
.kcc_list_empty img {width:240px; max-height:180px; object-fit:contain; opacity:.7;}
.kcc_list_empty strong {display:block; margin-top:18px; color:var(--kcc-ink); font-size:20px;}
.kcc_list_empty p {margin:8px 0 0; color:#8793a2; font-size:12px;}
.kcc_list_empty a {display:inline-flex; align-items:center; justify-content:center; height:42px; margin-top:20px; padding:0 20px; border-radius:9px; background:var(--kcc-blue); color:#fff; font-size:11px; font-weight:700;}

.kcc_paging {margin-top:42px; text-align:center;}
.kcc_paging .pg_wrap {display:inline-block;}
.kcc_paging .pg {display:flex; align-items:center; justify-content:center; gap:6px;}
.kcc_paging .pg_page,
.kcc_paging .pg_current {
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    height:38px;
    padding:0 9px;
    border:1px solid var(--kcc-line);
    border-radius:9px;
    background:#fff;
    color:#657387;
    font-size:11px;
}
.kcc_paging .pg_current {border-color:var(--kcc-blue); background:var(--kcc-blue); color:#fff;}
.kcc_paging .pg_page:hover {border-color:var(--kcc-blue); color:var(--kcc-blue);}

/* =========================================================
   FOOTER
   ========================================================= */

.kcc_footer {background:#fff;}
.kcc_footer_support {background:linear-gradient(135deg,#0a2753,#154a8d); color:#fff;}
.kcc_footer_support_inner {display:flex; align-items:center; justify-content:space-between; gap:40px; min-height:190px; padding-top:36px; padding-bottom:36px;}
.kcc_footer_support_inner > div:first-child > span {display:block; color:#86c9ff; font-size:10px; font-weight:850; letter-spacing:.13em;}
.kcc_footer_support_inner > div:first-child > strong {display:block; margin-top:13px; font-size:28px; line-height:1.45; letter-spacing:-.045em;}
.kcc_footer_support_actions {display:flex; gap:10px;}
.kcc_footer_support_actions a {display:flex; align-items:center; justify-content:center; min-width:138px; height:48px; padding:0 20px; border-radius:11px; font-size:12px; font-weight:750;}
.kcc_footer_support_primary {background:#fff; color:var(--kcc-navy) !important;}
.kcc_footer_support_secondary {border:1px solid rgba(255,255,255,.38); color:#fff !important;}
.kcc_footer_links {border-bottom:1px solid var(--kcc-line);}
.kcc_footer_links_inner {display:flex; align-items:center; justify-content:space-between; min-height:60px;}
.kcc_footer_links nav {display:flex; flex-wrap:wrap; gap:25px;}
.kcc_footer_links nav a {color:#657488; font-size:11px;}
.kcc_footer_links nav strong {color:var(--kcc-ink);}
.kcc_footer_top {color:var(--kcc-blue); font-size:10px; font-weight:800;}
.kcc_footer_top span {margin-left:5px; font-size:14px;}
.kcc_footer_main {display:grid; grid-template-columns:1.05fr 1.4fr 1fr; gap:60px; padding-top:46px; padding-bottom:56px;}
.kcc_footer_brand_logo .kcc_brand_symbol {width:46px; height:46px;}
.kcc_footer_brand_logo .kcc_brand_copy strong {font-size:15px;}
.kcc_footer_brand > p {margin:20px 0 0; color:#7d8998; font-size:11px; line-height:1.8;}
.kcc_footer_company {font-size:11px; line-height:1.85;}
.kcc_footer_company > strong {display:block; margin-bottom:8px; color:var(--kcc-ink); font-size:13px;}
.kcc_footer_company p {margin:0 0 2px; color:#748193;}
.kcc_footer_company .kcc_footer_copyright {margin-top:13px; color:#9aa4b0;}
.kcc_footer_status {padding-left:30px; border-left:1px solid var(--kcc-line);}
.kcc_footer_status > span {display:block; color:var(--kcc-blue); font-size:9px; font-weight:850; letter-spacing:.12em;}
.kcc_footer_status ol {display:flex; flex-wrap:wrap; gap:6px; margin:12px 0 0; padding:0; list-style:none;}
.kcc_footer_status li {padding:6px 8px; border-radius:6px; background:#f0f4f8; color:#617084; font-size:9px;}
.kcc_footer_status small {display:block; margin-top:12px; color:#929ca8; font-size:9px; line-height:1.65;}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width:1280px) {
    .kcc_header_primary_inner {gap:26px;}
    .kcc_brand_copy {min-width:215px;}
    .kcc_primary_nav_item > a {padding:0 12px;}
    .kcc_secondary_nav a {padding:0 9px;}
    .kcc_home_hero_inner {grid-template-columns:minmax(0,1fr) minmax(470px,.92fr); gap:20px;}
    .kcc_home_hero h1 {font-size:45px;}
    .kcc_home_hero_visual > img {right:-45px;}
    .kcc_featured_grid {grid-template-columns:1.35fr repeat(3,1fr);}
    .kcc_product_grid {gap:12px;}
    .kcc_list_product_grid {grid-template-columns:repeat(3,1fr);}
}

@media (max-width:1080px) {
    .kcc_container {width:min(100% - 40px, 1180px);}
    .kcc_header_notice {display:none;}
    .kcc_header_primary_inner {min-height:78px;}
    .kcc_brand_symbol {width:45px; height:45px;}
    .kcc_brand_copy {min-width:0;}
    .kcc_brand_copy strong {font-size:15px;}
    .kcc_brand_copy small {font-size:8px;}
    .kcc_header_search {max-width:none;}
    .kcc_header_actions {display:none;}
    .kcc_primary_nav_item:nth-child(n+5) {display:none;}
    .kcc_secondary_nav a {display:none;}
    .kcc_mega_menu_inner {grid-template-columns:220px 1fr; gap:30px;}
    .kcc_mega_grid {grid-template-columns:repeat(2,1fr);}

    .kcc_home_hero_inner {grid-template-columns:1fr 440px; min-height:600px;}
    .kcc_home_hero h1 {font-size:40px;}
    .kcc_home_hero_copy > p {font-size:15px;}
    .kcc_home_hero_visual {min-height:520px;}
    .kcc_home_hero_float {display:none;}
    .kcc_category_showcase {gap:14px;}
    .kcc_category_showcase_card {min-height:255px; padding:25px;}
    .kcc_category_showcase_copy strong {font-size:21px;}
    .kcc_featured_grid {grid-template-columns:repeat(2,1fr);}
    .kcc_featured_card.is_primary {grid-row:span 2;}
    .kcc_product_grid {grid-template-columns:repeat(3,1fr);}
    .kcc_value_grid {grid-template-columns:1fr 1fr;}
    .kcc_value_grid article:nth-child(2) {border-right:0;}
    .kcc_value_grid article:nth-child(-n+2) {border-bottom:1px solid var(--kcc-line);}
    .kcc_home_bottom_grid {grid-template-columns:1fr;}

    .kcc_list_hero_inner {grid-template-columns:1fr 350px;}
    .kcc_list_layout {grid-template-columns:220px minmax(0,1fr); gap:26px;}
    .kcc_list_product_grid {grid-template-columns:repeat(2,1fr);}
    .kcc_footer_main {grid-template-columns:1fr 1.4fr;}
    .kcc_footer_status {grid-column:1 / -1; padding:24px 0 0; border-top:1px solid var(--kcc-line); border-left:0;}
}

@media (max-width:820px) {
    .kcc_container {width:calc(100% - 32px);}
    .kcc_header_primary_inner {min-height:70px; gap:14px;}
    .kcc_brand_symbol {width:42px; height:42px;}
    .kcc_brand_copy strong {font-size:13px;}
    .kcc_brand_copy small {display:none;}
    .kcc_header_search {display:none;}
    .kcc_mobile_toggle {
        display:flex;
        align-items:center;
        justify-content:center;
        flex-direction:column;
        width:42px;
        height:42px;
        margin-left:auto;
        gap:5px;
        border:1px solid #d6dee7;
        border-radius:10px;
        background:#fff;
    }
    .kcc_mobile_toggle span {display:block; width:19px; height:2px; border-radius:2px; background:var(--kcc-navy);}
    .kcc_header_navbar {display:none;}
    .kcc_mega_menu {display:none !important;}
    .kcc_mobile_dim {
        position:fixed;
        inset:0;
        z-index:1990;
        /*display:block;*/
        opacity:0;
        border:0;
        background:rgba(4,19,39,.52);
        transition:.22s ease;
    }
    .kcc_mobile_dim.is-open {opacity:1;}
    .kcc_mobile_panel {
        position:fixed;
        right:0;
        top:0;
        bottom:0;
        z-index:2000;
        display:block;
        width:min(390px, 90vw);
        overflow-y:auto;
        transform:translateX(100%);
        background:#fff;
        box-shadow:-20px 0 50px rgba(10,33,61,.18);
        transition:.22s ease;
    }
    .kcc_mobile_panel.is-open {transform:translateX(0);}
    .kcc_mobile_panel_head {display:flex; align-items:center; justify-content:space-between; min-height:70px; padding:0 22px; border-bottom:1px solid var(--kcc-line);}
    .kcc_mobile_panel_head strong {color:var(--kcc-ink); font-size:17px;}
    .kcc_mobile_panel_head button {width:38px; height:38px; border:0; background:transparent; color:#6d7989; font-size:28px;}
    .kcc_mobile_search {display:flex; height:45px; margin:18px 20px; overflow:hidden; border:1px solid #ccd6e1; border-radius:10px;}
    .kcc_mobile_search input {flex:1; min-width:0; padding:0 13px; border:0; outline:0; font-size:12px;}
    .kcc_mobile_search button {width:62px; border:0; background:var(--kcc-blue); color:#fff; font-size:11px; font-weight:700;}
    .kcc_mobile_categories {border-top:1px solid var(--kcc-line-soft);}
    .kcc_mobile_categories details {border-bottom:1px solid var(--kcc-line-soft);}
    .kcc_mobile_categories summary {display:flex; align-items:center; justify-content:space-between; min-height:54px; padding:0 22px; color:var(--kcc-ink); font-size:14px; font-weight:700; list-style:none; cursor:pointer;}
    .kcc_mobile_categories summary::-webkit-details-marker {display:none;}
    .kcc_mobile_categories summary i {position:relative; width:14px; height:14px;}
    .kcc_mobile_categories summary i::before,
    .kcc_mobile_categories summary i::after {content:""; position:absolute; left:2px; top:6px; width:10px; height:1px; background:#8a96a4;}
    .kcc_mobile_categories summary i::after {transform:rotate(90deg); transition:.2s ease;}
    .kcc_mobile_categories details[open] summary i::after {transform:rotate(0);}
    .kcc_mobile_categories details > div {padding:5px 22px 15px; background:#f7f9fb;}
    .kcc_mobile_categories details > div a {display:block; padding:9px 0; color:#657489; font-size:12px;}
    .kcc_mobile_option_title {display:block; margin-top:6px; padding:12px 0 7px; border-top:1px dashed #d6dee7; color:var(--kcc-ink); font-size:11px; font-weight:750;}
    .kcc_mobile_categories details > div .kcc_mobile_option_link {display:inline-flex; align-items:center; justify-content:center; min-width:65px; margin:3px 5px 3px 0; padding:8px 11px; border:1px solid #d7e0e9; border-radius:8px; background:#fff;}
    .kcc_mobile_categories details > div .kcc_mobile_option_link.is_active {border-color:var(--kcc-blue); background:var(--kcc-blue); color:#fff;}
    .kcc_mobile_quick {display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:20px;}
    .kcc_mobile_quick a {display:flex; align-items:center; justify-content:center; height:42px; border:1px solid var(--kcc-line); border-radius:9px; color:#58687c; font-size:11px; font-weight:650;}

    .kcc_home_hero_inner {display:block; min-height:auto;}
    .kcc_home_hero_copy {padding:64px 0 32px; text-align:center;}
    .kcc_home_hero h1 {font-size:38px;}
    .kcc_home_hero_copy > p br {display:none;}
    .kcc_home_hero_actions {justify-content:center;}
    .kcc_home_hero_stats {justify-content:center;}
    .kcc_home_hero_visual {min-height:410px;}
    .kcc_home_hero_visual > img {left:50%; right:auto; bottom:-25px; width:620px; transform:translateX(-50%);}
    .kcc_home_hero_visual_glow {left:50%; right:auto; top:40px; width:330px; height:330px; transform:translateX(-50%);}
    .kcc_section_heading {align-items:flex-start; flex-direction:column; gap:14px;}
    .kcc_section_heading > p {text-align:left;}
    .kcc_section_heading h2 {font-size:30px;}
    .kcc_home_category,
    .kcc_home_new {padding:78px 0 84px;}
    .kcc_category_showcase {grid-template-columns:1fr 1fr;}
    .kcc_featured_grid {grid-template-columns:1fr 1fr;}
    .kcc_featured_card.is_primary {grid-row:auto;}
    .kcc_story_grid {grid-template-columns:1fr;}
    .kcc_story_card {min-height:320px;}
    .kcc_product_grid {grid-template-columns:repeat(2,1fr);}
    .kcc_order_process {grid-template-columns:repeat(5,minmax(120px,1fr)); overflow-x:auto; padding-bottom:8px;}
    .kcc_order_process li {min-height:140px;}

    .kcc_list_hero_inner {grid-template-columns:1fr 280px; min-height:320px;}
    .kcc_list_hero h1 {font-size:36px;}
    .kcc_list_hero_image img {height:250px;}
    .kcc_list_layout {display:block;}
    .kcc_filter {
        position:fixed;
        left:0;
        top:0;
        bottom:0;
        z-index:2200;
        width:min(340px,88vw);
        overflow-y:auto;
        padding:0 22px 30px;
        transform:translateX(-100%);
        border-top:0;
        background:#fff;
        box-shadow:20px 0 50px rgba(10,33,61,.18);
        transition:.22s ease;
    }
    .kcc_filter.is-open {transform:translateX(0);}
    .kcc_filter_mobile_head {display:flex; align-items:center; justify-content:space-between; min-height:68px; margin:0 -22px; padding:0 22px; border-bottom:1px solid var(--kcc-line);}
    .kcc_filter_mobile_head strong {color:var(--kcc-ink); font-size:16px;}
    .kcc_filter_mobile_head button {width:38px; height:38px; border:0; background:transparent; color:#6d7989; font-size:28px;}
    .kcc_filter_dim {position:fixed; inset:0; z-index:2100; /*display:block;*/ opacity:0; border:0; background:rgba(4,19,39,.52); transition:.22s ease;}
    .kcc_filter_dim.is-open {opacity:1;}
    .kcc_filter_open {display:flex; align-items:center; justify-content:center; gap:6px; height:40px; padding:0 12px; border:1px solid #ccd5df; border-radius:9px; background:#fff; color:#526175; font-size:11px;}
    .kcc_filter_open svg {width:17px; height:17px;}

    .kcc_footer_support_inner {align-items:flex-start; flex-direction:column; min-height:0; padding-top:44px; padding-bottom:44px;}
    .kcc_footer_main {grid-template-columns:1fr; gap:28px;}
    .kcc_footer_status {grid-column:auto;}
}

@media (max-width:560px) {
    .kcc_container {width:calc(100% - 26px);}
    .kcc_brand_copy strong {max-width:195px; font-size:12px;}
    .kcc_home_hero_copy {padding-top:50px;}
    .kcc_home_hero_badge {font-size:9px;}
    .kcc_home_hero h1 {font-size:31px; line-height:1.28;}
    .kcc_home_hero_copy > p {font-size:13px;}
    .kcc_home_hero_actions a {min-width:0; flex:1; height:48px; padding:0 14px; font-size:12px;}
    .kcc_home_hero_stats > div {min-width:0; flex:1; padding-right:12px; margin-right:12px;}
    .kcc_home_hero_stats strong {font-size:16px;}
    .kcc_home_hero_stats span {font-size:9px;}
    .kcc_home_hero_visual {min-height:330px;}
    .kcc_home_hero_visual > img {width:500px;}
    .kcc_section_heading h2 {font-size:25px;}
    .kcc_section_heading > p {font-size:12px;}
    .kcc_category_showcase {grid-template-columns:1fr;}
    .kcc_category_showcase_card {min-height:230px;}
    .kcc_category_showcase_copy {max-width:60%;}
    .kcc_home_featured {padding:76px 0 82px;}
    .kcc_featured_head {align-items:flex-start; flex-direction:column;}
    .kcc_featured_head h2 {font-size:27px;}
    .kcc_featured_grid {grid-template-columns:1fr;}
    .kcc_featured_card_image,
    .kcc_featured_card.is_primary .kcc_featured_card_image {height:260px;}
    .kcc_story_card {min-height:300px; padding:34px;}
    .kcc_story_copy {max-width:60%;}
    .kcc_story_copy h2 {font-size:28px;}
    .kcc_product_grid {grid-template-columns:1fr 1fr; gap:10px;}
    .kcc_product_card_image {height:175px;}
    .kcc_product_card_body {padding:15px;}
    .kcc_product_card h3 {height:41px; font-size:14px;}
    .kcc_product_card .kcc_product_price strong {font-size:16px;}
    .kcc_value_grid {grid-template-columns:1fr;}
    .kcc_value_grid article {border-right:0; border-bottom:1px solid var(--kcc-line);}
    .kcc_value_grid article:last-child {border-bottom:0;}
    .kcc_home_bottom {padding:72px 0 80px;}
    .kcc_notice_panel,
    .kcc_process_panel {padding:25px 20px;}
    .kcc_panel_heading {align-items:flex-start; flex-direction:column;}

    .kcc_list_hero_inner {display:block; min-height:0;}
    .kcc_list_hero_copy {padding:36px 0 8px; text-align:center;}
    .kcc_breadcrumb {justify-content:center; margin-bottom:20px;}
    .kcc_list_hero h1 {font-size:31px;}
    .kcc_list_hero_copy > p {font-size:12px;}
    .kcc_list_hero-summary {justify-content:center;}
    .kcc_list_hero-image {height:210px; padding:0;}
    .kcc_list_hero-image img {height:220px;}
    .kcc_list_subnav_scroll {min-height:64px;}
    .kcc_list_subnav a {min-width:78px; height:37px; padding:0 14px; font-size:11px;}
    .kcc_list_body {padding-top:35px;}
    .kcc_list_toolbar {align-items:flex-start; gap:15px;}
    .kcc_list_toolbar_actions {margin-left:auto;}
    .kcc_sort_form select {min-width:110px;}
    .kcc_list_product_grid {grid-template-columns:1fr 1fr; gap:10px;}
    .kcc_list_product_image {height:180px;}
    .kcc_list_product_body {padding:14px;}
    .kcc_list_product_card h2 {height:42px; font-size:14px;}
    .kcc_list_product_desc {display:none;}
    .kcc_list_product_info {gap:4px;}
    .kcc_list_product_info span {font-size:8px;}
    .kcc_list_product_bottom {align-items:flex-start; flex-direction:column; gap:8px;}
    .kcc_list_product_link {display:none;}
    .kcc_footer_support_inner > div:first-child > strong {font-size:23px;}
    .kcc_footer_support_actions {width:100%;}
    .kcc_footer_support_actions a {flex:1; min-width:0; padding:0 12px;}
    .kcc_footer_links_inner {align-items:flex-start; flex-direction:column; gap:15px; padding-top:18px; padding-bottom:18px;}
    .kcc_footer_links nav {gap:12px 18px;}
}


.kcc_brand_image {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.kcc_brand_image img {
    display: block;
    width: auto;
    max-width: 280px;
    max-height: 70px;
    height: auto;
}

@media (max-width: 768px) {
    .kcc_brand_image img {
        max-width: 210px;
        max-height: 55px;
    }
}


.kcc_footer_company a {
    color: inherit;
    text-decoration: none;
}

.kcc_footer_company a:hover {
    text-decoration: underline;
}

.kcc_footer_divider {
    display: inline-block;
    margin: 0 7px;
}

@media (max-width: 768px) {
    .kcc_footer_company p {
        line-height: 1.8;
    }

    .kcc_footer_divider {
        margin: 0 4px;
    }
}

.kcc_help_content > p {
    margin: 0 0 25px;
    color: #667085;
    font-size: 14px;
    line-height: 1.8;
}

.kcc_help_content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.kcc_help_content li {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 13px 0;
    border-bottom: 1px solid #e8edf3;
}

.kcc_help_content li strong {
    flex: 0 0 85px;
    color: #0d2340;
}

.kcc_help_content li span,
.kcc_help_content li a {
    color: #667085;
    text-decoration: none;
}

.kcc_help_buttons {
    display: flex;
    gap: 10px;
    margin-top: 25px;
}

.kcc_help_buttons a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 0 22px;
    border: 1px solid #d7e0eb;
    border-radius: 8px;
    color: #0d2340;
    font-weight: 600;
    text-decoration: none;
}

.kcc_help_buttons a:first-child {
    background: #075ec8;
    border-color: #075ec8;
    color: #fff;
}

@media (max-width: 768px) {
    .kcc_help_content li {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .kcc_help_content li strong {
        flex: none;
    }

    .kcc_help_buttons {
        flex-direction: column;
    }

    .kcc_help_buttons a {
        width: 100%;
    }
}

/* =========================================================
   SHOP ITEM DETAIL - RESPONSIVE WIDTH / FIXED BUY PANEL
   ========================================================= */
.kcc_item_page,
.kcc_item_container,
.kcc_item_page #sit,
.kcc_item_page #sit_info,
.kcc_item_page #sit_tab,
.kcc_item_page .tab_con,
.kcc_item_page .tab_con > li,
.kcc_item_page #sit_inf,
.kcc_item_page #sit_inf_explan {
    min-width: 0;
    max-width: 100%;
}

.kcc_item_page #sit_inf_explan {
    width: 100% !important;
    overflow-x: hidden;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* 상품설명에 입력된 고정 폭 요소가 화면 밖으로 나가지 않도록 제한 */
.kcc_item_page #sit_inf_explan *,
.kcc_item_page #sit_inf_open,
.kcc_item_page #sit_dvr *,
.kcc_item_page #sit_ex * {
    max-width: 100% !important;
    box-sizing: border-box;
}

.kcc_item_page #sit_inf_explan img,
.kcc_item_page #sit_inf_explan video,
.kcc_item_page #sit_dvr img,
.kcc_item_page #sit_ex img {
    height: auto !important;
}

.kcc_item_page #sit_inf_explan iframe,
.kcc_item_page #sit_inf_explan embed,
.kcc_item_page #sit_inf_explan object {
    width: 100% !important;
}

.kcc_item_page #sit_inf_explan table,
.kcc_item_page #sit_inf_open {
    width: 100% !important;
    table-layout: fixed;
}

.kcc_item_page #sit_inf_explan th,
.kcc_item_page #sit_inf_explan td,
.kcc_item_page #sit_inf_open th,
.kcc_item_page #sit_inf_open td {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.kcc_item_page #sit_inf_explan pre {
    max-width: 100%;
    overflow-x: auto;
    white-space: pre-wrap;
}

@media (max-width: 820px) {
    /* 고정 구매영역에 본문 마지막 부분이 가려지지 않도록 여백 확보 */
    .kcc_item_page {
        padding-bottom: calc(96px + env(safe-area-inset-bottom));
    }

    .kcc_item_page #sit_buy,
    .kcc_item_page #sit_buy.fix {
        display: block !important;
        position: fixed !important;
        top: auto !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        z-index: 3000;
        width: 100% !important;
        max-width: none !important;
        height: auto !important;
        max-height: min(55vh, 460px);
        margin: 0 !important;
        overflow-x: hidden;
        overflow-y: auto;
        border: 0 !important;
        border-top: 1px solid #dce4ed !important;
        background: #fff;
        box-shadow: 0 -10px 28px rgba(11, 40, 84, .14);
        -webkit-overflow-scrolling: touch;
    }

    .kcc_item_page #sit_buy .sit_buy_inner {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 12px 13px calc(12px + env(safe-area-inset-bottom)) !important;
        box-sizing: border-box;
    }

    .kcc_item_page #sit_buy .sit_order_btn {
        display: flex;
        width: 100%;
        gap: 8px;
    }

    .kcc_item_page #sit_buy .sit_order_btn button {
        flex: 1 1 0;
        min-width: 0;
    }
}
