:root{--bg:#0d0d0b;--surface:#171612;--yellow:#ffd02e;--white:#f2f0ea;--dim:#f2f0ea8c;--line:#f2f0ea17;--reject:#e0604c;--font-disp:"Paperlogy", sans-serif;--font-body:"Pretendard Variable", Pretendard, sans-serif;--font-mono:"JetBrains Mono", "D2Coding", monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--white);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}.disp{font-family:var(--font-disp);letter-spacing:-.02em}.y{color:var(--yellow)}.wrap{max-width:1080px;margin:0 auto;padding-left:32px;padding-right:32px}.site-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#0d0d0bd9;position:sticky;top:0}.site-header .in{justify-content:space-between;align-items:center;height:60px;display:flex}.site-header .logo{font-family:var(--font-disp);font-size:18px;font-weight:900}.site-header nav{color:var(--dim);gap:22px;font-size:14px;display:flex}.site-header nav a:hover,.site-header nav a.active{color:var(--yellow)}.sec{padding:88px 0}.sec-label{border:1px solid var(--yellow);color:var(--yellow);letter-spacing:.08em;border-radius:999px;margin-bottom:24px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-block}h1{font-family:var(--font-disp);letter-spacing:-.02em;font-size:72px;font-weight:900;line-height:1.12}h2{font-family:var(--font-disp);letter-spacing:-.02em;font-size:34px;font-weight:800}.sub{color:var(--dim);margin-top:20px;font-size:17px}.cta{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.btn{border-radius:10px;padding:14px 26px;font-size:15px;font-weight:700;display:inline-block}.btn-y{background:var(--yellow);color:#111}.btn-o{border:1px solid var(--line);color:var(--white)}.btn-o:hover{border-color:#ffd02e66}.mock{border:1px solid var(--line);background:#1c1b16;border-radius:14px;overflow:hidden;box-shadow:0 24px 60px #00000080}.mock .bar{border-bottom:1px solid var(--line);gap:6px;padding:12px 14px;display:flex}.mock .dot{background:#f2f0ea26;border-radius:50%;width:10px;height:10px}.mock .dot:first-child{background:var(--yellow)}.mock .m-body{gap:12px;padding:18px;display:grid}.mock .m-body.tight{gap:8px;padding:12px}.mock .row{gap:12px;display:flex}.mock .cell{background:#f2f0ea0f;border-radius:8px}.mock .cell.y{background:#ffd02ed9}.h20{height:20px}.h48{height:48px}.h90{height:90px}.w30{width:30%}.w45{width:45%}.w70{flex:1}.mock .bars{align-items:flex-end;gap:10px;height:120px;padding:0 6px;display:flex}.mock .b{background:#f2f0ea24;border-radius:6px 6px 0 0;flex:1}.mock .b.y{background:var(--yellow)}.hero{padding:96px 0 72px}.hero-visual{height:380px;margin-top:64px;position:relative}.hero-visual .m1{width:62%;height:360px;position:absolute;top:0;left:0}.hero-visual .m2{z-index:2;width:44%;height:300px;position:absolute;top:60px;right:0}.nums{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nums .in{padding-top:40px;padding-bottom:40px;display:flex}.nums .n{flex:1}.nums .v{font-family:var(--font-disp);color:var(--yellow);font-size:56px;font-weight:900;line-height:1}.nums .k{color:var(--dim);letter-spacing:.04em;margin-top:8px;font-size:13px}.grid3{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;flex-direction:column;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.card:hover{border-color:#ffd02e66;transform:translateY(-4px)}.card .thumb{background:linear-gradient(#ffd02e0f,#0000);height:190px;padding:16px 16px 0;overflow:hidden}.card .thumb .mock{height:100%;box-shadow:none;border-radius:10px 10px 0 0}.card .thumb .mock img{object-fit:cover;object-position:top;width:100%;height:calc(100% - 35px);display:block}.card .meta{justify-content:space-between;align-items:center;gap:8px;padding:18px 20px 20px;display:flex}.card .meta .t{font-size:17px;font-weight:800}.card .meta .tag2{color:var(--yellow);white-space:nowrap;font-size:12px;font-weight:700}.chip{border:1px solid var(--line);color:var(--white);font-size:12px;font-weight:600;font-family:var(--font-mono);background:#f2f0ea0a;border-radius:999px;padding:4px 10px;display:inline-block}.chip.time{border-color:var(--yellow);color:var(--yellow);letter-spacing:.04em;background:0 0;font-weight:700}.timeline{margin-top:48px;padding-left:28px;position:relative}.timeline:before{content:"";background:var(--line);width:2px;position:absolute;top:6px;bottom:6px;left:7px}.tnode{padding-bottom:56px;position:relative}.tnode:last-child{padding-bottom:0}.tnode:before{content:"";background:var(--bg);border:3px solid var(--yellow);border-radius:50%;width:16px;height:16px;position:absolute;top:4px;left:-28px}.tnode .thead{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tnode .ttitle{font-family:var(--font-disp);letter-spacing:-.01em;font-size:21px;font-weight:800}.tnode .tbody{gap:10px;margin-top:14px;font-size:15px;line-height:1.65;display:grid}.trow{align-items:baseline;gap:10px;display:flex}.trow .tkey{color:var(--dim);letter-spacing:.06em;flex:0 0 64px;padding-top:3px;font-size:12px;font-weight:700}.trow .tkey.hot{color:var(--yellow)}.trow .tval{color:var(--white);flex:1}.trow .tval a{color:var(--yellow);font-weight:700}.trow .tval a:hover{text-decoration:underline}.trow .tval .chips{flex-wrap:wrap;gap:6px;display:flex}.trow.dimrow .tval{color:var(--dim)}.treject{color:var(--dim);border-left:2px dashed #e0604c80;flex-wrap:wrap;align-items:baseline;gap:10px;margin-left:12px;padding:10px 14px;font-size:14px;display:flex;position:relative}.treject .stamp{border:1.5px solid var(--reject);color:var(--reject);letter-spacing:.1em;white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.term{border:1px solid var(--line);background:#131310;border-radius:14px;max-width:720px;margin-top:40px;overflow:hidden}.term summary{cursor:pointer;list-style:none}.term summary::-webkit-details-marker{display:none}.term .bar{border-bottom:1px solid var(--line);align-items:center;gap:6px;padding:12px 14px;display:flex}.term .dot{border-radius:50%;width:10px;height:10px}.term .dot:first-child{background:#e0604c}.term .dot:nth-child(2){background:var(--yellow)}.term .dot:nth-child(3){background:#59b26a}.term .name{color:var(--dim);font-size:12px;font-family:var(--font-mono);margin-left:8px}.term .hint{color:var(--dim);font-size:11px;font-family:var(--font-mono);margin-left:auto}.term .body{font-family:var(--font-mono);color:var(--white);white-space:pre-wrap;word-break:keep-all;padding:20px 22px;font-size:13.5px;line-height:1.9}.term .body .k{color:var(--yellow)}.case-head{padding:72px 0 0}.case-title{font-size:46px}code{font-family:var(--font-mono);color:var(--yellow)}.case-summary{border:1px solid var(--line);background:var(--surface);border-radius:14px;margin-top:36px;overflow:hidden}.case-summary .srow{border-bottom:1px solid var(--line);gap:16px;padding:14px 20px;font-size:14.5px;line-height:1.6;display:flex}.case-summary .srow:last-child{border-bottom:0}.case-summary .sk{color:var(--dim);letter-spacing:.05em;flex:0 0 88px;padding-top:2px;font-size:12.5px;font-weight:700}.case-summary .sv{flex:1}.case-summary .sv a{color:var(--yellow);font-weight:700}.lesson{border-left:3px solid var(--yellow);font-family:var(--font-disp);letter-spacing:-.01em;margin-top:64px;padding:6px 0 6px 22px;font-size:22px;font-weight:800;line-height:1.5}.about-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;display:grid}.about-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px}.about-card .ak{color:var(--yellow);letter-spacing:.08em;margin-bottom:14px;font-size:12px;font-weight:700}.about-card ul{gap:10px;font-size:14.5px;line-height:1.55;list-style:none;display:grid}.about-card li .d{color:var(--dim);font-size:12.5px;display:block}.contact{text-align:center;padding:96px 0}.contact .mail{font-family:var(--font-mono);color:var(--yellow);border:1px solid #ffd02e59;border-radius:12px;margin-top:28px;padding:16px 30px;font-size:20px;font-weight:700;display:inline-block}.contact .mail:hover{background:#ffd02e14}.case-nav{border-top:1px solid var(--line);color:var(--dim);justify-content:space-between;gap:12px;margin-top:72px;padding:24px 0 72px;font-size:14px;display:flex}.case-nav a:hover{color:var(--yellow)}footer.site-footer{border-top:1px solid var(--line);text-align:center;color:var(--dim);padding:28px 32px;font-size:13px}.how-list{gap:16px;max-width:760px;margin-top:40px;display:grid}.how-item{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px 22px}.how-item .hk{font-family:var(--font-disp);font-size:17px;font-weight:800}.how-item .hv{color:var(--dim);margin-top:8px;font-size:14.5px;line-height:1.65}.how-item .hv strong{color:var(--white)}@media (width<=760px){h1{font-size:40px}h2{font-size:27px}.hero{padding:64px 0 48px}.hero-visual{height:auto}.hero-visual .m1{width:100%;height:260px;position:static}.hero-visual .m2{display:none}.nums .in{flex-wrap:wrap;gap:24px}.nums .n{flex-basis:45%}.nums .v{font-size:40px}.grid3,.about-grid{grid-template-columns:1fr}.sec{padding:64px 0}.wrap{padding-left:20px;padding-right:20px}.trow{flex-direction:column;gap:4px}.trow .tkey{flex:none}.site-header nav{gap:14px;font-size:13px}}
