.page-home .hero{border-bottom:1px solid var(--line);position:relative;overflow:hidden}.page-home .hero-grid{background-image:linear-gradient(var(--line-soft) 1px, transparent 1px), linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);pointer-events:none;background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 80% 0,#000 40%,#0000 100%);mask-image:radial-gradient(120% 90% at 80% 0,#000 40%,#0000 100%)}.page-home .hero .wrap{padding-top:clamp(30px,4vw,56px);padding-bottom:clamp(40px,6vw,72px);position:relative}.page-home .hero-tag{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);align-items:center;gap:10px;margin-bottom:clamp(20px,3vw,34px);padding:7px 13px;font-size:.72rem;display:inline-flex}.page-home .hero-tag .pulse{background:var(--ink);width:7px;height:7px;animation:pulse 2.4s var(--ease) infinite;border-radius:50%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.page-home .wordmark{letter-spacing:-.04em;font-size:clamp(3rem,10.5vw,8.5rem);font-weight:900;line-height:.9}.page-home .wordmark .n2{display:block}.page-home .hero-sub{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:28px 56px;margin-top:clamp(24px,3.5vw,40px);display:flex}.page-home .hero-lede{letter-spacing:-.01em;max-width:20ch;font-size:clamp(1.15rem,2.4vw,1.9rem);font-weight:700;line-height:1.5}.page-home .hero-note{max-width:42ch;color:var(--ink-2);font-size:.98rem;line-height:1.85}.page-home .hero-actions{flex-wrap:wrap;gap:14px;margin-top:clamp(26px,3.5vw,40px);display:flex}.page-home section.band{padding-block:clamp(72px,11vw,150px)}.page-home .band-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px 56px;display:flex}.page-home .band-title{letter-spacing:-.03em;font-size:clamp(1.9rem,4.6vw,3.6rem);font-weight:900;line-height:1.05}.page-home .band-title .en{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2);margin-bottom:16px;font-size:.8rem;font-weight:500;display:block}.page-home .band-desc{max-width:36ch;color:var(--ink-2);font-size:1rem;line-height:1.9}.page-home .live{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;border:1px solid var(--line);align-items:center;gap:9px;padding:6px 12px;font-size:.68rem;display:inline-flex}.page-home .live .pulse{background:var(--ink);width:7px;height:7px;animation:pulse 2.4s var(--ease) infinite;border-radius:50%}.page-home .eyebrow .live{flex:none}@media (max-width:600px){.page-home .eyebrow{flex-wrap:wrap;row-gap:14px}.page-home .eyebrow .live{order:5}}.page-home .svc-grid{background:var(--line);border:1px solid var(--line);gap:1px;margin-top:clamp(40px,6vw,72px);display:grid}.page-home .svc-grid.cols2{grid-template-columns:repeat(2,1fr)}.page-home .svc-grid.cols3{grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.page-home .svc-grid.cols2,.page-home .svc-grid.cols3{grid-template-columns:1fr}}.page-home .svc{background:var(--paper);min-height:300px;transition:background .3s var(--ease), color .3s var(--ease);flex-direction:column;padding:clamp(28px,3vw,44px);display:flex}.page-home .svc-top{justify-content:space-between;align-items:center;margin-bottom:clamp(28px,4vw,44px);display:flex}.page-home .svc-idx{font-family:var(--mono);letter-spacing:.1em;font-size:.78rem;font-weight:600}.page-home .svc-en{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);transition:color .3s var(--ease);font-size:.66rem}.page-home .svc-name{letter-spacing:-.02em;font-size:clamp(1.3rem,2.2vw,1.7rem);font-weight:900;line-height:1.3}.page-home .svc-body{color:var(--ink-2);transition:color .3s var(--ease);flex:1;margin-top:16px;font-size:.93rem;line-height:1.85}.page-home .svc-foot{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:28px;font-size:.72rem;display:flex}.page-home .svc-foot .arw{transition:transform .3s var(--ease);display:inline-block}.page-home .svc-foot .soon{color:var(--ink-2);opacity:.55}.page-home a.svc:hover{background:var(--ink);color:var(--paper)}.page-home a.svc:hover .svc-en,.page-home a.svc:hover .svc-body{color:#f5f5f2b8}.page-home a.svc:hover .svc-foot .arw{transform:translate(5px)}.page-home .svc-illust{border-bottom:1px solid var(--line);height:clamp(124px,15vw,150px);transition:border-color .3s var(--ease);justify-content:center;align-items:center;margin:calc(-1*clamp(28px,3vw,44px)) calc(-1*clamp(28px,3vw,44px)) clamp(24px,3vw,32px);display:flex;position:relative;overflow:hidden}.page-home .svc-illust:before{content:"";background-image:linear-gradient(var(--line-soft) 1px, transparent 1px), linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);pointer-events:none;background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 100% at 50% 0,#000 30%,#0000 100%);mask-image:radial-gradient(120% 100% at 50% 0,#000 30%,#0000 100%)}.page-home .svc-illust svg{width:auto;height:clamp(58px,7vw,72px);color:var(--ink);transition:color .3s var(--ease);position:relative;overflow:visible}.page-home .svc-illust img{object-fit:contain;mix-blend-mode:multiply;width:auto;max-width:82%;height:82%;position:relative}.page-home a.svc:hover .svc-illust{border-color:var(--line-inv)}.page-home a.svc:hover .svc-illust svg{color:var(--paper)}.page-home .svc-illust.photo:before{display:none}.page-home .svc-illust.photo img{object-fit:cover;mix-blend-mode:normal;width:100%;max-width:none;height:100%;transition:transform .4s var(--ease);position:absolute;inset:0}.page-home a.svc:hover .svc-illust.photo img{transform:scale(1.04)}.page-home .svc-grid.split{background:0 0;border:0;grid-template-columns:1fr;gap:clamp(20px,3vw,32px)}.page-home .svc-grid.split .svc{--pad:clamp(28px, 3vw, 44px);border:1px solid var(--line);grid-template-rows:auto auto 1fr auto;grid-template-columns:clamp(260px,36%,440px) minmax(0,1fr);min-height:clamp(228px,24vw,300px);padding:0;display:grid;overflow:hidden}.page-home .svc-grid.split .svc-illust{border:0;border-right:1px solid var(--line);grid-area:1/1/-1;width:100%;height:100%;min-height:clamp(180px,20vw,260px);margin:0}.page-home .svc-grid.split .svc-top{padding:var(--pad) var(--pad) 0;grid-area:1/2}.page-home .svc-grid.split .svc-name{padding:0 var(--pad);grid-area:2/2}.page-home .svc-grid.split .svc-body{padding:0 var(--pad);flex:none;grid-area:3/2}.page-home .svc-grid.split .svc-foot{padding:0 var(--pad) var(--pad);grid-area:4/2}.page-home .svc-grid.split a.svc:hover .svc-illust{border-color:var(--line-inv)}@media (max-width:760px){.page-home .svc-grid.split .svc{grid-template-rows:auto;grid-template-columns:1fr;min-height:0}.page-home .svc-grid.split .svc>*{grid-area:auto/1!important}.page-home .svc-grid.split .svc-illust{border-right:0;border-bottom:1px solid var(--line);height:clamp(168px,44vw,240px);min-height:0}.page-home .svc-grid.split .svc-top{padding-top:var(--pad)}}.page-home .svc-grid.rows{grid-template-columns:1fr}.page-home .svc-grid.rows .svc{min-height:0;transition:transform .28s var(--ease), background .28s var(--ease), box-shadow .28s var(--ease);grid-template-rows:auto auto auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:clamp(24px,3vw,52px);padding:clamp(22px,2.4vw,32px) clamp(26px,3vw,44px);display:grid}.page-home .svc-grid.rows .svc-illust{border:1px solid var(--line);grid-area:1/1/-1;width:clamp(118px,13vw,184px);height:100%;min-height:clamp(94px,9vw,120px);margin:0}.page-home .svc-grid.rows .svc-top{grid-area:1/2;margin-bottom:10px}.page-home .svc-grid.rows .svc-name{grid-area:2/2}.page-home .svc-grid.rows .svc-body{flex:none;grid-area:3/2;max-width:62ch;margin-top:10px}.page-home .svc-grid.rows .svc-foot{grid-area:1/3/-1;margin-top:0}.page-home .svc-grid.rows a.svc:hover{background:var(--paper);color:var(--ink);z-index:1;position:relative;transform:translateY(-3px);box-shadow:0 16px 34px -22px #0b0d0b80}.page-home .svc-grid.rows a.svc:hover .svc-en,.page-home .svc-grid.rows a.svc:hover .svc-body{color:var(--ink-2)}.page-home .svc-grid.rows a.svc:hover .svc-illust{border-color:var(--ink)}.page-home .svc-grid.rows a.svc:hover .svc-illust svg{color:var(--ink)}@media (max-width:640px){.page-home .svc-grid.rows .svc{grid-template-columns:1fr}.page-home .svc-grid.rows .svc>*{grid-area:auto/1!important}.page-home .svc-grid.rows .svc-illust{width:auto;height:clamp(112px,28vw,140px);margin:calc(-1*clamp(22px,2.4vw,32px)) calc(-1*clamp(26px,3vw,44px)) 20px}.page-home .svc-grid.rows .svc-foot{justify-self:stretch;margin-top:18px}}.page-home .band.inv{background:var(--ink);color:var(--paper)}.page-home .band.inv .band-title .en,.page-home .band.inv .band-desc{color:#f5f5f299}.page-home .band.inv .eyebrow .idx{border-color:var(--paper)}.page-home .band.inv .eyebrow .line{background:var(--line-inv)}.page-home .tech-list{border-top:1px solid var(--line-inv);margin-top:clamp(40px,6vw,72px)}.page-home .tech-row{border-bottom:1px solid var(--line-inv);transition:padding-left .3s var(--ease);grid-template-columns:64px minmax(0,.9fr) minmax(0,1.3fr);align-items:baseline;gap:clamp(16px,4vw,56px);padding:clamp(26px,3.4vw,40px) 0;display:grid}.page-home .tech-row:hover{padding-left:14px}.page-home .tech-num{font-family:var(--mono);color:#f5f5f280;font-size:.8rem}.page-home .tech-en{letter-spacing:-.02em;font-size:clamp(1.4rem,3vw,2.3rem);font-weight:900}.page-home .tech-en small{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#f5f5f280;margin-top:10px;font-size:.7rem;font-weight:500;display:block}.page-home .tech-desc{color:#f5f5f2c7;font-size:1rem;line-height:1.8}@media (max-width:760px){.page-home .tech-row{grid-template-columns:1fr;gap:12px}.page-home .tech-num{order:-1}}.page-home .flow{border-top:1px solid var(--line-inv);margin-top:clamp(48px,7vw,96px);padding-top:clamp(36px,5vw,64px)}.page-home .flow-cap{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:#f5f5f28c;flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:clamp(34px,5vw,56px);font-size:.74rem;display:flex}.page-home .flow-cap b{color:var(--paper);letter-spacing:.04em;text-transform:none;font-size:.92rem;font-weight:600}.page-home .flow-rail{gap:clamp(8px,1.5vw,20px);display:flex;position:relative}.page-home .flow-rail:before{content:"";background:#f5f5f24d;height:1px;position:absolute;top:6px;left:8.33%;right:8.33%}.page-home .flow-stop{text-align:center;flex-direction:column;flex:1;align-items:center;min-width:0;display:flex}.page-home .flow-dot{box-sizing:border-box;background:var(--ink);z-index:1;border:1px solid #f5f5f28c;border-radius:50%;width:13px;height:13px;margin-bottom:22px;position:relative}.page-home .flow-stop.end .flow-dot{background:var(--paper);border-color:var(--paper);border-radius:0;width:13px;height:13px;transform:rotate(45deg)}.page-home .flow-num{font-family:var(--mono);letter-spacing:.08em;color:#f5f5f280;margin-bottom:6px;font-size:.68rem}.page-home .flow-meta{flex-direction:column;align-items:center;display:flex}.page-home .flow-name{letter-spacing:-.01em;justify-content:center;align-items:center;min-height:2.4em;font-size:clamp(.9rem,1.5vw,1.08rem);font-weight:900;line-height:1.2;display:flex}.page-home .flow-stop.end .flow-name{font-family:var(--mono);letter-spacing:.04em;font-size:clamp(.82rem,1.3vw,.98rem);font-weight:600}.page-home .flow-do{color:#f5f5f2b3;text-wrap:pretty;max-width:16ch;margin-top:9px;font-size:.82rem;line-height:1.6}.page-home .flow-guard{margin-top:clamp(22px,3.5vw,36px)}.page-home .flow-guard-bracket{border:1px solid #f5f5f252;border-top:0;height:clamp(14px,2vw,20px);margin:0 8.33%;display:block}.page-home .flow-guard-label{text-align:center;flex-direction:column;align-items:center;gap:5px;margin-top:16px;display:flex}.page-home .flow-guard-label .flow-num{margin:0}.page-home .flow-guard-label b{letter-spacing:-.01em;align-items:baseline;gap:12px;font-size:clamp(1rem,1.7vw,1.25rem);font-weight:900;display:inline-flex}.page-home .flow-guard-label b small{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#f5f5f28c;font-size:.62rem;font-weight:500}.page-home .flow-guard-note{color:#f5f5f2b3;font-size:.84rem;line-height:1.6}@media (max-width:760px){.page-home .flow-rail{flex-direction:column;gap:0;padding-left:8px}.page-home .flow-rail:before{width:1px;height:auto;inset:7px auto 7px 6px}.page-home .flow-stop{text-align:left;flex-direction:row;align-items:flex-start;gap:16px;padding:14px 0}.page-home .flow-dot{flex:none;margin-top:1px;margin-bottom:0}.page-home .flow-do{max-width:none}.page-home .flow-name{justify-content:flex-start;min-height:0}.page-home .flow-stop .flow-meta{flex-direction:column;align-items:flex-start;display:flex}.page-home .flow-guard-bracket{border:0;border-top:1px solid #f5f5f252;height:0;margin:0}.page-home .flow-guard-label{text-align:left;align-items:flex-start}.page-home .flow-guard-label b{gap:10px}}.page-home .exp-grid{grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,40px);margin-top:clamp(40px,6vw,72px);display:grid}@media (max-width:760px){.page-home .exp-grid{grid-template-columns:1fr}}.page-home .exp{border-top:2px solid var(--ink);padding-top:24px}.page-home .exp .num{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-2);font-size:.78rem}.page-home .exp h3{letter-spacing:-.02em;margin-top:18px;font-size:clamp(1.25rem,2.2vw,1.6rem);font-weight:900;line-height:1.4}.page-home .cta{background:var(--ink);color:var(--paper)}.page-home .cta .wrap{text-align:center;padding-block:clamp(80px,12vw,160px)}.page-home .cta h2{letter-spacing:-.03em;font-size:clamp(2rem,6vw,5rem);font-weight:900;line-height:1.05}.page-home .cta p{color:#f5f5f2b8;max-width:46ch;margin:28px auto 44px;font-size:1.05rem;line-height:1.9}.page-home .cta .btn.inv{background:var(--paper);color:var(--ink);border-color:var(--paper)}.page-home .cta .btn.inv:hover{color:var(--paper);background:0 0}
