:root{--ink:#161923;--muted:#555d6c;--blue:#2445ed;--paper:#fff;--line:#dce0e9;--soft:#f3f5fb;font-family:Arial,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:var(--ink);background:var(--paper);scroll-behavior:smooth;scroll-padding-top:1.5rem;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.3em}p{line-height:1.8;word-break:keep-all;margin:0}h1,h2,h3{word-break:keep-all;margin:0;letter-spacing:-.05em}a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}::selection{background:#dfe5ff}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.mono{font-family:Consolas,"Courier New",monospace;letter-spacing:.04em}.skip{position:fixed;z-index:10;top:-100px;left:16px;background:white;padding:16px;border:2px solid var(--blue)}.skip:focus{top:16px}.header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:27px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-weight:800;text-decoration:none;font-size:19px;white-space:nowrap}.brand small{display:block;margin-top:5px;font-size:10px;letter-spacing:.13em}.brand-mark{background:var(--blue);color:#fff;border-radius:3px;width:41px;height:41px;display:grid;place-items:center;font:700 21px Consolas,monospace}.header nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}.header nav a{text-decoration:none}.header nav a:hover{color:var(--blue)}.nav-contact{padding:10px 17px;border:1px solid var(--line);border-radius:3px}.hero{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:60px;padding-block:88px 95px}.eyebrow{font-size:12px;line-height:1.5;letter-spacing:.12em;font-weight:700;color:var(--blue)}h1{font-size:clamp(60px,6.8vw,96px);line-height:1.13;font-weight:800;margin-top:23px}h1 span{color:var(--blue)}.hero-description{font-size:19px;line-height:1.8;margin-top:30px;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;text-decoration:none;font-size:15px;font-weight:700;line-height:1.5;border-radius:3px;min-height:52px}.primary{background:var(--blue);color:white}.primary:hover{background:#1935c6}.text-link{font-size:14px;font-weight:600;text-decoration:underline}.text-link:hover{color:var(--blue)}.hero-note{margin-top:20px;font-size:12px;color:var(--muted)}.lab-figure{margin:0;min-width:0}.lab-figure figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;margin-bottom:14px}.lab-figure figcaption .mono{font-size:11px;color:var(--muted)}.workbench{border:1px solid #ced4e3;border-radius:5px;box-shadow:0 16px 44px #182c6710;overflow:hidden;background:white}.bench-top{display:flex;gap:9px;align-items:center;padding:15px;background:#edf1fa;font-size:12px;border-bottom:1px solid var(--line)}.window-mark{color:var(--blue);font-size:17px}.bench-label{margin-left:auto;color:var(--muted);font-size:11px}.bench-body{display:grid;grid-template-columns:115px 1fr;min-height:258px}.bench-sidebar{position:relative;display:flex;flex-direction:column;gap:2px;background:#f7f8fc;border-right:1px solid var(--line);font-size:11px;padding:19px 9px}.bench-sidebar strong{font-family:Consolas,monospace;letter-spacing:.03em;font-size:10px;margin-bottom:15px;color:#737c91}.file{padding:9px 6px;white-space:nowrap}.selected{background:#e5eaff;color:var(--blue);border-radius:2px}.sidebar-bottom{margin-top:auto;padding-top:30px;color:#747d90;font-size:10px}.bench-content{min-width:0;display:flex;flex-direction:column}.editor-tab{padding:12px 19px;font-size:11px;width:max-content;border-bottom:2px solid var(--blue)}.editor-lines{display:grid;grid-template-columns:20px 1fr;gap:13px 10px;padding:25px 16px 30px;font-size:11px;line-height:1.6;letter-spacing:-.02em}.line-number{color:#939aab;font:11px Consolas,monospace}.code-muted{color:#7b8495}.code-blue{color:var(--blue);font-weight:700}.bench-terminal{margin-top:auto;padding:15px 18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;background:#fbfcff;font-size:11px}.terminal-label{font-size:10px;color:var(--muted)}.terminal-item{font-weight:600}.bench-bottom{display:flex;justify-content:space-between;gap:12px;background:var(--blue);color:#fff;padding:10px 13px;font-size:9px}.mini-flow{padding:0;margin:24px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);font-size:12px}.mini-flow li{display:flex;align-items:center;gap:8px}.mini-flow li+li{border-left:1px solid var(--line);padding-left:12px}.mini-flow span{color:var(--blue);font:11px Consolas,monospace}.principles{border-block:1px solid var(--line)}.principles-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:25px}.principles p{font-size:16px}.principles strong{font-weight:700}.principles span{font-size:13px;color:var(--muted)}.section{padding-block:105px}.section-heading{display:grid;grid-template-columns:1.1fr 1fr;column-gap:80px}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:23px}h2{font-size:clamp(32px,3.5vw,46px);font-weight:800;line-height:1.35}.section-intro{font-size:17px;color:var(--muted);max-width:500px;align-self:end}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:65px}.feature{border-top:1px solid var(--ink);padding-top:21px}.feature-number{font:13px Consolas,monospace;color:var(--blue)}h3{font-size:20px;line-height:1.45;letter-spacing:-.03em}.feature h3{margin-top:24px;margin-bottom:15px}.feature p{font-size:15px;color:var(--muted)}.section-footnote{font-size:12px;color:var(--muted);margin-top:35px}.learning{background:var(--ink);color:white}.learning .eyebrow{color:#96a8ff}.learning .section-intro{color:#bdc3d0}.learning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:65px}.learning-grid article{padding-top:24px;border-top:1px solid #464b5b}.lesson-label{font-size:12px;color:#aebaf1}.learning-grid h3{font-size:28px;margin-top:22px;margin-bottom:20px;line-height:1.5}.learning-grid article>p:last-child{font-size:15px;color:#bdc3d0}.learning-note{margin-top:38px;font-size:12px;color:#a4abbc}.roadmap{display:grid;grid-template-columns:1fr 1fr;gap:80px}.roadmap h2{margin-top:23px}.roadmap .section-intro{margin-top:26px}.status-label{display:inline-block;margin-top:25px;font-size:12px;font-weight:600;padding:7px 10px;border:1px solid #cbd2e7;color:#4d5874;border-radius:3px}.roadmap-list article{display:flex;gap:22px;padding-block:26px;border-top:1px solid var(--line)}.roadmap-list article:first-child{border-top:1px solid var(--ink)}.roadmap-list article>span{font:13px Consolas,monospace;color:var(--blue);padding-top:7px}.roadmap-list h3{margin-bottom:10px}.roadmap-list p{font-size:15px;color:var(--muted)}.about{border-top:1px solid var(--line);padding-block:65px 90px;display:grid;grid-template-columns:1fr 1fr;gap:80px}.about h2{margin-top:20px;font-size:32px}.about-copy>p{color:var(--muted);font-size:16px;margin-bottom:21px}.about-copy .large-copy{font-size:24px;line-height:1.6;color:var(--ink);font-weight:600;letter-spacing:-.04em}.english{margin-top:30px;border-block:1px solid var(--line);font-size:14px}.english summary{padding-block:18px;cursor:pointer;line-height:1.7;font-weight:600}.english div{padding-block:0 19px;color:var(--muted)}.english p+p{margin-top:14px}.contact{background:var(--blue);color:white}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:75px}.contact .eyebrow{color:#c5ceff}.contact h2{margin-top:22px;font-size:44px}.contact p{margin-top:24px;font-size:16px;color:#e0e5ff}.contact-button{margin-top:30px;background:white;color:var(--blue)}.contact-button:hover{background:#e8ecff}.contact-address{align-self:end;padding-bottom:5px}.contact-address>span{display:block;font-size:11px;letter-spacing:.12em;color:#c5ceff;margin-bottom:15px}.contact-address>a{font-size:clamp(16px,1.7vw,22px);font-weight:600;overflow-wrap:anywhere}.contact-address p{font-size:13px;margin-top:20px}.footer{display:flex;justify-content:space-between;gap:20px;padding-block:25px;font-size:12px;color:var(--muted)}
@media(min-width:1600px){.hero{padding-block:115px}.section{padding-block:120px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:30px}.bench-body{grid-template-columns:95px 1fr}.bench-bottom{flex-wrap:wrap}.editor-lines{font-size:10px;padding-inline:12px;gap:12px 6px}.section-heading,.roadmap,.about,.contact-inner{gap:40px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:35px}.hero-actions{gap:18px}.hero-description{font-size:17px}.header nav{gap:20px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{padding-block:20px;gap:20px;flex-wrap:wrap}.header nav{gap:24px;justify-content:space-between;width:100%;font-size:13px}.brand{font-size:18px}.hero{grid-template-columns:1fr;padding-block:52px 54px;gap:45px}h1{font-size:76px}.hero-description{font-size:18px}.hero-note{font-size:12px}.lab-figure{max-width:550px}.bench-body{grid-template-columns:112px 1fr}.editor-lines{font-size:12px;padding:25px 16px;gap:15px 10px}.bench-bottom{font-size:10px}.mini-flow{font-size:12px}.principles-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px}.principles p{grid-column:1/-1}.principles span{font-size:12px}.section{padding-block:65px}.section-heading{grid-template-columns:1fr;gap:22px}.section-heading .eyebrow{margin-bottom:0}.section-intro{font-size:16px;max-width:600px}h2{font-size:36px}.feature-grid{margin-top:40px;gap:30px}.learning-grid{grid-template-columns:1fr;gap:28px;margin-top:40px}.learning-grid h3{font-size:25px;margin-block:16px 12px}.learning-grid h3 br{display:none}.roadmap{grid-template-columns:1fr;gap:38px}.about{grid-template-columns:1fr;gap:30px;padding-block:50px 60px}.contact-inner{grid-template-columns:1fr;gap:35px;padding-block:58px}.contact h2{font-size:38px}.contact-address>a{font-size:20px}.footer{flex-wrap:wrap;line-height:1.6}.footer>span:nth-child(2){display:none}}
@media(max-width:420px){h1{font-size:63px}.hero-actions{flex-wrap:wrap;gap:18px}.hero-description{font-size:17px}.feature-grid{grid-template-columns:1fr}.feature h3{margin-top:18px}.bench-body{grid-template-columns:85px 1fr}.bench-sidebar{padding-inline:6px}.editor-lines{font-size:10px;padding:20px 9px;gap:14px 5px}.bench-bottom{font-size:9px}.mini-flow{font-size:10px;gap:4px}.mini-flow li{gap:5px}.mini-flow li+li{padding-left:8px}.header nav{gap:10px}.nav-contact{padding:8px 11px}.principles span{font-size:11px}h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}
