/* ═══════════════════════════════════════════
   LUXURY PICK — 명품 편집샵
   Warm ivory · ink · whisper gold · 에디토리얼 미니멀
   ═══════════════════════════════════════════ */
:root{
  --bg:#f6f4ef; --card:#fff; --ink:#15140f; --ink2:#3a382f; --sub:#6f6b60; --soft:#a49f92;
  --line:#e6e1d6; --line2:#d8d2c4; --gold:#a3854f; --gold-d:#8a6f3d; --sale:#b23b3b;
  --wrap:1240px; --r:2px; --tb:38px;
  --serif:'Cormorant Garamond',serif;
  --sans:'Pretendard Variable',Pretendard,-apple-system,system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;line-height:1.6}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
input,select,textarea{font-family:inherit;font-size:15px;color:inherit}
img{display:block;max-width:100%}
.fa-solid,.fa-regular,.fa-brands{line-height:1}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.eb{font-size:11px;font-weight:700;letter-spacing:.28em;color:var(--gold);text-transform:uppercase}
.serif{font-family:var(--serif)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.on{opacity:1;transform:none}

/* ── 버튼 ── */
.btn-dark,.btn-line,.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:16px 34px;border-radius:var(--r);transition:all .25s;border:1px solid var(--ink)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#000}
.btn-line{background:transparent;color:var(--ink)}
.btn-line:hover{background:var(--ink);color:#fff}
.btn-gold{background:var(--gold);color:#fff;border-color:var(--gold)}
.btn-gold:hover{background:var(--gold-d);border-color:var(--gold-d)}
.btn-line.block,.btn-dark.block,.btn-gold.block{width:100%}
.btn-sm{padding:12px 22px;font-size:11.5px}

/* ── 안내바 ── */
.topbar{position:relative;z-index:210;background:var(--ink);color:#e9e5db;font-size:11.5px;letter-spacing:.04em;height:var(--tb)}
.topbar-in{max-width:var(--wrap);margin:0 auto;padding:0 32px;height:100%;display:flex;align-items:center;justify-content:space-between}
.topbar i.fa-truck-fast{color:var(--gold);margin-right:6px}
.tb-links a{color:#cfc9bc}.tb-links a:hover{color:#fff}
.tb-links i{color:#5a564c;margin:0 8px;font-style:normal}

/* ── 헤더 ── */
.hd{position:sticky;top:0;z-index:200;background:var(--bg);border-bottom:1px solid var(--line)}
.hd-in{max-width:var(--wrap);margin:0 auto;padding:0 32px;height:74px;display:flex;align-items:center;gap:38px}
.logo{font-family:var(--serif);font-size:26px;font-weight:600;letter-spacing:.12em;line-height:1;color:var(--ink);white-space:nowrap;flex-shrink:0}
.logo em{font-style:normal;color:var(--gold)}
.gnb{display:flex;gap:26px}
.gnb a{font-size:12.5px;font-weight:600;letter-spacing:.1em;color:var(--ink2);position:relative;padding:4px 0}
.gnb a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--ink);transform:scaleX(0);transition:transform .25s;transform-origin:left}
.gnb a:hover::after,.gnb a.on::after{transform:scaleX(1)}
.gnb a.on{color:var(--ink)}
.hd-ico{margin-left:auto;display:flex;align-items:center;gap:18px}
.hd-ico a{font-size:16px;color:var(--ink);position:relative;transition:opacity .2s}
.hd-ico a:hover{opacity:.6}
.cart-ico .cart-count{position:absolute;top:-8px;right:-9px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--gold);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1}
.m-burger{display:none;flex-direction:column;gap:5px;width:26px;flex-shrink:0}
.m-burger span{height:1.5px;background:var(--ink);width:100%;transition:.2s}

/* 투명 헤더 (히어로 위) — 안내바 바로 아래에 겹치지 않게 배치 */
.hero-mode .hd.over{position:absolute;top:var(--tb);left:0;right:0;z-index:190;background:transparent;border-bottom-color:transparent}
.hero-mode .hd.over .logo,.hero-mode .hd.over .gnb a,.hero-mode .hd.over .hd-ico a{color:#fff}
.hero-mode .hd.over .gnb a::after,.hero-mode .hd.over .m-burger span{background:#fff}
.hero-mode .hd.over .logo em{color:#e7d3a8}
.hd.over.scrolled{position:fixed;top:0;background:var(--bg);border-bottom-color:var(--line)}
.hd.over.scrolled .logo,.hd.over.scrolled .gnb a,.hd.over.scrolled .hd-ico a{color:var(--ink)}
.hd.over.scrolled .gnb a::after,.hd.over.scrolled .m-burger span{background:var(--ink)}
.hd.over.scrolled .logo em{color:var(--gold)}

/* 모바일 nav */
#mNav{position:fixed;inset:0 30% 0 0;background:var(--bg);z-index:400;transform:translateX(-100%);transition:transform .3s;display:flex;flex-direction:column;padding:0 26px;box-shadow:0 0 60px rgba(0,0,0,.2)}
#mNav.open{transform:none}
#mNav .m-top{display:flex;align-items:center;justify-content:space-between;height:74px;border-bottom:1px solid var(--line);margin-bottom:14px}
#mNav .m-top .logo{font-size:20px;justify-self:start}
#mNav .m-close{font-size:30px;line-height:1;color:var(--ink)}
#mNav>a{font-size:15px;font-weight:600;letter-spacing:.08em;padding:15px 0;border-bottom:1px solid var(--line)}
#mNav .m-cta{margin-top:auto;padding:20px 0}

/* ── 히어로 ── */
.hero{position:relative;height:100vh;min-height:640px}
.hero .swiper,.hero .swiper-wrapper,.hero .swiper-slide{height:100%}
.hero .slide{position:relative;height:100%;background-size:cover;background-position:center}
.hero .slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.28),rgba(0,0,0,.12) 40%,rgba(0,0,0,.42))}
.hero-copy{position:absolute;left:0;right:0;bottom:11vh;z-index:3;color:#fff;text-align:center;padding:0 24px}
.hero-copy .eb{color:#e7d3a8;margin-bottom:18px}
.hero-copy h1{font-family:var(--serif);font-weight:500;font-size:clamp(40px,7vw,86px);line-height:1.02;letter-spacing:.01em}
.hero-copy p{font-size:clamp(14px,1.6vw,17px);margin:20px auto 30px;max-width:520px;color:rgba(255,255,255,.9);font-weight:300;letter-spacing:.02em}
.hero-copy .btn-line{border-color:rgba(255,255,255,.7);color:#fff}
.hero-copy .btn-line:hover{background:#fff;color:var(--ink)}
.hero .swiper-pagination{bottom:34px!important}
.hero .swiper-pagination-bullet{background:#fff;opacity:.45;width:8px;height:8px}
.hero .swiper-pagination-bullet-active{opacity:1;width:26px;border-radius:4px}

/* ── 섹션 ── */
.sec{padding:90px 0}
.sec-head{text-align:center;margin-bottom:44px}
.sec-head .eb{display:block;margin-bottom:14px}
.sec-head h2{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4vw,42px);line-height:1.1}
.sec-head p{color:var(--sub);font-size:14.5px;margin-top:12px}
.sec-head .more{display:inline-block;margin-top:18px;font-size:12px;font-weight:600;letter-spacing:.14em;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}

/* 카테고리 스트립 */
.cat-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.cat-cell{text-align:center}
.cat-cell .thumb{aspect-ratio:3/4;background:var(--line);background-size:cover;background-position:center;margin-bottom:14px;position:relative;overflow:hidden}
.cat-cell .thumb::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.06);transition:background .3s}
.cat-cell:hover .thumb::after{background:rgba(0,0,0,0)}
.cat-cell .en{font-family:var(--serif);font-size:20px;font-weight:500}
.cat-cell .ko{font-size:11.5px;color:var(--sub);letter-spacing:.04em;margin-top:2px}

/* ── 상품 그리드 ── */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px 24px}
.pgrid.g3{grid-template-columns:repeat(3,1fr)}
.pcard{display:block;position:relative}
.pcard .pimg{position:relative;aspect-ratio:3/4;background:#efece5;background-size:cover;background-position:center;overflow:hidden;margin-bottom:15px}
.pcard .pimg::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,0);transition:background .35s}
.pcard:hover .pimg::after{background:rgba(0,0,0,.05)}
.pcard .badges{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:5px;z-index:2}
.pcard .badges span{font-size:10px;font-weight:700;letter-spacing:.1em;padding:4px 9px;background:var(--ink);color:#fff}
.pcard .badges span.sale{background:var(--sale)}
.pcard .badges span.best{background:var(--gold)}
.pcard .wish{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center;font-size:14px;color:var(--ink2);opacity:0;transform:translateY(-4px);transition:.25s}
.pcard:hover .wish{opacity:1;transform:none}
.pcard .quick{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;background:var(--ink);color:#fff;text-align:center;font-size:11.5px;font-weight:600;letter-spacing:.12em;padding:12px;opacity:0;transform:translateY(8px);transition:.3s;text-transform:uppercase}
.pcard:hover .quick{opacity:1;transform:none}
.pcard .brand{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--sub);text-transform:uppercase}
.pcard .name{font-size:14px;font-weight:500;margin:5px 0 7px;line-height:1.4}
.pcard .price{font-size:14px;font-weight:600;display:flex;align-items:baseline;gap:8px}
.pcard .price .was{font-size:12.5px;font-weight:400;color:var(--soft);text-decoration:line-through}
.pcard .price .now.on-sale{color:var(--sale)}
.pcard .colors{display:flex;gap:5px;margin-top:9px}
.pcard .colors i{width:12px;height:12px;border-radius:50%;border:1px solid var(--line2);display:inline-block}

/* 색상 스와치 팔레트 */
.sw-블랙,.sw-black{background:#1a1a1a}.sw-아이보리,.sw-ivory{background:#efe9dc}.sw-토프{background:#b6a48c}
.sw-카멜{background:#b07d47}.sw-누드{background:#e4c9b3}.sw-실버{background:#cfd2d6}.sw-로즈골드{background:#e0b6a0}
.sw-네이비{background:#2a3550}.sw-화이트골드{background:#e8e6e0}.sw-옐로우골드{background:#d8b04a}.sw-그레이{background:#9a968d}
.sw-샴페인{background:#e9dcc0}.sw-브라운{background:#6b4a30}.sw-버건디{background:#5c2130}

/* ── 에디토리얼 배너 ── */
.editorial{position:relative;min-height:520px;background-size:cover;background-position:center;display:flex;align-items:center}
.editorial::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.05))}
.editorial .ed-copy{position:relative;z-index:2;color:#fff;max-width:var(--wrap);margin:0 auto;padding:0 32px;width:100%}
.editorial .ed-copy .inner{max-width:440px}
.editorial .eb{color:#e7d3a8}
.editorial h2{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4.5vw,52px);line-height:1.08;margin:16px 0 18px}
.editorial p{font-weight:300;color:rgba(255,255,255,.9);margin-bottom:26px;letter-spacing:.02em}
.editorial .btn-line{border-color:rgba(255,255,255,.7);color:#fff}
.editorial .btn-line:hover{background:#fff;color:var(--ink)}

/* 2분할 밴드 */
.split{display:grid;grid-template-columns:1fr 1fr}
.split .s-img{min-height:460px;background-size:cover;background-position:center}
.split .s-txt{display:flex;align-items:center;padding:60px clamp(32px,6vw,90px);background:var(--card)}
.split .s-txt .inner{max-width:420px}
.split h2{font-family:var(--serif);font-weight:500;font-size:clamp(26px,3.4vw,38px);line-height:1.12;margin:14px 0 16px}
.split p{color:var(--sub);font-size:14.5px;margin-bottom:24px;line-height:1.8}

/* 브랜드 마퀴 */
.brands{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0;overflow:hidden}
.brands-track{display:flex;align-items:center;justify-content:center;gap:clamp(30px,6vw,80px);flex-wrap:wrap}
.brands-track span{font-family:var(--serif);font-size:clamp(18px,2.4vw,26px);letter-spacing:.14em;color:var(--soft);white-space:nowrap}

/* 후기 */
.rev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.rev{background:var(--card);border:1px solid var(--line);padding:26px 24px}
.rev .stars{color:var(--gold);font-size:12px;letter-spacing:.2em;margin-bottom:12px}
.rev p{font-size:13.5px;color:var(--ink2);line-height:1.75;min-height:72px}
.rev .who{font-size:12px;color:var(--sub);margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}

/* ── 페이지 헤더 ── */
.phead{text-align:center;padding:56px 0 40px;border-bottom:1px solid var(--line)}
.phead .crumb{font-size:11.5px;color:var(--sub);letter-spacing:.08em;margin-bottom:14px}
.phead .crumb a:hover{color:var(--ink)}
.phead h1{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4.5vw,46px)}
.phead p{color:var(--sub);font-size:14px;margin-top:10px}

/* 리스트 툴바 */
.list-tools{display:flex;align-items:center;gap:12px;padding:24px 0;flex-wrap:wrap}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chips a{font-size:12.5px;font-weight:600;letter-spacing:.06em;padding:9px 16px;border:1px solid var(--line2);border-radius:999px;color:var(--ink2);transition:.2s}
.chips a:hover{border-color:var(--ink)}
.chips a.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.list-tools .cnt{margin-left:auto;font-size:13px;color:var(--sub)}
.list-tools select{border:1px solid var(--line2);border-radius:var(--r);padding:9px 14px;font-size:13px;background:var(--card)}

/* ── 상품 상세 ── */
.pv{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;padding:44px 0 70px}
.pv-gallery{display:grid;gap:14px}
.pv-main{aspect-ratio:3/4;background:#efece5;background-size:cover;background-position:center;cursor:zoom-in}
.pv-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.pv-thumbs .t{aspect-ratio:1;background:#efece5;background-size:cover;background-position:center;cursor:pointer;border:1px solid transparent}
.pv-thumbs .t.on{border-color:var(--ink)}
.pv-info{padding-top:6px}
.pv-info .brand{font-size:12.5px;font-weight:700;letter-spacing:.16em;color:var(--sub);text-transform:uppercase}
.pv-info h1{font-family:var(--serif);font-weight:500;font-size:clamp(28px,3.4vw,40px);line-height:1.15;margin:10px 0 14px}
.pv-info .rate{font-size:12.5px;color:var(--sub);margin-bottom:18px}
.pv-info .rate .s{color:var(--gold);letter-spacing:.15em}
.pv-price{display:flex;align-items:baseline;gap:12px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pv-price .now{font-size:26px;font-weight:600}
.pv-price .now.on-sale{color:var(--sale)}
.pv-price .was{font-size:16px;color:var(--soft);text-decoration:line-through}
.pv-price .off{font-size:13px;font-weight:700;color:var(--sale)}
.pv-desc{font-size:14.5px;color:var(--ink2);line-height:1.85;margin:22px 0}
.opt-row{margin:18px 0}
.opt-row .lbl{font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--sub);text-transform:uppercase;margin-bottom:10px}
.opt-colors{display:flex;gap:10px}
.opt-colors button{display:flex;align-items:center;gap:8px;border:1px solid var(--line2);border-radius:999px;padding:8px 14px;font-size:12.5px;transition:.2s}
.opt-colors button i{width:14px;height:14px;border-radius:50%;border:1px solid var(--line2)}
.opt-colors button.on{border-color:var(--ink)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line2)}
.qty button{width:44px;height:46px;font-size:16px;color:var(--ink2)}
.qty input{width:52px;height:46px;text-align:center;border:0;border-left:1px solid var(--line2);border-right:1px solid var(--line2);font-weight:600}
.pv-cta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}
.pv-cta .wishbtn{grid-column:1/-1;margin-top:2px}
.pv-meta{margin-top:26px;padding-top:22px;border-top:1px solid var(--line);display:grid;gap:12px}
.pv-meta .m{display:flex;gap:12px;font-size:13px;color:var(--ink2)}
.pv-meta .m i{color:var(--gold);width:18px;text-align:center;margin-top:2px}
/* 상세 탭 */
.pv-tabs{border-top:1px solid var(--line);padding-top:40px}
.tab-btns{display:flex;gap:30px;justify-content:center;border-bottom:1px solid var(--line);margin-bottom:34px}
.tab-btns button{font-size:13px;font-weight:600;letter-spacing:.1em;padding:0 0 16px;color:var(--sub);border-bottom:2px solid transparent;margin-bottom:-1px;text-transform:uppercase}
.tab-btns button.on{color:var(--ink);border-color:var(--ink)}
.tab-panel{display:none;max-width:760px;margin:0 auto;font-size:14.5px;color:var(--ink2);line-height:1.9}
.tab-panel.on{display:block}
.tab-panel table{width:100%;border-collapse:collapse;font-size:14px}
.tab-panel th{text-align:left;width:150px;color:var(--sub);font-weight:600;padding:12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.tab-panel td{padding:12px 0;border-bottom:1px solid var(--line)}

/* ── 장바구니 ── */
.cart-wrap{display:grid;grid-template-columns:1fr 360px;gap:44px;padding:44px 0 80px;align-items:start}
.cart-rows{border-top:1px solid var(--ink)}
.cart-row{display:grid;grid-template-columns:96px 1fr auto;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);align-items:center}
.cart-row .cimg{aspect-ratio:3/4;background:#efece5;background-size:cover;background-position:center}
.cart-row .cbrand{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--sub);text-transform:uppercase}
.cart-row .cname{font-size:15px;font-weight:500;margin:4px 0 6px}
.cart-row .copt{font-size:12.5px;color:var(--sub)}
.cart-row .cbot{display:flex;align-items:center;gap:16px;margin-top:12px}
.cart-row .cprice{text-align:right;font-weight:600;white-space:nowrap}
.cart-row .cdel{color:var(--soft);font-size:13px}.cart-row .cdel:hover{color:var(--sale)}
.cart-empty{text-align:center;padding:80px 20px;color:var(--sub)}
.cart-empty i{font-size:40px;color:var(--soft);display:block;margin-bottom:18px}
.summary{border:1px solid var(--line);background:var(--card);padding:30px 28px;position:sticky;top:100px}
.summary h3{font-family:var(--serif);font-size:22px;font-weight:500;margin-bottom:20px}
.summary .row{display:flex;justify-content:space-between;font-size:14px;padding:10px 0;color:var(--ink2)}
.summary .row.total{border-top:1px solid var(--line);margin-top:8px;padding-top:16px;font-size:17px;font-weight:700;color:var(--ink)}
.summary .row.total b{font-size:20px}
.summary .btn-dark{margin-top:20px}
.summary .note{font-size:12px;color:var(--sub);margin-top:14px;text-align:center;line-height:1.6}

/* ── 체크아웃 ── */
.co-wrap{display:grid;grid-template-columns:1fr 400px;gap:48px;padding:40px 0 80px;align-items:start}
.co-sec{margin-bottom:36px}
.co-sec h3{font-family:var(--serif);font-size:22px;font-weight:500;margin-bottom:6px}
.co-sec .hint{font-size:12.5px;color:var(--sub);margin-bottom:20px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fld{margin-bottom:2px}
.fld.full{grid-column:1/-1}
.fld label{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--ink2);margin-bottom:8px}
.fld input,.fld select,.fld textarea{width:100%;border:1px solid var(--line2);border-radius:var(--r);padding:13px 15px;outline:0;background:var(--card);transition:border-color .2s}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--ink)}
.pay-opts{display:grid;gap:10px}
.pay-opt{display:flex;align-items:center;gap:12px;border:1px solid var(--line2);border-radius:var(--r);padding:15px 18px;cursor:pointer;transition:.2s;font-size:14px}
.pay-opt:has(input:checked){border-color:var(--ink);background:#fbfaf7}
.pay-opt input{accent-color:var(--ink)}
.pay-opt .pi{margin-left:auto;color:var(--sub);font-size:16px}
.co-summary{border:1px solid var(--line);background:var(--card);padding:28px 26px;position:sticky;top:100px}
.co-items{max-height:280px;overflow-y:auto;margin-bottom:16px}
.co-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);align-items:center}
.co-item .ci{width:52px;aspect-ratio:3/4;background:#efece5;background-size:cover;background-position:center;flex-shrink:0}
.co-item .cn{font-size:13px;font-weight:500;line-height:1.4}
.co-item .cq{font-size:11.5px;color:var(--sub);margin-top:3px}
.co-item .cp{margin-left:auto;font-size:13px;font-weight:600;white-space:nowrap}
.agree{margin:18px 0;font-size:12.5px;color:var(--ink2)}
.agree label{display:flex;gap:9px;align-items:flex-start;padding:6px 0;cursor:pointer}

/* ── 로그인 (SNS) ── */
.auth{max-width:440px;margin:0 auto;padding:60px 20px 90px}
.auth .a-logo{text-align:center;margin-bottom:10px}
.auth .a-logo .logo{font-size:30px}
.auth h1{text-align:center;font-family:var(--serif);font-size:26px;font-weight:500;margin-top:8px}
.auth .a-sub{text-align:center;color:var(--sub);font-size:13.5px;margin-top:8px}
.sns{display:grid;gap:11px;margin-top:32px}
.sns button{display:flex;align-items:center;justify-content:center;gap:11px;padding:15px;border-radius:var(--r);font-size:14px;font-weight:600;border:1px solid transparent;position:relative}
.sns button i{position:absolute;left:18px;font-size:17px}
.sns .kakao{background:#FEE500;color:#191600}
.sns .naver{background:#03C75A;color:#fff}
.sns .google{background:#fff;color:#3c4043;border-color:var(--line2)}
.sns .apple{background:#000;color:#fff}
.auth .divider{display:flex;align-items:center;gap:14px;margin:28px 0;color:var(--soft);font-size:12px}
.auth .divider::before,.auth .divider::after{content:"";flex:1;height:1px;background:var(--line)}
.auth .email-form{display:grid;gap:12px}
.auth .a-links{text-align:center;margin-top:22px;font-size:13px;color:var(--sub)}
.auth .a-links a{color:var(--ink);font-weight:600}
.auth .a-links i{margin:0 8px;color:var(--line2);font-style:normal}
.auth .a-note{margin-top:24px;font-size:11.5px;color:var(--soft);text-align:center;line-height:1.7}

/* ── 뉴스레터/푸터 ── */
.ft-news{background:var(--ink);color:#efe9dc;padding:66px 0;text-align:center}
.ft-news-in{max-width:620px;margin:0 auto;padding:0 24px}
.ft-news .eb{color:var(--gold)}
.ft-news h3{font-family:var(--serif);font-weight:500;font-size:clamp(22px,3vw,32px);line-height:1.3;margin:14px 0 26px}
.news-form{display:flex;gap:10px;max-width:460px;margin:0 auto}
.news-form input{flex:1;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:var(--r);padding:14px 18px;color:#fff;outline:0}
.news-form input::placeholder{color:rgba(255,255,255,.5)}
.news-form input:focus{border-color:var(--gold)}
.news-form .btn-dark{background:var(--gold);border-color:var(--gold);white-space:nowrap}
.news-form .btn-dark:hover{background:var(--gold-d)}
.ft{background:var(--bg);border-top:1px solid var(--line);padding:66px 0 0}
.ft-in{max-width:var(--wrap);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:40px}
.ft-brand .logo{font-size:24px;display:inline-block;margin-bottom:16px}
.ft-brand p{font-size:13px;color:var(--sub);line-height:1.8}
.ft-sns{display:flex;gap:12px;margin-top:18px}
.ft-sns a{width:38px;height:38px;border:1px solid var(--line2);border-radius:50%;display:grid;place-items:center;font-size:15px;color:var(--ink2);transition:.2s}
.ft-sns a:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.ft-col h4{font-size:12px;font-weight:700;letter-spacing:.14em;margin-bottom:16px}
.ft-col ul{list-style:none;display:grid;gap:11px}
.ft-col a{font-size:13px;color:var(--sub)}.ft-col a:hover{color:var(--ink)}
.ft-contact .ft-tel{font-family:var(--serif);font-size:22px;font-weight:600;margin-bottom:10px}
.ft-contact p{font-size:12.5px;color:var(--sub);line-height:1.8}
.ft-contact .ft-ig{margin-top:8px;color:var(--gold);font-weight:600}
.ft-bot{max-width:var(--wrap);margin:50px auto 0;padding:22px 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:var(--soft)}
.ft-pay{display:flex;gap:10px;font-size:22px;color:var(--soft)}

/* ── 토스트 ── */
#uxToast{font-family:var(--sans)}

@media (max-width:1080px){
  .cat-strip{grid-template-columns:repeat(3,1fr)}
  .pgrid{grid-template-columns:repeat(3,1fr)}
  .pv{grid-template-columns:1fr;gap:32px}
  .cart-wrap,.co-wrap{grid-template-columns:1fr}
  .summary,.co-summary{position:static}
  .rev-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
  .wrap{padding:0 20px}
  .topbar-in{padding:8px 20px}.tb-links a:not(:first-child){display:none}
  .hd-in{grid-template-columns:auto 1fr auto;height:62px;padding:0 20px}
  .gnb{display:none}.m-burger{display:flex}
  .logo{font-size:22px}
  .hd-ico{gap:15px}.hd-ico a[data-demo="위시리스트"]{display:none}
  .sec{padding:60px 0}
  .split{grid-template-columns:1fr}.split .s-img{min-height:340px}
  .pgrid,.pgrid.g3{grid-template-columns:repeat(2,1fr);gap:18px 14px}
  .form-grid{grid-template-columns:1fr}
  .rev-grid{grid-template-columns:1fr}
  .cart-row{grid-template-columns:76px 1fr;grid-template-areas:"img info" "img price"}
  .cart-row .cimg{grid-area:img}.cart-row .cprice{grid-area:price;text-align:left}
  .ft-in{grid-template-columns:1fr 1fr;gap:30px}
  .ft-bot{flex-direction:column;gap:12px}
  .pv-cta{grid-template-columns:1fr}
}
