/* 반닫이 생활도구점 — Bandaji General Store
   색: 광택 법랑의 다홍(#a8102a · 다홍 법랑 냄비와 싸리비 자루의 붉은 칠) + 한지 같은 종이 바탕 + 무쇠 먹색 테두리.
   짜임: 무쇠색 테두리 위에 종이 한 장(.sheet)을 얹고, 헤더와 푸터는 테두리 쪽에 둔다. */
:root{
  --bg:#f2efe8;--surface:#faf8f3;--ink:#231e1c;--muted:#6d6661;
  --accent:#a8102a;--accent-dark:#7a0b1e;--accent-soft:#f2e2df;
  --line:#d8d2c8;--dark:#2b2522;--dark-2:#3a332f;--on-dark:#efe9df;--on-dark-2:#bdb3a8;
  --board:#4b3a2e;--board-top:#6a5444;
  --en:"Bona Nova SC","Times New Roman",serif;
  --ko-h:"BookkMyungjo","Pretendard Variable",serif;
  --gut:clamp(16px,3.4vw,48px);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
.reduce,html.reduce{scroll-behavior:auto}
body{margin:0;background:var(--dark);color:var(--ink);font-family:"Pretendard Variable",Pretendard,sans-serif;font-size:15px;line-height:1.7;letter-spacing:-0.015em;word-break:keep-all;overflow-wrap:break-word}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
h1,h2,h3,p{margin:0}
.burger,.mobile-nav{display:none}
.mbar{display:none}

/* ── 헤더: 무쇠색 테두리 위 ───────────────────────── */
.hd{background:var(--dark);color:var(--on-dark)}
.hd-in{display:flex;align-items:center;gap:36px;height:80px;padding:0 34px}
.brand{display:flex;flex-direction:column;justify-content:center;text-decoration:none;color:var(--on-dark);line-height:1}
.brand b{font-family:var(--en);font-weight:400;font-size:22px;letter-spacing:.38em}
.brand small{font-family:var(--ko-h);font-weight:300;font-size:12px;letter-spacing:.32em;color:var(--on-dark-2);margin-top:7px}
.dnav{margin-left:auto;display:flex;gap:6px}
.dnav a{display:inline-flex;align-items:center;min-height:46px;padding:0 14px;text-decoration:none;font-size:15px;font-weight:500;color:var(--on-dark-2)}
.dnav a:hover,.dnav a[aria-current]{color:var(--on-dark)}
.dnav a[aria-current]{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:3px;text-underline-offset:9px}
.hd-tel{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border-radius:2px;background:var(--accent);color:#fff;text-decoration:none;font-size:14px;font-weight:600;letter-spacing:0}
.hd-tel:hover{background:var(--accent-dark)}

/* ── 종이 한 장 ─────────────────────────────────── */
.sheet{display:block;background:var(--bg);margin:0 14px;border-radius:3px 3px 3px 64px;overflow:hidden}
.wrap{padding-left:var(--gut);padding-right:var(--gut)}
.ko-h{font-family:var(--ko-h);font-weight:700;letter-spacing:-0.02em}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:2px;font-size:15px;font-weight:600;text-decoration:none;letter-spacing:-0.01em;white-space:nowrap}
.btn-red{background:var(--accent);color:#fff}
.btn-red:hover{background:var(--accent-dark)}
.btn-line{border:1.5px solid var(--ink);color:var(--ink)}
.btn-line:hover{background:var(--ink);color:var(--bg)}

/* 등장 — 짧게, 움직임 줄이기면 없음 */
.js .pop{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.js .pop.go{opacity:1;transform:none}
.reduce .pop{opacity:1!important;transform:none!important;transition:none!important}

/* ── 처음 화면 ─────────────────────────────────── */
.hero-ph{height:clamp(300px,52vh,520px);background:#2e1f12}
.hero-ph img{width:100%;height:100%;object-fit:cover;object-position:50% 46%}
.hero-txt{padding:20px var(--gut) 24px}
.sign{font-family:var(--en);font-weight:400;font-size:clamp(34px,5.7vw,86px);line-height:1.12;letter-spacing:.11em;text-align:center;white-space:nowrap;padding:14px 0 12px;border-top:5px double var(--ink);border-bottom:5px double var(--ink);color:var(--ink)}
.hero-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px 40px;margin-top:22px}
.hero-ko{grid-column:1;font-family:var(--ko-h);font-weight:700;font-size:clamp(25px,2.9vw,42px);letter-spacing:-0.035em;line-height:1.28}
.hero-desc{grid-column:1;color:var(--muted);font-size:17px;line-height:1.6}
.hero-cta{grid-column:2;grid-row:1/3;display:flex;gap:10px;align-self:center}

.aisle{display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;padding:0 var(--gut);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}
.aisle-t{font-family:var(--ko-h);font-weight:700;font-size:17px;color:var(--accent);margin-right:18px}
.aisle a{display:inline-flex;align-items:center;min-height:58px;padding:0 14px;font-size:19px;font-weight:500;text-decoration:none}
.aisle a+a::before{content:"/";color:var(--line);margin:0 18px 0 -14px;font-weight:300}
.aisle a:hover{color:var(--accent)}

/* 고르는 기준 */
.creed{display:grid;grid-template-columns:7fr 5fr;gap:56px;align-items:end;padding:96px var(--gut) 88px}
.creed h2{font-family:var(--ko-h);font-weight:700;font-size:18px;color:var(--accent);letter-spacing:-0.01em;margin-bottom:22px}
.creed-big{font-family:var(--ko-h);font-weight:300;font-size:clamp(23px,2.35vw,33px);line-height:1.62;letter-spacing:-0.025em}
.creed-big em{font-style:normal;font-weight:700}
.creed-small{margin-top:28px;max-width:560px;color:var(--muted)}
.creed figure{margin:0}
.creed figure img{width:100%;aspect-ratio:4/5;max-height:560px;object-fit:cover;object-position:40% 50%}
.creed figcaption{font-size:13px;color:var(--muted);margin-top:10px}

/* 이번 달 선반 */
.shelf{padding:84px var(--gut) 96px;background:var(--surface);border-top:1px solid var(--line)}
.shelf-h{text-align:center;margin-bottom:46px}
.shelf-h h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(26px,2.6vw,36px);letter-spacing:-0.025em}
.shelf-h p{color:var(--muted);margin-top:8px}
.shelf-row{display:grid;align-items:end;margin-bottom:54px}
.shelf-row:last-child{margin-bottom:0}
.r1{grid-template-columns:.95fr 1.15fr 1.25fr .9fr}
.r2{grid-template-columns:1.2fr .85fr 1.05fr 1fr}
.item{margin:0}
.item-ph{padding:0 12px}
.item-ph img{width:100%;height:var(--h,240px);object-fit:cover}
.board{height:14px;background:var(--board);box-shadow:inset 0 3px 0 var(--board-top),0 8px 10px -8px rgba(35,30,28,.55)}
.item figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 14px 0}
.item figcaption b{font-weight:600;font-size:15px}
.item figcaption span{font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap}
.shelf-more{text-align:center;margin-top:48px}

/* 재료 넷 */
.mats{padding:96px var(--gut) 90px}
.mats-h{max-width:640px;margin-bottom:40px}
.mats-h h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(28px,3vw,42px);letter-spacing:-0.03em;line-height:1.25}
.mats-h p{margin-top:12px;color:var(--muted)}
.mat{display:grid;grid-template-columns:230px 1fr 1fr 210px;gap:36px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}
.mat:last-child{border-bottom:1px solid var(--line)}
.mat h3{display:flex;flex-direction:column;gap:2px}
.mat h3 .ko{font-family:var(--ko-h);font-weight:700;font-size:40px;letter-spacing:-0.03em;line-height:1.1}
.mat h3 .en{font-family:var(--en);font-weight:400;font-size:15px;letter-spacing:.22em;color:var(--muted)}
.mat .care{font-size:14px;color:var(--muted)}
.mat .care b{color:var(--ink);font-weight:600;margin-right:6px}
.mat img{width:100%;height:136px;object-fit:cover}

