@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--forest:#123f3a;--forest-2:#1e5d52;--mint:#d9efe4;--mint-2:#edf7f0;--lime:#d1ee67;--cream:#fbfaf5;--paper:#fffefa;--ink:#162e2a;--muted:#72817a;--line:#e6e9df;--amber:#eab15c;--rose:#fff2e6;--shadow:0 24px 70px rgba(18,63,58,.12);font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--cream)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #92b740;outline-offset:3px}.site-shell{min-height:100vh}.topbar{height:82px;max-width:1320px;margin:0 auto;padding:0 42px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:11px;color:var(--forest);text-decoration:none}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:14px;background:var(--forest);box-shadow:0 6px 14px rgba(18,63,58,.15)}.brand-mark svg{width:36px;height:36px;fill:none;stroke:var(--lime);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.brand-word{font-family:Manrope,sans-serif;font-size:21px;font-weight:800;letter-spacing:-1px}.brand-word span{font-weight:500;color:var(--forest-2)}.topbar-right{display:flex;align-items:center;gap:16px}.demo-pill{display:inline-flex;align-items:center;gap:8px;background:#f1f4e8;color:#496044;border:1px solid #e5ebd7;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.status-dot{width:7px;height:7px;border-radius:50%;background:#8db54d;box-shadow:0 0 0 3px rgba(141,181,77,.15)}.text-button{background:none;border:0;color:var(--forest-2);font-size:12px;font-weight:700;padding:9px}.text-button:hover{text-decoration:underline}.paywall{position:relative;overflow:hidden;max-width:1320px;min-height:650px;margin:0 auto;padding:56px 8.5% 66px;display:grid;grid-template-columns:minmax(390px,1.05fr) minmax(330px,.95fr);align-items:center;gap:6%;background:var(--mint-2);border-radius:4px 4px 34px 34px}.paywall:before{content:"";position:absolute;width:470px;height:470px;border-radius:50%;right:-130px;top:-230px;background:#e2f3e3;opacity:.75}.paywall:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(18,63,58,.08) .75px,transparent .75px);background-size:17px 17px;mask-image:linear-gradient(90deg,transparent 38%,#000 95%);pointer-events:none;opacity:.5}.paywall-content{position:relative;z-index:1;max-width:560px}.eyebrow{display:flex;align-items:center;gap:10px;color:#6e8c63;font-size:10px;font-weight:700;letter-spacing:.19em}.eyebrow-line{display:inline-block;width:24px;height:1px;background:#91ad66}.paywall h1,.library-heading h1{font-family:Manrope,sans-serif;font-size:clamp(32px,4.1vw,52px);line-height:1.12;letter-spacing:-2.1px;margin:21px 0 15px;color:var(--forest);font-weight:800;max-width:620px}.welcome-copy{font-size:15px;line-height:1.7;color:#71817a;margin:0;max-width:490px}.client-card{display:flex;align-items:center;gap:13px;margin-top:27px;padding:13px 14px;background:rgba(255,255,255,.78);border:1px solid #e0ebdf;border-radius:15px;max-width:360px}.client-icon{width:35px;height:35px;display:grid;place-items:center;border-radius:11px;background:#e6f0d5;color:#658442;font-size:10px;font-weight:800;letter-spacing:.04em}.client-copy{display:flex;flex:1;flex-direction:column;gap:3px}.micro-label{display:block;font-size:9px;font-weight:700;letter-spacing:.15em;color:#91a098}.client-copy strong,.client-reference strong,.library-user strong{font-family:Manrope,sans-serif;font-size:14px;letter-spacing:.08em;color:var(--forest)}.copy-button{border:1px solid #d9e5d8;background:#fff;color:var(--forest-2);padding:7px 11px;border-radius:9px;font-size:11px;font-weight:700}.copy-button:hover{background:var(--mint-2)}.client-hint{font-size:11px;color:#7c8b82;margin:8px 0 19px 2px}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;border:0;border-radius:12px;padding:16px 18px;background:var(--forest);color:#fff;font-weight:700;font-size:14px;box-shadow:0 10px 22px rgba(18,63,58,.15);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.primary-button:hover{transform:translateY(-2px);background:#19534b;box-shadow:0 15px 24px rgba(18,63,58,.19)}.pay-button{max-width:420px}.button-arrow{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:9px;background:rgba(255,255,255,.13);font-size:16px}.secure-note{font-size:10px;color:#829188;margin:13px 0 0;display:flex;align-items:center;gap:8px}.secure-note span{font-size:17px;color:#88a262}.paywall-aside{position:relative;z-index:1;height:430px;display:grid;place-items:center}.study-card{position:absolute;width:254px;height:328px;border-radius:18px;box-shadow:0 25px 50px rgba(24,71,58,.14)}.card-back{transform:rotate(10deg) translate(58px,-8px);background:#d8ecbc;padding:27px 24px;color:var(--forest)}.card-front{transform:rotate(-5deg) translate(-28px,7px);padding:24px;background:var(--forest);color:#fff;display:flex;flex-direction:column}.book-emblem{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--lime);color:var(--forest);font-family:Georgia,serif;font-size:29px;margin-bottom:30px}.card-kicker{font-size:9px;font-weight:700;letter-spacing:.14em;opacity:.75}.card-front strong{font-family:Manrope,sans-serif;font-size:27px;line-height:1.16;letter-spacing:-1px;margin-top:18px}.card-front em{color:var(--lime);font-style:normal}.card-footer{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.22);display:flex;justify-content:space-between;font-size:10px;color:#d6e8d2}.fake-lines{display:flex;flex-direction:column;gap:13px;margin-top:28px}.fake-lines i{height:7px;border-radius:9px;background:rgba(18,63,58,.16)}.fake-lines i:nth-child(2){width:70%}.fake-lines i:nth-child(3){width:84%}.card-stamp{position:absolute;bottom:23px;right:24px;font-family:Manrope,sans-serif;font-size:30px;font-weight:800;color:rgba(18,63,58,.5)}.floating-star{position:absolute;color:#9eb762;z-index:2}.star-a{font-size:26px;top:41px;right:15%}.star-b{font-size:19px;bottom:51px;left:13%}.paywall-footer{position:absolute;z-index:1;bottom:22px;left:8.5%;font-size:10px;color:#89988e}.paywall-footer span{margin:0 6px;color:#b2c2a8}.paywall-orbit{position:absolute;border:1px solid rgba(122,163,106,.18);border-radius:50%;pointer-events:none}.orbit-one{height:420px;width:420px;right:-80px;bottom:-252px}.orbit-two{height:510px;width:510px;right:-125px;bottom:-298px}
.library{max-width:1220px;padding:44px 34px 25px;margin:0 auto}.library-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.library-heading h1{font-size:clamp(37px,5vw,58px);margin:18px 0 10px}.library-heading h1 em{font-style:normal;color:#89a84a}.library-user{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:13px;padding:11px 14px;background:var(--paper);margin-bottom:7px}.user-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--forest);color:var(--lime);font-family:Manrope,sans-serif;font-weight:800}.library-user span:last-child{display:flex;flex-direction:column;gap:3px}.library-user small{font-size:8px;letter-spacing:.1em;color:#90a097;font-weight:700}.library-user strong{font-size:11px}.demo-banner{display:flex;align-items:flex-start;gap:12px;margin:26px 0 28px;padding:15px 17px;border:1px solid #e5e9d9;border-radius:14px;background:#f3f6e9;color:#596653}.banner-symbol{flex:none;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#dce9c5;color:#668143;font-family:Georgia,serif;font-style:italic;font-weight:700}.demo-banner p{font-size:11px;line-height:1.65;margin:0}.demo-banner strong{color:#415739}.library-tools{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;border-bottom:1px solid var(--line);padding-bottom:19px}.level-picker-wrap,.search-wrap{display:flex;flex-direction:column;gap:9px}.level-picker{display:flex;flex-wrap:wrap;gap:7px}.level-tab{border:1px solid #e1e7dc;background:var(--paper);color:#72817a;border-radius:9px;padding:9px 12px;font-size:11px;font-weight:700;transition:.16s}.level-tab:hover{border-color:#a9c289;color:var(--forest)}.level-tab[aria-selected="true"]{background:var(--forest);border-color:var(--forest);color:#fff}.search-wrap{width:240px;flex:none}.search-field{display:flex;align-items:center;gap:8px;border:1px solid #e0e6dc;border-radius:10px;background:var(--paper);height:38px;padding:0 11px;color:#8aa05e}.search-field input{border:0;outline:0;background:transparent;width:100%;font-size:11px;color:var(--ink)}.search-field input::placeholder{color:#a6b1a9}.catalog-heading{display:flex;align-items:flex-end;justify-content:space-between;padding:26px 0 16px}.catalog-heading h2{font-family:Manrope,sans-serif;font-size:23px;letter-spacing:-.7px;color:var(--forest);margin:5px 0 0}.subject-filter{display:flex;flex-direction:column;gap:6px}.subject-filter select{height:36px;border:1px solid #e0e6dc;border-radius:9px;padding:0 28px 0 10px;background:var(--paper);color:var(--forest);font-size:11px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.course-card{position:relative;overflow:hidden;min-height:205px;border:1px solid #e8e9e1;border-radius:16px;padding:18px 18px 16px;background:var(--paper);display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.course-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px rgba(31,72,55,.08);border-color:#cfddc3}.course-card:before{content:"";position:absolute;right:-30px;top:-38px;width:100px;height:100px;border-radius:50%;background:var(--card-tint,#eff5e8);opacity:.72}.course-top{display:flex;align-items:center;justify-content:space-between;position:relative}.subject-tag{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:var(--tag-bg,#f0f5e9);color:var(--tag-color,#647e4d);padding:6px 9px;font-size:9px;font-weight:700;letter-spacing:.04em}.course-number{font-size:10px;color:#a0aba2;font-weight:600}.course-card h3{position:relative;font-family:Manrope,sans-serif;font-size:16px;line-height:1.35;letter-spacing:-.35px;color:var(--forest);margin:16px 0 7px}.course-card p{font-size:11px;line-height:1.6;color:#78867d;margin:0 0 15px}.course-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}.exercise-count{font-size:9px;color:#87968d}.open-course{border:0;border-radius:8px;padding:8px 10px;background:#edf3e4;color:#4e6e3d;font-size:10px;font-weight:700}.open-course:hover{background:#e1eccf}.empty-state{padding:30px;text-align:center;font-size:13px;color:var(--muted)}.library-footer{display:flex;justify-content:space-between;gap:15px;margin-top:27px;border-top:1px solid var(--line);padding:17px 0;color:#96a199;font-size:9px;letter-spacing:.07em}.library-footer span:last-child{text-align:right;letter-spacing:0}
.dialog{border:1px solid rgba(20,63,57,.12);border-radius:21px;padding:0;color:var(--ink);background:var(--paper);box-shadow:var(--shadow);max-height:min(90vh,900px);max-width:calc(100vw - 28px)}.dialog::backdrop{background:rgba(12,39,34,.49);backdrop-filter:blur(3px)}.payment-dialog{width:490px}.dialog-close{position:absolute;top:13px;right:14px;border:0;background:#f0f3eb;border-radius:50%;width:32px;height:32px;font-size:20px;line-height:1;color:#5e7166;z-index:2}.dialog-close:hover{background:#e2ead8}.dialog-content{padding:34px 34px 28px}.dialog-icon{width:45px;height:45px;border-radius:14px;display:grid;place-items:center;background:var(--forest);color:var(--lime);font-family:Manrope,sans-serif;font-size:24px;font-weight:800;margin-bottom:20px}.dialog-content h2{font-family:Manrope,sans-serif;color:var(--forest);font-size:26px;letter-spacing:-.8px;margin:12px 0 9px}.dialog-lead{font-size:12px;color:#72817a;line-height:1.65;margin:0 0 19px}.dialog-lead strong{color:var(--forest)}.recipient-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 12px;border:1px solid #e6eadf;border-radius:13px;padding:13px 14px;margin-bottom:12px}.recipient-card .micro-label{grid-column:1/-1}.recipient-card strong{font-family:Manrope,sans-serif;font-size:17px;letter-spacing:.02em;color:var(--forest)}.demo-warning{display:flex;flex-direction:column;gap:4px;border-radius:11px;padding:12px 13px;background:#fff2e5;border:1px solid #f2dfc9;color:#7a5631;font-size:10px;line-height:1.6}.demo-warning strong{font-size:10px;text-transform:uppercase;letter-spacing:.08em}.client-reference{display:flex;align-items:center;justify-content:space-between;padding:15px 1px 13px;border-bottom:1px solid var(--line)}.transaction-form{display:flex;flex-direction:column;gap:8px;padding-top:15px}.transaction-form label{font-size:11px;font-weight:700;color:var(--forest)}.transaction-form input{height:43px;padding:0 12px;border:1px solid #dce5d9;border-radius:10px;background:#fff;font-size:12px;color:var(--ink)}.transaction-form input::placeholder{color:#a4aea7}.transaction-form .primary-button{margin-top:5px}.form-error{font-size:10px;color:#a93e36;margin:0}.local-only-note{font-size:9px;line-height:1.5;color:#8b968e;margin:12px 0 0}.lesson-dialog{width:680px}.lesson-content{padding:36px 42px 34px;overflow-y:auto;max-height:min(90vh,850px)}.lesson-meta{display:flex;align-items:center;gap:10px;font-size:10px;color:#8b9990}.lesson-content h2{font-family:Manrope,sans-serif;color:var(--forest);font-size:31px;letter-spacing:-1.2px;line-height:1.18;margin:16px 0 10px}.lesson-intro{color:#6e8076;font-size:13px;line-height:1.7;margin:0 0 21px}.lesson-block{border-top:1px solid var(--line);padding:17px 0 15px}.lesson-block h3{display:flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;color:var(--forest);font-size:14px;margin:0 0 9px}.lesson-block h3 span{font-size:9px;color:#88a24e;letter-spacing:.08em}.lesson-block p{font-size:12px;line-height:1.75;color:#67766d;margin:0}.example-block{background:#f5f7ef;border:0;border-radius:13px;padding:16px;margin:4px 0}.exercise-block{padding-top:18px}.answer-details{margin-top:12px;border-left:2px solid #abc776;padding:1px 0 1px 11px}.answer-details summary{cursor:pointer;color:#587747;font-size:11px;font-weight:700}.answer-details p{padding-top:8px}.lesson-actions{display:flex;align-items:center;gap:13px;margin-top:12px}.download-button{width:auto;min-width:240px;font-size:11px;padding:12px 15px}.pdf-note{font-size:9px;color:#919d95}.toast{position:fixed;left:50%;bottom:24px;z-index:10;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:11px 16px;border-radius:999px;background:var(--forest);color:#fff;font-size:11px;box-shadow:0 8px 24px rgba(18,63,58,.25);transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.topbar{padding:0 24px}.paywall{padding-left:6%;padding-right:6%;grid-template-columns:1.1fr .9fr;gap:2%;min-height:610px}.paywall h1{font-size:40px}.study-card{transform-origin:center}.card-front{transform:rotate(-5deg) translate(-9px,7px)}.card-back{transform:rotate(10deg) translate(40px,-8px)}.library{padding-left:24px;padding-right:24px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:660px){.topbar{height:69px;padding:0 17px}.brand-mark{width:37px;height:37px;border-radius:12px}.brand-word{font-size:18px}.demo-pill{font-size:9px;padding:7px 9px}.text-button{font-size:10px;padding:7px}.paywall{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:39px 23px 57px;border-radius:0 0 26px 26px;min-height:0}.paywall h1{font-size:34px;line-height:1.13;letter-spacing:-1.6px;margin-top:17px}.welcome-copy{font-size:13px}.client-card{max-width:none;margin-top:22px}.paywall-aside{height:250px;margin:7px 0 0}.study-card{width:172px;height:218px;border-radius:15px}.card-back{padding:19px 17px;transform:rotate(10deg) translate(42px,-4px)}.card-front{padding:17px;transform:rotate(-5deg) translate(-20px,4px)}.book-emblem{width:36px;height:36px;border-radius:11px;font-size:22px;margin-bottom:18px}.card-front strong{font-size:21px;margin-top:11px}.card-footer{font-size:8px;padding-top:10px}.card-stamp{font-size:23px;bottom:14px;right:16px}.card-kicker{font-size:7px}.fake-lines{gap:9px;margin-top:19px}.floating-star{font-size:16px}.star-a{right:16%;top:11px}.star-b{left:17%;bottom:8px}.paywall-footer{left:23px;right:23px;bottom:19px;font-size:9px}.library{padding:34px 16px 20px}.library-heading{align-items:flex-start;flex-direction:column;gap:13px}.library-heading h1{font-size:42px;margin:14px 0 8px}.library-user{margin:0}.demo-banner{margin:20px 0;padding:12px}.demo-banner p{font-size:10px}.library-tools{align-items:stretch;flex-direction:column;gap:15px}.search-wrap{width:100%}.level-picker{gap:5px}.level-tab{padding:8px 9px;font-size:10px}.catalog-heading{align-items:flex-start;flex-direction:column;gap:14px}.subject-filter{width:100%}.subject-filter select{width:100%}.course-grid{grid-template-columns:1fr}.course-card{min-height:175px}.library-footer{flex-direction:column;font-size:8px}.library-footer span:last-child{text-align:left}.dialog-content{padding:29px 20px 23px}.lesson-content{padding:32px 21px 25px}.lesson-content h2{font-size:26px}.lesson-actions{align-items:flex-start;flex-direction:column}.download-button{width:100%}.payment-dialog{width:calc(100vw - 24px)}.toast{width:max-content;max-width:calc(100vw - 30px);text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
