:root{--bg:#090b0f;--ink:#f1f3e9;--card:#11151c;--accent:#c8ff3d;--button-ink:#090b0f;--line:#2b333c;--radius:0px;--hero:#090b0f}.l-home-hero:before{content:"";position:absolute;inset:35% -20% -70%;background-image:linear-gradient(#c8ff3d22 1px,transparent 1px),linear-gradient(90deg,#c8ff3d22 1px,transparent 1px);background-size:60px 60px;transform:perspective(400px) rotateX(50deg)}.l-home-hero h1{font-weight:950}.l-art>span{color:var(--accent);font-style:italic}.l-art .l-orbit{border-radius:10px;transform:rotate(-18deg);border-width:2px}.l-key-info .l-card{border-top:3px solid var(--accent)}.l-section-heading{display:flex;align-items:baseline;gap:24px}.l-cta{border-top:1px solid var(--accent)}.l-card:hover{border-color:#c8ff3d88}

/* 밴드 — 시상만 애시드로 뒤집어 페이지에서 딱 한 번 크게 소리를 낸다. */
.theme-kinetic{--surface-alt:#0d1117;--surface-deep:#c8ff3d;--surface-deep-ink:#090b0f}
.theme-kinetic .l-band[data-band=alt]{border-block:1px solid #1b232c}
.theme-kinetic .l-band[data-band=alt]:before{content:"";position:absolute;inset:0;z-index:0;background-image:linear-gradient(#c8ff3d0f 1px,transparent 1px),linear-gradient(90deg,#c8ff3d0f 1px,transparent 1px);background-size:64px 64px;background-position:0 calc(var(--band-progress,0) * -90px)}
.theme-kinetic .l-band[data-band=deep] .l-card{background:transparent;border:0;border-left:2px solid #090b0f;border-radius:0;padding:2px 0 2px 22px}
.theme-kinetic .l-band[data-band=deep] .l-card p{opacity:.7}
.theme-kinetic .l-band[data-band=deep] .l-card__icon{color:#090b0f;opacity:.45}
/* 시그니처 — 제목이 잘린 행에서 솟아오르고, 카드 위로 애시드 선이 그어진다. */
.theme-kinetic .l-section-heading h2{overflow:hidden}
.theme-kinetic .l-section-heading h2>span{display:block;transition:transform .66s cubic-bezier(.16,1,.3,1)}
.js .theme-kinetic .l-section-heading h2>span{transform:translateY(110%)}
.js .theme-kinetic .l-section-heading.is-in h2>span{transform:none}
.theme-kinetic .l-grid .l-card{position:relative}
.theme-kinetic .l-grid .l-card:before{content:"";position:absolute;left:-1px;top:-1px;height:2px;width:0;background:var(--accent);transition:width .6s cubic-bezier(.22,.61,.36,1);transition-delay:calc(var(--i,0)*90ms)}
.theme-kinetic .l-grid.is-in .l-card:before{width:calc(100% + 2px)}
