/* 천생산아구찜 v6 — 붉은 양념 · 싱싱한 재료: 크림 바탕 × 진한 고추장 빨강 · 굵은 고딕(Pretendard Black) + 간판 붓글씨 로고(Nanum Brush Script) */
:root{
  --cream:#f6eddc;--cream2:#efe1c6;--paper:#fffaf1;
  --red:#a3150f;--red2:#c4271a;--red-dk:#6e0d09;--ink:#221714;--ink2:#5c4a40;--line:rgba(34,23,20,.15);--gold:#d9a441;
  --hd:72px;--wrap:1240px;
  --body:'Pretendard','Pretendard Variable',-apple-system,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;
  --head:'Pretendard','Pretendard Variable',-apple-system,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;
  --brush:'Nanum Brush Script','Pretendard',cursive;
}
html[data-lang=zh]{--body:'Noto Sans SC','Pretendard',sans-serif;--head:'Noto Sans SC','Pretendard',sans-serif}
html[data-lang=ja]{--body:'Noto Sans JP','Pretendard',sans-serif;--head:'Noto Sans JP','Pretendard',sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--hd) + 8px);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 var(--body);word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
html[data-lang=ja] body{word-break:auto-phrase;line-break:strict}
html[data-lang=zh] body{word-break:normal;line-break:strict}
html[data-lang=en] body{word-break:normal}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote{margin:0}
ul,ol{padding:0;list-style:none}
button{font:inherit;color:inherit}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nw{white-space:nowrap}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 36px}
:focus-visible{outline:3px solid var(--red2);outline-offset:3px}

/* 언어: 고른 언어만 */
.i{display:none}
html[data-lang=ko] .i[lang=ko],html[data-lang=en] .i[lang=en],html[data-lang=zh] .i[lang=zh-Hans],html[data-lang=ja] .i[lang=ja]{display:inline}
html[data-lang=ko] .fx{display:none}
.kn{word-break:keep-all;font-family:'Pretendard',sans-serif}
.fx>.kn{display:inline-block;font-size:max(12px,.6em);font-weight:700;letter-spacing:0;color:var(--ink2);vertical-align:.12em}
.mn{display:block}
.mk{display:block;margin-top:2px;font-size:max(12px,.56em);font-weight:700;letter-spacing:0;color:var(--ink2);line-height:1.3}

.skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:6px;font-weight:700}
.skip:focus{top:10px}

/* ── 아이콘·버튼 ── */
.ic{width:20px;height:20px;flex:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:54px;padding:0 20px;border:2px solid var(--ink);border-radius:6px;font-weight:800;font-size:16px;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s,transform .15s}
.btn:hover{transform:translateY(-2px)}
.btn-call{background:var(--red);border-color:var(--red);color:var(--paper)}
.btn-call:hover{background:var(--red2);border-color:var(--red2)}
.btn-call .num{font-weight:900;font-size:18px;letter-spacing:.01em;padding-left:11px;margin-left:2px;border-left:1.5px solid rgba(255,250,241,.45);font-family:'Pretendard',sans-serif}
.btn-map{background:transparent;color:var(--ink)}
.btn-map:hover{background:var(--ink);color:var(--paper)}
.cta{display:flex;flex-wrap:wrap;gap:12px}
.cta-dir{display:flex;gap:12px;flex-wrap:wrap}
.kick{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:800;color:var(--red);letter-spacing:.02em}
.kick .ic{width:18px;height:18px}
.sec-h{font:900 clamp(34px,4.2vw,56px)/1.12 var(--head);letter-spacing:-.035em;margin-top:10px;text-wrap:balance}
html:not([data-lang=ko]) .sec-h{letter-spacing:-.02em}
html[data-lang=en] .sec-h{font-size:clamp(30px,3.6vw,48px)}
.sub-h{display:flex;align-items:center;gap:8px;font:900 21px/1.3 var(--head);letter-spacing:-.02em}
.sub-h .ic{color:var(--red)}

