:root{--bg: #0a0a0c;--bg-2: #101014;--ink: #ece7df;--ink-dim: #8a857c;--line: rgba(236, 231, 223, .1);--steel: #6b7686;--accent: #c0392b;--accent-soft: rgba(192, 57, 43, .14);--sans: "Source Code Pro", monospace;--mono: "Space Mono", monospace;--serif: "Shippori Mincho", serif;--display: "Dela Gothic One", "Source Code Pro", sans-serif;--ease: cubic-bezier(.16, 1, .3, 1);--gutter: clamp(16px, 5vw, 80px)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;cursor:none}@media(pointer:coarse){body{cursor:auto}}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:none;border:none;background:none;color:inherit}@media(pointer:coarse){button{cursor:pointer}}::selection{background:var(--accent);color:#fff}body:after{content:"";position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;will-change:transform}.cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--accent)}.cursor-ring{width:34px;height:34px;margin:-17px 0 0 -17px;border:1px solid var(--ink-dim);transition:width .25s var(--ease),height .25s var(--ease),margin .25s var(--ease),background .25s var(--ease),border-color .25s}.cursor-ring.is-active{width:58px;height:58px;margin:-29px 0 0 -29px;background:var(--accent-soft);border-color:var(--accent)}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}[data-reveal].is-in,[data-reveal].is-in [data-reveal-child]{opacity:1;transform:none}[data-reveal-child]{opacity:0;transform:translateY(40px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:calc(var(--i) * .09s)}.split{display:inline}.split-word{display:inline-block;white-space:nowrap}.split-char{display:inline-block;transform:translateY(105%) rotate(4deg);opacity:0;transition:transform .7s var(--ease),opacity .7s var(--ease)}.split.is-in .split-char{transform:none;opacity:1}.nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:18px var(--gutter);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(to bottom,#0a0a0cb3,#0a0a0c00);border-bottom:1px solid var(--line)}.nav-brand{font-family:var(--serif);font-weight:800;font-size:clamp(17px,2.2vw,22px);letter-spacing:1px;display:flex;align-items:center;gap:8px;white-space:nowrap}.nav-kanji{color:var(--accent);font-size:20px}.nav-menu{display:flex;align-items:center;gap:clamp(24px,4vw,44px)}.nav-links{display:flex;gap:clamp(18px,2.4vw,30px);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-family:var(--mono)}.nav-links a{color:var(--ink-dim);transition:color .3s}.nav-links a:hover{color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:18px}.nav-burger{display:none;width:30px;height:22px;position:relative;flex:0 0 auto}.nav-burger span{position:absolute;left:0;width:100%;height:2px;background:var(--ink);transition:transform .35s var(--ease),opacity .25s}.nav-burger span:nth-child(1){top:2px}.nav-burger span:nth-child(2){top:10px}.nav-burger span:nth-child(3){top:18px}.nav.is-open .nav-burger span:nth-child(1){transform:translateY(8px) rotate(45deg)}.nav.is-open .nav-burger span:nth-child(2){opacity:0}.nav.is-open .nav-burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.lang-switch{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:12px;letter-spacing:.08em}.lang-switch button{color:var(--ink-dim);padding:4px 2px;position:relative;transition:color .3s}.lang-switch button:hover{color:var(--ink)}.lang-switch button.is-active{color:var(--accent)}.lang-switch button.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--accent);animation:lang-underline .35s var(--ease)}@keyframes lang-underline{0%{transform:scaleX(0)}}.lang-divider{color:var(--line)}.nav-cta{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:10px 18px;border:1px solid var(--line);border-radius:40px;transition:border-color .3s,background .3s}.nav-cta:hover{border-color:var(--accent);background:var(--accent-soft)}.nav-cta-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}@media(max-width:860px){.nav-burger{display:block}.nav-menu{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:26px;padding:26px var(--gutter) 34px;background:#09090bfa;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);transform:translateY(-14px);opacity:0;pointer-events:none;transition:opacity .3s var(--ease),transform .3s var(--ease)}.nav.is-open .nav-menu{opacity:1;transform:none;pointer-events:auto}.nav-links{flex-direction:column;gap:4px;font-size:15px}.nav-links a{padding:10px 0;border-bottom:1px solid var(--line)}.nav-actions{justify-content:space-between;padding-top:6px}.nav-cta{padding:12px 22px}}.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:120px var(--gutter) 80px;overflow:hidden;background:url(/hero.jpg) center 40% / cover no-repeat,var(--bg)}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:0}.hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#0a0a0c8c,#0a0a0c59 40%,#0a0a0ce0),radial-gradient(120% 80% at 50% 0%,rgba(192,57,43,.12),transparent 60%)}.hero-grid-lines{position:absolute;inset:0;display:grid;grid-template-columns:repeat(12,1fr);pointer-events:none;opacity:.5}.hero-grid-lines span{border-right:1px solid rgba(236,231,223,.03)}.hero-hud{position:absolute;z-index:2;font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:#e9d3acb3;text-transform:uppercase;text-shadow:0 1px 10px rgba(0,0,0,.6)}.hud-tl{top:96px;left:var(--gutter)}.hud-tr{top:96px;right:var(--gutter)}.hud-bl{bottom:36px;left:var(--gutter)}.hud-br{bottom:36px;right:var(--gutter);animation:bob 2s var(--ease) infinite}@keyframes bob{50%{transform:translateY(6px)}}.hero-kanji{position:absolute;font-family:var(--serif);font-weight:800;font-size:clamp(340px,60vw,900px);color:#ece7df06;top:50%;left:50%;transform:translate(-50%,-50%);line-height:1;-webkit-user-select:none;user-select:none}.hero-inner{position:relative;z-index:2;max-width:1100px}.hero-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:#e9d3ac;margin-bottom:34px;text-shadow:0 2px 14px rgba(0,0,0,.55)}.hero-title{font-family:var(--display);line-height:.98;letter-spacing:-.01em;padding:.08em 0;text-shadow:0 6px 30px rgba(0,0,0,.45),0 2px 6px rgba(0,0,0,.5)}.hero-line{display:block;font-size:clamp(44px,11.5vw,158px);color:#f4efe6}.hero-line.line-1{animation:rise 1s var(--ease) both}.hero-line.line-2{animation:rise 1s var(--ease) .12s both;color:#f4efe6a8;font-size:clamp(28px,6.5vw,92px);letter-spacing:.08em}.hero-line.line-3{animation:rise 1s var(--ease) .24s both}.hero-line.accent{color:transparent;-webkit-text-stroke:1.5px var(--accent);background:linear-gradient(180deg,var(--accent),#7a1f16);-webkit-background-clip:text;background-clip:text;text-shadow:none}@keyframes rise{0%{opacity:0;transform:translateY(40%)}}.hero-sub{max-width:460px;margin:40px auto 0;font-size:15px;line-height:1.7;color:#ddd6c8;text-shadow:0 2px 14px rgba(0,0,0,.6)}.hero-blade{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:2px;height:120px}.hero-blade-line{width:100%;height:100%;background:linear-gradient(to bottom,transparent,var(--accent));animation:grow 1.4s var(--ease) .5s both;transform-origin:top}@keyframes grow{0%{transform:scaleY(0)}}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;padding:22px 0;background:var(--bg-2)}.marquee-track{display:flex;width:max-content;white-space:nowrap;animation:scroll-x 30s linear infinite;will-change:transform}.marquee-item{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:.02em;color:var(--ink-dim);display:flex;align-items:center;gap:48px;padding-right:48px;flex:0 0 auto;transition:color .3s}.marquee-item:hover{color:var(--ink)}.marquee-item i{color:var(--accent);font-style:normal;font-size:14px}@keyframes scroll-x{0%{transform:translate(0)}to{transform:translate(-50%)}}.section{padding:clamp(80px,12vw,180px) var(--gutter);position:relative}.section-head{margin-bottom:70px}.section-index{font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--accent);text-transform:uppercase;display:block;margin-bottom:20px}.section-title{font-family:var(--display);font-size:clamp(32px,5.4vw,74px);line-height:1.02;letter-spacing:-.01em;max-width:15ch}.path-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.path-progress{position:absolute;top:-1px;left:0;right:0;height:2px;z-index:3;overflow:hidden}.path-progress-fill{display:block;width:100%;height:100%;background:linear-gradient(90deg,transparent,var(--accent) 12%,var(--accent) 88%,transparent);transform:scaleX(0);transform-origin:left;transition:transform 1.3s var(--ease) .15s}.path-grid.is-in .path-progress-fill{transform:scaleX(1)}.path-card{background:var(--bg);padding:44px 38px 42px;position:relative;overflow:hidden;transition:background .5s var(--ease),transform .5s var(--ease),opacity .4s var(--ease)}.path-grid:hover .path-card:not(:hover){opacity:.45}.path-card:hover{background:var(--bg-2)}.path-num{position:absolute;top:18px;right:30px;z-index:0;font-family:var(--display);font-size:90px;line-height:1;color:#f4efe60b;pointer-events:none;transition:color .5s var(--ease),transform .6s var(--ease)}.path-card:hover .path-num{color:color-mix(in srgb,var(--accent) 42%,transparent);transform:translateY(-6px) scale(1.06)}.path-top{position:relative;z-index:1;display:flex;align-items:center;gap:14px;margin-bottom:54px}.path-node{width:11px;height:11px;border-radius:50%;background:var(--bg);border:2px solid var(--accent);flex:0 0 auto;transition:box-shadow .5s var(--ease),background .4s}.path-grid.is-in .path-node{animation:node-pop .5s var(--ease) backwards}.path-card:nth-child(2) .path-node{animation-delay:.15s}.path-card:nth-child(3) .path-node{animation-delay:.3s}.path-card:nth-child(4) .path-node{animation-delay:.45s}@keyframes node-pop{0%{transform:scale(0);opacity:0}}.path-card:hover .path-node{background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 22%,transparent)}.path-kanji{font-family:var(--serif);font-weight:800;font-size:26px;color:var(--steel);transition:color .4s,transform .5s var(--ease)}.path-card:hover .path-kanji{color:var(--accent);transform:translate(3px)}.path-card h3{position:relative;z-index:1;font-family:var(--sans);font-weight:900;font-size:22px;letter-spacing:.02em;margin-bottom:16px;transition:transform .5s var(--ease)}.path-card:hover h3{transform:translate(4px)}.path-card p{position:relative;z-index:1;color:var(--ink-dim);font-size:14px;line-height:1.7}.path-rule{position:relative;z-index:1;height:1px;background:var(--accent);width:0;margin-top:30px;transition:width .6s var(--ease)}.path-card:hover .path-rule{width:100%}@media(max-width:860px){.path-grid{grid-template-columns:1fr}.path-top{margin-bottom:28px}}.catalog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.kard{border:1px solid var(--line);background:var(--bg-2);overflow:hidden;transition:transform .5s var(--ease),border-color .4s;position:relative}.kard:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.kard-visual{position:relative;height:280px;overflow:hidden;background:linear-gradient(135deg,#131318,#0c0c10)}.kard-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease);z-index:0}.kard:hover .kard-img{transform:scale(1.05)}.kard-visual:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(160deg,rgba(10,10,12,.55) 0%,transparent 34%)}.kard-kanji{position:absolute;top:14px;left:16px;z-index:2;font-family:var(--serif);font-weight:800;font-size:34px;line-height:1;color:#f4efe6eb;text-shadow:0 2px 12px rgba(0,0,0,.7);transition:color .4s}.kard:hover .kard-kanji{color:#fff}.kard-blade{position:absolute;top:50%;left:-20%;width:140%;height:2px;z-index:2;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:translateY(-50%) rotate(-32deg) scaleX(0);transform-origin:center;transition:transform .7s var(--ease)}.kard:hover .kard-blade{transform:translateY(-50%) rotate(-32deg) scaleX(1)}.kard-tag{position:absolute;top:16px;right:16px;font-family:var(--mono);font-size:9px;letter-spacing:.15em;color:var(--ink-dim);border:1px solid var(--line);padding:4px 8px;border-radius:20px}.kard-body{padding:26px 28px 28px}.kard-name-row{display:flex;align-items:baseline;gap:14px;margin-bottom:22px}.kard-name-row h3{font-family:var(--display);font-size:28px;letter-spacing:.02em}.kard-sub{font-family:var(--mono);font-size:11px;letter-spacing:.15em;color:var(--ink-dim);text-transform:uppercase}.kard-specs{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;border-top:1px solid var(--line);padding-top:20px}.kard-specs dt{font-family:var(--mono);font-size:9px;letter-spacing:.15em;color:var(--ink-dim);margin-bottom:4px}.kard-specs dd{font-size:14px;font-weight:500}.kard-foot{display:flex;align-items:center;justify-content:space-between;margin-top:26px}.kard-price{font-family:var(--display);font-size:21px;letter-spacing:.01em}.kard-btn{font-family:var(--mono);font-size:12px;letter-spacing:.08em;padding:11px 18px;border:1px solid var(--line);border-radius:40px;transition:background .3s,border-color .3s}.kard-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}@media(max-width:640px){.catalog-grid{grid-template-columns:1fr;gap:20px}}.anatomy-stage{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,6vw,90px);align-items:start}.anatomy-display{position:sticky;top:120px;align-self:start;border-left:1px solid var(--line);padding-left:clamp(20px,3vw,44px)}.anatomy-display-jp{display:block;font-family:var(--serif);font-weight:800;font-size:clamp(140px,20vw,300px);line-height:.9;color:var(--ink);animation:jp-swap .55s var(--ease)}@keyframes jp-swap{0%{opacity:0;transform:translateY(24px) scale(.92);filter:blur(6px)}}.anatomy-display-meta{margin-top:22px;display:flex;flex-direction:column;gap:10px}.anatomy-display-num{font-family:var(--mono);font-size:12px;letter-spacing:.2em;color:var(--accent)}.anatomy-display-num i{color:var(--ink-dim);font-style:normal}.anatomy-display-part{font-family:var(--display);font-size:clamp(24px,3vw,38px);letter-spacing:.02em;animation:jp-swap .5s var(--ease)}.anatomy-display-desc{color:var(--ink-dim);font-size:15px;line-height:1.7;max-width:34ch;animation:fade-up .55s var(--ease) .05s backwards}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}}.anatomy-list{border-top:1px solid var(--line)}.anatomy-row{position:relative;width:100%;text-align:left;background:none;border:none;display:grid;grid-template-columns:44px 60px 1fr auto;align-items:center;gap:20px;padding:26px 22px 26px 0;border-bottom:1px solid var(--line);transition:padding-left .45s var(--ease),background .4s;font:inherit;color:inherit}.anatomy-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent);transform:scaleY(0);transform-origin:center;transition:transform .45s var(--ease)}.anatomy-row.is-active{padding-left:22px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 7%,transparent),transparent 70%)}.anatomy-row.is-active:before{transform:scaleY(1)}.anatomy-list:hover .anatomy-row:not(.is-active){opacity:.5}.anatomy-num{font-family:var(--mono);font-size:12px;color:var(--ink-dim);transition:color .4s}.anatomy-row.is-active .anatomy-num{color:var(--accent)}.anatomy-jp{font-family:var(--serif);font-size:30px;color:var(--steel);transition:color .4s,transform .45s var(--ease)}.anatomy-row.is-active .anatomy-jp{color:var(--ink);transform:scale(1.08)}.anatomy-part{font-family:var(--sans);font-weight:900;font-size:clamp(20px,2.4vw,30px);letter-spacing:.02em;transition:color .4s}.anatomy-row.is-active .anatomy-part{color:var(--accent)}.anatomy-arrow{font-family:var(--mono);color:var(--accent);opacity:0;transform:translate(-10px);transition:opacity .4s,transform .45s var(--ease)}.anatomy-row.is-active .anatomy-arrow{opacity:1;transform:none}@media(max-width:860px){.anatomy-stage{grid-template-columns:1fr;gap:20px}.anatomy-display{position:static;border-left:none;padding-left:0;display:flex;align-items:baseline;gap:24px}.anatomy-display-jp{font-size:clamp(90px,22vw,140px)}.anatomy-display-desc{display:none}}@media(max-width:780px){.anatomy-row{grid-template-columns:34px 46px 1fr auto;gap:12px}.anatomy-jp{font-size:22px}}.craft{background:var(--bg-2)}.craft-quote{position:relative;font-family:var(--display);font-size:clamp(24px,4vw,50px);line-height:1.15;letter-spacing:-.01em;max-width:20ch;margin-bottom:100px;padding-left:clamp(18px,3vw,40px)}.craft-quote:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:linear-gradient(180deg,var(--accent),transparent);transform:scaleY(0);transform-origin:top;transition:transform 1s var(--ease) .2s}.craft-quote.is-in:before{transform:scaleY(1)}.craft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.craft-block{position:relative;overflow:hidden;padding:40px 34px 44px;border:1px solid var(--line);background:var(--bg);transition:transform .5s var(--ease),border-color .45s,background .45s,opacity .4s}.craft-block:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(120% 80% at 50% 130%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 62%);opacity:0;transition:opacity .55s var(--ease)}.craft-block:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 4%,var(--bg))}.craft-block:hover:after{opacity:1}.craft-grid:hover .craft-block:not(:hover){opacity:.5}.craft-kanji{position:absolute;top:8px;right:18px;z-index:0;pointer-events:none;font-family:var(--serif);font-weight:800;font-size:120px;line-height:1;color:#f4efe60b;transition:color .5s var(--ease),transform .6s var(--ease)}.craft-block:hover .craft-kanji{color:color-mix(in srgb,var(--accent) 55%,transparent);transform:translateY(-4px) scale(1.05);text-shadow:0 0 40px color-mix(in srgb,var(--accent) 40%,transparent)}.craft-line{position:absolute;top:0;left:0;height:2px;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease);z-index:1}.craft-block:hover .craft-line{transform:scaleX(1)}.craft-chapter{position:relative;z-index:1;font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--accent);display:block;margin-bottom:18px}.craft-block p{position:relative;z-index:1;color:var(--ink-dim);font-size:15px;line-height:1.8;transition:color .45s}.craft-block:hover p{color:var(--ink)}.craft-more{position:relative;z-index:1;display:inline-block;margin-top:22px;font-family:var(--mono);color:var(--accent);opacity:0;transform:translate(-10px);transition:opacity .45s,transform .5s var(--ease)}.craft-block:hover .craft-more{opacity:1;transform:none}@media(max-width:860px){.craft-grid{grid-template-columns:1fr;gap:16px}}.cta{text-align:center;overflow:hidden}.cta-inner{position:relative}.cta-kanji{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--serif);font-size:clamp(200px,40vw,520px);color:#c0392b0f;z-index:0;will-change:transform,opacity;transition:transform .5s var(--ease);animation:cta-breathe 6s ease-in-out infinite}@keyframes cta-breathe{0%,to{opacity:.7}50%{opacity:1}}.cta-title{position:relative;z-index:1;font-family:var(--display);font-size:clamp(40px,8vw,116px);line-height:1;margin-bottom:24px}.cta-inner>p{position:relative;z-index:1;color:var(--ink-dim);margin-bottom:40px}.cta-btn{position:relative;z-index:1;display:inline-flex;align-items:center;font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:18px 40px;border-radius:46px;background:var(--accent);color:#fff;will-change:transform;transition:transform .35s var(--ease),box-shadow .35s var(--ease),background .35s}.cta-btn:before{content:"";position:absolute;inset:-3px;border-radius:inherit;z-index:-1;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 75%,transparent),transparent 70%);filter:blur(16px);opacity:0;transition:opacity .4s var(--ease)}.cta-btn:hover{box-shadow:0 16px 46px #c0392b73;background:color-mix(in srgb,var(--accent) 86%,#fff)}.cta-btn:hover:before{opacity:1}.cta-btn:active{box-shadow:0 8px 24px #c0392b66}.cta-btn-label{position:relative;z-index:1}.cta-btn-arrow{display:inline-block;overflow:hidden;max-width:0;opacity:0;transform:translate(-6px);font-size:15px;transition:max-width .4s var(--ease),opacity .35s,transform .4s var(--ease),margin-left .4s var(--ease)}.cta-btn:hover .cta-btn-arrow{max-width:26px;opacity:1;transform:none;margin-left:10px}.footer{border-top:1px solid var(--line);padding:50px var(--gutter) 30px;background:var(--bg)}.footer-hud{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--ink-dim);letter-spacing:.15em;margin-bottom:60px}.footer-main{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding-bottom:60px}.footer-brand{font-family:var(--serif);font-weight:800;font-size:46px}.footer-brand span{color:var(--accent);margin-left:6px}.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.footer-cols h4{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--ink-dim);margin-bottom:18px}.footer-cols a{display:block;font-size:14px;color:var(--ink);padding:6px 0;transition:color .3s,padding-left .3s}.footer-cols a:hover{color:var(--accent);padding-left:8px}.footer-base{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--ink-dim);flex-wrap:wrap;gap:10px}@media(max-width:780px){.footer-main{grid-template-columns:1fr}.footer-cols{grid-template-columns:1fr 1fr}}.modal-overlay{position:fixed;inset:0;z-index:1000;background:#060608cc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fade .3s ease}@keyframes fade{0%{opacity:0}}.modal{position:relative;width:100%;max-width:480px;background:var(--bg-2);border:1px solid var(--line);padding:44px 40px;animation:pop .4s var(--ease)}@keyframes pop{0%{opacity:0;transform:translateY(20px) scale(.98)}}.modal-close{position:absolute;top:18px;right:20px;font-size:16px;color:var(--ink-dim);transition:color .3s}.modal-close:hover{color:var(--accent)}.modal-index{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--accent)}.modal h3{font-family:var(--display);font-size:26px;margin:14px 0 6px}.modal-spec{font-family:var(--mono);font-size:12px;color:var(--ink-dim);margin-bottom:26px}.modal form{display:flex;flex-direction:column;gap:12px;margin-top:20px}.modal input,.modal textarea{background:var(--bg);border:1px solid var(--line);color:var(--ink);padding:14px 16px;font-family:var(--sans);font-size:14px;resize:vertical;transition:border-color .3s}.modal input:focus,.modal textarea:focus{outline:none;border-color:var(--accent)}.modal-submit{background:var(--accent);color:#fff;padding:15px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-top:6px;transition:opacity .3s}.modal-submit:hover{opacity:.88}.modal-submit:disabled{opacity:.55;cursor:default}.modal-note{font-family:var(--mono);font-size:10px;color:var(--ink-dim);margin-top:16px;text-align:center}.modal-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.modal-turnstile{min-height:65px;margin-top:4px}.modal-turnstile:empty{min-height:0}.modal-error{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.04em}.modal-success{text-align:center;padding:10px 0 6px;animation:fade-up .5s var(--ease)}.modal-success-mark{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;margin:14px auto 20px;border-radius:50%;border:2px solid var(--accent);color:var(--accent);font-size:26px}.modal-success h3{font-family:var(--display);font-size:24px;margin-bottom:10px}.modal-success p{color:var(--ink-dim);font-size:14px;line-height:1.6;margin-bottom:24px;max-width:32ch;margin-inline:auto}.modal-success .modal-submit{display:inline-block;padding:13px 40px}@media(max-width:1024px){.section{padding:clamp(70px,11vw,140px) var(--gutter)}.section-head{margin-bottom:54px}.craft-quote{margin-bottom:70px}.anatomy-display{top:100px}}@media(max-width:640px){.hero{padding:104px var(--gutter) 68px}.hero-hud{font-size:9px;letter-spacing:.14em}.hud-tr{top:74px}.hud-bl,.hud-br{bottom:22px}.hero-eyebrow{font-size:10px;letter-spacing:.2em;margin-bottom:22px}.hero-sub{font-size:14px;margin-top:30px}.hero-kanji{font-size:clamp(300px,90vw,460px)}.marquee{padding:16px 0}.marquee-item{font-size:19px;gap:30px;padding-right:30px}.section{padding:68px var(--gutter)}.section-head{margin-bottom:40px}.section-index{margin-bottom:14px}.kard-visual{height:210px}.kard-body{padding:22px 22px 24px}.path-card{padding:34px 26px 32px}.path-num{font-size:64px;top:14px;right:22px}.path-top{margin-bottom:30px}.anatomy-row{grid-template-columns:30px 44px 1fr auto;gap:10px;padding:20px 12px 20px 0}.anatomy-part{font-size:clamp(18px,5.5vw,24px)}.anatomy-arrow{display:none}.craft-block{padding:32px 26px 34px}.craft-kanji{font-size:92px}.cta-btn{padding:16px 32px}.footer{padding:44px var(--gutter) 28px}.footer-hud{margin-bottom:40px}.footer-main{padding-bottom:44px;gap:34px}.footer-brand{font-size:38px}.footer-cols{grid-template-columns:1fr 1fr;gap:24px}.footer-base{flex-direction:column;align-items:flex-start}.modal{padding:36px 26px}.modal h3{font-size:23px}}@media(max-width:380px){.footer-cols{grid-template-columns:1fr}.hero-hud.hud-bl{display:none}}
