/* ==========================================================
   NAKAJI impact layer — loader / FV / manifesto / about scatter
   Loaded last; everything here is additive to the existing CSS.
   ========================================================== */
:root{
  --nk-coal:#14110d;
  --nk-ash:#211d18;
  --nk-cream:#efe6d6;
  --nk-ember:#e0522a;
  --nk-display:"Anton","Impact","Arial Narrow",sans-serif;
  --nk-ease:cubic-bezier(.77,0,.18,1);
}

/* ---------- Loader ---------- */
.nk-loader{display:none}
.nk-js .nk-loader{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;pointer-events:all;color:var(--nk-cream)}
.nk-loader__panel{position:absolute;left:0;right:0;height:50.5%;background:var(--nk-coal)}
.nk-loader__panel--top{top:0}
.nk-loader__panel--bottom{bottom:0}
.nk-loader__center{position:relative;display:grid;justify-items:center;gap:26px}
.nk-loader__logo{width:96px;height:auto;display:block;opacity:0;filter:blur(8px);transform:scale(1.25)}
.nk-loader__count{font-family:var(--nk-display);font-size:15px;letter-spacing:.32em;opacity:.7;font-variant-numeric:tabular-nums}
.nk-loader__bar{position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--nk-ember);transform:scaleX(0);transform-origin:left}
.nk-loader__meta{position:absolute;bottom:42px;left:0;right:0;display:flex;justify-content:space-between;padding:0 5vw;font-family:var(--nk-display);font-size:12px;letter-spacing:.3em;opacity:.45}
.nk-loader.is-done{pointer-events:none}