/* ── 머리 ── */
.hd{position:sticky;top:0;z-index:100;height:var(--hd);background:rgba(246,237,220,.97);border-bottom:1px solid transparent;transition:border-color .25s,box-shadow .25s}
.hd.is-scrolled{border-bottom-color:var(--line);box-shadow:0 6px 18px -14px rgba(34,23,20,.5)}
.hd-in{max-width:1440px;height:100%;margin:0 auto;padding:0 28px;display:flex;align-items:center;gap:18px}
.logo{display:inline-flex;align-items:center;gap:6px;min-height:44px;text-decoration:none;flex:none;margin-right:auto;white-space:nowrap}
.logo-b{font-family:var(--brush);font-size:44px;line-height:1;color:var(--ink);padding-top:2px}
.logo-s{display:inline-block;padding:3px 7px 4px;border-radius:4px;background:var(--red);color:var(--paper);font:900 16px/1.1 'Pretendard',sans-serif;letter-spacing:.02em}
.gnb{flex:none}
.gnb ul{display:flex;gap:2px}
.gn{display:block;padding:10px 12px;font-size:15.5px;font-weight:800;text-decoration:none;color:var(--ink);position:relative;white-space:nowrap}
.gn .tv{display:inline-block;white-space:nowrap}
.gn::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.gn:hover::after,.gn.on::after{transform:scaleX(1)}
.gn.on{color:var(--red)}
.lang{position:relative;flex:none}
.lang-cur{display:none}
.lang-list{display:flex;border:1.5px solid var(--ink);border-radius:999px;padding:3px;gap:2px;background:var(--paper)}
.lang-list button{background:none;border:0;padding:0 10px;height:32px;min-width:40px;border-radius:999px;font-size:13.5px;font-weight:800;color:var(--ink2);cursor:pointer}
.lang-list button:hover{color:var(--ink)}
.lang-list button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.hd-call{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:6px;background:var(--red);color:var(--paper);text-decoration:none;font:900 16.5px/1 'Pretendard',sans-serif;flex:none;letter-spacing:.01em}
.hd-call:hover{background:var(--red2)}
.hd-call .ic{width:18px;height:18px}
.burger{display:none;width:46px;height:46px;border:1.5px solid var(--ink);border-radius:6px;background:var(--paper);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;flex:none}
.burger i{display:block;width:20px;height:2.5px;background:var(--ink);border-radius:2px;transition:transform .25s,opacity .25s}
.burger[aria-expanded=true] i:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.burger[aria-expanded=true] i:nth-child(2){opacity:0}
.burger[aria-expanded=true] i:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}
html.fold .gnb{display:none}
html.fold .burger{display:flex}
.mnav{position:fixed;left:0;right:0;top:var(--hd);bottom:0;z-index:99;background:var(--cream);overflow:auto;padding:8px 24px 32px;border-top:1px solid var(--line)}
.mnav[hidden]{display:none}
.mnav ul{margin-bottom:24px}
.mnav li a{display:block;padding:14px 4px;font:900 22px/1.3 var(--head);text-decoration:none;border-bottom:1px solid var(--line)}
.mnav .cta{flex-direction:column}
.mnav .cta .btn{width:100%}
.mnav .cta-dir .btn{flex:1}
body.menu-open{overflow:hidden}

