/* 곰바로곰탕 디자인 시스템 — 모든 페이지 공용 (2026-09-26)
   톤: 상아색 종이 · 무쇠 검정 · 놋쇠 금색. 제목은 명조, 본문은 프리텐다드, 숫자·라틴은 코모란트 */
:root{
  --ivory:#F3EEE4; --paper:#FBF8F2; --bone:#E9E1D2; --line:#D9CFBE; --line2:#C7B99F;
  --ink:#191512; --ink2:#4A423A; --ink3:#7A6F62;
  --iron:#12100E; --iron2:#1D1A17; --iron3:#2A2622;
  --brass:#B08A4E; --brass2:#8E6C36; --brass3:#D9BE8A; --ember:#8E3A22;
  --serif:'Noto Serif KR','Nanum Myeongjo',Batang,serif;
  --sans:'Pretendard Variable',Pretendard,-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;
  --latin:'Cormorant Garamond','Noto Serif KR',Georgia,serif;
  --w:1200px; --wn:760px; --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.75;word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;padding-bottom:calc(66px + env(safe-area-inset-bottom,0px))}
@media(min-width:900px){body{padding-bottom:0}}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
[hidden]{display:none!important}
::selection{background:var(--brass3);color:var(--iron)}
.w{max-width:var(--w);margin:0 auto;padding:0 24px}
.wn{max-width:var(--wn);margin:0 auto;padding:0 24px}
.serif{font-family:var(--serif)}
.latin{font-family:var(--latin)}
.eyebrow{font-family:var(--latin);font-size:15px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass2);font-weight:600}
.eyebrow.lt{color:var(--brass3)}
.rule{display:block;width:44px;height:1px;background:var(--brass);margin:18px 0}
.num{font-family:var(--latin);font-weight:500;font-feature-settings:"lnum"}

/* 언어 안내 띠 */
#langbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--iron);color:var(--bone);font-size:13.5px;padding:10px 20px}
#langbar a{color:var(--iron);background:var(--brass3);border-radius:999px;padding:4px 12px;text-decoration:none;font-weight:700}
#langbar button{margin-left:auto;color:var(--ink3);font-size:20px;line-height:1}

