:root{--ink:#24205e;--navy:#25206b;--mint:#8cd6c2;--paper:#faf9f5;--line:#e0e0da;--muted:#646471;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--serif:Georgia,"Times New Roman",serif;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;scroll-behavior:smooth;scroll-padding-top:90px}*{box-sizing:border-box}body{margin:0;background:var(--paper)}body.modal-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #159a7d;outline-offset:5px}img{display:block;max-width:100%;height:auto}button{border:0}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.055em;line-height:1.05}h2{font-size:clamp(2.2rem,3.6vw,3.5rem)}em{font-weight:400}h3{font-size:1.1rem;line-height:1.35}small{font-size:.85rem}.skip{position:fixed;left:20px;top:-80px;background:#fff;padding:12px;z-index:99}.skip:focus{top:12px}.site-header{height:94px;padding:0 max(4.7vw,24px);display:flex;align-items:center;gap:40px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{border-radius:50%;width:46px;height:46px}.brand span{display:flex;flex-direction:column;line-height:1}.brand small{font-size:.75rem;letter-spacing:.28em;font-weight:700;margin-bottom:5px}.brand strong{font:400 1.85rem/1 var(--serif);letter-spacing:-.05em}.site-header nav{display:flex;gap:32px;margin:auto;font-size:.9rem}.site-header nav a{padding:12px 0}.site-header nav a:hover{color:#16896f}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 23px;font-size:.95rem;font-weight:600;line-height:1.4;border-radius:6px;min-height:50px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.app-button{border:1px solid var(--ink);background:transparent}.app-button:hover{background:#eeeeef}.mobile-label{display:none}.mint{background:var(--mint);color:#162d31}.mint:hover{background:#aaead9}.dark{background:var(--navy);color:#fff}.dark:hover{background:#373086}.hero{background:var(--navy);color:#faf7ed;overflow:hidden}.hero-inner{max-width:1440px;margin:auto;min-height:580px;padding:70px 5.2%;display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:center}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;line-height:1.5}.hero .eyebrow{color:#b2e5d8;display:flex;align-items:center;gap:12px}.small-line{height:1px;width:30px;background:currentColor}.hero h1{font-size:clamp(3.1rem,4.7vw,4.6rem);margin:25px 0 22px;letter-spacing:-.065em;line-height:1.05}.hero h1 em{color:var(--mint);white-space:nowrap}.hero-description{max-width:410px;font-size:1.04rem;color:#deddea;line-height:1.7;margin-bottom:30px}.hero-meta{font-size:.82rem;color:#d2d0e6;margin-top:22px}.hero-meta span{margin:0 10px}.hero-shelf{height:420px;position:relative;perspective:1200px;isolation:isolate}.hero-book{position:absolute;width:220px;padding:0;border-radius:3px;background:#fdfcf5;box-shadow:1px 1px 0 #ccc,6px 7px 0 #efeee8,8px 9px 0 #b8b4c2,20px 26px 25px #0f0b3d70;transition:transform .6s cubic-bezier(.2,.8,.3,1);transform-style:preserve-3d}.hero-book img{width:100%;aspect-ratio:1/1.414;object-fit:cover;object-position:top;border-left:8px solid #0001;border-radius:3px}.hero-book-front{left:6%;top:65px;transform:rotate(-10deg) rotateY(-12deg);z-index:3}.hero-book-mid{left:33%;top:18px;transform:rotate(4deg) rotateY(-10deg);z-index:2}.hero-book-back{left:61%;top:77px;transform:rotate(15deg) rotateY(-12deg);z-index:1}.hero-book:hover,.hero-book:focus-visible{transform:translateY(-16px) rotate(0) rotateY(0);z-index:5}.shelf-caption{position:absolute;bottom:-14px;width:100%;text-align:center;font-family:var(--serif);font-style:italic;color:#c3bedf;font-size:1rem}.benefit-strip{display:flex;justify-content:space-around;gap:20px;padding:26px 5%;border-bottom:1px solid var(--line);background:#f0f0e8;font-size:.87rem}.benefit-strip b{font-size:.75rem;font-weight:500;color:#6a847e;margin-right:14px}.catalog-section{max-width:1440px;margin:auto;padding:76px 5.2% 65px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:32px}.section-top h2{margin-top:15px}.section-top>p{font-size:.95rem;color:var(--muted);padding-bottom:3px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:15px}.filters{display:flex;gap:5px;flex-wrap:wrap}.filter{padding:14px 17px;background:transparent;border-bottom:2px solid transparent;font-size:.9rem;white-space:nowrap}.filter span{margin-left:8px;font-size:.75rem;color:#84838b}.filter:hover{background:#f0efea}.filter.active{border-bottom-color:var(--ink);font-weight:650}.filter.active span{color:var(--ink)}.catalog-count{font-size:.8rem;white-space:nowrap;color:var(--muted)}.interaction-hint{font-size:.78rem;color:var(--muted);margin:16px 0 24px}.touch-hint{display:none}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:32px;row-gap:45px}.book-card{min-width:0}.book-open{display:block;width:100%;padding:24px 25px 23px;background:var(--book-bg,#eeeee8);border:1px solid #e6e4de;border-radius:7px;text-align:left;perspective:1200px;position:relative;overflow:hidden;isolation:isolate}.book-3d{display:block;position:relative;width:100%;aspect-ratio:1/1.414;transform-style:preserve-3d;box-shadow:5px 6px 0 #fcfbf7,7px 8px 0 #cbc9c5,14px 19px 20px #191b3220;transition:transform .55s}.book-front{position:absolute;inset:0;z-index:2;transform-origin:0 50%;transform-style:preserve-3d;backface-visibility:hidden;transition:transform .8s cubic-bezier(.22,.8,.24,1),filter .8s;box-shadow:2px 0 5px #0002;border-radius:2px;overflow:hidden;background:#fff}.book-front:after{content:"";position:absolute;inset:0;box-shadow:inset 7px 0 6px #09072612;pointer-events:none}.book-front img{width:100%;height:100%;object-fit:cover;object-position:top}.book-inside{position:absolute;inset:0;background:#fffefa;padding:21px 16px 15px 27px;display:flex;flex-direction:column;border-left:3px solid #ddd9ce;overflow:hidden}.inside-label{font-size:.75rem;letter-spacing:.14em;font-weight:700;color:#72726f;text-transform:uppercase;margin-bottom:15px}.book-inside p{font-family:var(--serif);font-size:clamp(.95rem,1.4vw,1.15rem);line-height:1.4;letter-spacing:-.02em}.inside-more{margin-top:auto;font-size:.75rem;font-weight:600;padding-top:12px;color:#267e68}.book-open:hover .book-front,.book-open:focus-visible .book-front{transform:rotateY(-84deg);filter:brightness(.88)}.book-open:hover .book-3d,.book-open:focus-visible .book-3d{transform:translateX(5px)}.book-bottom{padding:16px 1px 0;display:flex;gap:10px;justify-content:space-between;align-items:start}.book-category{font-size:.75rem;letter-spacing:.095em;text-transform:uppercase;line-height:1.5;color:#77757e;margin-bottom:7px}.book-title{font-size:1rem;line-height:1.4;font-weight:600;letter-spacing:-.02em;max-width:190px}.price{font-size:.91rem;white-space:nowrap;font-weight:650}.book-subline{font-size:.76rem;color:#7c7a82;margin-top:9px}.catalog-footnote{font-size:.78rem;color:var(--muted);margin-top:43px;padding-top:20px;border-top:1px solid var(--line)}.loading{padding:80px 0;grid-column:1/-1}.how-section{max-width:1290px;margin:15px auto 80px;padding:58px 60px;display:grid;grid-template-columns:1fr 1.15fr;gap:80px;background:#e4eee8;border-radius:10px}.how-heading h2{margin:17px 0 22px}.how-heading>p:last-child{max-width:310px;color:#52695f;font-size:.95rem}.steps article{display:flex;gap:25px;padding:0 0 28px;margin-bottom:27px;border-bottom:1px solid #c5d4cb}.steps article:last-child{margin:0;padding:0;border:0}.steps article>span{font-size:.8rem;color:#668575;padding-top:4px}.steps p{color:#53635c;font-size:.9rem;margin-top:9px}.text-button{background:transparent;border:0;padding:0;font-size:.9rem;font-weight:650;display:inline-flex;align-items:center;gap:18px;text-decoration:underline;text-underline-offset:5px}.steps .text-button{margin-top:17px}.about-section{max-width:1250px;margin:auto;display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding:10px 40px 85px}.about-section h2{margin-top:18px}.about-section>div>p:not(.eyebrow){margin-bottom:18px;color:var(--muted);font-size:1rem}.about-section .educational-note{font-size:.78rem!important;margin-top:27px}.contact-section{background:var(--navy);color:var(--paper);padding:48px max(6.5vw,24px);display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-section .eyebrow{color:var(--mint)}.contact-section h2{font-size:2.5rem;margin:10px 0 13px}.contact-section p:last-child{font-size:.9rem;color:#d2d0e2;max-width:490px}.contact-email{font-size:clamp(1rem,1.7vw,1.6rem);white-space:nowrap;border-bottom:1px solid #8581aa;padding-bottom:10px;letter-spacing:-.02em}.contact-email span{margin-left:15px;color:var(--mint)}footer{padding:32px max(4.7vw,24px);display:flex;align-items:center;gap:32px}footer>span{font-size:.8rem;color:var(--muted)}footer nav{margin-left:auto;display:flex;gap:22px;font-size:.8rem}.footer-brand strong{font-size:1.5rem}.footer-brand img{width:40px;height:40px}.footer-brand small{font-size:.75rem}dialog{padding:0;border:0;border-radius:12px;width:min(1020px,94vw);max-width:94vw;max-height:92dvh;overflow:auto;color:var(--ink);background:var(--paper);box-shadow:0 30px 100px #0004}dialog::backdrop{background:#151330bb;backdrop-filter:blur(7px)}dialog[open]{animation:appear .25s ease}.dialog-close{position:absolute;right:17px;top:15px;z-index:4;width:40px;height:40px;display:grid;place-items:center;border:1px solid #cccbd7;border-radius:50%;background:#ffffffed;font-size:1.8rem;font-weight:300;line-height:1}.dialog-close:hover{background:var(--navy);color:white}.book-detail{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.preview-pane{background:#e8e8e1;padding:28px 35px 24px;text-align:center}.preview-paper{margin:20px auto 15px;max-width:355px;height:465px;background:#fff;box-shadow:4px 6px 16px #19193220}.preview-paper img{width:100%;height:100%;object-fit:contain}.preview-controls{display:flex;gap:7px;justify-content:center}.page-control{font-size:.8rem;background:transparent;border:1px solid #c5c5c1;padding:8px 12px;border-radius:5px;min-height:38px}.page-control.active{background:var(--navy);border-color:var(--navy);color:#fff}.preview-note{font-size:.75rem;color:var(--muted);margin-top:12px}.detail-copy{padding:64px 43px 32px;display:flex;flex-direction:column}.detail-copy h2{font-size:2.65rem;line-height:1.08;margin:15px 0 19px}.detail-copy>p:not(.eyebrow){color:var(--muted);font-size:.94rem;line-height:1.7}.detail-chips{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 23px}.detail-chips span{font-size:.75rem;padding:4px 9px;border:1px solid #d5d4cc;border-radius:3px}.inside-list h3{font-size:.9rem}.inside-list ul{padding:0;list-style:none;margin:14px 0 23px}.inside-list li{font-size:.87rem;color:var(--muted);padding:5px 0 5px 17px;position:relative}.inside-list li:before{content:"";position:absolute;left:0;top:15px;width:5px;height:5px;background:#5ca58b;border-radius:50%}.detail-price-row{display:flex;align-items:center;gap:17px;padding-top:22px;border-top:1px solid var(--line);margin-top:auto;margin-bottom:18px}.detail-price-row>span:first-child{font-family:var(--serif);font-size:2.2rem;letter-spacing:-.04em}.detail-price-row>span:last-child{font-size:.75rem;color:var(--muted);line-height:1.5}.detail-copy .button{font-size:.87rem;padding:13px 15px}.detail-app{margin:20px auto 0;font-size:.8rem}.apps-content{padding:48px;max-width:740px;margin:auto}.apps-content h2{margin:14px 0 20px;font-size:2.8rem}.apps-content>p:not(.eyebrow){color:var(--muted);font-size:.93rem;max-width:580px}.app-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0}.app-links>a{padding:16px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;gap:13px;background:#fff}.app-links>a:hover{border-color:#aaa6c5;background:#f0efe9}.app-initial{background:#e6eee7;border-radius:6px;width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;font:1.6rem var(--serif)}.app-links strong{display:block;font-size:.95rem}.app-links small{display:block;font-size:.75rem;color:var(--muted);line-height:1.4;margin-top:3px}.app-links b{margin-left:auto;font-weight:400;color:#7b778e}.apps-help{font-size:.8rem!important}.apps-help a{text-decoration:underline}#apps-dialog{width:min(780px,94vw)}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1550px){.hero-inner{padding-left:70px;padding-right:70px}.hero h1{font-size:4.6rem}}
@media(max-width:1150px){.site-header{gap:24px}.site-header nav{gap:20px}.hero-inner{padding-top:55px;padding-bottom:55px;gap:20px;min-height:535px}.hero-shelf{height:370px}.hero-book{width:180px}.hero-book-front{left:0}.hero-book-mid{left:27%}.hero-book-back{left:53%}.hero h1{font-size:3.5rem}.catalog-grid{column-gap:23px}.book-open{padding:20px 18px}.book-inside{padding:16px 10px 13px 18px}.inside-label{margin-bottom:10px}.book-inside p{font-size:.96rem}.how-section{margin-left:4%;margin-right:4%;padding:45px 35px;gap:40px}.about-section{gap:60px}.contact-section{gap:22px}.contact-email{font-size:1.1rem}footer{gap:20px}footer nav{gap:15px}.detail-copy{padding-left:30px;padding-right:30px}}
@media(max-width:900px){.site-header nav{display:none}.site-header{height:82px;justify-content:space-between}.hero-inner{grid-template-columns:1fr 1fr;min-height:500px}.hero h1{font-size:3rem}.hero-description{font-size:.95rem}.hero-shelf{height:325px}.hero-book{width:150px}.hero-book-back{left:50%}.hero-book-mid{left:25%}.benefit-strip{font-size:.75rem;padding:21px 3%;gap:10px}.benefit-strip b{margin-right:7px}.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 22px}.section-top>p{display:none}.filter{font-size:.8rem;padding:13px 12px}.catalog-count{display:none}.about-section{padding:10px 5% 60px;gap:40px}.contact-section{align-items:start;flex-direction:column;gap:28px}.contact-email{font-size:1.4rem}.book-detail{grid-template-columns:1fr 1fr}.preview-pane{padding:28px 20px 20px}.preview-paper{height:410px}.detail-copy h2{font-size:2.1rem}.detail-copy{padding:62px 25px 28px}.detail-copy .button{font-size:.77rem}footer{flex-wrap:wrap}footer nav{width:100%;margin:0;padding-top:16px;border-top:1px solid var(--line)}}
@media(max-width:620px){:root{scroll-padding-top:20px}.site-header{padding:0 20px;height:78px}.brand strong{font-size:1.6rem}.brand small{font-size:.75rem}.brand img{width:39px;height:39px}.brand{gap:10px}.app-button{padding:10px 13px;min-height:43px;gap:12px;font-size:.85rem}.desktop-label{display:none}.mobile-label{display:inline}.hero-inner{display:block;padding:45px 24px 30px}.hero h1{font-size:clamp(2.9rem,10vw,3.7rem);margin:22px 0 20px}.hero-description{font-size:1rem;max-width:360px;margin-bottom:25px}.hero .eyebrow{font-size:.75rem}.hero .button{font-size:.92rem;padding:14px 20px}.hero-meta{margin-top:18px;font-size:.75rem}.hero-shelf{height:340px;max-width:420px;margin:27px auto 0}.hero-book{width:158px}.hero-book-front{left:4%;top:52px}.hero-book-mid{left:30%;top:17px}.hero-book-back{left:58%;top:62px}.shelf-caption{bottom:8px;font-size:.9rem}.benefit-strip{display:grid;grid-template-columns:1fr 1fr;padding:21px 24px;gap:14px 18px;font-size:.78rem}.benefit-strip b{margin-right:10px}.catalog-section{padding:45px 20px}.section-top h2{font-size:2.5rem;line-height:1.07}.section-top{margin-bottom:25px}.eyebrow{font-size:.75rem}.catalog-toolbar{margin:0 -3px}.filters{gap:0;display:grid;grid-template-columns:1fr 1.65fr;width:100%}.filter{font-size:.82rem;padding:11px 6px;text-align:left}.filter span{font-size:.75rem}.filter.active{background:#ecece6;border-bottom:0;border-radius:4px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 17px}.book-open{padding:17px 12px 19px;border-radius:5px}.book-front img{object-fit:fill}.book-bottom{display:block;padding-top:13px}.book-title{font-size:.93rem;line-height:1.35;max-width:none}.book-category{font-size:.75rem;letter-spacing:.07em;margin-bottom:6px}.price{font-size:.85rem;margin-top:6px}.book-subline{font-size:.75rem;margin-top:5px}.book-inside{padding:12px 8px 10px 14px}.book-inside p{font-size:.85rem;line-height:1.35}.inside-label{font-size:.75rem;margin-bottom:8px}.inside-more{font-size:.75rem}.interaction-hint{font-size:.75rem;margin:17px 0 21px}.hover-hint{display:none}.touch-hint{display:inline}.catalog-footnote{font-size:.75rem;margin-top:30px}.how-section{margin:0 20px 48px;padding:31px 23px;display:block}.how-heading h2{font-size:2.7rem}.how-heading>p:last-child{font-size:.91rem;max-width:none}.steps{margin-top:32px}.steps article{gap:18px;padding-bottom:23px;margin-bottom:23px}.steps h3{font-size:1rem}.steps p{font-size:.88rem}.about-section{display:block;padding:0 25px 42px}.about-section h2{font-size:2.65rem;margin-bottom:27px}.about-section>div>p:not(.eyebrow){font-size:.95rem}.contact-section{padding:35px 25px;gap:24px}.contact-section h2{font-size:2.2rem}.contact-email{font-size:1.1rem}.contact-section p:last-child{font-size:.86rem}footer{padding:26px 24px;gap:22px}footer>span{font-size:.75rem;max-width:120px;margin-left:auto}footer nav{gap:24px;font-size:.75rem}dialog{border-radius:9px;max-height:94dvh;width:94vw}.book-detail{display:flex;flex-direction:column;min-height:0}.preview-pane{padding:25px 22px 20px}.preview-paper{height:390px;max-width:282px;margin-top:17px}.preview-pane .eyebrow{margin-right:30px}.detail-copy{padding:30px 25px}.detail-copy h2{font-size:2.6rem}.detail-copy .button{font-size:.86rem}.detail-copy>p:not(.eyebrow){font-size:.95rem}.detail-app{font-size:.83rem}.apps-content{padding:48px 23px 28px}.apps-content h2{font-size:2.35rem}.app-links{grid-template-columns:1fr}.app-links>a{padding:14px}.app-links small{font-size:.76rem}.apps-content>p:not(.eyebrow){font-size:.9rem}.dialog-close{width:36px;height:36px;top:12px;right:12px}.inside-list li{font-size:.9rem}.catalog-section{overflow:hidden}}
@media(hover:none){.book-open:hover .book-front{transform:none;filter:none}.book-open:hover .book-3d{transform:none}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.book-open:hover .book-front,.book-open:focus-visible .book-front{transform:rotateY(-90deg)}}

/* One clear subscription across the whole catalog. */
.book-bottom .price{font-size:11px;max-width:100px;white-space:normal;line-height:1.4;text-align:right;color:#5c567b}.subscription-section{display:grid;grid-template-columns:1fr 1fr;gap:7vw;padding:90px max(6vw,24px);background:#eae9e2}.subscription-section h2{font-size:clamp(32px,3.6vw,54px);line-height:1.1;margin:20px 0}.subscription-section h2 em{font-family:Georgia,serif;font-weight:400}.subscription-section>div>p{max-width:460px}.subscription-card{background:#fff;border:1px solid #dad8e5;border-radius:20px;padding:34px}.subscription-price{font-size:52px;line-height:1.2;font-weight:700;margin:14px 0}.subscription-price span{font-size:15px;font-weight:400;display:block;margin-top:8px}.subscription-renewal{font-size:16px;line-height:1.6}.subscription-card ul{padding-left:20px;margin:24px 0;line-height:1.8}.subscription-card .button{width:100%;justify-content:center}.subscription-note{font-size:12px;line-height:1.6;color:#626077}.hero-meta{line-height:1.9!important}.detail-price-row{margin-bottom:10px}.detail-copy .subscription-renewal{font-size:14px;margin:12px 0 20px}.apps-content>.button{margin:15px 0}@media(max-width:720px){.subscription-section{grid-template-columns:1fr;padding:55px 22px;gap:24px}.subscription-card{padding:24px}.subscription-price{font-size:46px}.hero-meta{font-size:12px!important}}

.reference-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px 40px}.reference-footer__info{display:grid;gap:7px;font-size:.82rem;line-height:1.6}.reference-footer__info strong{font-size:.9rem;font-weight:600}.reference-footer__info p{color:var(--muted)}.reference-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px;max-width:560px;margin:0;font-size:.82rem}.reference-footer a:hover{text-decoration:underline;text-underline-offset:3px}@media(max-width:800px){.reference-footer{grid-template-columns:1fr;gap:20px}.reference-footer nav{margin:0;gap:12px 22px}}