/* ── 첫 화면 ── */
.hero{position:relative;background:var(--cream);overflow:hidden}
.hero-red{position:absolute;top:0;bottom:0;right:0;width:max(34%,calc(50% - 170px));background:var(--red)}
.hero-red::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 70% at 100% 0,rgba(255,255,255,.08),transparent 60%),radial-gradient(90% 60% at 0 100%,rgba(0,0,0,.18),transparent 70%)}
.hero-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px 64px;min-height:min(calc(100svh - var(--hd)),860px);padding-top:28px;padding-bottom:36px}
.hero-copy{min-width:0;position:relative;z-index:2}
.badge{display:inline-flex;align-items:center;gap:9px;padding:6px 15px 6px 11px;border:1.5px solid var(--red);border-radius:999px;color:var(--red);background:var(--paper);font-size:14px;font-weight:800;line-height:1.35;text-wrap:balance}
.badge::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--red);flex:none}
.hero-kick{margin-top:16px;color:var(--ink2);font-size:15px;font-weight:700;letter-spacing:0;overflow:hidden}
/* 덩어리 사이 점은 ::before — 줄 머리 덩어리의 점은 왼쪽 밖으로 나가 잘린다 */
.ks{display:flex;flex-wrap:wrap;margin-left:-1.1em}
.ki{position:relative;margin-left:1.1em;white-space:nowrap}
.ki::before{content:"·";position:absolute;left:-.72em}
html[data-lang=ja] .ki::before{content:"・"}
html[data-lang=zh] .ki::before,html[data-lang=ja] .ki::before{left:-1.05em}  /* 전각 점 — 틈 가운데에 */
html[data-lang=en] .ki{white-space:normal}
.hero-h{margin-top:14px;font:900 clamp(58px,min(8.2vw,12.6vh),138px)/.98 var(--head);letter-spacing:-.05em}
.hero-h .h-s{display:block;font-size:max(17px,.27em);line-height:1.2;letter-spacing:-.02em;margin:0 0 .18em .04em;color:var(--ink2)}
.hero-h .h-1,.hero-h .h-2{display:block}
.hero-h .h-2{color:var(--red)}
html[data-lang=en] .hero-h{font-size:clamp(48px,min(6.4vw,10.6vh),108px);letter-spacing:-.035em;line-height:1}
html[data-lang=zh] .hero-h{font-size:clamp(56px,min(7.6vw,12vh),128px);letter-spacing:-.02em}
html[data-lang=ja] .hero-h{font-size:clamp(50px,min(6.6vw,11vh),112px);letter-spacing:-.04em}
/* 대표 메뉴 표(사진 캡션이 아닌 글 블록 — 자료에 생아구찜 사진이 없다) */
.tkt{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;max-width:560px;margin-top:24px;padding:14px 20px 14px 26px;background:var(--paper);border:2px solid var(--ink);border-radius:4px;text-decoration:none;transition:transform .15s}
.tkt::before{content:"";position:absolute;left:8px;top:10px;bottom:10px;border-left:2px dashed rgba(34,23,20,.35)}
.tkt:hover{transform:translateY(-2px)}
.tkt-l{flex-basis:100%;display:flex;align-items:center;gap:6px;color:var(--red);font-size:13px;font-weight:900;letter-spacing:.06em}
.tkt-l .ic{width:16px;height:16px}
.tkt-n{font:900 25px/1.15 var(--head);letter-spacing:-.02em}
html:not([data-lang=ko]) .tkt-n{font-size:21px}
.tkt-p{display:inline-flex;align-items:baseline;gap:9px}
.tkt-sz,.m-sz{display:inline-block;border:1.5px solid currentColor;border-radius:3px;padding:0 6px;font-size:13px;font-weight:800;line-height:1.5;white-space:nowrap}
.tkt-p b{font:900 31px/1 'Pretendard',sans-serif;color:var(--red);letter-spacing:-.02em;white-space:nowrap}
small{font-size:max(12px,.5em)}
.tkt-p b small{margin-left:2px;font-weight:800}
small.w{font-size:1em;margin:0 1px 0 0}
.tkt-go{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-size:13.5px;font-weight:800;color:var(--ink2)}
.tkt-go .ic{width:16px;height:16px}
.cta-hero{margin-top:20px}
.hero-hours{display:flex;align-items:flex-start;gap:8px;margin-top:16px;font-size:14.5px;line-height:1.5;color:var(--ink2);font-weight:700}
.hero-hours .ic{width:18px;height:18px;margin-top:1px}
/* 오른쪽 빨간 판: 포항 → 구미 인동(글 그림 — 자료에 아구찜 사진이 없다). 폭은 빨간 판 안에 들게 */
.hero-side{position:relative;z-index:1;display:flex;align-items:flex-start;gap:26px;width:clamp(240px,calc(max(34vw,50vw - 170px) - 120px),380px);color:var(--paper)}
.trip{flex:1;min-width:0}
.trip-pt b{display:block;font:900 clamp(36px,4.3vw,64px)/1.05 var(--head);letter-spacing:-.04em;white-space:nowrap}
html:not([data-lang=ko]) .trip-pt b{letter-spacing:-.02em}
.trip-pt small{display:block;margin-top:8px;font-size:14px;font-weight:700;line-height:1.45;color:rgba(255,250,241,.78)}
.trip-mid{position:relative;display:flex;align-items:center;min-height:clamp(110px,24vh,210px);margin:14px 0 14px 14px;padding-left:44px}
.trip-line{position:absolute;left:0;top:0;bottom:0;width:2px;background:repeating-linear-gradient(180deg,rgba(255,250,241,.85) 0 8px,transparent 8px 15px)}
.trip-line::after{content:"";position:absolute;left:-6px;bottom:-4px;border:7px solid transparent;border-top:9px solid rgba(255,250,241,.85);border-bottom:0}
.trip-fish{position:absolute;left:-16px;top:38%;width:34px;height:34px;border-radius:50%;background:var(--paper);color:var(--red);display:grid;place-items:center;animation:dive 5s ease-in-out infinite}
.trip-fish .ic{width:24px;height:24px;transform:rotate(-90deg)}
@keyframes dive{0%{top:0;opacity:0}12%{opacity:1}80%{opacity:1}100%{top:calc(100% - 34px);opacity:0}}
.trip-m{display:block;font-size:16px;font-weight:700;line-height:1.4;color:rgba(255,250,241,.85)}
.trip-m b{display:block;font:900 clamp(20px,1.9vw,26px)/1.25 var(--head);color:var(--paper);letter-spacing:-.02em}
.hero-brush{flex:none;writing-mode:vertical-rl;font-family:var(--brush);font-size:62px;line-height:1;color:rgba(255,250,241,.92);letter-spacing:.06em;margin-top:-6px}
html:not([data-lang=ko]) .hero-brush{display:none}  /* 간판 글귀 장식 — 한국어 화면에만 */

