@font-face{font-family:DM;src:url(assets/body.woff2)}@font-face{font-family:DM;src:url(assets/body-bold.woff2);font-weight:700}@font-face{font-family:Fraunces;src:url(assets/headings.woff2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdf8;color:#17372a;font-family:DM,Arial,sans-serif;font-size:19px;line-height:1.6}.ribbon{background:#17372a;color:#fffdf8;text-align:center;padding:12px;font-size:14px;font-weight:700;letter-spacing:1px}header{max-width:1240px;margin:auto;padding:25px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #ddd8cd}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;color:inherit;font-weight:700}.brand img{width:48px;height:48px}.brand small{display:block;font-weight:400;font-size:14px}section{padding:76px 28px;max-width:1240px;margin:auto}h1,h2,h3{font-family:Fraunces,Georgia,serif;line-height:1.12}h1{font-size:clamp(38px,4.5vw,64px);margin:18px 0 25px}h2{font-size:clamp(32px,3vw,44px);margin-top:0}h3{font-size:28px}em{color:#a34833;font-style:normal}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:42px;align-items:center}.lead{font-size:24px}.eyebrow{font-size:13px;letter-spacing:1.6px;font-weight:700}.button{display:inline-block;padding:16px 23px;min-height:52px;background:#17372a;color:white;border:0;border-radius:9px;text-decoration:none;font:700 18px DM,Arial;cursor:pointer;line-height:1.4}.button:hover{background:#28583f}.button:focus-visible,a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #bd5b43;outline-offset:5px}.micro{font-size:15px}.covers{display:flex;gap:16px;align-items:center}.covers img{width:48%;border-radius:10px;box-shadow:0 12px 28px #17372a22}.covers img:last-child{transform:translateY(22px)}.band{background:#f7f2e9;border-radius:20px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}.two{grid-template-columns:repeat(2,1fr)}.card{border:1px solid #d9ddd6;border-radius:14px;padding:30px;background:white}.featured{border:3px solid #ecac45;background:#f7f2e9}.price{font-size:44px;font-weight:700;margin:20px 0 0}.purchase{width:100%;margin-top:15px}li{margin-bottom:9px}details{padding:22px 0;border-bottom:1px solid #ddd8cd}summary{font-weight:700;cursor:pointer}.closing{background:#17372a;color:#fffdf8;border-radius:20px}.light{background:#ecac45;color:#17372a}.light:hover{background:#f8c265}footer{max-width:1240px;margin:auto;padding:50px 28px;font-size:15px}footer a{color:inherit}dialog{border:0;border-radius:16px;max-width:550px;padding:35px;color:#17372a}dialog::backdrop{background:#0008}#close-dialog{display:block;margin-top:20px;padding:12px 20px;font-size:18px} @media(max-width:800px){.hero,.grid,.two{grid-template-columns:1fr}section{padding:48px 22px}.covers{max-width:550px;margin:10px auto 20px}header{flex-wrap:wrap;padding:20px}header>.button{font-size:15px}.brand{font-size:16px}.lead{font-size:21px}.card{padding:25px}.ribbon{font-size:12px}}

.workbook-cover{width:145px;height:auto;border-radius:8px;box-shadow:0 5px 15px #17372a22}
/* Richer brand palette with royal-blue accents. */
body{background:#eee6d8}
header{background:#fffdf8;border-radius:0 0 16px 16px}
.hero{background:linear-gradient(135deg,#17372a,#244e3d);color:#fffdf8;border-radius:22px;margin-top:28px;padding:65px 35px;border-top:6px solid #315bd6}
.hero em{color:#ecac45}
.hero .button{background:#ecac45;color:#17372a}
.hero .button:hover{background:#f7c36a}
.hero .eyebrow{color:#dae3ff}
.band{background:#e4d2bc;border-left:6px solid #bd5b43}
#inside{background:#fffdf8;border-radius:20px;margin-top:28px;margin-bottom:28px}
#offers>.eyebrow{color:#2448ad}
.featured{border:3px solid #315bd6;background:#edf2ff;box-shadow:0 10px 24px #2448ad18}
.featured .eyebrow{color:#2448ad}
.featured .button{background:#2448ad;color:#fff}
.featured .button:hover{background:#193887}
.closing{border-top:6px solid #315bd6}
@media(max-width:800px){.hero{margin-top:15px;padding:40px 22px}}

.price-history p{margin:6px 0;font-size:17px}.price-history del{font-weight:700;color:#705e52;margin-right:8px}.price-history span{font-size:14px}.launch-label{font-weight:700;color:#2448ad;margin-top:3px}

.covers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.covers img{width:100%;height:auto}.covers img:last-child{transform:none}.covers img:nth-child(2){transform:translateY(20px)}@media(min-width:801px){.hero{grid-template-columns:1fr 1.2fr;gap:28px}}@media(max-width:500px){.covers{gap:8px}}
