/* 위스키 주류 연구소 (whiskylab.co.kr) — 베이지 셀러 테마 */
:root{
  --bg:#f3efe6; --bg2:#e9e3d6; --ink:#1f2a24; --ink2:#33403a; --sub:#4b554e; --mute:#6b736d; --jp:#8a8f88;
  --line:#d9d1c0; --line2:#c9c0ad; --line3:#e3dccd; --accent:#2f5d46; --accent-d:#1f4232; --kakao:#fee500; --white:#fff;
  --wrap:1240px; --r:6px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans KR',system-ui,-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;line-height:1.6;word-break:keep-all;overflow-wrap:break-word}
img{max-width:100%;display:block}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-d);text-decoration:underline}
button,input{font:inherit;color:inherit}
button{cursor:pointer}
.jp{font-family:'Noto Sans JP','Noto Sans KR',sans-serif}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--bg);padding:10px 14px;z-index:100}
.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid #3d7a5c;outline-offset:2px}

/* 상단 정보줄 · 헤더 */
.topbar{background:var(--ink);color:#d9dfd9;font-size:13px}
.topbar .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 20px;padding-top:9px;padding-bottom:9px}
.topbar a{color:#fff}
.hd{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.hd .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 28px;padding-top:12px;padding-bottom:12px}
.brand{display:flex;flex-direction:row;align-items:center;gap:10px;line-height:1.2;color:var(--ink)}
.brand .bm{width:44px;height:44px;flex:none;color:var(--accent)}
.brand .bt{display:flex;flex-direction:column}
.brand:hover{text-decoration:none;color:var(--ink)}
.brand .b1{font-size:11px;letter-spacing:.3em;color:var(--accent);font-weight:700}
.brand .b2{font-size:19px;font-weight:900;letter-spacing:-.01em}
.brand .b3{font-size:10px;letter-spacing:.2em;color:var(--mute)}
.gnb{display:flex;flex-wrap:wrap;gap:4px 26px;font-size:15px;font-weight:500}
.gnb a{color:var(--ink)}
.hd-btns{display:flex;gap:8px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:44px;padding:0 16px;border-radius:var(--r);font-size:14px;font-weight:700;border:1px solid transparent;text-decoration:none;white-space:nowrap}
.btn:hover{text-decoration:none}
.btn-line{background:var(--white);border-color:var(--line2);color:var(--ink)}
.btn-line:hover{border-color:var(--ink);color:var(--ink)}
.btn-ink{background:var(--ink);color:var(--bg)}
.btn-ink:hover{background:#000;color:var(--bg)}
.btn-acc{background:var(--accent);color:#fff}
.btn-acc:hover{background:var(--accent-d);color:#fff}
.btn-kakao{background:var(--kakao);color:#191600}
.btn-kakao:hover{background:#f2d900;color:#191600}
.btn-lg{height:52px;padding:0 22px;font-size:15px}
.cnt{color:var(--accent);font-weight:900}
.ico{width:18px;height:18px;flex-shrink:0}
@media (max-width:899px){
  .gnb{display:none}
  .hd .wrap{flex-wrap:nowrap}
  .hd-btns .btn-kakao{display:none}
  .wrap{padding:0 16px}
  .brand .b2{font-size:17px}
  .brand .bm{width:36px;height:36px}
  .brand .b3{display:none}
}

/* 히어로 */
.hero{padding:28px 0 26px}
.hero .wrap{display:flex;flex-wrap:wrap;gap:32px;align-items:flex-end}
.hero-txt{flex:1 1 460px;min-width:0}
.crumb{margin:0 0 8px;font-size:14px;color:var(--mute)}
.crumb a{color:var(--mute)}
.hero h1{margin:0;font-size:38px;line-height:1.3;font-weight:900;letter-spacing:-.02em}
.hero p{margin:12px 0 0;font-size:17px;line-height:1.7;color:#3f4943}
.hero p b{color:var(--accent)}
.search{margin-top:22px;display:flex;gap:8px}
.search input{flex:1 1 auto;min-width:0;height:50px;padding:0 16px;font-size:15px;background:#fff;border:1px solid var(--line2);border-radius:var(--r)}
.shelf{flex:1 1 520px;min-width:0;display:flex;align-items:flex-end;justify-content:center;height:280px;border-bottom:2px solid var(--line2);overflow:hidden}
.shelf img{height:100%;width:auto;margin:0 -14px}
@media (max-width:899px){
  .hero{padding:24px 0 12px}
  .hero h1{font-size:28px}
  .hero p{font-size:15px}
  .shelf{flex-basis:100%;height:190px}
  .shelf img:nth-child(n+5){display:none}
}

/* 필터 */
.tabs{display:flex;gap:0 26px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{flex-shrink:0;height:48px;padding:0;background:none;border:0;border-bottom:3px solid transparent;color:var(--sub);font-size:16px}
.tab[aria-pressed="true"]{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}
.tab .n{font-size:13px;color:var(--mute);margin-left:3px}
.chips{display:flex;align-items:center;gap:8px;padding:14px 0;overflow-x:auto;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chips .lb{flex-shrink:0;color:var(--mute);font-size:14px;margin-right:4px}
.chip{flex-shrink:0;height:36px;padding:0 12px;background:#fff;border:1px solid var(--line2);border-radius:4px;font-size:14px}
.chip[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--bg)}

/* 목록 + 견적함 */
.cat{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start;padding:10px 0 72px}
.grid{flex:999 1 640px;min-width:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:30px 18px}
.card{display:flex;flex-direction:column;min-width:0}
.card>a{display:flex;flex-direction:column;gap:2px;color:var(--ink)}
.card>a:hover{text-decoration:none}
.card>a:hover .nm{text-decoration:underline}
.card .ph{aspect-ratio:2/3;width:100%;height:auto;object-fit:contain}
.card .tg{font-size:12px;color:var(--accent);font-weight:700;margin-top:6px;min-height:18px}
.card .nm{font-size:16px;font-weight:700;line-height:1.4}
.card .jpn{font-size:12px;color:var(--jp);line-height:1.4}
.card .mt{font-size:13px;color:var(--mute);line-height:1.5}
.add{margin-top:10px;height:40px;background:#fff;border:1px solid var(--line2);border-radius:4px;font-size:13px;font-weight:700}
.add:hover{border-color:var(--ink)}
.add[aria-pressed="true"]{background:var(--accent);border-color:var(--accent);color:#fff}
.empty{grid-column:1/-1;padding:40px 0;text-align:center;color:var(--mute)}
@media (max-width:899px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
  .card .nm{font-size:15px}
}

.quote{flex:1 1 290px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:12px;position:sticky;top:96px}
.quote h2{margin:0;font-size:18px;font-weight:900}
.q-hd{display:flex;justify-content:space-between;align-items:center;gap:8px}
.q-hd .q-n{font-size:13px;color:var(--mute)}
.q-close{display:none;width:44px;height:44px;border:0;background:none;margin:-10px -10px -10px 0}
.q-list{margin:0;padding:0;list-style:none;border-top:1px solid #ece6da;border-bottom:1px solid #ece6da;max-height:280px;overflow:auto}
.q-list li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f1ece2;font-size:14px}
.q-list li:last-child{border-bottom:0}
.q-list img{width:32px;height:48px;object-fit:contain;flex-shrink:0}
.q-list .q-nm{flex:1 1 auto;min-width:0;line-height:1.4}
.q-list .q-del{flex-shrink:0;width:36px;height:36px;border:0;background:none;color:var(--mute);font-size:18px}
.q-empty{padding:18px 0;text-align:center;font-size:14px;line-height:1.6;color:var(--mute)}
.quote label.f{font-size:13px;font-weight:700}
.quote input[type=text],.quote input[type=tel]{height:42px;margin-top:-6px;padding:0 12px;border:1px solid var(--line2);border-radius:4px;font-size:14px;width:100%}
.quote input[aria-invalid=true]{border-color:#b3261e}
.chk{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.5;color:#3f4943}
.chk input{margin:2px 0 0;width:18px;height:18px;flex-shrink:0}
.q-note{margin:0;font-size:12px;line-height:1.6;color:var(--mute)}
.backdrop{display:none}
@media (max-width:899px){
  .quote{position:fixed;top:0;right:0;bottom:0;width:min(92vw,400px);z-index:80;border-radius:0;overflow:auto;transform:translateX(105%);transition:transform .25s ease;border:0;box-shadow:-8px 0 24px rgba(0,0,0,.12)}
  .quote.open{transform:none}
  .q-close{display:flex;align-items:center;justify-content:center}
  .backdrop.open{display:block;position:fixed;inset:0;background:rgba(31,42,36,.4);z-index:70}
}
.quote.drawer{position:fixed;top:0;right:0;bottom:0;width:min(92vw,400px);z-index:80;border-radius:0;overflow:auto;transform:translateX(105%);transition:transform .25s ease;border:0;box-shadow:-8px 0 24px rgba(0,0,0,.12)}
.quote.drawer.open{transform:none}
.quote.drawer .q-close{display:flex;align-items:center;justify-content:center}

/* 섹션 공통 */
.sec{padding:64px 0}
.sec h2{margin:0;font-size:26px;font-weight:900;line-height:1.4}
.sec .lead{margin:10px 0 0;font-size:15px;color:var(--sub)}
.band{background:var(--bg2)}
.hb .wrap{display:flex;flex-wrap:wrap;gap:40px;align-items:center}
.hb picture{flex:1 1 480px;min-width:0;display:block}
.hb picture img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:var(--r)}
.hb-txt{flex:1 1 420px;min-width:0}
.hb-txt p{margin:12px 0 0;font-size:16px;line-height:1.75;color:#3f4943}
.rows{margin-top:22px;border-top:1px solid var(--line2);font-size:15px}
.rows>div{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line2)}
.rows b{flex-shrink:0}
.rows span{color:var(--sub);text-align:right}
.rows span a{color:var(--sub)}
.imp{margin-top:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));border-top:2px solid var(--ink)}
.imp>div{padding:16px 4px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.imp b{font-size:16px}
.imp span{font-size:14px;color:var(--sub)}
.faq{margin-top:18px;border-top:2px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line);padding:16px 4px}
.faq summary{font-size:16px;font-weight:700;cursor:pointer}
.faq p{margin:10px 0 0;font-size:15px;line-height:1.75;color:var(--sub)}
@media (max-width:899px){
  .sec{padding:40px 0}
  .sec h2{font-size:21px}
  .hb picture{flex-basis:100%;margin:0 -16px;max-width:calc(100% + 32px)}
  .hb picture img{border-radius:0}
  .rows>div{flex-direction:column;gap:2px}
  .rows span{text-align:left}
}

/* 제품 상세 */
.pd{padding:20px 0 56px}
.pd .wrap{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start}
.pd-ph{flex:1 1 420px;min-width:0;display:flex;justify-content:center;border-bottom:2px solid var(--line2)}
.pd-ph img{width:100%;max-width:400px;height:auto;aspect-ratio:2/3;object-fit:contain}
.pd-info{flex:1 1 520px;min-width:0;display:flex;flex-direction:column;gap:22px}
.pd-cat{margin:0 0 6px;font-size:14px;font-weight:700;color:var(--accent)}
.pd h1{margin:0;font-size:38px;font-weight:900;letter-spacing:-.02em;line-height:1.3}
.pd .jpn{margin:4px 0 0;font-size:15px;color:var(--jp)}
.keys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--ink);border-bottom:1px solid var(--line);margin:0}
.keys>div{padding:14px 4px;display:flex;flex-direction:column;gap:2px}
.keys dt{font-size:13px;color:var(--mute)}
.keys dd{margin:0;font-size:16px;font-weight:700}
.pd-desc{margin:0;font-size:16px;line-height:1.85;color:var(--ink2)}
.spec{margin:0;display:grid;grid-template-columns:110px minmax(0,1fr);font-size:15px;border-top:1px solid var(--line)}
.spec dt{padding:12px 0;color:var(--mute);border-bottom:1px solid var(--line3)}
.spec dd{margin:0;padding:12px 0;border-bottom:1px solid var(--line3)}
.ask{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:14px}
.ask h2{margin:0;font-size:18px;font-weight:900}
.ask p{margin:6px 0 0;font-size:14px;line-height:1.7;color:var(--sub)}
.ask .row{display:flex;flex-wrap:wrap;gap:8px}
.ask .row>*{flex:1 1 120px;height:50px}
.ask .row .add-big{flex:2 1 180px}
.ask small{font-size:12px;line-height:1.6;color:var(--mute)}
.rel{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:24px 18px;margin-top:22px}
@media (max-width:899px){
  .pd{padding:8px 0 32px}
  .pd .wrap{gap:20px}
  .pd-ph img{max-width:260px}
  .pd h1{font-size:28px}
  .keys dd{font-size:14px}
  .pd-desc{font-size:15px}
  .spec{grid-template-columns:84px minmax(0,1fr);font-size:14px}
  .ask .row{display:none}
  .rel{display:flex;overflow-x:auto;gap:12px;margin:18px -16px 0;padding:0 16px 4px}
  .rel .card{flex:0 0 136px}
}

/* 하단 고정 버튼(모바일) · 푸터 · 알림 */
.mbar{display:none}
@media (max-width:899px){
  .mbar{display:flex;gap:6px;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}
  .mbar .btn{flex:1 1 0;height:48px}
  .mbar .btn-call{flex:0 0 48px;padding:0}
  .mbar .btn-wide{flex:1.4 1 0}
  body{padding-bottom:72px}
}
.ft{background:var(--ink);color:#b7c0b9}
.ft .wrap{padding-top:44px;padding-bottom:52px;display:flex;flex-direction:column;gap:18px}
.ft .top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}
.ft .nm{color:var(--bg);font-size:18px;font-weight:900}
.ft .en{font-size:13px;letter-spacing:.16em}
.ft .ct{display:flex;flex-direction:column;gap:4px;font-size:14px}
.ft .ct b,.ft .ct a{color:var(--bg)}
.ft .biz{margin:0;font-size:12px;line-height:1.8;border-top:1px solid rgba(243,239,230,.15);padding-top:16px}
.ft .biz a{color:#b7c0b9;text-decoration:underline}
.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:var(--ink);color:var(--bg);padding:12px 18px;border-radius:var(--r);font-size:14px;opacity:0;transition:.2s;z-index:90;pointer-events:none;max-width:90vw;text-align:center}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* SEO 보강 요소 */
.catlinks{margin:0 0 6px;font-size:14px;color:var(--mute)}
.catlinks a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:3px}
.alias{margin:6px 0 0;font-size:13px;color:var(--mute)}
.intro{max-width:820px}
.intro p{margin:12px 0 0;font-size:16px;line-height:1.8;color:#3f4943}
.pt{padding:8px 0 48px}
.pt h2{font-size:20px}
.lead2{margin:12px 0 0;font-size:16px;line-height:1.85;color:var(--ink2);max-width:880px}
.imp-sec{padding-top:40px}
.imp-sec h2{margin:0 0 6px;font-size:22px;font-weight:900;border-bottom:2px solid var(--ink);padding-bottom:10px}
.imp-sec h2 .n{font-size:14px;color:var(--mute);font-weight:500;margin-left:6px}
.imp-sec .lead{margin:8px 0 0;font-size:14px;color:var(--sub)}
.imp-sec .grid{margin-top:20px}
.ft-links{font-size:13px;line-height:1.9}
.ft-links a{color:#d9dfd9}
@media (max-width:899px){
  .intro p{font-size:15px}
  .pt{padding:0 0 32px}
  .lead2{font-size:15px}
}
/* 종류별 안내 · 필터 칩 숫자 (2026-11-09) */
.chip .n{margin-left:4px;color:var(--mute);font-size:12px}
.chip[aria-pressed="true"] .n{color:inherit;opacity:.7}
.types>div{padding:18px 4px}
.types b .n{font-size:13px;font-weight:500;color:var(--mute);margin-left:4px}
.types span{line-height:1.6}
.types small{display:block;margin-top:6px;font-size:13px}
.types small a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
/* 대분류 위스키 / 스피릿 (2026-11-09) */
.seg{display:flex;gap:8px;padding:6px 0 4px}
.seg-b{height:40px;padding:0 18px;background:#fff;border:1px solid var(--line2);border-radius:999px;font-size:15px;font-weight:700;color:var(--sub)}
.seg-b .n{margin-left:4px;font-size:12px;font-weight:500;color:var(--mute)}
.seg-b[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.seg-b[aria-pressed="true"] .n{color:inherit;opacity:.7}
[hidden]{display:none !important}
.types-h{margin:28px 0 0;font-size:17px;font-weight:900}
/* AI 이미지 · 종류 아이콘 (2026-11-09) */
.types>div{flex-direction:row;align-items:flex-start;gap:14px}
.types .ti{flex:0 0 56px;width:56px;height:56px;margin-top:2px}
.types p{margin:0;display:flex;flex-direction:column;gap:4px;min-width:0}
.hb-r .wrap{flex-direction:row-reverse}
.cat-hero{display:block;margin-top:22px}
.cat-hero img{width:100%;height:auto;aspect-ratio:21/9;object-fit:cover;border-radius:var(--r)}
@media (max-width:760px){.hb-r .wrap{flex-direction:column}.cat-hero{margin:18px -16px 0}.cat-hero img{border-radius:0;aspect-ratio:16/9}}
/* 히어로 양피지 카드 덱 (2026-11-09) */
.hero .wrap{align-items:center}
.deck{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;align-items:center;padding:6px 0 4px}
.deck-stage{position:relative;width:min(380px,80vw);aspect-ratio:900/1125;margin-right:34px;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.dcard{position:absolute;inset:0;transition:transform .55s cubic-bezier(.22,.7,.2,1),opacity .45s ease;will-change:transform;filter:drop-shadow(0 12px 18px rgba(52,38,16,.22));transform-origin:50% 90%}
.dcard.notr{transition:none}
.dcard .dc-bg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.dcard[data-pos="0"]{z-index:5;transform:none;opacity:1}
.dcard[data-pos="1"]{z-index:4;transform:translate(8%,2.6%) rotate(3.6deg) scale(.965);opacity:1;cursor:pointer}
.dcard[data-pos="2"]{z-index:3;transform:translate(13%,4.4%) rotate(-1.8deg) scale(.93);opacity:1}
.dcard[data-pos="hide"]{z-index:1;transform:translate(13%,4.4%) rotate(-1.8deg) scale(.9);opacity:0;pointer-events:none}
.dcard[data-pos="out"]{z-index:6;transform:translate(-118%,5%) rotate(-11deg);opacity:0;pointer-events:none}
.dcard:not([data-pos="0"]) .dc-body{visibility:hidden}
.deck .dc-body{position:absolute;left:11%;right:11%;top:60.5%;bottom:6.5%;display:flex;flex-direction:column;min-height:0}
.deck .dc-en{margin:0;font-size:11px;letter-spacing:.2em;color:#8a6a3c;font-weight:700}
.deck .dc-t{margin:3px 0 0;font-size:25px;line-height:1.25;font-weight:900;color:#1f2a24;letter-spacing:-.02em}
.deck .dc-t span{font-size:13px;font-weight:600;color:#8a6a3c;margin-left:4px;letter-spacing:0}
.deck .dc-d{margin:7px 0 0;font-size:13.5px;line-height:1.55;color:#4b412f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.deck .dc-p{margin:5px 0 0;font-size:12.5px;color:#7a6847;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.deck .dc-go{margin-top:auto;align-self:flex-start;font-size:14px;font-weight:800;color:var(--accent);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:1px}
.deck-nav{display:flex;align-items:center;gap:16px;margin-top:22px}
.dk-b{width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);background:#fff;font-size:24px;line-height:1;color:var(--ink);display:grid;place-items:center;padding:0 0 3px}
.dk-b:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.dk-n{min-width:64px;text-align:center;font-size:14px;color:var(--mute)}
.dk-n b{color:var(--ink)}
@media (max-width:899px){
  .deck{flex-basis:100%;padding-top:4px}
  .deck-stage{width:min(330px,74vw);margin-right:30px}
  .deck .dc-t{font-size:22px}.deck .dc-d{font-size:13px}.deck .dc-p{font-size:12px}.deck .dc-en{font-size:10px}
}
@media (prefers-reduced-motion:reduce){.dcard{transition:none}}
/* 카드 글자 영역 보정 */
.deck-stage{width:min(400px,80vw)}
.deck .dc-body{top:57.5%;bottom:6%;display:grid;grid-template-rows:auto auto auto auto 1fr;align-content:start;row-gap:0;overflow:hidden}
.deck .dc-en{font-size:10px;letter-spacing:.18em}
.deck .dc-t{font-size:23px;margin-top:2px}
.deck .dc-d{font-size:13px;line-height:1.5;margin-top:6px}
.deck .dc-p{font-size:12px;margin-top:4px}
.deck .dc-go{align-self:end;justify-self:start;font-size:13.5px;margin-top:6px}
.dcard[data-pos="out"]{transform:translate(-78%,4%) rotate(-9deg);opacity:0}
.dcard{transition:transform .5s cubic-bezier(.22,.7,.2,1),opacity .32s ease}
@media (max-width:899px){
  .deck-stage{width:min(330px,76vw)}
  .deck .dc-body{top:57%;bottom:5.5%}
  .deck .dc-t{font-size:20px}.deck .dc-d{font-size:12.5px;-webkit-line-clamp:2}.deck .dc-p{display:none}
}
.deck .dc-en{line-height:1.4}.deck .dc-p{line-height:1.5}.deck .dc-go{line-height:1.5}

/* mobile fixes */
#lineup{scroll-margin-top:72px}
@media (max-width:899px){.hero .hero-txt>p:not(.crumb){display:none}.hero{padding-top:14px}.hero h1{font-size:24px}}

/* ===== v2 restyle: 덜어내기 ===== */
:root{--serif:'Noto Serif KR','Nanum Myeongjo',Georgia,serif;--gold:#8a6a3c}
h1,h2,h3,.hero h1,.brand .b2,.deck .dc-t,.cat-h h1,.sec h2{font-family:var(--serif);font-weight:700;letter-spacing:-.01em}
.hero h1{font-size:40px;line-height:1.28}
.hero p{font-size:16px;color:#5a5f59;font-weight:400}
.hero p b{font-weight:600}
.crumb{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.brand .b1{letter-spacing:.32em;font-weight:600}
.brand .b2{font-size:20px}
.brand .b3{letter-spacing:.24em}
.nav a{font-weight:500}
.btn{font-weight:600}
.btn-kakao{background:var(--ink);color:var(--bg)}
.btn-kakao:hover{background:#000;color:var(--bg)}
.btn-kakao .ico{color:var(--kakao)}
.topbar{background:var(--ink);color:#aab5ad;font-size:12.5px;letter-spacing:.02em}
.topbar a{color:#e9ebe6}
/* 필터: 한 줄 */
#lineup .seg{padding:0}
#lineup .seg-b{height:36px;padding:0 14px;font-weight:600;font-size:14px;border-radius:4px;background:transparent}
#lineup .seg-b[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.tabs{gap:0 22px;margin-top:10px}
.tab{font-size:15px;font-weight:500;height:44px}
.tab[aria-pressed="true"]{font-weight:700}
.tab .n{font-size:11px;color:var(--mute);margin-left:3px}
.chips{padding:12px 0 6px;gap:6px}
.chips .lb{font-size:12px;letter-spacing:.1em;text-transform:uppercase}
.chip{height:32px;font-size:13px;border-radius:3px;background:transparent;border-color:var(--line)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
/* 상품 카드 */
.card .nm{font-family:var(--serif);font-weight:700;font-size:16px}
.card .tg{letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;color:var(--gold);font-weight:600}
.card .mt{color:var(--mute)}
.add{background:transparent;border:0;border-bottom:1px solid var(--line2);border-radius:0;height:36px;padding:0;text-align:left;font-weight:600;color:var(--accent);justify-content:flex-start}
.add:hover{border-color:var(--accent)}
.add[aria-pressed="true"]{background:transparent;color:var(--ink);border-color:var(--ink)}
/* 견적함 패널 */
.qbox h2,.quote h2{font-size:20px}
/* 덱: 새 종이 비율 */
.deck-stage{aspect-ratio:900/1260;width:min(390px,78vw)}
.dcard{filter:drop-shadow(0 10px 14px rgba(52,38,16,.16))}
.deck .dc-body{left:15.5%;right:14%;top:63%;bottom:9.5%}
.deck .dc-en{color:var(--gold);font-weight:600;letter-spacing:.22em}
.deck .dc-t{font-size:24px;font-weight:700}
.deck .dc-t span{font-family:'Noto Sans KR',sans-serif;font-weight:500}
.deck .dc-d{color:#4b412f}
.deck .dc-go{font-weight:600;border-bottom-width:1px}
.dk-b{border-color:var(--line)}
@media (max-width:899px){
  .hero h1{font-size:27px}
  .deck-stage{width:min(330px,74vw)}
  .deck .dc-body{top:62%}
}
@media (max-width:899px){.deck .dc-body{top:60.5%;bottom:10%}.deck .dc-d{font-size:12.5px}.deck{padding-top:0}.hero .wrap{gap:18px}}

/* v2.1 */
.hero{padding:56px 0 30px}
.hero h1{margin-top:0}
.search{margin-top:30px;display:flex;align-items:center;gap:10px;max-width:460px;border-bottom:1px solid var(--line2);padding:0 0 8px}
.search:focus-within{border-color:var(--ink)}
.search .s-ico{width:20px;height:20px;flex:none;color:var(--mute)}
.search input{height:36px;padding:0;font-size:15px;background:transparent;border:0;border-radius:0;color:var(--ink)}
.search input:focus{outline:none}
.search input::placeholder{color:#9a978d}
.search .s-btn{height:36px;padding:0 4px;background:none;border:0;font-size:14px;font-weight:600;color:var(--accent);letter-spacing:.04em}
.hd{border-bottom:1px solid var(--line3)}
@media (max-width:899px){.hero{padding:26px 0 10px}.search{margin-top:18px;max-width:none}}
/* v2.2 카드 높이 정렬 */
.card>a{flex:1 1 auto}
.card .mt{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.card .nm{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1.4em*2)}
.card .add{margin-top:auto}
@media (max-width:899px){.card .nm{font-size:15px}.card .mt{font-size:12px}}
.card .mt.im{min-height:1.5em;color:#8e8b80}

/* v2.3 접힌 라인업 */
.more-row{margin-top:26px;display:flex;justify-content:center}
.more-btn{height:46px;padding:0 26px;background:transparent;border:1px solid var(--ink);border-radius:2px;font-size:14px;font-weight:600;color:var(--ink);letter-spacing:.04em}
.more-btn:hover{background:var(--ink);color:var(--bg)}
.more-btn b{font-weight:700}
.more-row{grid-column:1/-1;margin-top:6px}
#lineup[data-collapsed="1"] .cat{padding-bottom:40px}

/* lineup page */
.lu-hd{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 40px;padding:40px 0 22px}
.lu-hd h1{margin:0;font-size:30px}
.lu-hd h1 .n{font-family:'Noto Sans KR',sans-serif;font-size:14px;font-weight:500;color:var(--mute);margin-left:8px}
.lu-hd .search{margin:0;flex:1 1 320px;max-width:420px}
@media (max-width:899px){.lu-hd{padding:20px 0 12px}.lu-hd h1{font-size:24px}}

/* hero links */
.hero-links{margin:18px 0 0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px}
.hero-links a{color:var(--sub);text-decoration:none;border-bottom:1px solid transparent}
.hero-links a:hover{color:var(--ink);border-color:var(--ink)}
.hero-links .all-link{color:var(--ink);font-weight:600}
.hero-links .all-link span{color:var(--mute);font-weight:500;margin:0 2px}
/* hamburger + menu */
.hbg{width:44px;height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:none;border:0;padding:0;cursor:pointer}
.hbg span{display:block;width:22px;height:1.6px;background:var(--ink);border-radius:2px}
.menu{position:fixed;top:0;right:0;bottom:0;width:min(340px,86vw);background:var(--bg);z-index:120;transform:translateX(102%);transition:transform .32s cubic-bezier(.22,.7,.2,1);display:flex;flex-direction:column;padding:16px 22px 32px;overflow-y:auto;box-shadow:-12px 0 30px rgba(31,42,36,.12)}
.menu.open{transform:none}
.menu-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.menu-hd .b1{font-size:11px;letter-spacing:.3em;color:var(--accent);font-weight:600}
.menu-x{width:40px;height:40px;background:none;border:0;display:flex;align-items:center;justify-content:center;color:var(--ink)}
.menu>a{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--line3);color:var(--ink);text-decoration:none;font-size:16px}
.menu>a:hover{color:var(--accent)}
.menu>a.strong{font-family:var(--serif);font-weight:700;font-size:18px}
.menu .n{font-size:12px;color:var(--mute)}
.menu-lb{margin:22px 0 2px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:600}
.menu-bd{position:fixed;inset:0;background:rgba(31,42,36,.42);z-index:110;opacity:0;pointer-events:none;transition:opacity .3s}
.menu-bd.open{opacity:1;pointer-events:auto}
@media (max-width:899px){.hd-btns{gap:6px}.hero-links{font-size:13px;gap:6px 16px}}
.brand .b2{white-space:nowrap}
@media (max-width:899px){.brand .b2{font-size:16px}.brand .bm{width:32px;height:32px}.hd-btns .btn-line{padding:0 10px;font-size:13px}.hbg{width:40px}}

/* ===== v3: 이자카야랩 벤치마킹 ===== */
:root{--serif:'Hahmlet','Noto Serif KR',Georgia,serif;--sans:'Pretendard Variable','Pretendard','Noto Sans KR',sans-serif;--gold:#a5813f;--gold2:#c9a05c}
body,.card,.btn,input,button{font-family:var(--sans)}
h1,h2,h3,.hero h1,.brand .b2,.deck .dc-t,.cat-h h1,.sec h2,.card .nm,.lu-hd h1,.menu>a.strong{font-family:var(--serif)}
.hero h1{font-weight:700}
.en,.brand .b1,.brand .b3,.crumb,.dc-en,.card .tg,.menu-lb,.chips .lb{font-family:var(--sans)}
/* quick tiles */
.quick{padding:0 0 10px;margin-top:-6px}
.qk-row{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.qk{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 8px 16px;background:#fff;border:1px solid var(--line3);border-radius:12px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:600}
.qk img{width:40px;height:40px}
.qk:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
.stat-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:14px;padding:18px 10px;background:var(--ink);border-radius:14px;color:#fff}
.stat-bar div{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
.stat-bar b{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--gold2);line-height:1}
.stat-bar span{font-size:12px;color:rgba(255,255,255,.78)}
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:34px 0 10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.trust div{padding:22px 18px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.trust div:first-child{border-left:0;padding-left:0}
.trust b{font-size:15px;font-weight:700}
.trust span{font-size:13px;color:var(--mute);line-height:1.5}
/* process */
.process{background:var(--ink);color:#fff;padding:72px 0;position:relative;overflow:hidden}
.process::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='62' viewBox='0 0 36 62'%3E%3Cg fill='none' stroke='%23a5813f' stroke-width='1' stroke-opacity='.55'%3E%3Cpath d='M18 1L35 11v20L18 41 1 31V11z'/%3E%3Cpath d='M18 41l17 10v20M18 41L1 51v20M35 31l17 10M1 31l-17 10'/%3E%3C/g%3E%3C/svg%3E");background-size:36px 62px}
.process .wrap{position:relative}
.proc-grid{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:center}
.proc-grid h2{margin:0;font-size:26px;line-height:1.45;color:#fff}
.steps{display:flex;justify-content:space-between;gap:6px;flex-wrap:wrap}
.step{flex:1;min-width:120px;display:flex;flex-direction:column;gap:6px;padding:0 10px;border-left:1px solid rgba(255,255,255,.14)}
.step i{font-style:normal;font-size:12px;letter-spacing:.2em;color:var(--gold2)}
.step b{font-size:15px}
.step span{font-size:12.5px;color:rgba(255,255,255,.66);line-height:1.5}
/* consult */
.consult{padding:64px 0}
.cs-grid{display:grid;grid-template-columns:1fr 340px;gap:40px;align-items:center}
.cs-txt h2{margin:0 0 20px;font-size:28px;line-height:1.45}
.cs-txt ol{margin:0;padding:0;list-style:none;counter-reset:c}
.cs-txt li{counter-increment:c;padding:12px 0;border-bottom:1px solid var(--line3);font-size:15px;display:flex;gap:14px}
.cs-txt li::before{content:counter(c,decimal-leading-zero);color:var(--gold);font-size:12px;letter-spacing:.1em;padding-top:3px}
.cs-box{background:#efe8d8;border-radius:14px;padding:28px 26px;display:flex;flex-direction:column;gap:10px;text-align:center}
.cs-t{margin:0;font-family:var(--serif);font-size:19px;font-weight:700}
.cs-s{margin:0 0 8px;font-size:13px;color:var(--mute);line-height:1.6}
.btn-gold{background:var(--gold2);color:#1f2a24}
.btn-gold:hover{background:#b98f4e;color:#1f2a24}
@media (max-width:899px){
  .qk-row{grid-template-columns:repeat(3,1fr);gap:8px}.qk{padding:14px 6px 12px;font-size:13px}.qk img{width:34px;height:34px}
  .stat-bar{grid-template-columns:repeat(2,1fr);gap:12px 4px;padding:16px 8px}.stat-bar b{font-size:18px}
  .trust{grid-template-columns:1fr 1fr;margin-top:22px}.trust div{padding:14px 12px;border-left:0}.trust div:first-child{padding-left:12px}
  .process{padding:44px 0}.proc-grid{grid-template-columns:1fr;gap:24px}.proc-grid h2{font-size:22px}
  .steps{flex-direction:column;gap:14px}.step{border-left:0;padding:0;flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:4px 10px}.step span{flex-basis:100%}
  .consult{padding:40px 0}.cs-grid{grid-template-columns:1fr;gap:24px}.cs-txt h2{font-size:23px}
}

/* v3.1 */
.qk-row{grid-template-columns:repeat(7,1fr)}
.dk-b{width:44px;height:44px;background:none;border:0;border-radius:0;box-shadow:none;color:var(--ink);display:flex;align-items:center;justify-content:center;padding:0}
.dk-b svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.dk-b:hover{color:var(--accent);background:none}
.dk-n{font-size:14px;letter-spacing:.08em}
.deck-nav{gap:6px;margin-top:14px}
.btn-kakao .ico{color:var(--kakao);width:18px;height:18px}
.mbar .btn-kakao{gap:6px}
@media (max-width:899px){.qk-row{grid-template-columns:repeat(4,1fr);gap:8px}.qk{font-size:12.5px;padding:12px 4px 10px}.qk img{width:30px;height:30px}}

.qk-row{grid-template-columns:repeat(6,1fr)}
@media (max-width:899px){.qk-row{grid-template-columns:repeat(3,1fr)}}
