        @font-face {
            font-family: 'NanumMyeongjo';
            font-style: normal;
            font-weight: 400;
            font-display: swap;
            src: url(/data/fonts/NanumMyeongjoRegular.woff2) format('woff2')
        }


        @font-face {
            font-family: 'NanumMyeongjo';
            font-style: normal;
            font-weight: 700;
            font-display: swap;
            src: url(/data/fonts/NanumMyeongjoBold.woff2) format('woff2')
        }


        @font-face {
            font-family: 'NanumGothic';
            font-style: normal;
            font-weight: 400;
            font-display: swap;
            src: url(/data/fonts/NanumGothicRegular.woff2) format('woff2')
        }


        @font-face {
            font-family: 'NanumGothic';
            font-style: normal;
            font-weight: 700;
            font-display: swap;
            src: url(/data/fonts/NanumGothicBold.woff2) format('woff2')
        }



        :root {
            --mook: #191510;
            --mook-2: #221d15;
            --ivory: #f9f5ec;
            --ivory-deep: #f0e9da;
            --card: #fffdf7;
            --ink: #28231b;
            --ink-soft: #6e6557;
            --gold: #c9a24b;
            --gold-deep: #a8853c;
            --dan: #b82647;
            --line: #e3d9c4;
            --line-dark: rgba(201, 162, 75, .28);
            --serif: 'NanumMyeongjo', serif;
            --sans: 'NanumGothic', sans-serif;
        }


        .ckp * {
            margin: 0;
            padding: 0;
            box-sizing: border-box
        }


        html {
            scroll-behavior: smooth
        }


        .ckp {
            background: var(--ivory);
            color: var(--ink);
            font-family: var(--sans);
            font-size: 15px;
            line-height: 1.7;
            -webkit-font-smoothing: antialiased
        }


        .ckp img {
            max-width: 100%;
            height: auto;
            display: block
        }


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


        .ckp .wrap {
            max-width: 1140px;
            margin: 0 auto;
            padding: 0 20px;
            position: relative;
            z-index: 2
        }



        /* 금박 디바이더 */
        .ckp .gold-rule {
            height: 1px;
            background: linear-gradient(90deg, transparent, var(--gold) 18%, #e8cf8e 50%, var(--gold) 82%, transparent)
        }



        /* ───────── 헤더 + 칩 내비 ───────── */
        

        

        

        

        

        .ckp .chip-nav {
            position: sticky;
            top: 0;
            z-index: 50;
            background: rgba(25, 21, 16, .94);
            backdrop-filter: blur(8px);
            border-bottom: 1px solid var(--line-dark)
        }


        .ckp .chip-nav .wrap {
            display: flex;
            gap: 4px;
            overflow-x: auto;
            scrollbar-width: none;
            padding: 0 14px
        }


        .ckp .chip-nav .wrap::-webkit-scrollbar {
            display: none
        }


        .ckp .chip-nav a {
            flex: 0 0 auto;
            font-size: 13px;
            color: rgba(249, 245, 236, .62);
            padding: 11px 10px;
            border-bottom: 2px solid transparent;
            letter-spacing: .02em
        }


        .ckp .chip-nav a.on,
        .ckp .chip-nav a:hover {
            color: var(--gold);
            border-bottom-color: var(--gold)
        }



        /* ───────── 히어로 (먹 — 크로스페이드) ───────── */
        .ckp .hero {
            position: relative;
            background: var(--mook);
            color: var(--ivory);
            overflow: hidden;
            text-align: center;
            padding: 78px 0 96px
        }


        .ckp .hero-bg {
            position: absolute;
            inset: 0;
            z-index: 0
        }


        .ckp .hero-bg div {
            position: absolute;
            inset: -4%;
            background-size: cover;
            background-position: center;
            opacity: 0;
            transform: scale(1);
            transition: opacity 2.4s ease;
        }


        .ckp .hero-bg div.show {
            opacity: .34;
            animation: kenburns 9s ease-out forwards
        }


        @keyframes kenburns {
            from {
                transform: scale(1)
            }

            to {
                transform: scale(1.07)
            }
        }


        .ckp .hero::after {
            content: '';
            position: absolute;
            inset: 0;
            z-index: 1;
            background: linear-gradient(180deg, rgba(25, 21, 16, .55) 0%, rgba(25, 21, 16, .28) 45%, rgba(25, 21, 16, .86) 100%)
        }


        .ckp .hero-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 14px;
            font-size: 11px;
            letter-spacing: .34em;
            color: var(--gold);
            font-weight: 700
        }


        .ckp .hero-eyebrow::before,
        .ckp .hero-eyebrow::after {
            content: '';
            height: 1px;
            width: 44px;
            background: linear-gradient(90deg, transparent, var(--gold))
        }


        .ckp .hero-eyebrow::after {
            background: linear-gradient(90deg, var(--gold), transparent)
        }


        .ckp .hero h1 {
            font-family: var(--serif);
            font-weight: 700;
            font-size: clamp(30px, 6.6vw, 56px);
            line-height: 1.34;
            letter-spacing: .01em;
            word-break: keep-all;
            margin: 22px 0 18px;
            text-shadow: 0 2px 30px rgba(0, 0, 0, .45);
        }


        .ckp .hero h1 em {
            font-style: normal;
            background: linear-gradient(115deg, #e9d091 8%, var(--gold) 38%, #f3e3ae 55%, var(--gold-deep) 90%);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
        }


        .ckp .hero-sub {
            min-height: 52px;
            position: relative;
            max-width: 620px;
            margin: 0 auto
        }


        .ckp .hero-sub span {
            position: absolute;
            inset: 0;
            display: block;
            font-size: 15px;
            color: rgba(249, 245, 236, .78);
            letter-spacing: .02em;
            opacity: 0;
            transform: translateY(8px);
            transition: opacity .9s ease, transform .9s ease;
        }


        .ckp .hero-sub span.show {
            opacity: 1;
            transform: none
        }


        .ckp .hero-sub b {
            color: var(--gold);
            font-weight: 700
        }


        .ckp .hero-cta {
            display: flex;
            gap: 10px;
            flex-wrap: wrap;
            justify-content: center;
            margin-top: 18px
        }


        .ckp .btn {
            display: inline-block;
            padding: 14px 28px;
            font-size: 14px;
            font-weight: 700;
            letter-spacing: .05em;
            transition: all .25s ease;
            cursor: pointer;
            border: 1px solid transparent
        }


        .ckp .btn-dan {
            background: var(--dan);
            color: #fff
        }


        .ckp .btn-dan:hover {
            background: #9c1f3c;
            transform: translateY(-2px)
        }


        .ckp .btn-gold {
            border-color: var(--gold);
            color: var(--gold)
        }


        .ckp .btn-gold:hover {
            background: var(--gold);
            color: var(--mook)
        }


        .ckp .btn-ink {
            border-color: var(--ink);
            color: var(--ink)
        }


        .ckp .btn-ink:hover {
            background: var(--ink);
            color: var(--ivory)
        }


        .ckp .hero-scroll {
            position: absolute;
            left: 50%;
            bottom: 18px;
            transform: translateX(-50%);
            z-index: 2;
            color: rgba(249, 245, 236, .45);
            font-size: 10px;
            letter-spacing: .3em
        }



        /* ───────── 신뢰 스트립 (다크 연장) ───────── */
        .ckp .trust {
            background: var(--mook-2);
            color: var(--ivory);
            border-top: 1px solid var(--line-dark)
        }


        .ckp .trust .wrap {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            padding: 30px 20px;
            gap: 20px 8px;
            text-align: center
        }


        .ckp .trust dt {
            font-size: 11px;
            letter-spacing: .18em;
            color: rgba(249, 245, 236, .5);
            order: 2;
            margin-top: 5px
        }


        .ckp .trust dd {
            font-family: var(--serif);
            font-size: 26px;
            font-weight: 700;
            color: var(--gold)
        }


        .ckp .trust dd small {
            font-size: 14px;
            margin-left: 2px
        }


        .ckp .trust .t-item {
            display: flex;
            flex-direction: column
        }


        @media(min-width:760px){
            .ckp .trust .wrap {
                grid-template-columns: repeat(4, 1fr)
            }

            .ckp .trust .t-item+.t-item {
                border-left: 1px solid var(--line-dark)
            }

            .ckp .trust dd {
                font-size: 32px
            }

        }



        /* ───────── 공통 섹션 ───────── */
        .ckp section {
            padding: 66px 0
        }


        .ckp .sec-head {
            margin-bottom: 36px;
            text-align: center
        }


        .ckp .sec-eyebrow {
            font-size: 11px;
            letter-spacing: .3em;
            color: var(--gold-deep);
            font-weight: 700;
            display: block;
            margin-bottom: 10px
        }


        .ckp .sec-title {
            font-family: var(--serif);
            font-weight: 700;
            font-size: clamp(22px, 4.4vw, 34px);
            letter-spacing: -.01em;
            word-break: keep-all
        }


        .ckp .sec-title em {
            font-style: normal;
            color: var(--dan)
        }


        .ckp .sec-desc {
            margin: 12px auto 0;
            color: var(--ink-soft);
            font-size: 14px;
            max-width: 560px
        }


        .ckp .reveal {
            opacity: 1;
            transform: none;
            transition: opacity .8s ease, transform .8s ease
        }


        .js .ckp .reveal {
            opacity: 0;
            transform: translateY(22px)
        }


        .js .ckp .reveal.in {
            opacity: 1;
            transform: none
        }



        /* ───────── 상품 밴드 ───────── */
        .ckp .goods-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 14px
        }


        .ckp .g-card {
            background: var(--card);
            border: 1px solid var(--line);
            position: relative;
            transition: transform .25s ease, box-shadow .25s ease;
            display: flex;
            flex-direction: column
        }


        .ckp .g-card::after {
            content: '';
            position: absolute;
            inset: 0;
            border: 1px solid var(--gold);
            opacity: 0;
            transition: opacity .25s;
            pointer-events: none
        }


        .ckp .g-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 16px 34px -20px rgba(25, 21, 16, .45)
        }


        .ckp .g-card:hover::after {
            opacity: 1
        }


        .ckp .g-thumb {
            aspect-ratio: 1/1;
            overflow: hidden;
            background: #fff
        }


        .ckp .g-thumb img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform .5s ease
        }


        .ckp .g-card:hover .g-thumb img {
            transform: scale(1.05)
        }


        .ckp .g-body {
            padding: 13px 14px 16px;
            display: flex;
            flex-direction: column;
            gap: 6px;
            flex: 1
        }


        .ckp .g-tag {
            align-self: flex-start;
            font-size: 10px;
            letter-spacing: .1em;
            color: #fff;
            background: var(--dan);
            padding: 3px 8px
        }


        .ckp .g-name {
            font-size: 13px;
            line-height: 1.45;
            word-break: keep-all;
            flex: 1
        }


        .ckp .g-price {
            font-family: var(--serif);
            font-weight: 700;
            font-size: 16px
        }


        .ckp .g-price small {
            font-size: 12px;
            font-weight: 400
        }


        .ckp .goods-note {
            margin-top: 24px;
            display: flex;
            flex-wrap: wrap;
            gap: 14px;
            justify-content: center;
            align-items: center
        }


        .ckp .goods-note p {
            font-size: 13px;
            color: var(--ink-soft)
        }


        .ckp .goods-note p b {
            color: var(--dan)
        }


        @media(min-width:900px){
            .ckp .goods-grid {
                grid-template-columns: repeat(4, 1fr);
                gap: 18px
            }
        }



        /* ───────── 차별점 (먹 카드) ───────── */
        .ckp .why {
            background: var(--mook);
            color: var(--ivory);
            position: relative
        }


        .ckp .why .sec-eyebrow {
            color: var(--gold)
        }


        .ckp .why .sec-desc {
            color: rgba(249, 245, 236, .6)
        }


        .ckp .why-grid {
            display: grid;
            gap: 14px
        }


        .ckp .why-item {
            border: 1px solid var(--line-dark);
            padding: 26px 24px;
            background: rgba(255, 253, 247, .03);
            transition: border-color .3s
        }


        .ckp .why-item:hover {
            border-color: var(--gold)
        }


        .ckp .why-no {
            font-family: var(--serif);
            font-size: 13px;
            letter-spacing: .3em;
            color: var(--gold);
            display: block;
            margin-bottom: 12px
        }


        .ckp .why-item h3 {
            font-family: var(--serif);
            font-size: 19px;
            font-weight: 700;
            margin-bottom: 8px;
            word-break: keep-all
        }


        .ckp .why-item p {
            font-size: 13.5px;
            color: rgba(249, 245, 236, .66);
            word-break: keep-all
        }


        @media(min-width:860px){
            .ckp .why-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 18px
            }

            .ckp .why-item {
                padding: 32px 30px
            }
        }



        /* ───────── 납품 샘플 ───────── */
        .ckp .samples-rail {
            display: grid;
            grid-auto-flow: column;
            grid-auto-columns: 66%;
            gap: 14px;
            overflow-x: auto;
            scroll-snap-type: x mandatory;
            padding-bottom: 10px;
            scrollbar-width: none
        }


        .ckp .samples-rail::-webkit-scrollbar {
            display: none
        }


        .ckp .s-card {
            scroll-snap-align: start;
            background: var(--card);
            border: 1px solid var(--line)
        }


        .ckp .s-card img {
            aspect-ratio: 4/3;
            object-fit: cover;
            width: 100%
        }


        .ckp .s-card figcaption {
            padding: 11px 13px;
            font-size: 12.5px;
            color: var(--ink-soft);
            letter-spacing: .02em;
            border-top: 2px solid var(--gold)
        }


        @media(min-width:900px){
            .ckp .samples-rail {
                grid-auto-columns: 23.5%
            }
        }


        .ckp .sec-foot {
            margin-top: 26px;
            text-align: center
        }



        /* ───────── 포장 ───────── */
        .ckp .pack {
            background: var(--ivory-deep)
        }


        .ckp .pack-grid {
            display: grid;
            gap: 16px
        }


        .ckp .p-card {
            background: var(--card);
            border: 1px solid var(--line);
            padding: 10px
        }


        .ckp .p-card img {
            aspect-ratio: 1/1;
            object-fit: cover;
            width: 100%;
            border: 1px solid var(--line)
        }


        .ckp .p-body {
            padding: 16px 8px 10px
        }


        .ckp .p-body h3 {
            font-family: var(--serif);
            font-size: 17px;
            font-weight: 700
        }


        .ckp .p-body h3 span {
            font-family: var(--sans);
            font-size: 11px;
            color: var(--gold-deep);
            font-weight: 400;
            margin-left: 8px;
            letter-spacing: .06em
        }


        .ckp .p-body p {
            margin-top: 6px;
            font-size: 13px;
            color: var(--ink-soft);
            word-break: keep-all
        }


        @media(min-width:760px){
            .ckp .pack-grid {
                grid-template-columns: repeat(3, 1fr)
            }
        }


        .ckp .pack-note {
            margin-top: 22px;
            text-align: center;
            font-size: 13px;
            color: var(--ink-soft)
        }



        /* ───────── 프로세스 ───────── */
        .ckp .flow {
            display: grid;
            gap: 18px;
            counter-reset: step
        }


        .ckp .f-step {
            background: var(--card);
            border: 1px solid var(--line);
            border-top: 2px solid var(--dan);
            padding: 22px 20px;
            position: relative
        }


        .ckp .f-step::before {
            counter-increment: step;
            content: '0' counter(step);
            font-family: var(--serif);
            font-size: 13px;
            letter-spacing: .2em;
            color: var(--dan);
            display: block;
            margin-bottom: 10px;
        }


        .ckp .f-step h3 {
            font-family: var(--serif);
            font-size: 17px;
            font-weight: 700;
            margin-bottom: 5px
        }


        .ckp .f-step p {
            font-size: 13px;
            color: var(--ink-soft);
            word-break: keep-all
        }


        @media(min-width:860px){
            .ckp .flow {
                grid-template-columns: repeat(4, 1fr)
            }
        }



        /* ───────── 상담 (먹 북엔드) ───────── */
        .ckp .contact {
            background: var(--mook);
            color: var(--ivory)
        }


        .ckp .contact .sec-eyebrow {
            color: var(--gold)
        }


        .ckp .contact .sec-title em {
            background: linear-gradient(115deg, #e9d091, var(--gold) 50%, #f3e3ae);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent
        }


        .ckp .contact .sec-desc {
            color: rgba(249, 245, 236, .6)
        }


        .ckp .c-grid {
            display: grid;
            gap: 12px;
            margin-top: 8px
        }


        .ckp .c-row {
            display: flex;
            align-items: center;
            gap: 16px;
            border: 1px solid var(--line-dark);
            padding: 18px 20px;
            transition: all .25s;
            background: rgba(255, 253, 247, .02)
        }


        .ckp .c-row:hover {
            border-color: var(--gold);
            background: rgba(201, 162, 75, .06)
        }


        .ckp .c-ico {
            width: 38px;
            height: 38px;
            border: 1px solid var(--gold);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--gold);
            flex: 0 0 auto
        }


        .ckp .c-ico svg {
            width: 17px;
            height: 17px;
            fill: currentColor
        }


        .ckp .c-row dt {
            font-size: 11px;
            letter-spacing: .14em;
            color: rgba(249, 245, 236, .5)
        }


        .ckp .c-row dd {
            font-family: var(--serif);
            font-size: 18px;
            font-weight: 700
        }


        .ckp .c-row .c-side {
            margin-left: auto;
            font-size: 12px;
            color: rgba(249, 245, 236, .55);
            text-align: right;
            line-height: 1.5
        }


        @media(min-width:860px){
            .ckp .c-grid {
                grid-template-columns: repeat(3, 1fr)
            }

            .ckp .c-row {
                flex-direction: column;
                align-items: flex-start;
                gap: 10px;
                padding: 26px 24px
            }

            .ckp .c-row .c-side {
                margin-left: 0;
                text-align: left
            }
        }


        .ckp .c-foot {
            margin-top: 26px;
            text-align: center;
            font-size: 13px;
            color: rgba(249, 245, 236, .55)
        }



        

        


        /* ───────── 시안 스위처 ───────── */
        

        

        

        @media(prefers-reduced-motion:reduce){
            .ckp * {
                animation: none !important;
                transition: none !important
            }

            .ckp .hero-bg div {
                opacity: .3 !important
            }
        }



        .ckp {
            position: relative
        }


        .ckp .auto-badge {
            display: inline-block;
            margin-left: 8px;
            font-size: 11px;
            color: var(--gold);
            letter-spacing: .04em;
            border: 1px solid;
            padding: 1px 8px;
            border-radius: 999px;
            vertical-align: 1px;
            white-space: nowrap
        }


        /* overflow-x:hidden(사이트 전역)이 body를 스크롤 컨테이너로 만들어 sticky가 깨짐 → clip으로 복원 */
        html,
        body {
            overflow-x: clip
        }


        

        
    