@charset "UTF-8";
:root{--paper:#f8f8f3;--ink:#202d3d;--blue:#234ce2;--muted:#697079;--line:#dcded8;--tint:#eef0e9;--font:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;color:var(--ink);background:var(--paper);font-family:var(--font);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:7px}::selection{background:#d4ddff}h1,h2,h3,p,figure{margin:0}a,summary{touch-action:manipulation}a{transition:color .2s,background .2s}a:hover{color:var(--blue)}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.skip-link{position:absolute;left:20px;top:-100px;padding:12px 20px;z-index:10;background:var(--blue);color:#fff}.skip-link:focus{top:10px}
.site-header{display:flex;justify-content:space-between;align-items:center;min-height:106px;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:20px;font-size:26px;letter-spacing:-1.4px;font-weight:850}.wordmark-dot{color:var(--blue)}.wordmark-sub{border-left:1px solid #cbd0cb;padding-left:20px;font-weight:500;letter-spacing:-.4px;font-size:12px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.nav-about{color:#656d75}.nav-enter span{margin-left:15px;font-size:19px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;padding-top:92px;padding-bottom:74px;min-height:700px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:600;letter-spacing:.02em}.small-rule{width:26px;height:2px;background:var(--blue)}h1{font-size:clamp(44px,5.4vw,72px);line-height:1.22;letter-spacing:-.07em;font-weight:750;margin:25px 0 26px;word-break:keep-all}h1 span{color:var(--blue)}.hero-description{font-size:16px;line-height:1.9;color:#68717c;letter-spacing:-.45px;word-break:keep-all}.primary-link{display:inline-flex;align-items:center;gap:52px;margin-top:34px;padding:17px 24px;background:var(--blue);color:#fff;font-size:14px;font-weight:650;border-radius:3px}.primary-link:hover{background:#1639be;color:white}.primary-link span{font-size:22px;font-weight:400;line-height:1}.login-note{font-size:11px;color:#747b82;margin-top:16px;letter-spacing:-.2px}.hero-preview{position:relative;padding:17px 16px 0 10px;margin-left:8px}.preview-corner{position:absolute;right:21px;top:-26px;color:var(--blue);font:italic 16px Georgia,serif;transform:rotate(5deg)}.paper-back{position:absolute;inset:18px 17px 42px 14px;background:#dce3fb;transform:rotate(5deg);border:1px solid #d6def5}.class-paper{background:#fff;position:relative;transform:rotate(-2deg);padding:25px 30px 15px;box-shadow:0 10px 24px #1e2d3a0b;border:1px solid #e3e5df;border-top:4px solid var(--blue)}.paper-meta{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:1.6px;color:#526385}.paper-meta span:last-child{letter-spacing:0;font-size:10px;color:#8b9197}.paper-heading{padding:27px 0 24px}.paper-kicker{font-size:10px;color:var(--blue)}.paper-heading h2{font-size:26px;letter-spacing:-1.3px;margin:7px 0 9px;font-weight:700}.paper-heading p{font-size:11px;color:#80868c}.assignment{display:flex;gap:14px;align-items:center;min-height:86px;border-top:1px solid #e9ece8}.assignment-mark{flex:0 0 16px;width:16px;height:16px;border:1px solid #c7ccc7;border-radius:3px;display:grid;place-items:center;color:var(--blue);font-size:11px}.assignment-mark.done{background:#edf1ff;border-color:#dce4ff}.assignment-kind{font-size:8px;letter-spacing:1.5px;color:#818b96}.assignment h3{font-size:12px;font-weight:600;letter-spacing:-.3px;margin:4px 0 6px}.assignment p{font-size:10px;color:#8b9197}.assignment-number{font-family:Georgia,serif;color:#b3bac3;font-size:12px;margin-left:auto}.paper-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e9ece8;padding-top:14px;margin-top:5px;font-size:8px;letter-spacing:1px;color:#919aab}.paper-bottom span:last-child{font-size:20px;color:var(--blue)}figcaption{font-size:10px;color:#767e88;text-align:center;margin-top:25px}.chapter-line{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:21px 0;font-size:11px;color:#737c84}.chapter-line a{color:var(--ink)}.chapter-line a span{margin-left:18px}
.features{padding-top:89px;padding-bottom:108px}.section-heading{position:relative}.section-heading .eyebrow{color:var(--blue)}.section-heading h2,.keep-copy h2,.questions h2{font-size:36px;line-height:1.45;letter-spacing:-1.6px;font-weight:650;margin-top:18px;word-break:keep-all}.section-heading>p:last-child{position:absolute;right:0;bottom:8px;font-size:14px;color:var(--muted);line-height:1.9}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:52px}.feature{border-top:1px solid #bdc4cc;padding-top:23px}.feature-index{font:italic 21px Georgia,serif;color:var(--blue)}.feature h3{font-size:21px;letter-spacing:-.8px;font-weight:650;margin:23px 0 16px}.feature p{font-size:13px;color:var(--muted);line-height:1.95;word-break:keep-all;max-width:315px}.feature-label{display:inline-block;font-size:10px;color:#65707b;margin-top:23px;padding-bottom:6px;border-bottom:1px solid #bcc3cb}
.keep-section{background:var(--tint);border-top:1px solid #e5e8df;border-bottom:1px solid #e5e8df}.keep-inner{padding-block:86px;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.saved-preview{position:relative;width:315px;margin-inline:auto;padding:10px 0 0}.saved-sheet{position:relative;background:#fff;border:1px solid #dbe0d7;padding:25px;transform:rotate(3deg)}.sheet-under{position:absolute;inset:8px 0 48px;transform:rotate(-6deg);background:#fbfcf7}.saved-top,.saved-bottom{display:flex;align-items:center;justify-content:space-between;color:#66748c;font-size:8px;letter-spacing:1px}.saved-top span:last-child{color:#8b928b;letter-spacing:0}.saved-title{font-size:24px;line-height:1.6;font-weight:600;letter-spacing:-1px;margin:33px 0 28px}.saved-title span{background:linear-gradient(transparent 65%,#edf38d 65%,#edf38d 94%,transparent 94%)}.feedback-line{display:flex;justify-content:space-between;border-top:1px solid #e5e9df;padding-top:13px;font-size:9px;color:#787f88}.feedback-line span:last-child{font-size:8px;letter-spacing:1px}.feedback{font-size:11px;line-height:2;color:#78808a;margin-top:17px}.saved-bottom{margin-top:28px;padding-top:13px;border-top:1px solid #e5e9df;font-size:9px;letter-spacing:0}.saved-bottom span:last-child{font-size:20px;color:var(--blue)}.saved-preview figcaption{margin-top:26px}.keep-copy{padding-right:15px}.keep-copy .eyebrow{color:#58624e}.keep-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.95;margin-top:25px;word-break:keep-all}.notification-note{display:flex;gap:16px;padding-top:28px;margin-top:32px;border-top:1px solid #ccd2c5}.note-index{color:var(--blue);font-size:25px;line-height:1.3;font-weight:300}.notification-note p{font-size:12px;line-height:1.95;color:#6b746c;word-break:keep-all}.notification-note strong{font-weight:600;color:#313c31}
.questions{display:grid;grid-template-columns:1fr 1.45fr;gap:80px;padding-block:100px}.questions .eyebrow{color:var(--blue)}.questions h2{font-size:30px}.question-list details{border-bottom:1px solid var(--line)}.question-list details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;font-size:14px;font-weight:550;padding:24px 0;letter-spacing:-.3px}summary::-webkit-details-marker{display:none}summary span{font-size:21px;font-weight:300;color:#818b98;transition:transform .15s}details[open] summary span{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);line-height:1.9;padding:0 28px 25px 0;word-break:keep-all}.closing{background:#243b87;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:48px 58px;margin-bottom:70px}.closing p{font-size:27px;line-height:1.55;letter-spacing:-1px;font-weight:300}.closing strong{font-weight:600}.closing a{border-bottom:1px solid #ffffff7d;padding:15px 0;font-size:14px;white-space:nowrap}.closing a span{margin-left:53px;font-size:23px}.closing a:hover{color:#d6e0ff}.closing a:focus-visible{outline-color:#fff}.site-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:28px;padding-block:34px 42px}.footer-brand{font-size:21px;font-weight:800;letter-spacing:-1px}.site-footer div p{font-size:10px;color:#7a8188;margin-top:6px}.footer-note{font-size:10px;color:#788189;line-height:1.8;margin-left:auto}.back-top{font-size:11px;margin-left:35px}.back-top span{margin-left:15px}
@media(min-width:1500px){.hero{padding-top:110px;padding-bottom:98px;min-height:740px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:28px;padding-block:70px;min-height:620px}h1{font-size:clamp(44px,5.8vw,60px)}.class-paper{padding:20px 22px 14px}.paper-heading h2{font-size:23px}.assignment{gap:10px}.assignment p{font-size:9px}.assignment h3{font-size:11px}.assignment-number{display:none}.keep-inner{gap:50px}.feature-grid{gap:26px}.section-heading>p:last-child{font-size:12px}.questions{gap:45px}.site-header{min-height:90px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.site-header{min-height:80px}.wordmark{font-size:23px;gap:12px}.wordmark-sub{padding-left:12px;font-size:10px}.site-header nav{gap:0;font-size:12px}.nav-about{display:none}.nav-enter span{margin-left:7px}.hero{grid-template-columns:1fr;padding-top:54px;padding-bottom:40px;gap:55px}.hero-copy{padding:0 6px}.eyebrow{font-size:11px}h1{font-size:58px;letter-spacing:-3.8px;margin-top:22px;margin-bottom:22px}.hero-description{font-size:14px}.primary-link{margin-top:26px;font-size:13px;padding:16px 21px;gap:42px}.login-note{font-size:10px}.hero-preview{max-width:445px;width:calc(100% - 14px);margin:0 auto;padding-inline:8px}.class-paper{padding:23px 25px 14px}.paper-heading h2{font-size:25px}.paper-heading{padding-block:24px 21px}.assignment{min-height:79px;gap:12px}.assignment h3{font-size:12px}.assignment p{font-size:10px}.assignment-number{display:block}.preview-corner{font-size:14px;top:-17px}.chapter-line{font-size:10px;padding-block:19px}.features{padding-block:62px 65px}.section-heading h2,.keep-copy h2{font-size:29px;letter-spacing:-1.3px}.section-heading>p:last-child{position:static;margin-top:20px;font-size:13px}.feature-grid{grid-template-columns:1fr;gap:27px;margin-top:35px}.feature{position:relative;padding-left:48px;padding-top:22px}.feature-index{position:absolute;left:0;top:25px;font-size:20px}.feature h3{margin:0 0 12px;font-size:20px}.feature p{max-width:none;font-size:13px}.feature-label{margin-top:15px}.keep-inner{grid-template-columns:1fr;padding-block:59px;gap:42px}.saved-preview{width:min(290px,calc(100% - 50px));order:2}.keep-copy{padding-right:0}.keep-copy>p:not(.eyebrow){font-size:13px;margin-top:20px}.notification-note{padding-top:20px;margin-top:24px}.questions{grid-template-columns:1fr;padding-block:62px;gap:28px}.questions h2{font-size:28px}.questions h2 br{display:none}summary{font-size:13px;padding-block:23px}.closing{padding:32px 26px;margin-bottom:48px;align-items:flex-start;flex-direction:column;gap:22px}.closing p{font-size:25px}.closing a{font-size:13px;padding-block:10px}.site-footer{flex-wrap:wrap;gap:24px;padding-block:28px 35px}.footer-note{font-size:9px;margin-left:0;text-align:left}.back-top{width:100%;margin:0;padding-top:8px;font-size:10px}.site-footer>div{margin-right:auto}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.wordmark-sub{display:none}h1{font-size:50px}.class-paper{padding-inline:18px}.assignment p{font-size:9px}.paper-heading h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,summary span{transition:none}}

/* Service banners: one complete slide at a time, with quiet navigation. */
.banner-window{overflow:hidden}.banner-track{width:100%}.banner-slide{display:block;min-width:0}.banner-slide:not(:first-child){display:none}.banner[data-ready] .banner-track{display:flex;transition:transform .65s cubic-bezier(.22,.68,.12,1);will-change:transform}.banner[data-ready] .banner-slide{display:block;flex:0 0 100%;width:100%}.banner .hero{min-height:655px;padding-top:72px;padding-bottom:40px}.banner h1,.banner-title{font-size:clamp(42px,4.6vw,63px);line-height:1.3;letter-spacing:-.065em;font-weight:720;margin:24px 0 26px;word-break:keep-all}.banner-title span{color:var(--blue)}.banner-text-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid #bfc6d4;padding:12px 0;font-size:13px;margin-top:24px}.banner .saved-preview{width:330px;padding-top:10px}.banner-controls{display:flex;align-items:center;justify-content:center;position:relative;padding-bottom:30px;gap:15px}.banner-controls[hidden]{display:none}.banner-dots{display:flex;align-items:center;gap:0}.banner-dot{appearance:none;border:0;background:transparent;cursor:pointer;display:grid;place-items:center;min-width:36px;height:36px;padding:8px;color:var(--blue)}.banner-dot span{display:block;width:7px;height:7px;border-radius:99px;background:#b7becb;transition:width .3s,background .3s}.banner-dot[aria-current=true] span{width:25px;background:var(--blue)}.banner-dot:focus-visible,.banner-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:3px}.banner-toggle{border:0;border-left:1px solid var(--line);background:transparent;padding:8px 0 8px 18px;font:10px var(--font);color:#737c88;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.banner-window{touch-action:pan-y pinch-zoom}.board-preview{margin:0 14px;background:#fff;border:1px solid #dfe5df;padding:29px 32px;box-shadow:0 12px 20px #20334706}.board-preview-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#75867a}.board-preview-top span:last-child{letter-spacing:0;color:#8b938e}.board-preview h3{font-size:26px;font-weight:650;letter-spacing:-1px;margin:30px 0 12px}.board-preview>p{font-size:12px;color:var(--muted);margin-bottom:23px}.board-row{display:flex;align-items:center;gap:14px;padding:22px 0;border-top:1px solid #e9ece6}.board-category{font-size:10px;color:#5e785c;border:1px solid #dee7d9;padding:6px;white-space:nowrap}.board-row div{display:flex;flex-direction:column;gap:8px}.board-row strong{font-size:12px;font-weight:600}.board-row div>span{font-size:10px;color:#8b9399}.board-row>span:last-child{margin-left:auto;color:#839189;font-size:15px}.board-preview .board-footnote{font-size:9px;color:#8b948c;margin:15px 0 0}.banner-slide.slide-board{background:#f0f3ed}.banner-slide.slide-board .banner-title span{color:#44694b}.banner-slide.slide-feedback{background:#f0f2f9}
@media(min-width:1500px){.banner .hero{min-height:690px}}
@media(max-width:1050px){.banner .hero{min-height:635px;gap:26px}.banner h1,.banner-title{font-size:47px}.board-preview{padding:24px;margin-inline:8px}.board-preview h3{font-size:23px}.board-row{gap:9px}.board-row strong{font-size:11px}}
@media(max-width:760px){.banner .hero{min-height:880px;grid-template-rows:350px 1fr;gap:20px;padding-top:26px;padding-bottom:22px;align-items:center}.banner .hero-copy{align-self:center}.banner h1,.banner-title{font-size:43px;margin:18px 0 20px;letter-spacing:-2.7px;line-height:1.28}.banner .hero-description{font-size:13px;line-height:1.8}.banner .primary-link{margin-top:22px;padding:14px 20px}.banner .hero-preview{max-width:380px}.banner .class-paper{padding:18px 21px 12px}.banner .paper-heading{padding-block:18px}.banner .assignment{min-height:71px}.banner .saved-preview{width:min(290px,calc(100% - 60px));order:0}.banner-controls{padding-block:10px 25px}.board-preview{width:calc(100% - 26px);max-width:380px;margin:auto;padding:23px}.board-preview h3{font-size:24px}.board-row{padding-block:22px}.banner .saved-title{font-size:24px}}
@media(max-width:360px){.banner h1,.banner-title{font-size:38px}.banner .hero{min-height:870px}.board-preview{padding:20px}.banner .hero-description{font-size:12px}}
@media(prefers-reduced-motion:reduce){.banner[data-ready] .banner-track,.banner-dot span{transition:none}}
/* Service benefits replace the sample exercise checklist. */
.assignment { display:grid; grid-template-columns: 1fr auto; }
.assignment h3 { line-height: 1.55; }
.assignment p { line-height: 1.7; }