/* ---------- Film grain (whole page) ---------- */
.nk-grain{position:fixed;inset:0;will-change:transform;transform:translateZ(0);z-index:900;pointer-events:none;opacity:.075;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
@keyframes nk-grain{
  0%{transform:translate(0,0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}
  60%{transform:translate(-6%,-2%)}80%{transform:translate(5%,4%)}100%{transform:translate(0,0)}}

/* ---------- Sticky header (appears after FV) ---------- */
.nk-header{position:fixed;top:0;left:0;right:0;z-index:800;display:flex;align-items:center;justify-content:space-between;
  padding:14px 4vw;background:linear-gradient(180deg,#14110dcc,#14110d00);color:var(--nk-cream);
  transform:translateY(-110%);transition:transform .7s var(--nk-ease);pointer-events:none}
.nk-header.is-shown{transform:none;pointer-events:auto}
.nk-header__logo{width:46px;line-height:0}
.nk-header__logo img{width:100%;height:auto}
.nk-header nav{display:flex;gap:clamp(18px,3vw,44px)}
.nk-header nav a{display:grid;gap:2px;color:inherit;text-decoration:none;text-align:right}
.nk-header nav .en{font-family:var(--nk-display);font-size:17px;letter-spacing:.06em;line-height:1}
.nk-header nav .ja{font-size:9px;letter-spacing:.14em;opacity:.65}
.nk-header nav a.is-reserve .en{color:var(--nk-ember)}
.nk-header nav a:hover .en{color:var(--nk-ember)}
@media(max-width:700px){.nk-header nav a:not(.is-reserve){display:none}}

/* ---------- FV ---------- */
.film{container-type:inline-size}
.nk-embers{position:absolute;inset:0;z-index:3;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen}
.nk-fv-type{position:absolute;left:0;right:0;bottom:-.06em;z-index:4;margin:0;pointer-events:none;
  font-family:var(--nk-display);font-weight:400;font-size:24.5cqw;line-height:.86;letter-spacing:-.01em;
  color:var(--nk-cream);text-align:center;text-transform:uppercase}
.nk-fv-type .line{display:block;overflow:hidden;padding-top:.04em}
.nk-fv-type .ch{display:inline-block;will-change:transform}
.nk-fv-type .line--sub{font-size:.205em;letter-spacing:.42em;line-height:1.9;padding-left:.42em;color:var(--nk-cream);opacity:.9}
.film::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(180deg,#0000 45%,#14110d99 100%)}
.nk-runway{display:none}
@media(min-width:901px){
  .nk-fv-type{font-size:11.05vw}
  .nk-runway{display:block;height:90vh;position:relative;z-index:1;pointer-events:none}
}
@media(min-width:901px) and (max-width:1100px){
  .nk-fv-type{font-size:14.2vw}
}
@media(max-width:900px){.nk-fv-type{bottom:110px}.fv .scroll{display:none}}
.nk-fv-veil{position:absolute;inset:0;z-index:3;background:var(--nk-coal);opacity:0;pointer-events:none}

/* ---------- Manifesto ---------- */
.nk-manifesto{position:relative;z-index:2;overflow:hidden;background:var(--nk-coal);color:var(--nk-cream);
  padding:22vh 0 20vh;isolation:isolate}
.nk-manifesto__kicker{display:flex;justify-content:space-between;padding:0 5vw;margin:0 0 7vh;
  font-family:var(--nk-display);font-size:13px;letter-spacing:.32em;opacity:.6}
.contents .nk-manifesto__lines{margin:0;font-family:var(--nk-display);font-weight:400;text-transform:uppercase;
  font-size:clamp(84px,14.2vw,260px);font-weight:400;line-height:.92;letter-spacing:-.005em}
.nk-line{display:flex;align-items:center;gap:.14em;white-space:nowrap;will-change:transform}
.nk-line:nth-child(1){padding-left:4vw}
.nk-line:nth-child(2){justify-content:flex-end;padding-right:3vw}
.nk-line:nth-child(3){padding-left:12vw}
.nk-line:nth-child(4){justify-content:flex-end;padding-right:6vw}
.nk-line .accent{color:var(--nk-ember)}
.nk-line .outline{color:transparent;-webkit-text-stroke:1.5px var(--nk-cream)}
.nk-chip{position:relative;display:inline-block;flex:none;height:.74em;width:2.1em;overflow:hidden;border-radius:.06em;
  transform:translateY(-.02em)}
.nk-chip img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:sepia(.25) saturate(1.15) contrast(1.05);transform:scale(1.25)}
.nk-manifesto__glow{position:absolute;left:50%;top:55%;z-index:-1;width:80vw;height:80vw;transform:translate(-50%,-50%);
  background:radial-gradient(circle,#e0522a33 0%,#e0522a10 35%,#0000 65%);pointer-events:none}
@media(max-width:900px){
  .nk-manifesto{padding:16vh 0 18vh}
  .contents .nk-manifesto__lines{font-size:17vw}
  .nk-line:nth-child(n){padding-left:5vw;padding-right:5vw}
  }

/* ---------- Circle reveal ---------- */
/* style.css sets html{scroll-behavior:smooth}; it makes ScrollTrigger measure at the wrong scroll position on every refresh. Lenis handles smooth anchors instead. */
html.nk-js{scroll-behavior:auto!important}
.contents{overflow:clip}
.nk-circle{position:relative;z-index:2;height:300vh;background:#23231f;color:var(--nk-cream)}
.nk-circle__stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:grid;place-items:center}
.nk-circle__disc{position:absolute;inset:0;will-change:clip-path;clip-path:circle(min(26vw,34vh) at 50% 50%);background:var(--nk-coal)}
.nk-circle__disc img{width:100%;height:100%;object-fit:cover;filter:brightness(.58) saturate(1.1);transform:scale(1.3);will-change:transform,opacity}
@media(max-width:900px){.nk-circle{height:260vh}}
/* SHOP slides up over the sticky circle photo for the last screen of the circle section */
.contents .nk-shop{margin-top:-100vh;z-index:3;box-shadow:0 -40px 60px -20px #0009}
.nk-circle__text{position:relative;z-index:1;margin:0;display:grid;justify-items:center;text-align:center;pointer-events:none}
.nk-circle__text .sub{font-family:var(--nk-display);font-size:14px;letter-spacing:.4em;padding-left:.4em}
.nk-circle__text .main{font-family:var(--nk-display);font-size:clamp(110px,16vw,260px);line-height:.95}
.nk-circle__text .nk-ja{font-size:15px;letter-spacing:.4em;padding-left:.4em}

/* ---------- SHOP ---------- */
.nk-shop{position:relative;z-index:2;background:var(--nk-coal);color:var(--nk-cream);padding:0 0 14vh;overflow:hidden}
.nk-shop__marquee{border-block:1px solid #efe6d622;padding:2.2vh 0;overflow:hidden;white-space:nowrap}
.nk-shop__marquee-inner{display:inline-flex;animation:nk-marquee 38s linear infinite}
.nk-shop__marquee span{font-family:var(--nk-display);font-size:clamp(46px,7vw,110px);line-height:1;padding-right:.4em;color:transparent;-webkit-text-stroke:1px #efe6d666}
@keyframes nk-marquee{to{transform:translateX(-50%)}}
.nk-shop__head{display:flex;align-items:baseline;justify-content:space-between;padding:12vh 6vw 7vh}
.nk-shop__kicker{margin:0;font-family:var(--nk-display);font-size:14px;letter-spacing:.4em;color:var(--nk-ember)}
.contents .nk-shop__title{margin:0;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:clamp(28px,2.6vw,40px);letter-spacing:.2em}
.nk-store{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:6vw;padding:0 6vw;margin-bottom:14vh}
.nk-store__photo{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:4px}
.nk-store__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 55%,#14110d88);pointer-events:none}
.nk-store__photo img{display:block;width:100%;height:118%;object-fit:cover;filter:saturate(1.05) contrast(1.04);will-change:transform}
.nk-store__addr{margin:0 0 22px;padding-top:22px;border-top:1px solid #efe6d633;font-size:15px;letter-spacing:.08em;color:#cfc6b6}
.nk-store__tel{display:flex;align-items:baseline;gap:14px;margin-bottom:32px;color:var(--nk-cream);text-decoration:none;font-family:var(--nk-display);font-size:clamp(34px,3.4vw,54px);letter-spacing:.04em;line-height:1}
.nk-store__tel small{font-size:13px;letter-spacing:.3em;color:var(--nk-ember)}
.nk-store__actions{display:flex;flex-wrap:wrap;gap:12px}
.nk-btn{display:inline-flex;align-items:center;justify-content:center;min-width:150px;padding:15px 26px;border:1px solid #efe6d677;border-radius:999px;
  color:var(--nk-cream);text-decoration:none;font-size:14px;letter-spacing:.12em;transition:background .3s,color .3s,border-color .3s}
.nk-btn:hover{background:var(--nk-cream);color:var(--nk-coal);opacity:1}
.nk-btn--fill{background:var(--nk-ember);border-color:var(--nk-ember)}
.nk-btn--fill:hover{background:#f06a42;border-color:#f06a42;color:#fff}
.contents .nk-shop a:hover{opacity:1}
@media(max-width:900px){
  .nk-shop__head{display:block;padding:9vh 7vw 5vh}
  .contents .nk-shop__title{margin-top:12px;font-size:24px}
  .nk-store{grid-template-columns:1fr;gap:28px;padding:0 7vw;margin-bottom:10vh}
  .nk-btn{flex:1;min-width:0;padding:14px 10px}
      }

/* ---------- MENU: extra motion ---------- */
/* Firefox centers vertical-rl blocks with margin:auto differently — center via flex instead */
.taste-heading>div{display:flex;flex-direction:column;align-items:center}
.taste-heading .menu-vertical{margin:0;align-self:center}
.top-menu-title .ch{display:inline-block}
.top-fluid .fluid-photo img{transform:scale(1.08)}

/* ---------- Store name (Japanese only) ---------- */
.contents .nk-store__name{display:grid;margin:0 0 26px;font-family:"Zen Kaku Gothic New",sans-serif;color:var(--nk-cream);letter-spacing:.06em}
.nk-store__name .pre{font-size:clamp(15px,1.3vw,19px);font-weight:500;letter-spacing:.24em;color:#cfc6b6}
.nk-store__name strong{font-size:clamp(56px,6.4vw,104px);font-weight:700;line-height:1.1;letter-spacing:.06em}
@media(max-width:900px){.nk-store__name strong{font-size:58px}}

/* ---------- Single store: stacked photos + hours ---------- */
@media(min-width:901px){.nk-store{grid-template-columns:1.1fr 1fr;align-items:start}}
.nk-store__media{position:relative;padding-bottom:12%}
.nk-store__photo--sub{position:absolute;right:-6%;bottom:0;width:46%;aspect-ratio:4/3;box-shadow:0 20px 40px #0008;border:6px solid var(--nk-coal)}
.nk-hours{margin:0 0 34px;padding:0;border-top:1px solid #efe6d633}
.nk-hours div{display:grid;grid-template-columns:8.5em 1fr;gap:16px;padding:14px 0;border-bottom:1px solid #efe6d622}
.nk-hours dt{font-size:13px;letter-spacing:.14em;color:var(--nk-ember)}
.nk-hours dd{margin:0;font-size:15px;line-height:1.9;letter-spacing:.06em;color:var(--nk-cream);font-variant-numeric:tabular-nums}
.nk-hours dd small{font-size:12px;color:#a8a090;margin-left:.3em}
@media(max-width:900px){
  .nk-store__media{padding-bottom:18%}
  .nk-store__photo--sub{right:-3%;width:52%;border-width:4px}
  .nk-hours div{grid-template-columns:6.5em 1fr;gap:10px}
  .nk-hours dd{font-size:14px}
  .nk-hours dd small{white-space:nowrap;margin-left:.2em;font-size:11px}
  .nk-store__actions .nk-btn{white-space:nowrap;font-size:13px;letter-spacing:.04em;padding:14px 6px}
}

/* ---------- Top carousel: five dishes in view ---------- */
.dish-orbit.top-fluid{--fluid-step:.9;--fluid-arc:48;height:clamp(280px,26vw,400px);margin-top:70px}
.top-fluid .fluid-dish{width:clamp(220px,25vw,380px)}
@media(max-width:800px){
  .dish-orbit.top-fluid{--fluid-step:.74;--fluid-arc:26;height:62vw;min-height:230px}
  .top-fluid .fluid-dish{width:46vw}
}

/* ---------- Mobile dish navigation under the photos ---------- */
.nk-dish-nav{display:none}
@media(max-width:900px){
  .taste-stage .dish-tabs{display:none}
  .taste-stage .dish-controls{display:none}
  .nk-dish-nav{position:relative;z-index:3;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin:-28px auto 0;max-width:360px}
  .nk-dish-nav__btn{width:52px;height:52px;border:1px solid #efe6d677;border-radius:50%;background:#14110d88;color:var(--nk-cream);font-size:22px;cursor:pointer;transition:background .2s,color .2s,transform .2s}
  .nk-dish-nav__btn:active{transform:scale(.92);background:var(--nk-cream);color:var(--nk-coal)}
  .nk-dish-nav__dots{display:flex;justify-content:center;gap:9px}
  .nk-dish-nav__dots i{width:7px;height:7px;border-radius:50%;background:#efe6d655;transition:width .35s var(--nk-ease),background .35s}
  .nk-dish-nav__dots i.is-on{width:22px;border-radius:4px;background:var(--nk-ember)}
  .nk-dish-nav__hint{grid-column:1/-1;margin:2px 0 0;text-align:center;font-family:var(--nk-display);font-size:12px;letter-spacing:.4em;color:#efe6d6aa;transition:opacity .5s}
  .nk-dish-nav__hint span{display:inline-block;margin:0 .6em;color:var(--nk-ember);animation:nk-nudge 1.4s ease-in-out infinite}
  .nk-dish-nav__hint span:first-child{animation-direction:reverse}
  .nk-dish-nav.is-used .nk-dish-nav__hint{opacity:0}
}
@keyframes nk-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}

/* ---------- "すべてのお品書きを見る" as a clear button ---------- */
.menu-more.nk-more{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:620px;margin:60px auto 0;padding:18px 18px 18px 34px;
  border:1px solid #efe6d666;border-radius:999px;color:var(--nk-cream);text-decoration:none;overflow:hidden;isolation:isolate;transition:border-color .3s,color .3s}
.menu-more.nk-more::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--nk-cream);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--nk-ease)}
.menu-more.nk-more .nk-more__label{display:grid;gap:4px;font-size:17px;font-weight:700;letter-spacing:.12em}
.nk-more__label small{font-family:var(--nk-display);font-size:12px;font-weight:400;letter-spacing:.32em;color:var(--nk-ember)}
.menu-more.nk-more .nk-more__arrow{flex:none;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--nk-ember);color:#fff;font-size:22px;animation:nk-nudge 1.6s ease-in-out infinite}
.contents .menu-more.nk-more:hover{opacity:1;color:var(--nk-coal);border-color:var(--nk-cream)}
.menu-more.nk-more:hover::before{transform:scaleX(1)}
.menu-more.nk-more:hover .nk-more__arrow{animation:none;transform:translateX(4px)}
.menu-more.nk-more:active{transform:scale(.98)}
@media(max-width:900px){
  .menu-more.nk-more{margin-top:44px;padding:14px 14px 14px 24px;background:#efe6d60f;border-color:#efe6d699}
  .menu-more.nk-more .nk-more__label{font-size:15px}
  .menu-more.nk-more .nk-more__arrow{width:50px;height:50px}
}
@media(prefers-reduced-motion:reduce){.nk-more__arrow,.nk-dish-nav__hint span{animation:none}}

/* ---------- Six menu tabs ---------- */
.dish-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px}
@media(max-width:900px){.dish-tabs{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;padding:0 4vw;margin:0 -7vw;-webkit-mask:linear-gradient(90deg,#0000,#000 6%,#000 94%,#0000)}.dish-tabs::-webkit-scrollbar{display:none}.dish-tabs button{flex:none}}

/* ---------- Display headings: webfont instead of Impact (missing on most phones) ---------- */
.contents .film-heading h2,.contents .sushism-label h2,.taste-heading h2.top-menu-title{font-family:var(--nk-display);font-weight:400;letter-spacing:0}
@media(max-width:600px){
  .contents .film-heading h2{font-size:min(88px,21vw);white-space:nowrap}
  .taste-heading h2.top-menu-title{font-size:min(110px,26vw)}
}

/* ---------- Hamburger + drawer (mobile) ---------- */
.nk-burger{display:none}
.nk-drawer{display:none}
@media(max-width:900px){
  .fv .navigation,.fv .location{display:none}
  .fv{height:100svh;min-height:560px}
  .fv .film{height:100%}
  .nk-header{transform:none;pointer-events:auto;background:none;padding:14px 5vw}
  .nk-header nav{display:none}
  .nk-header__logo{opacity:0;transition:opacity .4s}
  .nk-header.is-shown .nk-header__logo{opacity:1}
  .nk-header.is-shown{background:linear-gradient(180deg,#14110dcc,#14110d00)}
  .nk-burger{position:relative;z-index:2;display:grid;place-content:center;gap:7px;width:48px;height:48px;margin-left:auto;padding:0;border:1px solid #efe6d655;border-radius:50%;background:#14110d88;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
  .nk-burger i{display:block;width:20px;height:1.5px;background:var(--nk-cream);transition:transform .45s var(--nk-ease)}
  .nk-burger[aria-expanded="true"] i:first-child{transform:translateY(4.25px) rotate(45deg)}
  .nk-burger[aria-expanded="true"] i:last-child{transform:translateY(-4.25px) rotate(-45deg)}
  .nk-drawer{position:fixed;inset:0;z-index:790;display:flex;flex-direction:column;justify-content:center;gap:6vh;padding:90px 8vw 120px;
    background:var(--nk-coal);color:var(--nk-cream);clip-path:circle(0 at calc(100% - 5vw - 24px) 38px);visibility:hidden;transition:clip-path .7s var(--nk-ease),visibility 0s .7s}
  .nk-drawer.is-open{clip-path:circle(150vmax at calc(100% - 5vw - 24px) 38px);visibility:visible;transition:clip-path .7s var(--nk-ease)}
  .nk-drawer__nav{display:grid;gap:3vh}
  .nk-drawer__nav a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-bottom:2vh;border-bottom:1px solid #efe6d622;color:inherit;text-decoration:none;
    opacity:0;transform:translateY(24px);transition:opacity .5s,transform .7s var(--nk-ease)}
  .nk-drawer.is-open .nk-drawer__nav a{opacity:1;transform:none}
  .nk-drawer.is-open .nk-drawer__nav a:nth-child(2){transition-delay:.05s}
  .nk-drawer.is-open .nk-drawer__nav a:nth-child(3){transition-delay:.1s}
  .nk-drawer.is-open .nk-drawer__nav a:nth-child(4){transition-delay:.15s}
  .nk-drawer.is-open .nk-drawer__nav a:nth-child(5){transition-delay:.2s}
  .nk-drawer__nav .en{font-family:var(--nk-display);font-size:42px;line-height:1}
  .nk-drawer__nav .nk-ja{font-size:12px;letter-spacing:.16em;color:#cfc6b6}
  .nk-drawer__nav .is-reserve .en{color:var(--nk-ember)}
  .nk-drawer__tel{display:grid;gap:10px}
  .nk-drawer__tel a{color:#cfc6b6;font-size:14px;letter-spacing:.1em;text-decoration:none}
}

/* ---------- Reduced motion ---------- */
@media(prefers-reduced-motion:reduce){
  .nk-grain{animation:none}
  .nk-js .nk-loader{display:none}
  .nk-runway{display:none}
  .nk-shop__marquee-inner{animation:none}
}

/* ---------- SHOP → 採用情報 ---------- */
.nk-recruit-cta{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:3vw;max-width:1100px;margin:12vh auto 0;padding:34px 30px 34px 44px;
  border:1px solid #efe6d655;color:var(--nk-cream);text-decoration:none;overflow:hidden;isolation:isolate;transition:color .4s,border-color .4s}
.nk-recruit-cta::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--nk-ember);transform:scaleY(0);transform-origin:bottom;transition:transform .6s var(--nk-ease)}
.contents .nk-recruit-cta:hover{opacity:1;border-color:var(--nk-ember)}
.nk-recruit-cta:hover::before{transform:scaleY(1)}
.nk-recruit-cta__en{font-family:var(--nk-display);font-size:clamp(48px,6vw,92px);line-height:1;color:var(--nk-ember);transition:color .4s}
.nk-recruit-cta:hover .nk-recruit-cta__en{color:var(--nk-coal)}
.nk-recruit-cta__body{display:grid;gap:6px}
.nk-recruit-cta__body strong{font-size:clamp(18px,1.6vw,24px);letter-spacing:.14em}
.nk-recruit-cta__body small{font-size:13px;line-height:1.8;color:#cfc6b6;transition:color .4s}
.nk-recruit-cta:hover .nk-recruit-cta__body small{color:#fff}
.nk-recruit-cta__arrow{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--nk-ember);color:#fff;font-size:22px;animation:nk-nudge 1.6s ease-in-out infinite;transition:background .4s,color .4s}
.nk-recruit-cta:hover .nk-recruit-cta__arrow{background:var(--nk-coal);animation:none}
@media(max-width:900px){
  .nk-recruit-cta{grid-template-columns:1fr auto;gap:14px 16px;margin:8vh 7vw 0;padding:26px 20px 26px 24px}
  .nk-recruit-cta__en{grid-column:1/-1;font-size:56px}
  .nk-recruit-cta__arrow{width:52px;height:52px}
}

/* ---------- Language switcher ---------- */
.nk-lang{display:flex;align-items:center;gap:2px;font-family:"Anton","Impact",sans-serif;font-size:13px;letter-spacing:.06em;line-height:1}
.nk-lang a{padding:6px 7px;color:inherit;text-decoration:none;opacity:.62;transition:opacity .2s,color .2s}
.nk-lang a:not(:last-child)::after{content:"";display:inline-block;width:1px;height:10px;margin-left:12px;background:currentColor;opacity:.35;vertical-align:middle}
.nk-lang a:hover{opacity:1}
.nk-lang a[aria-current]{opacity:1;color:#e0522a}
.nk-lang a[lang="zh"],.nk-lang a[lang="ko"]{font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;font-size:12px}
.nk-lang--fv{position:absolute;z-index:6;top:26px;right:4.375%;color:var(--ink,#eeeae1)}
.nk-lang--header{margin-right:clamp(16px,2.4vw,34px);color:var(--nk-cream)}
.nk-header{gap:0}
.nk-header .nk-lang--header{margin-left:auto}
.nk-drawer .nk-lang--drawer{font-size:18px;gap:8px}
.nk-drawer .nk-lang--drawer a[lang="zh"],.nk-drawer .nk-lang--drawer a[lang="ko"]{font-size:15px}
@media(max-width:900px){.nk-lang--fv,.nk-lang--header{display:none}}

/* ---------- SNS links ---------- */
.nk-sns{display:flex;flex-wrap:wrap;gap:10px}
.nk-sns a{display:grid;place-items:center;width:40px;height:40px;border:1px solid #efe6d655;border-radius:50%;color:#efe6d6;transition:background .25s,color .25s,border-color .25s}
.nk-sns a:hover{background:#e0522a;border-color:#e0522a;color:#fff;opacity:1}
.nk-sns svg{width:18px;height:18px}
.site-footer .nk-sns--footer{margin-left:auto}
.nk-drawer .nk-sns--drawer{margin-top:4px}
@media(max-width:900px){.site-footer .nk-sns--footer{margin-left:0;width:100%;order:3}}