/* ── 싱싱한 재료 · 매콤한 양념 ── */
.fresh{background:var(--paper);padding:110px 0 120px}
.sec-head{max-width:820px}
.duo{display:grid;gap:56px;margin-top:52px}
.pan{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.pan-b{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.pan-ph{position:relative;max-width:460px}  /* 원본 539px — 작게(레티나 확대를 줄인다) */
.pan-a .pan-ph{justify-self:end}
.pan-ph img{width:100%;aspect-ratio:539/416;object-fit:cover;border-radius:3px}
.pan-ph figcaption{margin-top:10px;font-size:14px;font-weight:700;color:var(--ink2)}
.pan-a .pan-ph img{aspect-ratio:539/474}
.pan-b .pan-ph::before{content:"";position:absolute;inset:-14px auto auto -14px;width:46%;height:56%;background:var(--red);z-index:-1;border-radius:3px}
.pan-b .pan-ph{z-index:0;isolation:isolate}
.pan-l{display:flex;align-items:center;gap:14px;font:900 clamp(34px,3.6vw,48px)/1.15 var(--head);letter-spacing:-.03em}
.pan-l b{font:900 16px/1 'Pretendard',sans-serif;color:var(--paper);background:var(--red);padding:7px 9px;border-radius:3px;letter-spacing:.04em}
.pan-p{margin-top:16px;font-size:18px;line-height:1.8;max-width:34em;font-weight:500}
html:not([data-lang=ko]) .pan-p{font-size:17px}
.stamp{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:2px 14px;margin-top:26px;padding:12px 18px;border:3px double var(--red);color:var(--red);border-radius:6px;transform:rotate(-2.5deg);background:var(--paper)}
.stamp b{grid-row:span 2;font:900 44px/1 'Pretendard',sans-serif;letter-spacing:-.03em}
.stamp b small{font-size:max(12px,.36em);margin-left:2px}
.st-k{font:900 19px/1.25 var(--head)}
.st-l{font-size:12.5px;font-weight:700;color:var(--ink2)}
.spice{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:8px 16px 8px 12px;border-radius:999px;background:var(--red);color:var(--paper);font-weight:900;font-size:15.5px}
.spice .ic{width:20px;height:20px}
.quote{margin:84px auto 0;max-width:900px;text-align:center;position:relative;padding-top:36px}
.quote::before{content:"";position:absolute;left:50%;top:0;width:64px;height:4px;margin-left:-32px;background:var(--red)}
.quote p{font:900 clamp(24px,2.6vw,36px)/1.45 var(--head);letter-spacing:-.03em;text-wrap:balance}
html:not([data-lang=ko]) .quote p{letter-spacing:-.01em}

/* ── 차림표 ── */
.menu{background:var(--red);padding:110px 0;position:relative}
.menu::before{content:"";position:absolute;inset:0;background:radial-gradient(80% 60% at 85% 10%,rgba(255,255,255,.07),transparent 60%);pointer-events:none}
.menu-in{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:48px;align-items:center}
.board{background:var(--paper);border-radius:6px;padding:46px 48px 36px;box-shadow:0 30px 60px -30px rgba(40,4,2,.7)}
.board-hd{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding-bottom:18px;border-bottom:3px solid var(--ink)}
.board-hd .sec-h{margin:0}
.board-sz{font-size:14px;font-weight:800;color:var(--ink2)}
.mlist{margin-top:8px}
.mrow{padding:22px 0;border-bottom:1px dashed rgba(34,23,20,.28)}
.mr-top{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.m-n{font:900 24px/1.25 var(--head);letter-spacing:-.02em}
html:not([data-lang=ko]) .m-n{font-size:21px}
.m-pp{flex:1 0 auto;display:flex;align-items:baseline;gap:12px}
.dots{flex:1;min-width:24px;border-bottom:2px dotted rgba(34,23,20,.4);transform:translateY(-6px)}
.m-sz{color:var(--ink2)}
.m-pr{font:900 26px/1 'Pretendard',sans-serif;letter-spacing:-.02em;white-space:nowrap}
.m-d{margin-top:6px;color:var(--ink2);font-size:15.5px;font-weight:600}
.m-sig .m-n{font-size:31px;color:var(--red)}
html:not([data-lang=ko]) .m-sig .m-n{font-size:25px}
.m-sig .m-pr{font-size:32px;color:var(--red)}
.m-tag{display:inline-block;margin-bottom:8px;padding:3px 9px;background:var(--ink);color:var(--paper);font-size:12.5px;font-weight:900;letter-spacing:.06em;border-radius:3px}
.m-chip{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:4px 12px 4px 9px;border:1.5px solid var(--red);border-radius:999px;color:var(--red);font-size:14px;font-weight:900}
.m-chip .ic{width:17px;height:17px}
.board-pn{margin-top:18px;font-size:13.5px;font-weight:600;color:var(--ink2)}
.menu-ph{max-width:420px;justify-self:center}
.menu-ph img{width:100%;aspect-ratio:933/1185;object-fit:cover;border:8px solid var(--paper);border-radius:4px;transform:rotate(1.5deg)}
.menu-ph figcaption{margin-top:16px;color:var(--paper);font-size:14.5px;font-weight:700}

/* ── 자리·시간 ── */
.visit{padding:110px 0}
.visit-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px 56px;align-items:end}
.visit-sub{margin-top:16px}
.visit-sub .telk{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:900 22px/1 'Pretendard',sans-serif;color:var(--red);border-bottom:2px solid currentColor;padding-bottom:4px}
.vnums{display:flex}
.vn{padding:0 30px;border-left:1.5px solid var(--line);min-width:150px}
.vn:first-child{border-left:0;padding-left:0}
.vn-n{display:block;font:900 64px/1 'Pretendard',sans-serif;letter-spacing:-.04em;color:var(--red)}
.vn-n small{font-size:max(12px,.3em);margin-left:3px;color:var(--ink);font-family:var(--head);letter-spacing:0}
.vn-t{display:block;margin-top:8px;font-size:14.5px;font-weight:800;color:var(--ink2);line-height:1.4}
.hours{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px 56px;align-items:center;margin-top:56px;padding:40px 44px;background:var(--paper);border:2px solid var(--ink);border-radius:6px}
.hlines{margin-top:14px}
.hlines li{padding:6px 0;font-size:16.5px;font-weight:600;border-bottom:1px solid var(--line)}
.hlines li b{font-size:19px;font-weight:900}
.hl-off{color:var(--red);font-weight:800 !important}
.h-chk{display:flex;align-items:flex-start;gap:8px;margin-top:16px;font-size:14.5px;font-weight:700;color:var(--ink2)}
.h-chk .ic{width:17px;height:17px;margin-top:3px;color:var(--red)}
.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.week li{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:64px;width:100%;justify-self:center;border-radius:50%;background:var(--red);color:var(--paper);font-weight:900;font-size:16px}
html[data-lang=en] .week li{font-size:13.5px}
html[data-lang=zh] .week li{font-size:14px}
.week .d-off{background:transparent;color:var(--ink2);border:2px dashed rgba(34,23,20,.4)}
.week .d-off small{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);font-size:12px;font-weight:800;color:var(--red);white-space:nowrap}
.tl{position:relative;margin-top:62px;padding-bottom:28px}
.tl-bar{position:relative;height:20px;border-radius:4px;background:rgba(34,23,20,.06)}
.tl-bar i{position:absolute;top:0;bottom:0}
.tl-open{background:var(--red)}
.tl-open:first-child{border-radius:4px 0 0 4px}
.tl-brk{background:repeating-linear-gradient(-45deg,rgba(34,23,20,.28) 0 4px,transparent 4px 8px)}
.tl-lo{width:3px;margin-left:-1.5px;top:-12px !important;bottom:-4px !important;background:var(--ink)}
.tl-ticks span{position:absolute;top:28px;transform:translateX(-50%);font-size:13px;font-weight:800;color:var(--ink2);white-space:nowrap}
.tl-ticks .tk-lo{top:-34px;color:var(--ink)}
.tl-ticks .tk-end{transform:translateX(-30%)}
.tl-leg{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:6px;font-size:13.5px;font-weight:700;color:var(--ink2)}
.tl-leg>span{display:inline-flex;align-items:center;gap:6px}
.tl-leg i{display:inline-block;width:18px;height:10px;border-radius:2px}
.lg-open{background:var(--red)}
.lg-brk{background:repeating-linear-gradient(-45deg,rgba(34,23,20,.4) 0 3px,transparent 3px 6px);border:1px solid rgba(34,23,20,.3)}
.lg-lo{width:3px !important;height:14px !important;background:var(--ink)}
.amen{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.amen li{display:inline-flex;align-items:center;gap:8px;padding:9px 16px 9px 12px;border:1.5px solid var(--line);border-radius:999px;background:var(--paper);font-size:15px;font-weight:700}
.amen .ic{color:var(--red)}

/* ── 리뷰 키워드 ── */
.rev{background:var(--paper);padding:110px 0}
.rev-in{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px 72px;align-items:start}
.rev-basis{margin-top:12px;font-size:14.5px;font-weight:700;color:var(--ink2)}
.kw-top{margin-top:32px;padding:28px 30px;background:var(--red);color:var(--paper);border-radius:6px}
.kt-l{font-size:13.5px;font-weight:800;opacity:.85;letter-spacing:.03em}
.kt-k{margin-top:6px;font:900 30px/1.25 var(--head);letter-spacing:-.02em}
.kt-k .fx>.kn{color:rgba(255,250,241,.8)}
.kt-n{margin-top:10px;font-weight:800;font-size:18px}
.kt-n b{font:900 64px/1 'Pretendard',sans-serif;letter-spacing:-.04em;margin-right:4px}
.kws li{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,1fr) auto;align-items:center;gap:6px 18px;padding:12px 0;border-bottom:1px solid var(--line)}
.kw{font-weight:800;font-size:16.5px}
.bar{height:12px;border-radius:2px;background:rgba(34,23,20,.07);overflow:hidden}
.bar i{display:block;height:100%;background:var(--red);transform-origin:left;transform:scaleX(var(--s))}
.bars.on .bar i{animation:grow 1.1s cubic-bezier(.2,.7,.2,1) both}
@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(var(--s))}}
.vt{font:900 20px/1 'Pretendard',sans-serif;min-width:5.2em;text-align:right;white-space:nowrap}
.vt small{font-size:max(12px,.66em);margin-left:1px;font-family:var(--head)}
.rmenu{margin-top:36px}
.rm-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.rm-list li{display:inline-flex;align-items:center;gap:10px;padding:7px 8px 7px 16px;border:1.5px solid var(--ink);border-radius:999px;font-weight:800;font-size:15px;line-height:1.35}
.rm-list .fx>.kn{font-size:12.5px}
.rm-list b{display:inline-grid;place-items:center;min-width:38px;height:28px;padding:0 8px;border-radius:999px;background:var(--ink);color:var(--paper);font:900 14px/1 'Pretendard',sans-serif}

