@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#242135;--purple:#403497;--muted:#73717e;--line:#e8e6ee;--lime:#dbea91;--font:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font);font-size:16px}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}svg{width:22px;height:22px;flex-shrink:0}button{border:0;background:none}button:focus-visible,a:focus-visible{outline:3px solid #7963d0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',sans-serif}.announcement{background:var(--purple);color:white;text-align:center;padding:11px 20px;font-size:13px;letter-spacing:.1px}.announcement span{margin-left:10px;opacity:.8}header{max-width:1440px;margin:auto;display:flex;align-items:center;gap:45px;padding:27px 48px}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700;white-space:nowrap;letter-spacing:-1px}.brand i{font-weight:400;font-family:Georgia;font-size:26px}.brand small{display:block;letter-spacing:2.3px;font-size:10px;margin-top:5px;font-weight:500}.brand-icon{background:var(--purple);color:#fff;width:43px;height:48px;border-radius:13px 13px 13px 3px;font-family:Georgia;font-size:40px;position:relative;line-height:39px;padding-left:7px}.brand-icon span{position:absolute;font-size:25px;right:-6px;top:-8px;color:#bed553}.search{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:9px;padding:12px 17px;flex:1;max-width:600px;margin-left:auto;background:#fcfbfd}.search input{border:0;background:none;width:100%;outline:none;font-size:14px}.search kbd{color:#95919d}.bag-button{display:flex;gap:10px;align-items:center;white-space:nowrap;font-size:14px}.bag-button b{border-radius:50%;background:#eeebf9;color:var(--purple);font-size:12px;padding:4px 7px}.nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 48px;display:flex;justify-content:space-between;gap:15px;align-items:center}.nav>div{display:flex;gap:25px}.nav button{font-size:14px;padding:18px 0;border-bottom:2px solid transparent;white-space:nowrap}.nav button.active{border-color:var(--purple);color:var(--purple);font-weight:700}.tiny{font-size:9px;background:var(--lime);padding:4px 5px;border-radius:4px;margin-left:4px}.nav-note{font-family:Georgia;font-style:italic;font-size:14px;color:var(--muted);white-space:nowrap}main{max-width:1440px;margin:auto;padding:30px 48px 0}.hero{display:grid;grid-template-columns:1fr 1fr;border-radius:15px;overflow:hidden;background:#eeeaf9;min-height:344px}.hero-copy{padding:34px 38px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.55px;color:var(--purple)}h1{font-size:46px;line-height:1.12;letter-spacing:-2px;margin-top:13px;font-weight:800}h1 em{font-family:Georgia;font-weight:500;color:var(--purple)}.hero p{font-size:15px;line-height:1.65;color:#5e5871;max-width:345px;margin:17px 0 21px}.primary{display:inline-flex;align-items:center;justify-content:center;gap:23px;background:var(--purple);color:white;border-radius:7px;padding:13px 19px;font-size:14px;font-weight:600}.primary:hover{background:#2e246d}.primary span{font-size:19px}.hero-foot{font-size:11px;color:#787082;margin-top:16px}.hero-art{position:relative;background:#d8e4f1;min-height:330px;background-size:cover;background-position:center;display:grid;place-items:center}.hero-type{padding:30px;color:var(--purple);text-align:center}.hero-type>span:first-child{font-size:12px;letter-spacing:2px}.hero-type strong{font:36px/1.15 Georgia;display:block;margin-top:30px}.hero-seal{display:inline-block;border:1px solid var(--purple);border-radius:50%;padding:24px;margin-top:25px;font-size:12px;line-height:1.4;transform:rotate(12deg)}.hero-art.has-image .hero-type{display:none}.benefits{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:24px 8px;font-size:13px;color:#575263}.benefits span{display:flex;gap:10px;align-items:center}.benefits b{font-size:22px;color:var(--purple);font-weight:400}.collection{padding-top:41px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:27px}h2{font-size:28px;letter-spacing:-1px;margin-top:8px;font-weight:750}.sample-label{font-size:12px;color:var(--muted)}.shop-layout{display:grid;grid-template-columns:207px 1fr;gap:32px}.filter-head{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:15px 0 21px}.filter-head h3{font-size:13px;font-weight:700}.text-button{padding:0;font-size:12px;color:var(--muted);text-decoration:underline}fieldset{border:0;padding:21px 0;margin:0;border-top:1px solid var(--line)}legend{float:left;width:100%;font-size:11px;font-weight:700;letter-spacing:1.1px;margin-bottom:18px}fieldset label{display:flex;align-items:center;gap:9px;margin:13px 0;font-size:14px}fieldset label span{margin-left:auto;color:#9a96a2;font-size:12px}input[type=checkbox],input[type=radio]{accent-color:var(--purple);width:16px;height:16px;margin:0}.aside-note{border-radius:10px;background:#f4f3ea;padding:23px;margin-top:12px}.aside-note>span{font-size:30px;color:var(--purple)}.aside-note h3{font-family:Georgia;font-size:23px;line-height:1.2;font-weight:400;margin:12px 0}.aside-note p{font-size:13px;line-height:1.6;color:#757365}.results-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:17px;min-height:37px;font-size:13px;color:var(--muted)}.results-bar label{display:flex;align-items:center;gap:8px}.results-bar select{border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:12px;color:var(--ink);background:white}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 20px}.product-card{min-width:0}.cover-button{width:100%;display:block;padding:18px 30px;position:relative;border-radius:10px;background:var(--bg);aspect-ratio:1.17;transition:background .2s,transform .2s;overflow:hidden}.cover-button:hover{transform:translateY(-3px)}.book{width:100%;height:100%;min-height:175px;max-width:190px;margin:auto;box-shadow:5px 7px 0 #00000012,0 12px 15px #00000010;display:flex;flex-direction:column;text-align:left;border-radius:1px 5px 5px 1px;padding:14px 15px;background:var(--cover);color:var(--text);position:relative;border-left:5px solid #ffffff35}.book .publisher{font-size:8px;letter-spacing:.7px;font-weight:600}.book h3{font-size:25px;line-height:1.05;letter-spacing:-1px;margin-top:10px;max-width:140px;font-weight:800}.book .subtitle{font-size:8px;margin-top:6px;letter-spacing:.3px}.book .lesson{font-family:Georgia;font-size:36px;font-weight:400;letter-spacing:-1px;text-align:center;margin:auto 0;line-height:1.2}.book .lesson.math{font:700 28px 'Manrope',sans-serif}.book .grade-label{font-size:8px;text-transform:uppercase;letter-spacing:.7px;border-top:1px solid currentColor;padding-top:7px;opacity:.8}.cover-badge{position:absolute;right:10px;top:10px;font-size:9px;border-radius:4px;background:white;padding:5px 7px;font-weight:700;color:var(--purple);box-shadow:0 2px 5px #00000005}.product-meta{margin:15px 0 7px;font-size:10px;text-transform:uppercase;letter-spacing:.85px;color:var(--purple);font-weight:700}.product-title{padding:0;text-align:left;font-weight:700;font-size:15px;line-height:1.4}.product-title:hover{text-decoration:underline}.product-sub{font-size:12px;color:var(--muted);margin-top:7px}.product-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:13px}.price{font-size:16px;font-weight:700}.price small{font-weight:400;text-decoration:line-through;color:var(--muted);font-size:12px;margin-left:5px}.quick-add{width:31px;height:31px;border-radius:50%;border:1px solid var(--line);font-size:21px;line-height:1}.quick-add:hover{background:var(--purple);color:white}#empty{padding:50px 20px;text-align:center;background:#faf9fc;border-radius:10px}#empty p{margin:15px 0}.closing{display:flex;gap:25px;align-items:center;padding:29px 32px;margin:48px 0 32px;background:#f0f3df;border-radius:12px}.spark{font-size:56px;color:var(--purple)}.closing h2{font-size:23px;margin:0}.closing p{font-size:13px;margin-top:8px;color:#727367}.closing a{margin-left:auto;font-size:13px;font-weight:700;white-space:nowrap}footer{border-top:1px solid var(--line);padding:27px 48px;display:flex;gap:22px;align-items:center;font-size:12px;color:var(--muted)}.footer-brand{font-size:19px;color:var(--ink);font-weight:700;letter-spacing:-.5px}footer>span{margin-left:auto;font-size:11px}dialog{border:1px solid var(--line);padding:36px;border-radius:17px;max-width:800px;width:calc(100% - 32px);max-height:90vh;box-shadow:0 25px 100px #24213530;color:var(--ink)}dialog::backdrop{background:#17102880;backdrop-filter:blur(4px)}.close{position:absolute;top:10px;right:14px;font-size:29px;width:32px;height:32px}.detail-layout{display:grid;grid-template-columns:260px 1fr;gap:32px}.detail-cover{padding:28px;background:var(--bg);border-radius:9px;min-height:340px}.detail-cover .book{min-height:280px}.detail-cover .book h3{font-size:32px}.detail-cover .book .lesson{font-size:48px}.detail-info h2{font-size:26px;line-height:1.3}.detail-info p{color:var(--muted);font-size:14px;line-height:1.65;margin:15px 0}.detail-info ul{padding-left:19px;font-size:14px;line-height:1.9}.detail-info .price{display:block;margin:20px 0;font-size:25px}.detail-info .primary{width:100%}.sample-tabs{display:flex;gap:10px;margin-top:18px}.sample-tabs button{font-size:12px;padding:8px;border:1px solid var(--line);border-radius:5px}.sample-page{padding:20px;background:white;border:1px solid #eee;height:100%;min-height:280px}.sample-page h3{font-size:20px}.sample-page p{font-size:12px;line-height:1.5;margin:12px 0}.sample-exercise{padding:10px 0;font-size:26px;border-bottom:1px dashed #c9c4cf;line-height:1.8;white-space:pre-line}.sample-foot{font-size:10px!important;color:#999}.bag-row{display:flex;align-items:center;gap:14px;padding:21px 0;border-bottom:1px solid var(--line)}.bag-mini{background:var(--bg);color:var(--purple);border-radius:5px;display:grid;place-items:center;width:45px;height:55px;font-size:24px;flex-shrink:0}.bag-row h3{font-size:15px}.bag-row p{font-size:12px;color:var(--muted);margin-top:5px}.bag-row strong{margin-left:auto;white-space:nowrap}.remove{font-size:12px;color:var(--muted);padding-left:0;text-decoration:underline;margin-top:7px}.total-line{display:flex;justify-content:space-between;margin:24px 0;font-size:19px;font-weight:700}.wide{width:100%}.fine{font-size:12px;line-height:1.6;color:var(--muted);text-align:center;margin:14px 0}.empty-bag{padding:35px 0;text-align:center}.empty-bag p{margin:15px 0;color:var(--muted)}#bag-dialog{max-width:520px}#checkout-dialog{max-width:530px}.checkout-tag{font-size:11px;color:var(--purple);letter-spacing:1px;font-weight:700}.checkout-intro{font-size:14px;color:var(--muted);margin:14px 0 23px;line-height:1.6}.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.payment-option{padding:18px;border:1px solid var(--line);border-radius:9px;font-weight:700}.payment-option.active{border:2px solid var(--purple);background:#f6f3ff}.paypal{font-style:italic;font-size:23px;font-weight:800;color:#003087}.paypal i{color:#0070e0}.checkout-box{padding:20px;background:#f8f7fa;border-radius:9px;margin:20px 0}.checkout-box p{font-size:14px;line-height:1.7;color:#666070}.paypal-button{background:#ffc439;color:#123278;width:100%;font-weight:700;padding:14px;border-radius:6px}.success-icon{background:var(--lime);border-radius:50%;width:65px;height:65px;display:grid;place-items:center;color:var(--purple);font-size:32px;margin:8px auto 22px}.success{text-align:center}.success p{font-size:14px;color:var(--muted);line-height:1.7;margin:15px 0 24px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;box-shadow:0 4px 20px #0003;border-radius:9px;padding:13px 23px;opacity:0;transition:.2s;pointer-events:none;z-index:20;font-size:14px}#toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1450px){.nav{justify-content:center;gap:70px}footer{justify-content:center}footer>span{margin-left:60px}}@media(max-width:1150px){header{gap:25px;padding:25px 30px}.nav{padding:0 30px}.nav>div{gap:20px}.nav-note{display:none}main{padding:25px 30px 0}.hero-copy{padding:30px}.hero h1{font-size:42px}.shop-layout{grid-template-columns:175px 1fr;gap:24px}.cover-button{padding:17px 23px}.book h3{font-size:22px}.book .lesson{font-size:30px}.book{padding:12px 10px}.benefits{font-size:12px}.product-grid{gap:24px 16px}.closing a{white-space:normal;max-width:160px}}
@media(max-width:850px){header{flex-wrap:wrap;gap:20px;padding:22px 22px}.search{order:3;max-width:none;flex-basis:100%;padding:12px}.bag-button{margin-left:auto}.nav{padding:0 22px;overflow:auto}.hero{grid-template-columns:1.1fr 1fr}.hero-copy{padding:26px}.hero h1{font-size:35px}.hero p{font-size:14px}.hero-foot{display:none}.hero-type strong{font-size:28px}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:15px}.shop-layout{grid-template-columns:150px 1fr;gap:22px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sample-label{display:none}.filter-head{align-items:flex-start}.filter-head h3{max-width:100px;line-height:1.6}.closing{padding:25px;gap:17px}.closing h2{font-size:21px}.closing a{display:none}.closing p{line-height:1.7}footer{flex-wrap:wrap;padding:25px 30px;gap:14px}footer>span{margin-left:0;flex-basis:100%}.detail-layout{grid-template-columns:220px 1fr;gap:20px}.detail-cover{padding:20px}.hero{min-height:330px}}
@media(max-width:600px){.announcement{font-size:11px}.announcement span{display:none}.brand{font-size:23px}main{padding:20px 18px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:28px}.hero h1{font-size:43px}.hero p{max-width:100%}.hero-art{min-height:225px;max-height:225px;background-position:center 53%}.hero-type{padding:10px}.hero-type strong{font-size:25px;margin-top:12px}.hero-seal{display:none}.benefits{font-size:11px;padding:18px 0;gap:10px}.benefits b{font-size:19px}.collection{padding-top:28px}.section-top h2{font-size:24px}.eyebrow{font-size:10px;letter-spacing:1px}.shop-layout{display:block}.filter-head,.aside-note,aside fieldset:nth-of-type(2){display:none}aside fieldset{display:flex;align-items:center;gap:13px;overflow:auto;padding:0 0 18px;border-top:0;white-space:nowrap}aside legend{display:none}aside fieldset label{margin:0;font-size:12px;gap:5px}aside fieldset label span{display:none}.results-bar{font-size:12px;margin-bottom:14px}.product-grid{gap:25px 14px}.cover-button{padding:15px 17px;aspect-ratio:.9}.book{min-height:175px;padding:10px}.book h3{font-size:22px}.book .publisher{font-size:7px}.book .lesson{font-size:30px}.book .subtitle{font-size:7px}.book .grade-label{font-size:7px}.cover-badge{font-size:8px;padding:4px;right:6px;top:6px}.product-meta{font-size:9px;line-height:1.5}.product-title{font-size:14px}.product-sub{font-size:11px;line-height:1.5}.closing{margin-top:35px;padding:22px 18px}.spark{font-size:40px}.closing h2{font-size:19px}.closing p{font-size:12px}.detail-layout{grid-template-columns:1fr}.detail-cover{max-width:240px;width:100%;margin:auto;min-height:250px}.detail-cover .book{min-height:240px}.detail-info h2{font-size:24px}dialog{padding:30px 23px}.bag-row{gap:10px}.bag-row h3{font-size:13px}.bag-row strong{font-size:14px}.hero-copy .primary{font-size:13px}#toast{width:max-content;max-width:90vw;text-align:center}.book .grade-label{margin-top:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* CMS storefront extension: flat PDF cover pages, never physical book mockups. */
#hero-title{white-space:pre-line}.flat-cover-hero{background:#e3e4f6;display:flex;align-items:center;justify-content:center;gap:12px;padding:28px 24px 53px;position:relative;overflow:hidden}.flat-cover-hero img{width:30%;max-width:160px;height:auto;box-shadow:0 4px 12px #24213515}.flat-cover-hero img:nth-child(2){transform:translateY(-12px)}.flat-cover-hero>span{position:absolute;bottom:22px;font-size:10px;letter-spacing:1.6px;font-weight:700;color:var(--purple)}.flat-cover-button{aspect-ratio:.95;padding:20px 38px;background:#f1f0f6;border-radius:10px}.flat-cover{width:100%;height:100%;object-fit:contain;display:block}.flat-detail img{width:100%;height:auto;border:1px solid var(--line)}.text-cover{background:var(--cover);color:white;aspect-ratio:2/3;display:flex;flex-direction:column;padding:20px;justify-content:space-between;text-align:left;max-width:220px;margin:auto}.text-cover small{font-size:9px;letter-spacing:.5px}.text-cover h3{font-size:24px;line-height:1.15;letter-spacing:-.7px}.text-cover span{font-size:11px}.outline-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:white;border-radius:7px;padding:11px 16px;font-size:14px;cursor:pointer;margin-top:12px}.error-box{padding:20px;border:1px solid #e5b7b7;background:#fff4f4;border-radius:8px;margin-bottom:20px;color:#9c2d2d}.brand{font-size:21px}.nav-note{font-family:inherit;font-style:normal;font-weight:600}.product-meta{font-size:11px}.product-sub{font-size:13px}.fine{font-size:13px}.hero-foot{font-size:12px}.results-bar,.results-bar select{font-size:14px}fieldset label{font-size:14px}.flat-cover-button .cover-badge{font-size:10px}.product-title{font-size:16px}.brand small{font-size:9px}@media(max-width:850px){.nav-note{display:block}.flat-cover-hero{padding:25px 12px 50px;gap:7px}.flat-cover-button{padding:17px 24px}}@media(max-width:600px){.flat-cover-hero{min-height:280px;padding:30px 17px 45px}.flat-cover-hero img{max-width:125px}.flat-cover-button{aspect-ratio:.8;padding:17px 18px}.shop-layout aside #filters{display:flex;flex-wrap:wrap;gap:4px 15px}#filters fieldset{display:flex;flex-wrap:wrap;overflow:visible;gap:12px;padding:10px 0}#filters legend{display:block;float:none;font-size:10px;margin-bottom:9px}.text-cover{padding:10px}.text-cover h3{font-size:18px}.text-cover small{font-size:8px}.nav-note{font-size:12px}.detail-layout{display:block}.flat-detail{max-width:210px;margin:0 auto 25px}.hero-copy{padding:25px}.brand{font-size:20px}.product-meta{font-size:10px}.hero h1{font-size:39px}}

.site-logo{display:block;width:246px;height:auto;max-width:100%;object-fit:contain}.brand .site-logo{width:246px}.footer-brand .site-logo{width:210px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:600px){.brand .site-logo{width:190px}}

.collection-coming{text-align:center;padding:35px 15px;color:var(--purple)}.flat-cover-hero .collection-coming img{width:72px;height:72px;box-shadow:none;margin:0 auto 22px}.collection-coming h2{font-size:30px;line-height:1.2;margin:0 0 14px}.collection-coming p{font-size:16px;line-height:1.6}
