/* SPM book detail pages: the same paper, ink and yellow marker as the homepage. */
.paper-product .container{width:min(1120px,calc(100% - 80px));margin-inline:auto}
.paper-product .nav-wrap{min-height:85px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.paper-product .menu-button{display:none;align-items:center;gap:12px;min-height:44px;padding:7px 12px;background:none;border:1px solid var(--line);font-size:13px}
.paper-product .main-nav{gap:28px}.paper-product .nav-cart{border:1px solid var(--ink);padding:9px 14px;display:flex;align-items:center;gap:9px}
.paper-product .cart-trolley{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}.paper-product .cart-count{font-size:11px}
.spm-book-hero{padding:26px 0 60px;background:var(--paper);background-image:radial-gradient(#bfb5a544 .65px,transparent .65px);background-size:7px 7px;border-bottom:1px solid var(--line)}
.spm-back-link{display:inline-block;font-size:12px;color:var(--muted);padding:8px 0;text-decoration:underline;text-underline-offset:4px}
.spm-book-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px;padding-top:24px}
.spm-book-copy .eyebrow{margin-bottom:16px}.spm-book-copy h1{font-size:66px;line-height:1.04;letter-spacing:-.05em;margin:0 0 23px}.spm-book-copy h1 span{display:block;font-size:39px;font-style:italic;letter-spacing:-.035em;margin-top:8px}
.spm-book-lead{font-size:16px;line-height:1.8;max-width:490px;color:var(--muted);margin-bottom:22px}
.spm-book-includes{list-style:none;padding:0;margin:0 0 23px;display:grid;gap:9px;font-size:13px}.spm-book-includes li{display:flex;gap:10px}.spm-book-includes li::before{content:'✓';color:var(--blue);font-weight:700}
.spm-book-price{display:flex;align-items:baseline;gap:15px;margin-bottom:15px}.spm-book-price strong{font:36px/1.2 var(--serif);letter-spacing:-.03em}.spm-book-price span{font-size:11px;color:var(--muted)}
.spm-book-actions{display:flex;flex-wrap:wrap;gap:12px}.spm-book-actions .button{font-size:14px;min-height:51px}.paper-product .spm-buy-link,.memory-final-cta .button,.polished-final-cta .button{background:var(--ink);color:var(--sheet);border:1px solid var(--ink);box-shadow:3px 4px 0 #aaa18b66}
.paper-product .spm-buy-link:hover,.memory-final-cta .button:hover,.polished-final-cta .button:hover{background:var(--blue);border-color:var(--blue)}
.spm-add-button{border:1px solid #9c978b;background:transparent}.spm-add-button:hover{background:var(--sheet)}
.spm-delivery{font-size:11px;line-height:1.7;color:var(--muted);max-width:380px;margin:16px 0 12px}.spm-preview-link{font-size:12px;text-decoration:underline;text-underline-offset:5px;display:inline-flex;gap:20px;padding:8px 0;color:var(--blue)}
.spm-cover-display{margin:0;text-align:center;padding:10px 25px}.spm-cover-note{display:block;font:italic 21px/1.4 var(--serif);color:var(--blue);margin-bottom:28px;transform:rotate(-3deg)}
.spm-cover{width:min(100%,315px);margin:auto;position:relative;transform:rotate(2deg);box-shadow:3px 3px 0 #fdfaf2,4px 4px 0 #aaa38f,7px 7px 0 #fdfaf2,8px 8px 0 #aaa38f,15px 18px 20px #40382b20;background:var(--sheet)}
.spm-cover img{width:100%;height:auto;border:1px solid #bcb3a1}.spm-cover-display figcaption{font:italic 17px/1.4 var(--serif);margin:30px 0 0}.spm-cover-display small{display:block;font:11px/1.5 var(--sans);color:var(--muted);margin-top:7px}
.preview-section-v20{padding:65px 0;position:relative}.spm-anchor{position:absolute;top:0;scroll-margin-top:100px}.preview-v20-heading{text-align:center;max-width:720px;margin:0 auto 28px}.preview-v20-heading .eyebrow{display:block;margin-bottom:14px}.preview-v20-heading h2{font-size:43px;margin-bottom:16px}.preview-v20-heading p{font-size:14px;color:var(--muted);margin-bottom:24px}
.preview-v20-tabs{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.preview-v20-tab{min-height:46px;border:1px solid #a9a292;padding:10px 22px;background:var(--sheet);font-size:13px;border-radius:2px}.preview-v20-tab.is-active{background:#f7e29a;border-color:#7b6f45;box-shadow:2px 3px 0 #ded6be}
.preview-v20-frame{max-width:960px;margin:auto;border:1px solid #bdb4a1;background:var(--paper);box-shadow:5px 6px 0 #e8e1d4}
.preview-v20-toolbar{padding:17px 25px;border-bottom:1px solid var(--line);background:var(--sheet)}.preview-v20-toolbar-title strong{display:block;font-size:14px}.preview-v20-toolbar-title small{display:block;font-size:11px;color:var(--muted);margin-top:3px}
.preview-v20-content{padding:26px}.preview-v20-pane{display:none}.preview-v20-pane.is-active{display:block;min-width:0}
.preview-v20-canvas{position:relative;width:min(100%,390px);aspect-ratio:210/297;margin:0 auto;background:white;border:1px solid #c6beaf;box-shadow:3px 4px 9px #40382b12}
.preview-v20-page{display:none;position:absolute;inset:0}.preview-v20-page.is-current{display:block}.preview-v20-page img{width:100%;height:100%;object-fit:contain}
.preview-v20-canvas.is-flip-ready{width:100%;aspect-ratio:auto;border:0;background:transparent;box-shadow:none;padding:12px 0 22px;overflow:hidden}
.spm-flipbook{width:100%;max-width:780px;min-width:0!important;margin:auto;filter:drop-shadow(0 12px 10px #342f2725)}
.is-interactive .spm-flipbook{transition:transform .75s cubic-bezier(.25,.7,.25,1)}
[data-v20-reader][data-mode=landscape][data-position=front] .spm-flipbook{transform:translateX(-25%)}
[data-v20-reader][data-mode=landscape][data-position=back] .spm-flipbook{transform:translateX(25%)}
.spm-flipbook .preview-v20-page{display:block;inset:auto;background:#fffefa;border:1px solid #cfc6b5;overflow:hidden;user-select:none}
.spm-flipbook .preview-v20-page img{display:block;pointer-events:none;user-select:none;-webkit-user-drag:none;background:white}
.spm-flipbook .preview-v20-page::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#332b2117,transparent 8%,transparent 96%,#332b2108)}
.spm-flipbook .preview-v20-page.--left::after{background:linear-gradient(90deg,#332b2108,transparent 4%,transparent 92%,#332b2122)}
.spm-flip-hint{text-align:center;font-size:11px;color:var(--muted);margin:13px 0 0}
[data-v20-reader].is-reduced .spm-flipbook{pointer-events:none;transition:none}
.preview-v20-zoom-square,.desk-zoom{background:var(--sheet);border:1px solid #8d887a;min-width:44px;min-height:44px;display:grid;place-items:center;border-radius:2px}.preview-v20-zoom-square{position:absolute;right:10px;top:10px;z-index:2;box-shadow:2px 3px 0 #ded6be}.desk-zoom{margin-left:auto;flex-shrink:0}
.preview-v20-controls{margin:21px auto 0}.preview-v20-nav-group{display:flex;align-items:center;justify-content:center;gap:22px}.preview-v20-btn,.preview-lightbox-nav button{background:var(--sheet);border:1px solid #b5ad9d;padding:10px 17px;min-height:44px;font-size:12px}.preview-v20-page-count{font-size:12px;white-space:nowrap;color:var(--muted)}
.preview-v20-thumbs{display:flex;gap:9px;max-width:100%;width:max-content;overflow-x:auto;margin:20px auto 0;padding:5px}.preview-v20-thumb{padding:3px;background:var(--sheet);border:1px solid #b5ad9d;width:52px;flex:0 0 52px;aspect-ratio:210/297;opacity:.7}.preview-v20-thumb img{width:100%;height:100%;object-fit:contain}.preview-v20-thumb.is-active{border:2px solid var(--blue);opacity:1}
.preview-v20-pane iframe{width:100%;aspect-ratio:16/9;border:1px solid var(--line);border-radius:2px!important;display:block;background:#e7e1d4}.student-desk-header{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:22px}.student-desk-badge{font-size:10px;letter-spacing:.13em;color:var(--blue)}.student-desk-header p{font-size:13px;color:var(--muted);margin:8px 0 0}.student-desk-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;align-items:start}.student-desk-grid>div{min-width:0}.desk-card-title{min-height:48px;display:flex;align-items:center;gap:8px;font-size:12px;margin-bottom:12px}.desk-page-indicator{font-size:10px;color:var(--muted)}.desk-icon{display:none}.student-desk-video-col video{display:block;max-height:540px;width:100%;background:#22251f;object-fit:contain}.desk-book-viewer{border:1px solid var(--line);background:white}.desk-book-viewer img{width:100%;max-height:540px;object-fit:contain}
.preview-v20-compare{margin:35px auto 0;max-width:960px}.preview-v20-compare>h3{font:28px/1.3 var(--serif)}.preview-v20-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.preview-v20-compare-card{margin:0;border:1px solid var(--line);background:var(--paper);padding:18px}.preview-v20-compare-card-head{margin-bottom:15px}.preview-v20-compare-card-head strong{display:block;font-size:14px}.preview-v20-compare-card-head span{font-size:11px;color:var(--muted)}.preview-v20-compare-card img{width:100%;max-height:420px;object-fit:contain}.preview-v20-compare-card p{font-size:12px;color:var(--muted);margin:13px 0 0}
.preview-lightbox{position:fixed;inset:0;z-index:150;padding:25px;display:flex;align-items:center;justify-content:center;background:#22251fc9}.preview-lightbox-inner{width:min(900px,100%);max-height:94vh;background:var(--sheet);display:flex;flex-direction:column;border:1px solid var(--line);box-shadow:6px 8px 0 #0002}.preview-lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 20px;border-bottom:1px solid var(--line);font-size:13px}.preview-lightbox-bar-actions button{width:44px;height:44px;background:transparent;border:1px solid var(--line);font-size:18px}.preview-lightbox-scroll{overflow:auto;min-height:0;overscroll-behavior:contain;background:#e6e0d2;padding:15px}.preview-lightbox-scroll img{width:100%;height:auto;margin:auto}.preview-lightbox-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-top:1px solid var(--line)}.preview-lightbox-nav>span{font-size:11px;color:var(--muted)}
.memory-value-section,.polished-section{padding:15px 0 60px}.streamlined-grid-v20{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.streamlined-card-v20{border-top:1px solid #a9a292;padding-top:23px}.streamlined-card-v20 h3{font:25px/1.3 var(--serif);letter-spacing:-.025em;margin-bottom:12px}.streamlined-card-v20 p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.product-bundle-strip{padding:30px 0;background:var(--paper);border-block:1px solid var(--line)}.product-bundle-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.product-bundle-inner span,.memory-final-inner>div>span{font-size:10px;letter-spacing:.1em;color:var(--blue)}.product-bundle-inner h2{font-size:29px;letter-spacing:-.025em;margin:9px 0 12px}.product-bundle-inner p{font-size:13px;color:var(--muted);margin:0}.product-bundle-inner>.button{border:1px solid #948b76;background:var(--sheet);flex-shrink:0;font-size:13px}
.memory-final-cta,.polished-final-cta{padding:54px 0;background:#f2df91;border-bottom:1px solid #d7c273}.memory-final-inner,.polished-final-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.memory-final-inner h2,.polished-final-inner h2{font-size:36px;margin:12px 0 15px;max-width:600px}.memory-final-inner p,.polished-final-inner p{font-size:13px;margin:0}.memory-final-inner>div:last-child{display:flex;flex-direction:column;gap:13px;flex-shrink:0}.memory-final-inner strong{font:32px var(--serif);text-align:center}.polished-final-inner>.button{flex-shrink:0}.memory-final-cta .button,.polished-final-cta .button{font-size:14px;min-height:50px}
.minimal-footer-row{display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap}.minimal-footer-row>span{font-size:11px;color:var(--muted)}.minimal-footer-row nav{gap:22px;font-size:12px}.paper-product .minimal-footer{padding:30px 0 95px}
@media(max-width:1000px){.spm-book-grid{gap:35px}.spm-book-copy h1{font-size:58px}.spm-book-copy h1 span{font-size:34px}.spm-cover-display{padding:10px}.spm-cover-note{font-size:18px}.spm-book-actions .button{font-size:13px}}
@media(max-width:800px){.paper-product .container{width:calc(100% - 40px)}.paper-product .nav-wrap{min-height:74px}.paper-product .menu-button{display:flex}.paper-product #main-nav.open{display:flex}.spm-book-grid{grid-template-columns:1fr;max-width:560px;margin:auto;gap:40px}.spm-book-copy h1{font-size:60px}.spm-book-copy h1 span{font-size:36px}.spm-cover-display{max-width:360px;width:100%;margin:auto;padding:5px 25px}.spm-cover-note{margin-bottom:23px}.spm-cover{max-width:250px}.spm-book-hero{padding-bottom:40px}.preview-section-v20{padding:48px 0}.preview-v20-heading h2{font-size:36px}.streamlined-grid-v20{gap:23px}.streamlined-card-v20 h3{font-size:22px}.product-bundle-inner,.memory-final-inner,.polished-final-inner{flex-direction:column;align-items:flex-start;gap:24px}.memory-final-inner>div:last-child{flex-direction:row;align-items:center;gap:25px}.student-desk-grid{grid-template-columns:1fr 1fr;gap:17px}.desk-card-title{flex-wrap:wrap}.desk-page-indicator{display:none}.minimal-footer-row{gap:22px}}
@media(max-width:500px){.paper-product .container{width:calc(100% - 34px)}.spm-book-grid{padding-top:18px;gap:30px}.spm-book-copy h1{font-size:53px}.spm-book-copy h1 span{font-size:32px}.spm-book-lead{font-size:15px}.spm-book-includes{font-size:12px}.spm-book-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.spm-book-actions .button{padding-inline:13px;gap:10px}.spm-delivery{font-size:11px}.spm-cover{max-width:230px}.spm-cover-display figcaption{font-size:16px}.preview-v20-content{padding:18px 12px}.preview-v20-toolbar{padding:15px}.preview-v20-heading h2{font-size:33px}.preview-v20-heading p{font-size:13px}.preview-v20-tabs{gap:9px}.preview-v20-tab{padding:10px 14px;font-size:12px}.preview-v20-nav-group{gap:13px}.preview-v20-btn{font-size:11px;padding:10px 12px}.preview-v20-thumb{width:44px;flex-basis:44px}.preview-v20-thumbs{gap:7px}.student-desk-grid{grid-template-columns:1fr;gap:23px}.student-desk-video-col video{max-height:450px}.preview-v20-compare-grid{grid-template-columns:1fr;gap:20px}.streamlined-grid-v20{grid-template-columns:1fr;gap:25px}.streamlined-card-v20 h3{font-size:25px}.memory-value-section,.polished-section{padding-bottom:42px}.product-bundle-inner h2{font-size:28px}.memory-final-cta,.polished-final-cta{padding:38px 0}.memory-final-inner h2,.polished-final-inner h2{font-size:32px}.memory-final-inner>div:last-child{flex-wrap:wrap}.preview-lightbox{padding:10px}.preview-lightbox-inner{max-height:94dvh}.preview-lightbox-bar,.preview-lightbox-nav{padding:10px 12px}.preview-lightbox-nav>span{display:none}.preview-lightbox-scroll{padding:5px}.minimal-footer-row nav{gap:19px}.paper-product .mini-cart{gap:8px}.paper-product .mini-cart>.button{gap:5px;font-size:10px}.spm-book-price strong{font-size:34px}}
/* Compact purchase card stays inside the book, leaving the site usable. */
.spm-unlock-note{margin:22px auto 0;max-width:600px;padding:20px;background:#fff0b5;border:1px solid #d9c477;border-left:4px solid #b99b3d;text-align:center}.spm-unlock-note strong{font-size:14px}.spm-unlock-note p{font-size:12px;margin:8px 0 14px}.spm-unlock-note .button{font-size:13px}
.spm-unlock-dialog{position:absolute;inset:0;width:min(370px,calc(100% - 24px));height:max-content;max-height:calc(100% - 24px);margin:auto;padding:24px 26px 12px;border:1px solid #c2b38e;border-radius:3px;background:#fffdf8;color:#22251f;box-shadow:3px 5px 0 #8c805331,0 8px 28px #372d191f;overflow:auto;z-index:5;text-align:center}
.spm-unlock-dialog[open]{animation:spm-unlock-appear .25s ease-out}
.spm-unlock-book{font-size:10px;font-weight:600;color:#62645d;margin:0 15px 12px;line-height:1.5}
.spm-unlock-dialog h2{font:29px/1.12 Georgia,serif;letter-spacing:-.035em;margin:0 0 10px}
.spm-unlock-benefit{font-size:12px;line-height:1.5;margin:0 0 12px;color:#62645d}
.spm-unlock-price{margin:0 0 15px}.spm-unlock-price strong{display:block;font:700 31px/1.2 Georgia,serif;letter-spacing:-.025em}.spm-unlock-price span{display:block;font-size:10px;line-height:1.5;color:#62645d;margin-top:4px}
.spm-unlock-dialog .spm-unlock-buy{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:50px;padding:12px 20px;background:#f4cf4f;border:1px solid #7c6827;color:#22251f;font:700 16px/1.4 Arial,sans-serif;box-shadow:2px 3px 0 #b69c48;text-decoration:none}
.spm-unlock-dialog .spm-unlock-buy:hover{background:#f9dc70;box-shadow:1px 2px 0 #b69c48}.spm-unlock-dialog .spm-unlock-buy:active{transform:translateY(1px)}
.spm-unlock-close{position:absolute;right:4px;top:4px;width:36px;height:36px;border:0;background:transparent;font-size:22px;cursor:pointer}
.spm-unlock-back{display:block;margin:9px auto 0;padding:8px;min-height:34px;background:none;border:0;text-decoration:underline;text-underline-offset:3px;font-size:11px;color:#62645d;cursor:pointer}
.spm-unlock-dialog :focus-visible{outline:3px solid #234f9d;outline-offset:3px}
.spm-preview-locked .preview-v20-canvas::after{content:"";position:absolute;inset:0;z-index:3;background:#fffdf84d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:none}
.spm-preview-locked .spm-flipbook,.spm-preview-locked .preview-v20-canvas>.preview-v20-page{filter:blur(3px);pointer-events:none}
@keyframes spm-unlock-appear{from{opacity:0}to{opacity:1}}
@media(max-width:500px){.spm-unlock-dialog{padding:21px 18px 9px}.spm-unlock-dialog h2{font-size:25px}.spm-unlock-book{font-size:9px;margin-bottom:10px}.spm-unlock-benefit{font-size:11px;margin-bottom:10px}.spm-unlock-price strong{font-size:29px}.spm-unlock-price{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.spm-unlock-dialog[open]{animation:none}}