/* ── 구미시 홍보 영상 ── */
.video{background:var(--ink);color:var(--paper);padding:100px 0}
.video .kick{color:var(--gold)}
.video-in{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:40px 64px;align-items:center}
.vlink{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-top:14px;font-weight:800;color:var(--paper);text-decoration:none;border-bottom:1.5px solid rgba(255,250,241,.4);padding-bottom:3px}
.vlink:hover{border-bottom-color:var(--paper)}
.vlink .ic{width:17px;height:17px}
.vbox{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:#000}
.vbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vplay{position:absolute;inset:0;width:100%;padding:0;border:0;background:none;cursor:pointer}
.vplay img{width:100%;height:100%;object-fit:cover;filter:brightness(.82);transition:filter .2s}
.vplay:hover img{filter:brightness(.95)}
.vbtn{position:absolute;left:50%;top:50%;width:86px;height:86px;margin:-43px 0 0 -43px;border-radius:50%;background:var(--red);color:var(--paper);display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.45);transition:transform .2s}
.vplay:hover .vbtn{transform:scale(1.08)}
.vbtn .ic{width:38px;height:38px;margin-left:5px}

/* ── 찾아오기 ── */
.loc{padding:110px 0}
.loc-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px 64px;align-items:start}
.lfacts{margin-top:24px;border-top:2px solid var(--ink)}
.lfacts>div{display:grid;grid-template-columns:5.5em minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
html[data-lang=en] .lfacts>div{grid-template-columns:6em minmax(0,1fr)}
.lfacts dt{font-weight:900;color:var(--red)}
.lfacts dd{font-weight:700;font-size:17px}
.addr-ko{margin-top:8px;padding:9px 12px;background:var(--paper);border:1px dashed rgba(34,23,20,.3);border-radius:4px}
.addr-ko small{display:block;font-size:12.5px;font-weight:700;color:var(--ink2);line-height:1.4}
.addr-ko span{font-size:17px;font-weight:800}
.telk{text-decoration:none;font-weight:900}
.lfacts .telk,.ft-lines .telk{display:inline-block;padding:12px 0;margin:-12px 0}  /* 누를 칸 44px, 줄 높이는 그대로 */
.lbtns{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.front2{margin-top:36px;max-width:539px}
.front2 img{width:100%;aspect-ratio:539/404;object-fit:cover;border-radius:4px}
.front2 figcaption,.map figcaption{margin-top:9px;font-size:13.5px;font-weight:700;color:var(--ink2)}
.map-box{position:relative;border:2px solid var(--ink);border-radius:6px;overflow:hidden;background:#f7efe0}
.map-box>img{width:100%;height:100%}
.map-l .ml{position:absolute;transform:translate(-50%,-50%) rotate(var(--a));font-size:13px;font-weight:800;color:var(--ink2);white-space:nowrap;background:rgba(247,239,224,.85);padding:0 4px;border-radius:3px}
.map-l .ml-nam{color:var(--red)}
.map-l .ml-gasan{transform:translate(-50%,-50%) rotate(var(--a)) translateY(-15px)}  /* 흰 넓은 길의 북동쪽 — 바로 옆 빨간 인동남길에 붙어 보이지 않게 */
.map-pin{position:absolute;transform:translate(-50%,-100%)}
.map-pin i{display:block;width:26px;height:26px;margin:0 auto;border-radius:50% 50% 50% 0;background:var(--red);transform:rotate(-45deg);box-shadow:0 3px 8px rgba(0,0,0,.3);border:3px solid var(--paper)}
.map-pin b{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);padding:5px 10px;background:var(--ink);color:var(--paper);font-size:13.5px;font-weight:900;border-radius:4px;white-space:nowrap}

/* ── 맨 아래 ── */
.ft-cta{background:var(--red);color:var(--paper);padding:64px 0}
.ft-cta-in{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:28px 40px}
.ft-cta-in>*{min-width:0;max-width:100%}
.ft-l{font-weight:800;font-size:17px;opacity:.92}
.ft-tel{display:block;font:900 clamp(44px,5.4vw,76px)/1.05 'Pretendard',sans-serif;letter-spacing:-.03em;text-decoration:none;white-space:nowrap}
.cta-ft .btn-call{background:var(--paper);border-color:var(--paper);color:var(--red)}
.cta-ft .btn-call .num{display:none}  /* 바로 위 큰 번호와 겹침 */
.cta-ft .btn-call .num{border-left-color:rgba(163,21,15,.35)}
.cta-ft .btn-call:hover{background:#fff}
.cta-ft .btn-map{border-color:rgba(255,250,241,.8);color:var(--paper)}
.cta-ft .btn-map:hover{background:var(--paper);color:var(--red)}
.ft-info{padding-top:48px;padding-bottom:48px}
.ft{background:var(--ink);color:rgba(255,250,241,.86)}
.ft-name{display:flex;align-items:center;flex-wrap:wrap;gap:6px 14px}
.ft-logo{display:inline-flex;align-items:center;gap:6px}
.ft-logo .logo-b{color:var(--paper)}
.ft-rom{font-size:14px;font-weight:700;color:rgba(255,250,241,.7)}
.ft-lines{margin-top:18px;display:grid;gap:4px;font-size:14.5px}
.ft-lines .telk{color:var(--paper)}
.ft-credit{margin-top:22px;font-size:13px;color:rgba(255,250,241,.66)}
.ft-copy{margin-top:4px;font-size:12.5px;color:rgba(255,250,241,.5)}

/* 등장(움직임 — 기본은 보이는 상태, transform 만) */
html.js .rv.in{animation:up .8s cubic-bezier(.2,.7,.2,1) both}
@keyframes up{from{transform:translateY(22px)}to{transform:none}}

/* ── 반응형 ── */
@media (max-width:1180px){
  .wrap{padding-left:28px;padding-right:28px}
  .hero-brush{display:none}
  .vn{padding:0 22px;min-width:120px}
  .vn-n{font-size:54px}
  .board{padding:38px 34px 30px}
}
@media (max-width:1024px){
  .visit-top{grid-template-columns:1fr}
  .hours{grid-template-columns:1fr}
  .menu-in{grid-template-columns:1fr}
  .menu-ph{max-width:400px}
  .rev-in{grid-template-columns:1fr}
  .video-in{grid-template-columns:1fr}
  .loc-in{grid-template-columns:1fr}
}
@media (max-width:860px){
  :root{--hd:62px}
  .wrap{padding-left:20px;padding-right:20px}
  .hd-in{padding:0 14px;gap:10px}
  .logo-b{font-size:38px}
  .logo-s{font-size:14.5px}
  .gnb{display:none}
  .burger{display:flex}
  .hd-call{width:46px;height:46px;padding:0;justify-content:center}
  .hd-call span{display:none}
  .lang-list{display:none;position:absolute;right:0;top:calc(100% + 8px);flex-direction:column;min-width:150px;padding:6px;border-radius:8px;box-shadow:0 12px 28px -10px rgba(34,23,20,.45);z-index:120}
  .lang.open .lang-list{display:flex}
  .lang-list button{height:44px;text-align:left;padding:0 12px;font-size:15px;border-radius:6px}
  .lang-cur{display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 11px;border:1.5px solid var(--ink);border-radius:6px;background:var(--paper);font-weight:800;font-size:14px;cursor:pointer}
  .lang-cur .ic{width:18px;height:18px}
  .hero-red{display:none}
  .hero-in{grid-template-columns:1fr;gap:0;min-height:0;padding-top:16px;padding-bottom:28px}
  .hero-copy{display:contents}
  .badge{justify-self:start;font-size:13px;padding:4px 12px 4px 9px}
  .hero-kick{margin-top:10px;font-size:13.5px;line-height:1.45}
  .hero-h{margin-top:10px;font-size:clamp(46px,14.2vw,72px)}
  html[data-lang=en] .hero-h{font-size:clamp(40px,11.4vw,58px)}
  html[data-lang=zh] .hero-h{font-size:clamp(46px,13.6vw,70px)}
  html[data-lang=ja] .hero-h{font-size:clamp(40px,11.8vw,60px)}
  /* 포항 → 구미: 첫 화면 맨 아래 빨간 띠(가로) */
  .hero-side{order:6;width:auto;margin:24px -20px -28px;padding:16px 20px 18px;background:var(--red)}
  .trip{display:flex;align-items:center;gap:12px}
  .trip-pt b{font-size:22px}
  .trip-pt small{display:none}
  .trip-mid{flex:1;flex-direction:column;align-items:center;justify-content:flex-end;min-height:0;margin:0;padding:0 0 14px}
  .trip-line{top:auto;bottom:0;left:0;right:6px;width:auto;height:2px;background:repeating-linear-gradient(90deg,rgba(255,250,241,.85) 0 8px,transparent 8px 14px)}
  .trip-line::after{left:auto;right:-8px;bottom:-6px;border:7px solid transparent;border-left:9px solid rgba(255,250,241,.85);border-right:0}
  .trip-fish{top:-15px;left:0;width:30px;height:30px;animation-name:swim}
  .trip-fish .ic{width:21px;height:21px;transform:scaleX(-1)}
  .trip-m{text-align:center;font-size:12.5px;margin-bottom:22px}
  .trip-m b{display:inline;font-size:14px;margin-right:4px}
  .tkt{order:3;margin-top:14px;padding:10px 14px 10px 22px;gap:2px 14px}
  .tkt-n{font-size:21px}
  .tkt-p b{font-size:25px}
  .tkt-go{display:none}
  .cta-hero{order:4;margin-top:14px}
  .hero-hours{order:5;margin-top:12px;font-size:13.5px}
  .cta-hero .btn-call{flex:1 1 100%}
  .cta-hero .cta-dir{flex:1 1 100%}
  .cta-hero .cta-dir .btn{flex:1}
  .btn{min-height:50px;padding:0 16px}
  .fresh,.menu,.visit,.rev{padding:76px 0}
  .loc{padding:76px 0}
  .video{padding:72px 0}
  .duo{gap:52px;margin-top:36px}
  .pan,.pan-b{grid-template-columns:1fr;gap:22px}
  .pan-a .pan-ph{justify-self:start}
  .pan-b .pan-txt{order:-1}
  .pan-b .pan-ph::before{inset:-10px auto auto -10px}
  .pan-l{font-size:32px}
  .pan-p{font-size:16.5px}
  .quote{margin-top:60px}
  .board{padding:28px 20px 22px}
  .m-n{font-size:21px}
  .m-sig .m-n{font-size:26px}
  .m-pr{font-size:23px}
  .m-sig .m-pr{font-size:27px}
  .vnums{flex-wrap:wrap;gap:20px 0}
  .vn{min-width:0;flex:1;padding:0 14px}
  .vn-n{font-size:46px}
  .hours{padding:26px 20px;margin-top:40px}
  .kws li{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}
  .bar{grid-column:1 / -1;grid-row:2}
  .kw-top{padding:22px}
  .kt-n b{font-size:52px}
  .ft-cta{padding:48px 0}
  .ft-cta-in{flex-direction:column;align-items:stretch}
  .cta-ft .btn-call{flex:1 1 100%}
  .cta-ft .cta-dir{flex:1 1 100%}
  .cta-ft .cta-dir .btn{flex:1}
  .ft-tel{font-size:min(56px,calc((100vw - 40px) / 7.4))}  /* 12자 번호가 좌우 여백 20px 안에 */
}
@media (max-width:400px){
  .logo{gap:4px;flex:0 1 auto;min-width:0;overflow:hidden}  /* 붓글씨 웹폰트가 오기 전 대체 글꼴이 넓어도 머리가 넘치지 않게 */
  .logo-b{font-size:34px}
  .hd-in{gap:7px;padding:0 12px}
  .lang-cur{padding:0 8px;min-width:44px;justify-content:center}
  .lang-cur .ic{display:none}
  .btn-call .num{font-size:16px;padding-left:9px}
  .vn-n{font-size:40px}
  .vn{padding:0 10px}
  .week{gap:5px}
}
@media (max-width:340px){
  .logo-b{font-size:31px}
  .logo-s{font-size:13px;padding:2px 5px 3px}
}
@media (max-width:860px) and (max-height:760px){
  .hero-kick{display:none}
  .hero-in{padding-top:10px}
  .tkt{margin-top:10px;padding-top:7px;padding-bottom:7px}
  .cta-hero{margin-top:10px}
  .cta-hero,.cta-hero .cta-dir{gap:10px}
}
/* 노트북 낮은 화면(1366×657 등): 첫 화면 안에 전화·지도 버튼 */
@media (min-width:861px) and (max-height:760px){
  .hero-in{padding-top:14px;padding-bottom:18px}
  .hero-kick{margin-top:8px}
  .hero-h{margin-top:6px}
  .tkt{margin-top:14px;padding-top:9px;padding-bottom:9px}
  .cta-hero{margin-top:14px}
  .cta-hero .btn{min-height:48px}
  .hero-hours{margin-top:10px}
}
@keyframes swim{0%{left:0;opacity:0}12%{opacity:1}80%{opacity:1}100%{left:calc(100% - 30px);opacity:0}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none !important;transition:none !important}
}