/* 상단 정보 띠 */
.util{background:var(--iron);color:#CFC4B1;font-size:12.5px;letter-spacing:.02em}
.util .w{display:flex;align-items:center;gap:18px;height:36px}
.util a{text-decoration:none;color:#E9DFCC}
.util .sp{flex:1}
.open{display:inline-flex;align-items:center;gap:7px;font-weight:600}
.open i{width:7px;height:7px;border-radius:50%;background:#7FB38A;box-shadow:0 0 0 3px rgba(127,179,138,.18)}
.open.off i{background:#B98D6B;box-shadow:0 0 0 3px rgba(185,141,107,.18)}
@media(max-width:700px){.util .hide-m{display:none}}

/* 헤더 */
.hdr{position:sticky;top:0;z-index:60;background:rgba(251,248,242,.88);backdrop-filter:saturate(1.2) blur(14px);-webkit-backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid rgba(199,185,159,.45)}
.hdr .w{display:flex;align-items:center;gap:28px;height:74px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand svg{width:34px;height:34px}
.brand b{font-family:var(--serif);font-size:21px;font-weight:700;letter-spacing:-.01em}
.brand small{display:block;font-family:var(--latin);font-size:11px;letter-spacing:.32em;color:var(--brass2);margin-top:-3px}
.nav{display:flex;gap:26px;margin-left:10px}
.nav a{text-decoration:none;font-size:14.5px;color:var(--ink2);font-weight:500;position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--brass);transition:right .35s var(--ease)}
.nav a:hover::after,.nav a[aria-current]::after{right:0}
.hdr .sp{flex:1}
.langs{display:flex;gap:2px;font-family:var(--latin);font-size:14px;letter-spacing:.06em}
.langs a{text-decoration:none;color:var(--ink3);padding:4px 7px}
.langs a[aria-current]{color:var(--ink);font-weight:700}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:14.5px;font-weight:600;letter-spacing:.01em;text-decoration:none;padding:14px 24px;border:1px solid var(--ink);color:var(--ink);background:transparent;transition:all .3s var(--ease);min-height:48px}
.btn:hover{background:var(--ink);color:var(--paper)}
.btn.solid{background:var(--ink);color:var(--paper)}
.btn.solid:hover{background:var(--brass2);border-color:var(--brass2)}
.btn.brass{background:var(--brass);border-color:var(--brass);color:#fff}
.btn.brass:hover{background:var(--brass2);border-color:var(--brass2)}
.btn.ghost{border-color:rgba(255,255,255,.55);color:#fff}
.btn.ghost:hover{background:#fff;color:var(--iron)}
.btn.sm{padding:10px 16px;min-height:40px;font-size:13.5px}
.btn .ar{font-family:var(--latin);font-size:18px;line-height:1}
@media(max-width:899px){.nav,.hdr .langs,.hdr .btn{display:none}.hdr .w{height:62px}.brand b{font-size:19px}}
.menu-t{display:none;margin-left:auto;width:40px;height:40px;align-items:center;justify-content:center}
.menu-t span{width:20px;height:1px;background:var(--ink);position:relative;display:block}
.menu-t span::before,.menu-t span::after{content:"";position:absolute;left:0;width:20px;height:1px;background:var(--ink)}
.menu-t span::before{top:-6px}.menu-t span::after{top:6px}
@media(max-width:899px){.menu-t{display:inline-flex}}
.drawer{position:fixed;inset:0;z-index:80;background:var(--iron);color:var(--bone);display:flex;flex-direction:column;padding:26px 28px;gap:6px;transform:translateY(-100%);transition:transform .45s var(--ease)}
.drawer.on{transform:none}
.drawer a{font-family:var(--serif);font-size:26px;text-decoration:none;padding:10px 0;border-bottom:1px solid var(--iron3)}
.drawer .x{align-self:flex-end;font-size:30px;color:var(--brass3)}
.drawer .l2{display:flex;gap:14px;margin-top:18px;font-family:var(--latin);letter-spacing:.1em}
.drawer .l2 a{font-size:16px;border:0}

/* 섹션 공통 */
.sec{padding:128px 0}
.sec.tight{padding:88px 0}
.sec.ivory{background:var(--ivory)}
.sec.dark{background:var(--iron);color:var(--bone)}
.sec.dark .ink2{color:#B9AE9C}
@media(max-width:700px){.sec{padding:84px 0}.sec.tight{padding:64px 0}}
.sh{display:grid;grid-template-columns:180px 1fr;gap:28px;margin-bottom:56px;align-items:end}
.sh .idx{font-family:var(--latin);font-size:15px;letter-spacing:.2em;color:var(--brass2)}
.sh h2{font-family:var(--serif);font-weight:600;font-size:clamp(30px,4.4vw,52px);line-height:1.22;letter-spacing:-.02em}
.sh p{margin-top:16px;color:var(--ink2);font-size:17px;max-width:620px}
.dark .sh h2{color:#F4ECDD}.dark .sh p{color:#B9AE9C}.dark .sh .idx{color:var(--brass3)}
@media(max-width:800px){.sh{grid-template-columns:1fr;gap:10px;margin-bottom:38px}}
.lead{font-family:var(--serif);font-size:clamp(19px,2.2vw,23px);line-height:1.75;color:var(--ink)}
.ink2{color:var(--ink2)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* 히어로 */
.hero{position:relative;min-height:calc(100svh - 110px);display:flex;align-items:flex-end;background:var(--iron);color:#fff;overflow:hidden}
.hero .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78;transform:scale(1.04)}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,16,14,.35) 0%,rgba(18,16,14,0) 34%,rgba(18,16,14,.2) 55%,rgba(18,16,14,.92) 100%),linear-gradient(90deg,rgba(18,16,14,.6),rgba(18,16,14,0) 60%)}
.hero .in{position:relative;z-index:2;width:100%;padding-bottom:88px}
.hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(44px,7.6vw,104px);line-height:1.08;letter-spacing:-.035em;margin:22px 0 26px}
.hero h1 em{font-style:normal;color:var(--brass3)}
.hero p.sub{max-width:560px;font-size:clamp(16px,1.6vw,18.5px);color:#E3D9C7;line-height:1.8}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.hero .meta{position:absolute;right:24px;bottom:92px;z-index:2;text-align:right;font-family:var(--latin);letter-spacing:.18em;font-size:13px;color:#CDBFA6;writing-mode:vertical-rl}
.scroll{position:absolute;left:50%;bottom:22px;z-index:2;width:1px;height:46px;background:linear-gradient(var(--brass3),transparent);animation:sc 2.4s infinite}
@keyframes sc{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media(max-width:700px){.hero .meta{display:none}.hero .in{padding-bottom:64px}}

/* 숫자 띠 */
.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats div{padding:34px 24px;border-right:1px solid var(--line)}
.stats div:last-child{border-right:0}
.stats b{display:block;font-family:var(--latin);font-weight:500;font-size:clamp(44px,5vw,64px);line-height:1;color:var(--ink)}
.stats b sup{font-size:.36em;vertical-align:top;margin-left:4px;color:var(--brass2)}
.stats span{display:block;margin-top:12px;font-size:14px;color:var(--ink2)}
@media(max-width:800px){.stats{grid-template-columns:repeat(2,1fr)}.stats div:nth-child(2){border-right:0}.stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}}
.press{display:flex;flex-wrap:wrap;gap:12px 34px;align-items:center;justify-content:center;padding:26px 0;color:var(--ink3);font-size:14px}
.press b{font-family:var(--serif);color:var(--ink);font-weight:600}

/* 분할 레이아웃 */
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
.split.rev{grid-template-columns:.95fr 1.05fr}
.split .media{position:relative}
.split .media img,.split .media video{width:100%;aspect-ratio:4/5;object-fit:cover}
.split .media .tag{position:absolute;left:-1px;bottom:-1px;background:var(--paper);padding:14px 20px;font-family:var(--latin);letter-spacing:.16em;font-size:13px;color:var(--brass2)}
@media(max-width:900px){.split,.split.rev{grid-template-columns:1fr;gap:40px}}
.quote{font-family:var(--serif);font-size:clamp(22px,2.6vw,30px);line-height:1.6;font-weight:500;padding-left:26px;border-left:1px solid var(--brass);margin:34px 0}
.quote cite{display:block;margin-top:14px;font-family:var(--sans);font-style:normal;font-size:14px;color:var(--ink3)}
.principles{list-style:none;display:grid;gap:0;border-top:1px solid var(--line)}
.principles li{display:grid;grid-template-columns:56px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.principles li .n{font-family:var(--latin);font-size:22px;color:var(--brass2)}
.principles li b{font-family:var(--serif);font-size:18px;font-weight:600}
.principles li span{display:block;color:var(--ink2);font-size:15px}

/* 과정 영상 띠 */
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.process figure{position:relative}
.process video{width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--iron2)}
.process figcaption{margin-top:14px}
.process figcaption .n{font-family:var(--latin);color:var(--brass3);letter-spacing:.14em;font-size:13px}
.process figcaption b{display:block;font-family:var(--serif);font-size:19px;font-weight:600;color:#F4ECDD;margin-top:4px}
.process figcaption span{color:#A99E8B;font-size:14px}
@media(max-width:900px){.process{grid-template-columns:repeat(2,1fr)}}

/* 오늘의 혜택(DB) */
.evgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.ecard{background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column}
.ecard .thumb{position:relative;aspect-ratio:4/3;background:var(--iron2);overflow:hidden}
.ecard .thumb img,.ecard .thumb video{width:100%;height:100%;object-fit:cover}
.ecard .thumb .emj{display:grid;place-items:center;height:100%;font-size:54px}
.ecard .badge{position:absolute;left:14px;top:14px;background:var(--paper);color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.06em;padding:6px 10px}
.ecard .badge.live{background:var(--ember);color:#fff}
.ecard .ov{position:absolute;left:0;right:0;bottom:0;padding:18px;background:linear-gradient(transparent,rgba(18,16,14,.85));color:#fff}
.ecard .ov h3{font-family:var(--serif);font-size:21px;font-weight:600}
.ecard .ov .sub{font-size:13.5px;color:#E3D9C7}
.ecard .bd{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.ecard .cd{font-family:var(--latin);font-size:17px;letter-spacing:.04em;color:var(--ember)}
.ecard .cd.over{color:var(--ink3)}
.ecard .bene{font-weight:600}
.ecard p{color:var(--ink2);font-size:15px}
.ecard .go{margin-top:auto;align-self:flex-start;text-decoration:none;border-bottom:1px solid var(--ink);font-weight:600;font-size:14px;padding-bottom:2px}

/* 메뉴 */
.menu-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:start}
.menu-feature .media video{width:100%;aspect-ratio:3/4;object-fit:cover}
@media(max-width:900px){.menu-feature{grid-template-columns:1fr;gap:36px}}
.mlist{list-style:none}
.mlist li{border-bottom:1px solid var(--line)}
.mlist a{display:grid;grid-template-columns:1fr auto;gap:6px 24px;padding:24px 0;text-decoration:none;align-items:baseline}
.mlist a:hover .nm{color:var(--brass2)}
.mlist .nm{font-family:var(--serif);font-size:clamp(20px,2.2vw,24px);font-weight:600;transition:color .3s}
.mlist .pr{font-family:var(--latin);font-size:22px;font-weight:500;white-space:nowrap}
.mlist .ds{grid-column:1/-1;color:var(--ink2);font-size:15px}
.mlist .sig{display:inline-block;margin-left:10px;font-family:var(--latin);font-size:12px;letter-spacing:.18em;color:var(--brass2);vertical-align:middle}
.mnote{margin-top:22px;font-size:14px;color:var(--ink3)}

/* 칼럼 카드 */
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}
@media(max-width:900px){.cgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cgrid{grid-template-columns:1fr}}
.ccard{text-decoration:none;display:flex;flex-direction:column;gap:14px}
.ccard .im{overflow:hidden;background:var(--iron2)}
.ccard img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform 1.2s var(--ease)}
.ccard:hover img{transform:scale(1.04)}
.ccard .no{font-family:var(--latin);letter-spacing:.16em;font-size:13px;color:var(--brass2)}
.dark .ccard .no{color:var(--brass3)}
.ccard h3{font-family:var(--serif);font-size:22px;font-weight:600;line-height:1.4}
.dark .ccard h3{color:#F4ECDD}
.ccard p{color:var(--ink2);font-size:15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dark .ccard p{color:#A99E8B}

/* 후기 */
.rvgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:900px){.rvgrid{grid-template-columns:1fr}}
.rv{background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column;text-decoration:none}
.rv .rvimg{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--bone)}
.rv .rvimg img{width:100%;height:100%;object-fit:cover}
.rv .rvplay{position:absolute;right:14px;bottom:14px;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.9);display:grid;place-items:center;font-size:13px}
.rv .who{padding:20px 22px 0;font-size:13px;color:var(--ink3);display:flex;gap:10px;align-items:center}
.rv .who .b{font-family:var(--latin);letter-spacing:.1em;color:var(--brass2)}
.rv p{padding:10px 22px 0;font-family:var(--serif);font-size:18px;line-height:1.7}
.rv .rsrc{padding:12px 22px 22px;font-size:12.5px;color:var(--ink3);margin-top:auto}

/* 영상 벽 */
.wall{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.wall figure{position:relative;overflow:hidden;background:var(--iron2)}
.wall video{width:100%;aspect-ratio:9/14;object-fit:cover}
.wall figcaption{position:absolute;left:0;right:0;bottom:0;padding:12px 14px;font-size:13px;color:#F4ECDD;background:linear-gradient(transparent,rgba(0,0,0,.7))}
@media(max-width:800px){.wall{grid-template-columns:repeat(2,1fr)}}

/* 단골 등록 */
.join{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
@media(max-width:900px){.join{grid-template-columns:1fr;gap:32px}}
.form{display:grid;gap:12px}
.form input[type=text],.form input[type=tel]{font:inherit;font-size:16px;padding:16px 18px;border:1px solid var(--line2);background:var(--paper);color:var(--ink);outline:none}
.form input:focus{border-color:var(--ink)}
.form label{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--ink2)}
.dark .form input[type=text],.dark .form input[type=tel]{background:var(--iron2);border-color:var(--iron3);color:#F4ECDD}
.dark .form label{color:#B9AE9C}

/* FAQ */
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;font-family:var(--serif);font-size:19px;font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--latin);font-size:26px;line-height:1;color:var(--brass2);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{margin-top:12px;color:var(--ink2);max-width:760px}

/* 오시는 길 */
.visit{display:grid;grid-template-columns:1.1fr .9fr;gap:0;border:1px solid var(--line)}
.visit .card{padding:48px;background:var(--paper)}
.visit .card+.card{border-left:1px solid var(--line);background:var(--ivory)}
.visit dl{display:grid;grid-template-columns:110px 1fr;gap:16px 20px;margin-top:22px}
.visit dt{font-family:var(--latin);letter-spacing:.14em;font-size:13px;color:var(--brass2);padding-top:3px}
.visit dd{font-size:16px}
.visit .addr{font-family:var(--serif);font-size:24px;font-weight:600;line-height:1.5}
.visit .btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
@media(max-width:900px){.visit{grid-template-columns:1fr}.visit .card{padding:30px 24px}.visit .card+.card{border-left:0;border-top:1px solid var(--line)}}

/* 푸터 */
.ftr{background:var(--iron);color:#A99E8B;padding:88px 0 40px;font-size:14px}
.ftr .top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px;padding-bottom:56px;border-bottom:1px solid var(--iron3)}
.ftr .bn{font-family:var(--serif);font-size:30px;color:#F4ECDD;font-weight:600}
.ftr .bn small{display:block;font-family:var(--latin);font-size:13px;letter-spacing:.3em;color:var(--brass3);margin-top:6px}
.ftr h4{font-family:var(--latin);letter-spacing:.2em;font-size:13px;color:var(--brass3);font-weight:600;margin-bottom:14px}
.ftr a{text-decoration:none;color:#D8CDBA;display:block;padding:3px 0}
.ftr a:hover{color:#fff}
.ftr .bot{padding-top:28px;display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;font-size:12.5px;color:#7F7568}
@media(max-width:900px){.ftr .top{grid-template-columns:1fr 1fr}.ftr .top>div:first-child{grid-column:1/-1}}

/* 모바일 하단 바 */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:70;display:grid;grid-template-columns:1fr 1fr 1.2fr;background:var(--iron);padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid var(--iron3)}
.mbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:62px;text-decoration:none;color:#E9DFCC;font-size:12.5px;font-weight:600;border-right:1px solid var(--iron3)}
.mbar a:last-child{border-right:0;background:var(--brass);color:#fff}
.mbar a .i{font-family:var(--latin);font-size:18px;line-height:1}
@media(min-width:900px){.mbar{display:none}}
.talk{position:fixed;right:28px;bottom:28px;z-index:65;background:#FEE500;color:#3A1D1D;border-radius:999px;padding:14px 20px;font-weight:700;font-size:14px;text-decoration:none;box-shadow:0 14px 40px rgba(0,0,0,.18);display:none}
@media(min-width:900px){.talk{display:inline-flex}}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:var(--iron);color:#fff;padding:12px 18px;font-size:14px;z-index:90;display:none}

/* ----- 칼럼(기사) ----- */
.crumb{font-size:13px;color:var(--ink3);letter-spacing:.02em}
.crumb a{text-decoration:none;border-bottom:1px solid var(--line2)}
.art-h{padding:72px 0 40px}
.art-h .series{font-family:var(--latin);letter-spacing:.2em;font-size:14px;color:var(--brass2);margin-top:26px}
.art-h h1{font-family:var(--serif);font-weight:600;font-size:clamp(34px,5.2vw,64px);line-height:1.2;letter-spacing:-.03em;margin:18px 0 22px}
.art-h .dek{font-family:var(--serif);font-size:clamp(18px,2vw,22px);color:var(--ink2);line-height:1.7;max-width:760px}
.art-h .by{margin-top:26px;font-size:13.5px;color:var(--ink3);display:flex;gap:14px;flex-wrap:wrap}
.hero-fig{margin:0 auto;max-width:1400px}
.hero-fig img{width:100%;aspect-ratio:21/10;object-fit:cover}
@media(max-width:700px){.hero-fig img{aspect-ratio:3/2}}
figcaption.cap{font-size:13px;color:var(--ink3);padding:12px 24px 0;max-width:var(--w);margin:0 auto}
figcaption.cap .ai{font-family:var(--latin);letter-spacing:.12em;color:var(--brass2);margin-right:8px}
.logic{margin:56px auto 8px;border:1px solid var(--line2);background:var(--ivory);padding:30px 32px}
.logic h2{font-family:var(--latin);letter-spacing:.2em;font-size:14px;color:var(--brass2);font-weight:600}
.logic ol{list-style:none;counter-reset:l;margin-top:14px;display:grid;gap:12px}
.logic li{counter-increment:l;display:grid;grid-template-columns:34px 1fr;gap:10px;font-size:16px}
.logic li::before{content:counter(l,decimal-leading-zero);font-family:var(--latin);font-size:19px;color:var(--brass2);line-height:1.5}
.prose{font-family:var(--serif);font-size:clamp(17.5px,1.9vw,19.5px);line-height:2;color:#221D19}
.prose p{margin:0 0 1.4em}
.prose>p:first-of-type::first-letter{float:left;font-size:3.6em;line-height:.9;margin:.08em .12em 0 0;color:var(--brass2);font-weight:600}
.prose h2{font-family:var(--serif);font-weight:600;font-size:clamp(23px,2.6vw,29px);line-height:1.45;margin:2.2em 0 .8em;letter-spacing:-.02em}
.prose h2::before{content:"";display:block;width:28px;height:1px;background:var(--brass);margin-bottom:18px}
.prose blockquote{margin:2em 0;padding:8px 0 8px 28px;border-left:1px solid var(--brass);font-size:clamp(21px,2.4vw,27px);line-height:1.65;font-weight:600;color:var(--ink)}
.prose figure{margin:2.4em -8vw}
.prose figure img{width:100%;aspect-ratio:3/2;object-fit:cover}
.prose figure figcaption{font-family:var(--sans);font-size:13px;color:var(--ink3);padding:12px 8vw 0}
@media(max-width:900px){.prose figure{margin:2em -24px}.prose figure figcaption{padding:10px 24px 0}}
.prose .box{font-family:var(--sans);border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:24px 0;margin:2.4em 0}
.prose .box h3{font-family:var(--latin);letter-spacing:.18em;font-size:13px;color:var(--brass2);font-weight:600;margin-bottom:10px}
.prose .box ul{list-style:none;display:grid;gap:8px;font-size:16px;line-height:1.7}
.prose .box li::before{content:"—";color:var(--brass);margin-right:10px}
.vid{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center;background:var(--iron);color:var(--bone);padding:28px;margin:56px auto 0}
.vid video{width:100%;aspect-ratio:9/16;object-fit:cover;background:#000}
.vid .t{font-family:var(--latin);letter-spacing:.2em;font-size:13px;color:var(--brass3)}
.vid b{display:block;font-family:var(--serif);font-size:22px;font-weight:600;color:#F4ECDD;margin:6px 0 8px}
.vid p{color:#B9AE9C;font-size:15px}
@media(max-width:640px){.vid{grid-template-columns:1fr}.vid video{max-width:240px}}
.src{margin-top:48px;padding-top:22px;border-top:1px solid var(--line);font-size:13.5px;color:var(--ink3)}
.src h3{font-family:var(--latin);letter-spacing:.18em;font-size:13px;color:var(--brass2);font-weight:600;margin-bottom:10px}
.src ol{padding-left:18px;display:grid;gap:4px}
.src a{color:var(--ink2)}
.pn{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:72px}
.pn a{padding:28px 0;text-decoration:none}
.pn a+a{text-align:right;border-left:1px solid var(--line);padding-left:24px}
.pn small{font-family:var(--latin);letter-spacing:.16em;color:var(--brass2);font-size:13px}
.pn b{display:block;font-family:var(--serif);font-size:19px;font-weight:600;margin-top:6px}
.toc{display:grid;grid-template-columns:repeat(5,1fr);gap:28px}
.toc h4{font-family:var(--latin);letter-spacing:.14em;font-size:13px;color:var(--brass3);font-weight:600;border-bottom:1px solid var(--iron3);padding-bottom:10px;margin-bottom:12px}
.toc h4 span{display:block;font-family:var(--serif);letter-spacing:0;font-size:18px;color:#F4ECDD;margin-top:4px}
.toc a{display:block;text-decoration:none;color:#B9AE9C;font-size:14.5px;padding:5px 0}
.toc a:hover,.toc a[aria-current]{color:#fff}
.toc a .n{font-family:var(--latin);color:var(--brass3);margin-right:8px}
@media(max-width:900px){.toc{grid-template-columns:1fr 1fr}}

/* 메뉴 상세 */
.dish{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start;padding:64px 0 32px}
.dish .media video{width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--iron2)}
.dish .media figcaption{font-size:13px;color:var(--ink3);margin-top:10px}
.dish h1{font-family:var(--serif);font-weight:600;font-size:clamp(34px,4.6vw,56px);line-height:1.2;letter-spacing:-.03em;margin:14px 0 10px}
.dish .en{font-family:var(--latin);font-size:20px;color:var(--ink3)}
.dish .price{display:flex;gap:28px;flex-wrap:wrap;margin:28px 0;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dish .price div span{display:block;font-size:13px;color:var(--ink3)}
.dish .price div b{font-family:var(--latin);font-size:34px;font-weight:500}
.say{margin-top:28px;border:1px solid var(--ink);padding:22px 24px;display:grid;gap:6px;cursor:pointer;text-align:left;width:100%;background:var(--paper)}
.say small{font-family:var(--latin);letter-spacing:.16em;color:var(--brass2);font-size:12.5px}
.say b{font-family:var(--serif);font-size:24px;font-weight:600}
.say span{font-size:14px;color:var(--ink2)}
@media(max-width:900px){.dish{grid-template-columns:1fr;gap:36px;padding-top:36px}}
.show{position:fixed;inset:0;z-index:100;background:var(--paper);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:24px;text-align:center}
.show .big{font-family:var(--serif);font-size:clamp(34px,9vw,72px);font-weight:700;line-height:1.3;word-break:keep-all}
.show .s2{color:var(--ink2)}
@media(min-height:1200px){.hero{min-height:960px}}
@media(max-width:700px){.hero .cta .hide-m{display:none}.hero .eyebrow{letter-spacing:.14em;font-size:13px}.hero .cta .btn{flex:1 1 auto}}