/* 선물 포장 띠 */
.wrapband{display:grid;grid-template-columns:1fr 1.3fr;align-items:stretch;background:var(--dark);color:var(--on-dark)}
.wrapband img{width:100%;height:100%;min-height:300px;object-fit:cover}
.wrapband-t{padding:64px var(--gut);align-self:center}
.wrapband-t h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(24px,2.4vw,32px);letter-spacing:-0.025em;margin-bottom:16px}
.wrapband-t p{color:var(--on-dark-2);max-width:520px}

/* 가게로 오는 길 */
.visit{display:grid;grid-template-columns:1.1fr 1fr;gap:0;padding:0}
.visit-card{background:var(--accent-soft);padding:72px var(--gut) 76px;border-radius:0 140px 0 0}
.visit-card h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(26px,2.6vw,36px);letter-spacing:-0.025em}
.visit-addr{font-size:19px;font-weight:600;margin-top:18px}
.hours{margin:24px 0 28px;display:grid;grid-template-columns:max-content 1fr;gap:6px 26px}
.hours dt{font-weight:600}
.hours dd{margin:0;font-variant-numeric:tabular-nums}
.visit-cta{display:flex;flex-wrap:wrap;gap:10px}
.visit-ph img{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:50% 88%}

/* ── 물건 페이지 ───────────────────────────────── */
.gd-head{display:grid;grid-template-columns:1fr 1.15fr;gap:40px 64px;align-items:end;padding:72px var(--gut) 40px}
.gd-head h1{font-family:var(--ko-h);font-weight:700;font-size:clamp(36px,4.4vw,62px);letter-spacing:-0.035em;line-height:1.1}
.gd-head h1 small{display:block;font-family:var(--en);font-weight:400;font-size:16px;letter-spacing:.3em;color:var(--muted);margin-bottom:14px}
.gd-head .lead{color:var(--muted);max-width:520px}
.cat{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:0 30px;border-top:5px double var(--ink);padding-top:6px}
.cat a{display:inline-flex;align-items:baseline;gap:8px;min-height:50px;padding-top:12px;text-decoration:none;font-size:17px;font-weight:600}
.cat a span{font-family:var(--en);font-size:15px;color:var(--accent)}
.cat a:hover{color:var(--accent)}
.grp{padding:56px var(--gut) 40px;scroll-margin-top:70px}
.grp-h{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 18px;margin-bottom:26px}
.grp-h h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(24px,2.3vw,32px);letter-spacing:-0.025em}
.grp-h p{font-size:14px;color:var(--ink);opacity:.8}
.g{margin:0}
.g img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#ddd6cb}
.g h3{font-size:16px;font-weight:600;margin-top:14px;letter-spacing:-0.02em}
.g .spec{font-size:13px;color:var(--muted);margin-top:2px}
.g .pr{font-weight:700;color:var(--accent);margin-top:6px;font-variant-numeric:tabular-nums}
.gl-feature{display:grid;grid-template-columns:1.6fr 1fr 1fr;grid-template-rows:auto auto;gap:34px 26px}
.gl-feature .g:first-child{grid-row:span 2}
.gl-feature .g:first-child img{aspect-ratio:auto;height:calc(100% - 92px);min-height:360px;object-position:50% 62%}
.gl-tall{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.gl-tall .g img{aspect-ratio:3/4}
.gl-wide{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.gl-wide .g img{aspect-ratio:3/2}
.gl-pair{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.gl-pair .g{display:grid;grid-template-columns:1.2fr 1fr;gap:22px;align-items:end;background:var(--surface);padding:18px}
.gl-pair .g img{aspect-ratio:1/1}
.gl-five{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.gl-five .g img{aspect-ratio:1/1}
.grp-alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ask{margin:40px var(--gut) 80px;padding:44px clamp(20px,4vw,56px);border:1.5px solid var(--ink);display:grid;grid-template-columns:1fr auto;gap:20px 40px;align-items:center}
.ask h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(22px,2.2vw,30px);letter-spacing:-0.025em}
.ask p{color:var(--muted);margin-top:8px}
.ask-cta{display:flex;flex-wrap:wrap;gap:10px}

/* ── 이용 안내 ─────────────────────────────────── */
.if-head{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.if-title{padding:80px var(--gut) 60px}
.if-title h1{font-family:var(--ko-h);font-weight:700;font-size:clamp(36px,4.4vw,60px);letter-spacing:-0.035em;line-height:1.12}
.if-title p{margin-top:20px;color:var(--muted);max-width:460px}
.if-jump{display:flex;flex-wrap:wrap;gap:0 22px;margin-top:34px}
.if-jump a{display:inline-flex;align-items:center;min-height:46px;font-weight:600;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:6px}
.if-jump a:hover{text-decoration-color:var(--accent)}
.board-hours{background:var(--dark);color:var(--on-dark);padding:70px clamp(24px,4vw,64px) 56px;border-radius:0 0 0 120px}
.board-hours h2{font-family:var(--ko-h);font-weight:700;font-size:20px;letter-spacing:-0.01em;color:var(--on-dark-2);margin-bottom:22px}
.bh-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:16px 0;border-bottom:1px solid rgba(239,233,223,.16)}
.bh-row span{font-size:17px;font-weight:500}
.bh-row b{font-family:var(--en);font-weight:400;font-size:clamp(26px,2.7vw,38px);letter-spacing:.06em;white-space:nowrap}
.bh-row.off b{font-family:var(--ko-h);font-weight:700;font-size:22px;letter-spacing:0;color:#f1a7ad}
.bh-note{margin-top:20px;font-size:14px;color:var(--on-dark-2)}
.buy{padding:90px var(--gut) 70px}
.buy h2,.repair h2,.gift h2,.faq h2,.howto h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(26px,2.6vw,36px);letter-spacing:-0.025em}
.buy-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:34px}
.buy-cols h3{font-size:18px;font-weight:700;margin-bottom:10px;letter-spacing:-0.02em}
.buy-cols p{color:var(--muted)}
.repair{padding:80px var(--gut);background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.care-in{display:grid;grid-template-columns:.8fr 1.6fr;gap:56px}
.care-in>div>p{color:var(--muted);margin-top:14px}
.svc{width:100%;border-collapse:collapse}
.svc th,.svc td{text-align:left;padding:16px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.svc thead th{font-size:13px;color:var(--muted);font-weight:500;border-bottom:1.5px solid var(--ink)}
.svc td:first-child{font-weight:600;width:34%}
.svc td.pr{font-weight:700;color:var(--accent);white-space:nowrap;width:20%}
.svc td:last-child{color:var(--muted)}
.gift{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch}
.gift-t{padding:80px var(--gut)}
.gift-t p{margin-top:16px;color:var(--muted);max-width:480px}
.gift-t ul{margin:22px 0 0;padding:0 0 0 18px}
.gift-t li{margin:6px 0}
.gift img{width:100%;height:100%;min-height:380px;object-fit:cover}
.faq{padding:90px var(--gut) 70px;display:grid;grid-template-columns:.8fr 1.6fr;gap:56px}
.qa{border-top:1px solid var(--line)}
.qa:last-child{border-bottom:1px solid var(--line)}
.qa button{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:62px;padding:12px 0;font-size:16px;font-weight:600;cursor:pointer}
.qa button::after{content:"+";font-family:var(--en);font-size:26px;font-weight:400;color:var(--accent);line-height:1}
.qa.open button::after{content:"−"}
.qa button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.qa .a{display:none;padding:0 0 20px;color:var(--muted)}
.qa.open .a{display:block}
.howto{padding:80px var(--gut) 96px;background:var(--accent-soft);border-radius:0 120px 0 0}
.howto-in{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:30px}
.howto-in h3{font-size:17px;font-weight:700;margin-bottom:8px}
.howto-in p{color:var(--ink);opacity:.82}
.howto-addr{font-size:20px;font-weight:600;margin-top:14px}

/* ── 소개 ─────────────────────────────────────── */
.ab-head{display:grid;grid-template-columns:1.25fr 1fr;align-items:stretch;min-height:560px}
.ab-head img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.ab-title{padding:72px var(--gut) 60px;align-self:end}
.ab-title h1{font-family:var(--ko-h);font-weight:700;font-size:clamp(34px,4vw,56px);letter-spacing:-0.035em;line-height:1.15}
.ab-title p{margin-top:20px;color:var(--muted);max-width:440px}
.ab-title .en-tag{font-family:var(--en);font-size:17px;letter-spacing:.3em;color:var(--accent);margin-bottom:18px}
.chest{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center;padding:100px var(--gut);background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.chest h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(26px,2.6vw,36px);letter-spacing:-0.025em}
.chest p{margin-top:16px;color:var(--muted);max-width:520px}
/* 반닫이 그림 — 위 절반 앞판이 앞으로 젖혀진다 */
.bnd{position:relative;width:min(100%,440px);margin:0 auto;aspect-ratio:11/8;perspective:900px}
.bnd-body{position:absolute;left:0;right:0;top:22%;bottom:8%;background:#5c4130;border-radius:3px;box-shadow:0 18px 26px -18px rgba(35,30,28,.7)}
.bnd-top{position:absolute;left:-3%;right:-3%;top:16%;height:7%;background:#4a3324;border-radius:3px}
.bnd-in{position:absolute;left:6%;right:6%;top:30%;height:30%;background:#2a1d15}
.bnd-in i{position:absolute;bottom:0;height:46%;border-radius:2px 2px 0 0}
.bnd-in i:nth-child(1){left:10%;width:18%;background:#ece7de}
.bnd-in i:nth-child(2){left:34%;width:24%;height:62%;background:var(--accent)}
.bnd-in i:nth-child(3){left:64%;width:22%;height:38%;background:#b08a4a}
.bnd-flap{position:absolute;left:6%;right:6%;top:60%;height:30%;background:#6b4b37;transform-origin:50% 0;transform:rotateX(-58deg);border-radius:0 0 3px 3px;box-shadow:inset 0 -4px 0 rgba(0,0,0,.18)}
.bnd-low{position:absolute;left:6%;right:6%;top:60%;bottom:12%;background:#5c4130;border-top:2px solid #3e2b1f}
.bnd-fit{position:absolute;width:9%;aspect-ratio:1;background:#b08a4a;border-radius:50%;box-shadow:inset 0 0 0 3px #8c6a34}
.bnd-fit.a{left:44%;top:62%}
.bnd-fit.b{left:12%;bottom:14%;width:7%}
.bnd-fit.c{right:12%;bottom:14%;width:7%}
.bnd-legs{position:absolute;left:4%;right:4%;bottom:0;height:9%;display:flex;justify-content:space-between}
.bnd-legs i{width:10%;background:#3e2b1f;border-radius:0 0 2px 2px}
.steps{padding:96px var(--gut)}
.steps h2,.makers h2,.person h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(26px,2.6vw,36px);letter-spacing:-0.025em}
.steps-run{margin-top:30px;font-family:var(--ko-h);font-weight:300;font-size:clamp(21px,2.1vw,29px);line-height:1.75;letter-spacing:-0.025em;max-width:1040px}
.steps-run b{font-weight:700;color:var(--accent)}
.makers{padding:20px var(--gut) 96px}
.makers-t{width:100%;border-collapse:collapse;margin-top:28px}
.makers-t th,.makers-t td{text-align:left;padding:18px 12px;border-bottom:1px solid var(--line);vertical-align:baseline}
.makers-t thead th{font-size:13px;font-weight:500;color:var(--muted);border-bottom:1.5px solid var(--ink)}
.makers-t td:first-child{font-family:var(--ko-h);font-weight:700;font-size:19px;width:22%}
.makers-t td:last-child{color:var(--muted)}
.person{display:grid;grid-template-columns:1fr 1.2fr;align-items:stretch;background:var(--accent-soft);color:var(--ink)}
.person img{width:100%;height:100%;min-height:420px;object-fit:cover}
.person-t{padding:80px var(--gut);align-self:center}
.person-t p{margin-top:16px;color:var(--ink);opacity:.82;max-width:520px}
.person-t .sig{margin-top:26px;opacity:1;font-weight:700;color:var(--accent-dark)}

/* ── 소식 ─────────────────────────────────────── */
.nw-head{padding:70px var(--gut) 0;display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px 30px}
.nw-head h1{font-family:var(--ko-h);font-weight:700;font-size:clamp(34px,4vw,56px);letter-spacing:-0.035em;line-height:1.2}
.nw-head p{color:var(--muted)}
.feat{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center;margin:34px var(--gut) 0;padding-bottom:60px;border-bottom:5px double var(--ink)}
.feat img{width:100%;aspect-ratio:16/10;object-fit:cover}
.date{font-family:var(--en);font-size:16px;letter-spacing:.12em;color:var(--accent)}
.feat h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(25px,2.6vw,36px);letter-spacing:-0.025em;line-height:1.3;margin-top:12px}
.feat p{margin-top:16px;color:var(--muted)}
.feat .kind{display:block;font-size:13px;font-weight:600;margin-top:20px}
.posts{padding:20px var(--gut) 60px}
.post{display:grid;grid-template-columns:150px 90px 1fr 180px;gap:28px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}
.post .kind{font-size:14px;font-weight:600;color:var(--ink)}
.post h3{font-size:19px;font-weight:700;letter-spacing:-0.02em;line-height:1.4}
.post p{margin-top:8px;color:var(--muted)}
.post img{width:100%;aspect-ratio:4/3;object-fit:cover}
.post:not(:has(img))>div{grid-column:3/-1}
.sub{margin:0 var(--gut) 90px;padding:48px clamp(20px,4vw,56px);background:var(--accent-soft);border-radius:0 0 0 90px;display:grid;grid-template-columns:1fr auto;gap:20px 40px;align-items:center}
.sub h2{font-family:var(--ko-h);font-weight:700;font-size:clamp(22px,2.2vw,30px);letter-spacing:-0.025em}
.sub p{margin-top:8px}

/* ── 푸터: 무쇠색 테두리 위 ─────────────────────── */
.ft{background:var(--dark);color:var(--on-dark-2)}
.ft-in{padding:60px 34px 30px;display:grid;grid-template-columns:1.2fr 1fr 1.4fr;gap:34px 48px}
.ft-brand b{display:block;font-family:var(--en);font-weight:400;font-size:30px;letter-spacing:.3em;color:var(--on-dark);line-height:1.1}
.ft-brand span{display:block;font-family:var(--ko-h);font-weight:300;font-size:14px;letter-spacing:.2em;margin-top:10px}
.ft nav{display:flex;flex-direction:column;align-items:flex-start}
.ft nav a{display:inline-flex;align-items:center;min-height:46px;text-decoration:none;color:var(--on-dark);font-size:15px}
.ft nav a:hover{color:#fff;text-decoration:underline}
.ft-addr{font-size:14px;line-height:1.9}
.ft-addr a{display:inline-flex;align-items:center;min-height:46px;color:var(--on-dark)}
.ft-legal{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:4px 18px;padding-top:22px;border-top:1px solid rgba(239,233,223,.14);font-size:12.5px;color:#9a8f85}

/* ── 좁은 화면 ─────────────────────────────────── */
@media (max-width:1100px){
  .mat{grid-template-columns:170px 1fr 160px}
  .mat .care{grid-column:2/3}
  .mat img{grid-row:1/3;grid-column:3}
  .gl-five{grid-template-columns:repeat(3,1fr)}
  .post{grid-template-columns:120px 1fr 160px}
  .post .kind{display:none}
  .post:not(:has(img))>div{grid-column:2/-1}
}
@media (max-width:900px){
  .sign{white-space:normal;font-size:clamp(34px,8.6vw,64px);letter-spacing:.1em}
  .hero-row{grid-template-columns:1fr;gap:12px}
  .hero-cta{grid-column:1;grid-row:auto;margin-top:6px}
  .creed,.visit,.wrapband,.gd-head,.if-head,.care-in,.gift,.faq,.ab-head,.chest,.person,.feat{grid-template-columns:1fr}
  .r1,.r2{grid-template-columns:1fr 1fr;row-gap:34px}
  .gl-feature{grid-template-columns:1fr 1fr}
  .gl-feature .g:first-child{grid-row:auto;grid-column:1/-1}
  .gl-feature .g:first-child img{height:auto;min-height:0;aspect-ratio:4/3}
  .gl-tall{grid-template-columns:1fr 1fr}
  .gl-wide{grid-template-columns:1fr 1fr}
  .gl-pair{grid-template-columns:1fr}
  .buy-cols,.howto-in{grid-template-columns:1fr;gap:26px}
  .board-hours{border-radius:0 0 0 64px}
  .visit-card{border-radius:0 80px 0 0}
  .visit-ph img{min-height:260px}
  .ab-head img{max-height:420px}
  .ft-in{grid-template-columns:1fr 1fr}
  .ft-brand{grid-column:1/-1}
  .ask,.sub{grid-template-columns:1fr}
}
@media (max-width:760px){
  .dnav,.hd-tel{display:none}
  .hd-in{height:62px;padding:0 6px 0 18px;gap:10px;justify-content:space-between}
  .brand b{font-size:18px;letter-spacing:.3em}
  .brand small{font-size:11px;margin-top:5px}
  .burger{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:46px;min-height:46px;background:none;border:0;color:var(--on-dark);cursor:pointer}
  .burger i{display:block;width:24px;height:2px;background:currentColor}
  .mobile-nav.open{display:flex;flex-direction:column;position:fixed;top:var(--mm-top,62px);left:0;right:0;bottom:0;z-index:60;overflow:auto;background:var(--bg);padding:10px 22px 90px}
  .mobile-nav a{display:flex;align-items:center;min-height:58px;border-bottom:1px solid var(--line);text-decoration:none;font-family:var(--ko-h);font-weight:700;font-size:20px;color:var(--ink)}
  .mobile-nav a.mtel{border:0;margin-top:18px;font-family:inherit;font-size:16px;color:var(--accent)}
  .hd .brand{display:inline-flex;min-height:46px}
  .mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--dark);border-top:1px solid rgba(239,233,223,.14)}
  .mbar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:56px;color:var(--on-dark);text-decoration:none;font-size:15px;font-weight:600}
  .mbar a.tel{background:var(--accent);color:#fff}
  body{padding-bottom:64px}
  .sheet{margin:0 6px;border-radius:3px 3px 3px 36px}
  .hero-ph{height:300px}
  .hero-txt{padding:20px 16px 26px}
  .sign{font-size:clamp(30px,9.4vw,46px);letter-spacing:.08em;padding:10px 0 8px}
  .hero-ko{font-size:21px}
  .hero-cta{flex-wrap:wrap}
  .hero-cta .btn{flex:1}
  .aisle{padding:6px 16px;gap:0}
  .aisle-t{width:100%;margin:8px 0 0}
  .aisle a{min-height:46px;padding:0 10px 0 0}
  .aisle a+a::before{margin:0 10px 0 0}
  .creed{padding:64px 16px 56px;gap:30px}
  .shelf{padding:60px 16px 64px}
  .item-ph{padding:0 6px}
  .item-ph img{height:calc(var(--h,240px) * .62)}
  .item figcaption{flex-direction:column;gap:0;padding:10px 8px 0}
  .mats{padding:64px 16px}
  .mat{grid-template-columns:1fr 112px;gap:12px 18px}
  .mat h3{grid-column:1}
  .mat h3 .ko{font-size:32px}
  .mat p{grid-column:1/-1}
  .mat .care{grid-column:1/-1}
  .mat img{grid-row:1;grid-column:2;height:84px}
  .wrapband-t{padding:48px 16px}
  .wrapband img{min-height:220px}
  .visit-card{padding:56px 16px}
  .gd-head{padding:52px 16px 24px}
  .cat{gap:0 18px}
  .cat a{min-height:46px;font-size:16px}
  .grp{padding:44px 16px 30px}
  .gl-five{grid-template-columns:1fr 1fr}
  .gl-pair .g{grid-template-columns:1fr;padding:14px}
  .ask{margin:30px 16px 60px;padding:32px 20px}
  .if-title{padding:52px 16px 40px}
  .board-hours{padding:48px 20px 40px}
  .bh-row b{font-size:24px}
  .buy,.repair,.faq,.howto{padding:60px 16px}
  .svc thead{display:none}
  .svc,.svc tbody,.svc tr,.svc td{display:block;width:auto!important}
  .svc tr{padding:14px 0;border-bottom:1px solid var(--line)}
  .svc td{border:0;padding:2px 0}
  .gift-t{padding:56px 16px}
  .gift img{min-height:240px}
  .ab-title{padding:44px 16px 48px}
  .chest{padding:64px 16px;gap:40px}
  .steps{padding:64px 16px}
  .makers{padding:10px 16px 64px}
  .makers-t thead{display:none}
  .makers-t,.makers-t tbody,.makers-t tr,.makers-t td{display:block;width:auto!important}
  .makers-t tr{padding:16px 0;border-bottom:1px solid var(--line)}
  .makers-t td{border:0;padding:2px 0}
  .person-t{padding:56px 16px}
  .person img{min-height:260px}
  .nw-head{padding:52px 16px 0}
  .feat{margin:26px 16px 0;gap:22px;padding-bottom:44px}
  .posts{padding:10px 16px 40px}
  .post{grid-template-columns:1fr 104px;gap:6px 16px;padding:24px 0}
  .post .date{grid-column:1/-1}
  .post img{grid-row:2;grid-column:2}
  .post>div{grid-row:2;grid-column:1}
  .post:not(:has(img))>div{grid-column:1/-1}
  .sub{margin:0 16px 60px;padding:36px 20px}
  .ft-in{grid-template-columns:1fr;padding:48px 20px 26px}
  .ft-brand b{font-size:24px}
}
