:root{--bg: #f4f3ee;--ink: #141414;--ink-2: #3a3a3a;--mute: #666666;--mute-2: #8a8a8a;--line: #dddddd;--paper: #ffffff;--accent: #e8501e;--accent-ink: #ffffff;--must: #d93025;--soon: #b7791f;--grid: rgba(20, 20, 20, .06);--grid-size: 60px;--shadow: 10px 10px 0 var(--ink);--shadow-sm: 6px 6px 0 var(--ink);--shadow-xs: 4px 4px 0 var(--ink);--font: "IBM Plex Sans KR", "Pretendard", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter: clamp(20px, 6vw, 120px);--max: 1200px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{margin:0;font-family:var(--font);color:var(--ink);background-color:var(--bg);background-image:repeating-linear-gradient(90deg,var(--grid) 0 1px,transparent 1px var(--grid-size)),repeating-linear-gradient(0deg,var(--grid) 0 1px,transparent 1px var(--grid-size));background-attachment:fixed;-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}@media(max-width:640px){:root{--grid-size: 40px;--shadow: 6px 6px 0 var(--ink)}}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;cursor:pointer}img,svg{max-width:100%;display:block}input,select,textarea{font:inherit;color:inherit}.container{width:min(100% - 2 * var(--gutter),var(--max));margin-inline:auto}.mono{font-family:var(--mono)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.scroll-progress{position:fixed;top:0;left:0;height:3px;width:100%;background:transparent;z-index:60;pointer-events:none}.scroll-progress>i{display:block;height:100%;width:100%;background:var(--accent);transform-origin:0 50%;transform:scaleX(0)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;padding:14px 22px;border:2px solid var(--ink);background:var(--paper);color:var(--ink);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn-accent{background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-xs)}.btn-accent:hover{color:var(--accent-ink);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}.btn-accent:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--ink)}.btn[disabled]{opacity:.6;cursor:default;transform:none}.card{background:var(--paper);border:2px solid var(--ink)}.card-shadow{box-shadow:var(--shadow)}.card-shadow-sm{box-shadow:var(--shadow-sm)}.inverse{background:var(--ink);color:var(--bg)}.section{padding-block:clamp(56px,8vw,96px)}.section-head{display:flex;align-items:baseline;gap:20px;border-bottom:2px solid var(--ink);padding-bottom:14px;margin-bottom:28px}.section-head .no{font-family:var(--mono);font-size:12px;color:var(--accent);flex-shrink:0}.section-head h2{margin:0;font-size:clamp(26px,3.2vw,40px);font-weight:700;letter-spacing:-.03em;line-height:1.2}.js [data-reveal]{opacity:0;transform:translateY(28px)}.js [data-reveal].is-in{opacity:1;transform:none;transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.js [data-reveal-stagger]>*{opacity:0;transform:translateY(22px)}.js [data-reveal-stagger].is-in>*{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.js [data-reveal-stagger].is-in>*:nth-child(1){transition-delay:0s}.js [data-reveal-stagger].is-in>*:nth-child(2){transition-delay:.08s}.js [data-reveal-stagger].is-in>*:nth-child(3){transition-delay:.16s}.js [data-reveal-stagger].is-in>*:nth-child(4){transition-delay:.24s}.js [data-reveal-stagger].is-in>*:nth-child(5){transition-delay:.32s}.js [data-reveal-stagger].is-in>*:nth-child(6){transition-delay:.4s}.js [data-reveal-stagger].is-in>*:nth-child(7){transition-delay:.48s}.js [data-reveal-stagger].is-in>*:nth-child(8){transition-delay:.56s}.mask{display:block;overflow:hidden}.js .mask>.mask-inner{display:block;transform:translateY(110%)}.js .hero-ready .mask>.mask-inner{transform:none;transition:transform 1s cubic-bezier(.2,.8,.2,1)}.js .hero-ready .mask:nth-child(2)>.mask-inner{transition-delay:.08s}.js .hero-ready .mask:nth-child(3)>.mask-inner{transition-delay:.16s}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js [data-reveal],.js [data-reveal-stagger]>*,.js .mask>.mask-inner{opacity:1!important;transform:none!important;transition:none!important}.btn-accent:hover{transform:none}}
