.book-page{color:var(--ds-ink,#121c2c);font:400 1rem/1.6 var(--ds-body,Inter,Arial,sans-serif);background:#fff}
.book-page p,.book-page h1,.book-page h2,.book-page h3,.book-page figure,.book-page dl{margin:0}
.book-page a>svg,.book-page button>svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.2;flex:none}
.book-page .bk-opening{padding-top:3rem;padding-bottom:4.5rem;position:relative;isolation:isolate;overflow:clip}
.book-page .bk-topline{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding-bottom:2.2rem}
.book-page .bk-opening-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:4rem;align-items:start}
.book-page .bk-opening-copy{position:relative;z-index:3;max-width:29rem;padding-top:.5rem}
.book-page .bk-opening-copy h1{font:400 2.625rem/1.08 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.04em}
.book-page .bk-title-name{display:block;font-size:1.5rem;letter-spacing:-.025em;margin-bottom:.75rem}
.book-page .bk-opening-copy h1>strong{display:block;font-weight:600}
.book-page .bk-subtitle{max-width:27rem;margin-top:1.7rem;font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769)}
.book-page .bk-purchase-line{display:flex;align-items:baseline;gap:2.5rem;max-width:25rem;border-block:1px solid var(--ds-rule,#d3dbe7);padding:.9rem 0;margin-top:1.7rem;font-size:.8125rem}
.book-page .bk-purchase-line>span:last-child{margin-left:auto;font:400 1.375rem/1.3 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.02em;color:var(--ds-blue,#2255f5)}
.book-page .bk-description{max-width:25rem;font-size:1rem;line-height:1.65;margin-top:1.55rem}
.book-page .bk-actions{display:flex;align-items:center;gap:1.8rem;flex-wrap:wrap;margin-top:1.75rem}
.book-page .bk-news-link{display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;min-height:48px;padding:.75rem 1rem;background:var(--ds-blue,#2255f5);color:#fff;font-size:.8125rem}
.book-page .bk-news-link:hover{background:#1944d3;color:#fff}
.book-page .bk-book-scene{position:relative;min-height:36.25rem;isolation:isolate}
.book-page .bk-opening-current{position:absolute;z-index:-1;left:-4rem;bottom:-2.5rem;width:calc(100% + 8rem);max-width:none;height:auto;pointer-events:none}
.book-page .bk-physical-book{position:relative;width:min(21.25rem,76%);margin:1.15rem 0 0 .75rem;transform:rotate(-1deg);isolation:isolate;filter:drop-shadow(8px 15px 18px #162c4312)}
.book-page .bk-physical-book:before{content:'';position:absolute;inset:5px -6px -6px 5px;background:repeating-linear-gradient(90deg,#e6e8eb 0 1px,#fff 1px 2px);border:1px solid #d4dbe4;z-index:-1}
.book-page .bk-physical-book>img{width:100%;height:auto;border:1px solid #e5e8ee;box-shadow:1px 0 0 #cdd4df}
.book-page .bk-physical-book>figcaption{margin-top:1.1rem;font-size:.6875rem;letter-spacing:.17em;line-height:1.5;text-align:right;color:var(--ds-muted,#4a5769)}
.book-page .bk-inside{padding:4rem 0 4.5rem;border-top:1px solid var(--ds-rule,#d3dbe7)}
.book-page .bk-reader{margin:0;padding:0;border:0;min-width:0}
.book-page .bk-scene-door{position:absolute;right:.5rem;bottom:-.2rem;display:flex;align-items:center;gap:2rem;min-height:44px;font-size:.8125rem;color:var(--ds-blue,#2255f5);z-index:3}
.book-page .bk-scene-door>span{font-size:1.5rem;font-weight:300}
.book-page .bk-reader{display:grid;grid-template-columns:9.25rem minmax(0,1fr);column-gap:3.5rem;align-items:start}
.book-page .bk-reader-top{position:sticky;top:2rem;display:block;padding:0;align-self:start}
.book-page .bk-reader-top h2{font:400 1.75rem/1.15 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.035em;margin-top:.9rem}
.book-page .bk-page-choices{display:flex;flex-direction:column;gap:0;margin-top:2.25rem;border-top:1px solid var(--ds-rule,#d3dbe7)}
.book-page .bk-page-choice{display:block;position:relative;cursor:pointer;min-width:0;color:var(--ds-muted,#4a5769)}
.book-page .bk-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);padding:0;margin:0;border:0;white-space:nowrap}
.book-page .bk-page-choice>span{display:grid;grid-template-columns:2.25rem minmax(0,1fr);column-gap:.8rem;align-items:center;padding:1rem 0;min-height:86px;border-bottom:1px solid var(--ds-rule,#d3dbe7);font-size:.8125rem;line-height:1.4}
.book-page .bk-leaf-number{font:400 1.125rem/1.2 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:#68758a}
.book-page .bk-leaf-title{font-size:.8125rem;font-weight:500;line-height:1.4}
.book-page .bk-leaf-title small{display:block;margin-top:.35rem;font-size:.6875rem;font-weight:400;line-height:1.4;color:#68758a}
.book-page .bk-page-choice:before{content:'';position:absolute;left:-.8rem;top:1.3rem;bottom:1.3rem;width:2px;background:var(--ds-blue,#2255f5);transform:scaleY(0);transform-origin:center;transition:transform .2s}
.book-page .bk-page-choice:has(input:checked),.book-page .bk-page-choice:has(input:checked) .bk-leaf-number{color:var(--ds-blue,#2255f5)}
.book-page .bk-page-choice:has(input:checked):before{transform:scaleY(1)}
.book-page .bk-page-choice:has(input:focus-visible)>span{outline:2px solid var(--ds-blue,#2255f5);outline-offset:4px}
.book-page .bk-page-choice:hover{color:var(--ds-blue,#2255f5)}
.book-page .bk-page-panels{min-width:0}
.book-page .bk-page-panel{display:none;grid-template-columns:minmax(0,1.3fr) minmax(0,.65fr);gap:2.25rem;align-items:start;min-width:0}
.book-page .bk-reader:has(#bk-page-16:checked) #bk-panel-16,.book-page .bk-reader:has(#bk-page-training:checked) #bk-panel-training,.book-page .bk-reader:has(#bk-page-517:checked) #bk-panel-517{display:grid;animation:bk-page-arrive .4s cubic-bezier(.2,.6,.2,1) both}
.book-page .bk-page-caption{grid-column:2;grid-row:1;padding-top:1.75rem;min-width:0}
.book-page .bk-folio{display:block;font-size:.75rem;line-height:1.3;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--ds-blue,#2255f5);margin-bottom:1.1rem}
.book-page .bk-folio:before{content:'p. ';font-size:.6875rem}
.book-page .bk-page-caption h3{font:400 1.375rem/1.2 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.025em}
.book-page .bk-source-excerpt{font:400 1.25rem/1.5 var(--ds-reading,Newsreader,Georgia,serif);margin-top:1.25rem}
.book-page .bk-page-notes{margin:1.4rem 0 1rem;padding:0;border:0}
.book-page .bk-page-notes>div{position:relative;padding-left:1.3rem}
.book-page .bk-page-notes>div+div{margin-top:1.5rem}
.book-page .bk-page-notes dt{font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ds-blue,#2255f5);margin-bottom:.45rem}
.book-page .bk-page-notes dt:before{content:'';position:absolute;left:0;top:.5rem;width:.75rem;border-top:2px solid var(--ds-blue,#2255f5)}
.book-page .bk-page-notes>div+div dt:before{top:.28rem;height:.6rem;border:0;background:#2255f522}
.book-page .bk-page-notes dd{margin:0;font-size:.8125rem;line-height:1.65;color:var(--ds-muted,#4a5769)}
.book-page .bk-page-art{grid-column:1;grid-row:1;display:block;width:100%;max-width:none;min-width:0;margin:0;position:relative;background:#fff;box-shadow:0 0 0 1px #e0e5ec,3px 4px 0 #fff,4px 5px 0 #e5e9ef,10px 16px 24px -15px #142b4b26;transform:none;transition:box-shadow .25s}
.book-page .bk-page-art>img{display:block;width:100%;height:auto}
.book-page .bk-page-art:hover{box-shadow:0 0 0 1px #c8d2e4,3px 4px 0 #fff,4px 5px 0 #e5e9ef,10px 16px 24px -15px #142b4b40}
.book-page .bk-trace-control{display:flex;align-items:center;gap:1rem;position:relative;min-height:44px;width:fit-content;margin:1rem 0 1.3rem;font:500 .75rem/1.5 var(--ds-body,Inter,Arial,sans-serif);color:var(--ds-blue,#2255f5);cursor:pointer}
.book-page .bk-trace-control>svg{width:1.125rem;height:1.125rem;fill:none;stroke:currentColor;stroke-width:1.1}
.book-page .bk-trace-close{display:none}
.book-page .bk-trace-control:has(:focus-visible){outline:2px solid var(--ds-blue,#2255f5);outline-offset:5px}
.book-page .bk-reader:has(#bk-trace-marks:checked) .bk-trace-open{display:none}
.book-page .bk-reader:has(#bk-trace-marks:checked) .bk-trace-close{display:inline}
.book-page .bk-page-caption>.ds-link{display:flex;justify-content:space-between;font-size:.75rem;gap:1rem;width:100%;min-height:44px;color:var(--ds-blue,#2255f5)}
.book-page .bk-reading-line{margin:1.5rem 0 1rem;padding-left:1rem;border-left:2px solid var(--ds-blue,#2255f5)}
.book-page .bk-reading-line>p{font:400 1.25rem/1.5 var(--ds-reading,Newsreader,Georgia,serif);margin-top:.65rem}
.book-page .bk-page-body{font-size:1rem;line-height:1.6;color:var(--ds-muted,#4a5769);margin:1.25rem 0}
.book-page .bk-panel-chart{min-height:32rem}
.book-page .bk-landscape{align-self:center}
/* The contents form one illustrated spread, with a responsive source plate and a quiet page gutter. */
.book-page .bk-contents{padding:4rem 0 4.5rem;border-top:1px solid var(--ds-rule,#d3dbe7)}
.book-page .bk-contents-heading{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:4.5rem;align-items:end;margin-bottom:3rem}
.book-page .bk-contents-heading h2{font:400 2rem/1.15 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.035em;margin-top:1rem}
.book-page .bk-contents-heading h2 strong{font-weight:600}
.book-page .bk-contents-intro{font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769);max-width:31rem}
.book-page .bk-contents-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;isolation:isolate}
.book-page .bk-contents-margin{position:sticky;top:2rem;align-self:start;min-width:0;padding:1.5rem 3rem 1rem 0}
.book-page .bk-atlas-reference{line-height:1.6;margin-bottom:1.25rem}
.book-page .bk-atlas-reference br{display:none}
.book-page .bk-atlas-plates{min-width:0}
.book-page .bk-atlas-plate{display:none;transform-origin:92% 40%}
.book-page .bk-set-plate{display:none}
.book-page .bk-contents-layout:not(:has(.bk-contents-set[open])) .bk-plate-teaching,
.book-page .bk-contents-layout:has(#bk-set-method[open]) .bk-plate-method,
.book-page .bk-contents-layout:not(:has(#bk-set-method[open])):has(#bk-set-teaching[open]) .bk-plate-teaching,
.book-page .bk-contents-layout:not(:has(#bk-set-method[open],#bk-set-teaching[open])):has(#bk-set-drill[open]) .bk-plate-drill,
.book-page .bk-contents-layout:not(:has(#bk-set-method[open],#bk-set-teaching[open],#bk-set-drill[open])):has(#bk-set-exam[open]) .bk-plate-exam{display:block;animation:bk-plate-arrive .65s cubic-bezier(.2,.6,.2,1) both}
.book-page .bk-plate-stage{display:flex;align-items:center;justify-content:center;width:calc(100% + 2rem);margin-left:-1rem;aspect-ratio:1.5}
.book-page .bk-plate-stage img{display:block;width:100%;height:100%;object-fit:contain;max-width:none}
.book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption{margin:1.6rem 0 0;padding-left:1.15rem;border-left:1px solid #a9bcf0;max-width:26rem}
.book-page .bk-plate-source{display:flex;justify-content:space-between;gap:1rem;margin-bottom:.7rem;font:400 .6875rem/1.5 var(--ds-body,Inter,Arial,sans-serif);color:var(--ds-muted,#4a5769)}
.book-page .bk-plate-source>span:last-child{color:var(--ds-blue,#2255f5);font-variant-numeric:tabular-nums}
.book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption p{font:400 1.25rem/1.45 var(--ds-reading,Newsreader,Georgia,serif)}
.book-page .bk-atlas-links{display:flex;gap:2rem;flex-wrap:wrap;margin-top:1.5rem;padding-left:1.15rem}
.book-page .bk-atlas-links .ds-link{gap:1.25rem;font-size:.75rem}
.book-page .bk-index{position:relative;min-width:0;padding:1.4rem 2.25rem .75rem 2.75rem;background:linear-gradient(90deg,#f1f3f6 0,#fafbfd 11px,#fff 35px);border-top:1px solid #dce3ed;border-right:1px solid #e8edf3;border-bottom:1px solid #dce3ed;box-shadow:-16px 7px 30px -26px #17274117,8px 20px 32px -28px #17274117;isolation:isolate}
.book-page .bk-index:before,.book-page .bk-index:after{content:'';position:absolute;pointer-events:none;z-index:-1;border:1px solid #dce3ed;border-left:0;border-top:0;background:transparent}
.book-page .bk-index:before{inset:6px -4px -4px 7px}
.book-page .bk-index:after{inset:12px -7px -7px 11px;z-index:-2}
.book-page .bk-index-head,.book-page .bk-index-end{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;font-size:.6875rem;line-height:1.5;letter-spacing:.07em;color:#68758a}
.book-page .bk-index-head{padding:.1rem 0 .85rem;border-bottom:1px solid var(--ds-ink,#121c2c);text-transform:uppercase}
.book-page .bk-index-end{padding:1.25rem 0 .5rem;letter-spacing:0}
.book-page .bk-index-end>span:first-child{letter-spacing:.07em}
.book-page .bk-contents-set{position:relative;border-bottom:1px solid var(--ds-rule,#d3dbe7)}
.book-page .bk-contents-set>summary{display:grid;grid-template-columns:3rem minmax(0,1fr) auto 18px;align-items:center;gap:1rem;list-style:none;min-height:86px;padding:1.25rem 0;cursor:pointer}
.book-page .bk-contents-set>summary::-webkit-details-marker{display:none}
.book-page .bk-part{position:relative;font:400 1.125rem/1.2 var(--ds-display,'Inter Display',Inter,sans-serif);color:#68758a;font-variant-numeric:tabular-nums;transition:color .2s}
.book-page .bk-part:after{content:'';display:block;position:absolute;left:0;bottom:-.6rem;width:1.5rem;height:1px;background:var(--ds-blue,#2255f5);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.book-page .bk-part small{display:block;font:400 .6875rem/1.2 var(--ds-body,Inter,Arial,sans-serif);margin-bottom:.22rem;color:#68758a}
.book-page .bk-contents-set>summary h3{font:400 1.25rem/1.3 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.025em;transition:color .2s}
.book-page .bk-count{font-size:.6875rem;line-height:1.4;color:var(--ds-muted,#4a5769);font-variant-numeric:tabular-nums;white-space:nowrap}
.book-page .bk-plus{position:relative;display:block;width:18px;height:18px;color:var(--ds-blue,#2255f5)}
.book-page .bk-plus:before,.book-page .bk-plus:after{content:'';position:absolute;left:3px;right:3px;height:1px;top:8px;background:currentColor}
.book-page .bk-plus:after{transform:rotate(90deg);transition:transform .25s}
.book-page .bk-contents-set>summary:hover h3,.book-page .bk-contents-set[open]>summary,.book-page .bk-contents-set[open]>summary .bk-part{color:var(--ds-blue,#2255f5)}
.book-page .bk-contents-set[open]>summary .bk-part:after{transform:scaleX(1)}
.book-page .bk-contents-set[open]>summary .bk-plus:after{transform:none}
.book-page .bk-entry-list{position:relative;list-style:none;margin:0;padding:0 0 1.5rem 4rem}
.book-page .bk-entry-list:before{content:'';position:absolute;left:0;top:.2rem;bottom:1.8rem;width:1px;background:linear-gradient(#9bb3f4,#d8e1f6)}
.book-page .bk-contents-set[open]>.bk-entry-list{animation:bk-leaf-arrive .45s cubic-bezier(.2,.6,.2,1) both}
.book-page .bk-entry-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.1rem;padding:.75rem 0;font:400 1rem/1.5 var(--ds-body,Inter,Arial,sans-serif);border-bottom:1px solid #edf0f4}
.book-page .bk-entry-list li:last-child{border-bottom:0}
.book-page .bk-entry-list li>span:not(:last-child){min-width:0;overflow-wrap:anywhere}
.book-page .bk-entry-folio{font:400 .75rem/1.5 var(--ds-body,Inter,Arial,sans-serif);color:#68758a;padding-top:.2rem;font-variant-numeric:tabular-nums}
.book-page .bk-method-contents li{grid-template-columns:1.7rem minmax(0,1fr) auto;gap:.75rem}
.book-page .bk-chapter-id{font-size:.6875rem;line-height:1.5;color:#68758a;padding-top:.2rem}
/* A colophon rhythm carries the author into the final illustrated endpaper. */
.book-page .bk-author{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);padding:3.5rem 0 3.75rem;border-top:1px solid var(--ds-rule,#d3dbe7);align-items:start}
.book-page .bk-author-heading{padding-right:3rem}
.book-page .bk-author h2{font:400 1.875rem/1.2 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.03em;margin-top:1rem}
.book-page .bk-author-note{position:relative;padding:.15rem 2.25rem 0 2.75rem;max-width:42rem}
.book-page .bk-author-note p{font-size:1rem;line-height:1.7;color:var(--ds-muted,#4a5769);max-width:32rem}
.book-page .bk-author-marker{position:absolute;left:0;top:.6rem;width:1.1rem;border-top:1px solid var(--ds-blue,#2255f5)}
.book-page .bk-author-since{color:var(--ds-ink,#121c2c);box-shadow:inset 0 -1px #d2ddfb;padding-bottom:.1rem;white-space:nowrap}
.book-page .bk-news{padding:2.25rem 0 4rem;border-top:1px solid var(--ds-rule,#d3dbe7)}
.book-page .bk-endpaper{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:0;align-items:center;isolation:isolate}
.book-page .bk-closing{max-width:25rem;padding:1.25rem 1.5rem 2rem 0}
.book-page .bk-closing h2{font:400 2rem/1.18 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.035em;margin-top:1.2rem;max-width:22rem}
.book-page .bk-closing>p:nth-of-type(2){font:400 1.25rem/1.5 var(--ds-reading,Newsreader,Georgia,serif);margin-top:1.2rem;max-width:23rem}
.book-page .bk-endpaper-control{display:flex;align-items:center;gap:1.5rem;width:max-content;max-width:100%;position:relative;min-height:48px;cursor:pointer;color:var(--ds-blue,#2255f5);font:500 .75rem/1.5 var(--ds-body,Inter,Arial,sans-serif);margin-top:1.1rem}
.book-page .bk-current-arrow{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid #cbd7fa;border-radius:50%;flex:none;transition:transform .35s,background .25s}
.book-page .bk-current-arrow svg{width:1.3rem;height:1.3rem;fill:none;stroke:currentColor;stroke-width:1.1}
.book-page .bk-current-reset{display:none}
.book-page .bk-endpaper-control:hover .bk-current-arrow{background:#f1f5ff;transform:translateX(3px)}
.book-page .bk-endpaper-control:has(:focus-visible){outline:2px solid var(--ds-blue,#2255f5);outline-offset:5px}
.book-page .bk-endpaper-art{min-width:0;position:relative}
.book-page .bk-endpaper-art>svg{display:block;width:calc(100% + 2.5rem);max-width:none;height:auto;margin-left:-1rem;overflow:visible}
.book-page .bk-endpaper-art figcaption{display:flex;justify-content:space-between;gap:1rem;margin:0 0 1.5rem 2.75rem;font:400 .6875rem/1.5 var(--ds-body,Inter,Arial,sans-serif);color:#68758a}
.book-page .bk-endpaper-art figcaption>span:last-child{color:var(--ds-blue,#2255f5)}
.book-page .bk-endpaper:has(#bk-closing-trace:checked) .bk-current-follow{display:none}
.book-page .bk-endpaper:has(#bk-closing-trace:checked) .bk-current-reset{display:inline}
.book-page .bk-endpaper:has(#bk-closing-trace:checked) .bk-current-arrow{transform:rotate(180deg)}
.book-page .bk-news-row{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:0;margin-top:1.75rem;padding-top:2.25rem;border-top:1px solid var(--ds-rule,#d3dbe7);align-items:start}
.book-page .bk-news-heading{display:flex;align-items:center;gap:2rem;padding:1.05rem 3rem 0 0}
.book-page .bk-news-heading h2{font:400 1.75rem/1.2 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.03em;white-space:nowrap}
.book-page .bk-news-line{height:1px;flex:1;background:linear-gradient(90deg,#c7d1e2,#eef1f7)}
.book-page .bk-news-copy{padding-left:2.75rem;max-width:41rem;min-width:0}
.book-page a:focus-visible,.book-page summary:focus-visible,.book-page input:focus-visible{outline:2px solid var(--ds-blue,#2255f5);outline-offset:5px}
@keyframes bk-page-arrive{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){
 .book-page .bk-opening-grid{gap:2.5rem;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .book-page .bk-opening-copy h1{font-size:2.375rem}
 .book-page .bk-physical-book{width:80%;margin:2rem 0 0 .3rem}
 .book-page .bk-opening-current{width:calc(100% + 7rem);left:-3.5rem;bottom:-1.5rem}
 .book-page .bk-scene-door{right:0;bottom:-.2rem}
 .book-page .bk-reader{grid-template-columns:7.5rem minmax(0,1fr);gap:2rem}
 .book-page .bk-reader-top h2{font-size:1.625rem}
 .book-page .bk-page-choice>span{grid-template-columns:2rem minmax(0,1fr);gap:.6rem}
 .book-page .bk-page-panel{grid-template-columns:minmax(0,1fr);gap:1.8rem}
 .book-page .bk-page-art{grid-column:1;grid-row:1;max-width:34rem;margin-inline:auto}
 .book-page .bk-page-caption{grid-column:1;grid-row:2;max-width:34rem;width:100%;padding-top:0;margin-inline:auto}
 .book-page .bk-page-notes{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}
 .book-page .bk-page-notes>div+div{margin-top:0}
 .book-page .bk-panel-chart{min-height:0}
}
@media(max-width:760px){
 .book-page .bk-opening{padding-top:2rem;padding-bottom:2.8rem}
 .book-page .bk-topline{padding-bottom:1.7rem;gap:1rem}
 .book-page .bk-topline .ds-ref{font-size:.6875rem}
 .book-page .bk-opening-grid{display:flex;flex-direction:column;gap:0}
 .book-page .bk-opening-copy{display:contents}
 .book-page .bk-opening-copy h1{order:0;font-size:2rem;line-height:1.12;letter-spacing:-.035em}
 .book-page .bk-title-name{font-size:1.25rem;margin-bottom:.6rem}
 .book-page .bk-subtitle{order:2;font-size:1rem;line-height:1.6;margin-top:.75rem;max-width:none}
 .book-page .bk-purchase-line{order:3;margin-top:1.25rem;padding:.8rem 0;max-width:none;width:100%}
 .book-page .bk-purchase-line>span:last-child{font-size:1.25rem}
 .book-page .bk-description{order:4;font-size:1rem;line-height:1.6;margin-top:1.25rem;max-width:none}
 .book-page .bk-actions{order:5;gap:1.5rem;margin-top:1.3rem}
 .book-page .bk-news-link{gap:1.7rem}
 .book-page .bk-book-scene{order:1;width:calc(100% + 48px);min-height:21.5rem;margin:1.25rem -24px .5rem;overflow:clip}
 .book-page .bk-physical-book{width:13.25rem;max-width:76%;margin:.5rem 1.75rem 0 auto;transform:rotate(2deg)}
 .book-page .bk-physical-book>figcaption{font-size:.6875rem;margin-top:.75rem}
 .book-page .bk-opening-current{left:-14.5rem;bottom:-1.2rem;width:46rem}
 .book-page .bk-scene-door{display:none}
 .book-page .bk-inside{padding:2.5rem 0 2.8rem}
 .book-page .bk-reader{display:block}
 .book-page .bk-reader-top{position:static;display:block;padding:0}
 .book-page .bk-reader-top h2{font-size:1.75rem;margin-top:.8rem}
 .book-page .bk-page-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem;margin-top:1.25rem;border-top:0;border-bottom:1px solid var(--ds-rule,#d3dbe7)}
 .book-page .bk-page-choice>span{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-height:76px;padding:.6rem 0 .8rem;border-bottom:2px solid transparent;margin-bottom:-1px}
 .book-page .bk-leaf-number{font-size:1.125rem}
 .book-page .bk-leaf-title{font-size:.75rem;font-weight:400}
 .book-page .bk-leaf-title small{display:none}
 .book-page .bk-page-choice:before{display:none}
 .book-page .bk-page-choice:has(input:checked)>span{border-bottom-color:var(--ds-blue,#2255f5)}
 .book-page .bk-page-panel{grid-template-columns:1fr;gap:0;padding-top:1.5rem;min-height:0}
 .book-page .bk-page-caption{display:contents}
 .book-page .bk-folio{display:none}
 .book-page .bk-page-caption h3{grid-column:1;grid-row:1;font-size:1.375rem;line-height:1.2;margin:0 0 1.2rem}
 .book-page .bk-page-art{grid-column:1;grid-row:2;max-width:28rem;width:calc(100% - .75rem);margin:0 auto;transform:none}
 .book-page .bk-trace-control{grid-column:1;grid-row:3;margin:.75rem 0 0;min-height:44px}
 .book-page .bk-source-excerpt{grid-column:1;grid-row:4;font-size:1.25rem;line-height:1.5;margin-top:1.3rem}
 .book-page .bk-page-notes{grid-column:1;grid-row:5;display:block;margin:1.5rem 0 .85rem;padding:0;border:0}
 .book-page .bk-page-notes>div+div{margin-top:1.35rem}
 .book-page .bk-page-notes dd{font-size:.875rem}
 .book-page .bk-page-caption>.ds-link{grid-column:1;grid-row:6;font-size:.75rem;min-height:44px;margin:0}
 .book-page .bk-page-caption>.ds-link+.ds-link{grid-row:7}
 .book-page .bk-reading-line{grid-column:1;grid-row:5;margin:1.5rem 0 .8rem}
 .book-page .bk-reading-line>p{font-size:1.25rem}
 .book-page .bk-page-body{grid-column:1;grid-row:5;font-size:1rem;margin:1.3rem 0 .8rem}
 .book-page .bk-landscape{max-width:none;width:100%;transform:none;margin-bottom:.2rem}

}
@media(max-width:350px){
 .book-page .bk-opening-copy h1{font-size:1.875rem}
 .book-page .bk-actions{gap:1.15rem}
 .book-page .bk-news-link{padding-inline:.8rem;gap:1.2rem}
 .book-page .bk-book-scene{width:calc(100% + 36px);min-height:20.5rem;margin-inline:-18px}
 .book-page .bk-physical-book{width:12rem;margin-right:1.5rem}
 .book-page .bk-opening-current{left:-15rem;bottom:-.5rem;width:43rem}
}
@keyframes bk-plate-arrive{from{opacity:.35;transform:perspective(1000px) translateX(-9px) rotateY(3deg)}to{opacity:1;transform:none}}
@keyframes bk-leaf-arrive{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:1100px){
 .book-page .bk-contents-heading{gap:3rem}
 .book-page .bk-contents-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
 .book-page .bk-contents-margin{padding-right:2rem}
 .book-page .bk-index{padding-inline:1.75rem}
 .book-page .bk-contents-set>summary{grid-template-columns:2.4rem minmax(0,1fr) 18px;gap:.3rem .75rem;padding-block:1.1rem}
 .book-page .bk-contents-set>summary h3{grid-column:2;grid-row:1;font-size:1.1875rem}
 .book-page .bk-part{grid-column:1;grid-row:1/3;align-self:center}
 .book-page .bk-count{grid-column:2;grid-row:2}
 .book-page .bk-plus{grid-column:3;grid-row:1/3}
 .book-page .bk-entry-list{padding-left:1.75rem}
 .book-page .bk-entry-list li{gap:.8rem;font-size:.9375rem}
 .book-page .bk-method-contents li{grid-template-columns:1.3rem minmax(0,1fr) auto;gap:.6rem}
 .book-page .bk-author-note,.book-page .bk-news-copy{padding-left:1.75rem}
 .book-page .bk-author-note{padding-right:0}
 .book-page .bk-author-heading{padding-right:2rem}
 .book-page .bk-closing{padding-right:1rem}
 .book-page .bk-closing h2{font-size:1.875rem}
 .book-page .bk-endpaper-art figcaption{margin-left:1.75rem}
 .book-page .bk-news-heading{padding-right:1.75rem;gap:1.5rem}
}
@media(max-width:900px) and (min-width:761px){
 .book-page .bk-contents-heading{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2rem}
 .book-page .bk-contents-heading h2{font-size:1.875rem}
 .book-page .bk-contents-layout{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}
 .book-page .bk-contents-margin{padding-right:1.5rem}
 .book-page .bk-atlas-reference{font-size:.6875rem}
 .book-page .bk-plate-stage{width:calc(100% + 2.5rem);margin-left:-1rem}
 .book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption{padding-left:.85rem}
 .book-page .bk-atlas-links{display:block;padding-left:.85rem;margin-top:1rem}
 .book-page .bk-atlas-links .ds-link{display:flex;max-width:9rem;justify-content:space-between}
 .book-page .bk-index{padding-inline:1.25rem}
 .book-page .bk-entry-list{padding-left:1rem}
 .book-page .bk-author h2{font-size:1.75rem}
 .book-page .bk-endpaper{grid-template-columns:1fr 1fr}
 .book-page .bk-endpaper-art>svg{width:calc(100% + 3rem);margin-left:-1rem}
 .book-page .bk-news-heading h2{font-size:1.625rem}
}
@media(max-width:760px){
 .book-page .bk-contents{padding:2.5rem 0 2.8rem}
 .book-page .bk-contents-heading{display:block;margin-bottom:1.7rem}
 .book-page .bk-contents-heading h2{font-size:1.75rem;margin-top:.8rem}
 .book-page .bk-contents-intro{margin-top:1.25rem;font-size:1rem;line-height:1.6;max-width:none}
 .book-page .bk-contents-layout{display:block}
 .book-page .bk-contents-margin{position:static;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1.25rem;padding:0 0 1.35rem}
 .book-page .bk-atlas-plates{display:none}
 .book-page .bk-set-plate{display:block;margin:.1rem 0 1.5rem}
 .book-page .bk-contents-set[open]>.bk-set-plate{animation:bk-leaf-arrive .45s cubic-bezier(.2,.6,.2,1) both}
 .book-page .bk-set-plate .bk-plate-stage{width:calc(100% + 16px);margin-left:-8px;aspect-ratio:1.9}
 .book-page .bk-atlas-reference{font-size:.6875rem;margin:0;width:100%}
 .book-page .bk-plate-stage{width:calc(100% + 24px);margin-left:-12px;aspect-ratio:1.8}
 .book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption{margin-top:.8rem;padding-left:1rem;max-width:none}
 .book-page .bk-plate-source{margin-bottom:.5rem;font-size:.6875rem}
 .book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption p{font-size:1.25rem;line-height:1.45}
 .book-page .bk-atlas-links{padding:0;margin:0;gap:1.75rem}
 .book-page .bk-atlas-links .ds-link{min-height:44px;font-size:.75rem;gap:1rem}
 .book-page .bk-index{margin:0;padding:1rem 16px .5rem 18px;background:linear-gradient(90deg,#f3f5f8,#fff 15px);box-shadow:-10px 7px 18px -23px #17274117,8px 15px 24px -25px #17274117}
 .book-page .bk-index:before{inset:5px -3px -3px 6px}
 .book-page .bk-index:after{inset:10px -5px -5px 9px}
 .book-page .bk-index-head{font-size:.6875rem;padding-bottom:.7rem;gap:.75rem}
 .book-page .bk-index-end{font-size:.6875rem;padding-top:1rem;gap:1rem;flex-wrap:wrap}
 .book-page .bk-contents-set>summary{grid-template-columns:clamp(32px,2.25rem,48px) minmax(0,1fr) 16px;gap:.2rem clamp(10px,.75rem,16px);min-height:80px;padding:1.05rem 0}
 .book-page .bk-contents-set>summary h3{grid-column:2;grid-row:1;font-size:1.125rem;overflow-wrap:anywhere}
 .book-page .bk-part{font-size:1rem}
 .book-page .bk-part small{font-size:.6875rem}
 .book-page .bk-count{font-size:.6875rem;white-space:normal}
 .book-page .bk-entry-list{padding:0 0 1.25rem clamp(14px,1rem,20px)}
 .book-page .bk-entry-list:before{bottom:1.5rem}
 .book-page .bk-entry-list li{font-size:.9375rem;line-height:1.5;gap:clamp(10px,.65rem,16px);padding:.7rem 0}
 .book-page .bk-entry-folio{font-size:.6875rem}
 .book-page .bk-method-contents li{grid-template-columns:clamp(20px,1.25rem,28px) minmax(0,1fr) auto;gap:clamp(8px,.5rem,12px)}
 .book-page .bk-chapter-id{font-size:.6875rem}
 .book-page .bk-author{display:block;padding:2.5rem 0}
 .book-page .bk-author-heading{padding:0}
 .book-page .bk-author h2{font-size:1.75rem;margin-top:.8rem}
 .book-page .bk-author-note{padding:0 0 0 1.3rem;margin-top:1.2rem;max-width:none}
 .book-page .bk-author-note p{font-size:1rem;line-height:1.65;max-width:none}
 .book-page .bk-author-marker{width:.65rem;top:.6rem}
 .book-page .bk-news{padding:2.5rem 0 2.8rem}
 .book-page .bk-endpaper{display:block}
 .book-page .bk-closing{max-width:none;padding:0}
 .book-page .bk-closing h2{font-size:1.75rem;line-height:1.2;margin-top:1rem;max-width:none}
 .book-page .bk-closing>p:nth-of-type(2){font-size:1.25rem;line-height:1.5;margin-top:1rem;max-width:none}
 .book-page .bk-endpaper-control{width:100%;justify-content:space-between;margin-top:.9rem;font-size:.75rem;gap:1rem}
 .book-page .bk-current-arrow{width:2.125rem;height:2.125rem}
 .book-page .bk-endpaper-art{margin-top:.3rem}
 .book-page .bk-endpaper-art>svg{width:calc(100% + 36px);margin-left:-18px}
 .book-page .bk-endpaper-art figcaption{margin:.2rem 0 0;font-size:.6875rem}
 .book-page .bk-news-row{display:block;margin-top:1.8rem;padding-top:1.7rem}
 .book-page .bk-news-heading{padding:0;gap:1.75rem}
 .book-page .bk-news-heading h2{font-size:1.625rem;white-space:normal}
 .book-page .bk-news-line{max-width:7rem}
 .book-page .bk-news-copy{padding:0;margin-top:1.5rem;max-width:none}
}
@media(max-width:350px){
 .book-page .bk-index{padding-inline:12px}
 .book-page .bk-contents-set>summary{gap:.2rem 8px;grid-template-columns:clamp(28px,2rem,42px) minmax(0,1fr) 16px}
 .book-page .bk-entry-list{padding-left:12px}
 .book-page .bk-entry-list li{gap:8px}
 .book-page .bk-method-contents li{grid-template-columns:20px minmax(0,1fr) auto;gap:7px}
 .book-page .bk-endpaper-art>svg{width:calc(100% + 26px);margin-left:-13px}
}
@media(prefers-reduced-motion:reduce){
 .book-page *,.book-page *:before,.book-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* The worked study uses one geometry in print and two-color views. */
.book-page .bk-study-source{display:block;margin:0 0 1rem;font:500 .6875rem/1.5 var(--ds-body,Inter,Arial,sans-serif);letter-spacing:.04em;color:var(--ds-blue,#2255f5)}
.book-page .bk-color-overlay{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;transition:opacity .45s ease}
.book-page .bk-reader:has(#bk-trace-marks:checked) .bk-color-overlay{opacity:1}
.book-page .bk-page-notes dd{font-size:.9375rem;line-height:1.6}
.book-page .bk-page-notes dd>span{display:block}
.book-page .bk-page-notes dd>span+span{margin-top:.35rem}
.book-page .bk-note-tone dt{color:#a65428}
.book-page .bk-note-tone dt:before{background:#a6542824!important;border:1px solid #a6542870!important;height:.6rem;width:.75rem;top:.25rem}
.book-page .bk-note-map{grid-column:1/-1}
.book-page .bk-note-map dt{color:var(--ds-ink,#121c2c)}
.book-page .bk-note-map dt:before{height:.6rem;width:.7rem;border:1px solid #8796ac!important;background:linear-gradient(transparent 46%,#8796ac 46% 54%,transparent 54%)!important;top:.25rem}
.book-page .bk-note-map q{display:block;margin-bottom:.55rem;font:400 1rem/1.5 var(--ds-reading,Newsreader,Georgia,serif);color:var(--ds-ink,#121c2c);quotes:none}
.book-page .bk-adaptation-note{font:400 .75rem/1.6 var(--ds-body,Inter,Arial,sans-serif);color:#68758a;margin:1rem 0 .6rem;max-width:32rem}
/* Each contents state explains the work the learner supplies. */
.book-page .bk-learning-role{margin-top:1.35rem;padding-top:1.15rem;border-top:1px solid #dbe3ef}
.book-page .bk-learning-stage{display:block;font:500 .6875rem/1.5 var(--ds-body,Inter,Arial,sans-serif);letter-spacing:.035em;color:var(--ds-blue,#2255f5)}
.book-page .bk-learning-role h4{margin:.55rem 0 .65rem;font:500 1.0625rem/1.35 var(--ds-body,Inter,Arial,sans-serif);letter-spacing:-.015em;color:var(--ds-ink,#121c2c)}
.book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption .bk-learning-copy{font:400 .9375rem/1.6 var(--ds-body,Inter,Arial,sans-serif);color:var(--ds-muted,#4a5769)}
.book-page .bk-learning-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;gap:.7rem;padding:0;margin:1.2rem 0 .8rem;position:relative}
.book-page .bk-learning-steps:before{content:'';position:absolute;top:.65rem;left:.7rem;right:.7rem;height:1px;background:linear-gradient(90deg,#7497f4,#cbd8f4)}
.book-page .bk-learning-steps li{position:relative;font:400 .75rem/1.45 var(--ds-body,Inter,Arial,sans-serif);color:var(--ds-muted,#4a5769);max-width:8rem;animation:bk-study-step .5s both}
.book-page .bk-learning-steps li:nth-child(2){animation-delay:.08s}
.book-page .bk-learning-steps li:nth-child(3){animation-delay:.16s}
.book-page .bk-learning-steps li>span{display:grid;place-items:center;width:1.35rem;height:1.35rem;margin-bottom:.5rem;border:1px solid #b6c8f7;background:#fff;color:var(--ds-blue,#2255f5);border-radius:50%;font-size:.6875rem;font-variant-numeric:tabular-nums}
.book-page .bk-learning-ref{display:block;font:400 .6875rem/1.5 var(--ds-body,Inter,Arial,sans-serif);color:#68758a}
/* The closing control traces a source-backed error through read, questions, and chart. */
.book-page .bk-closing-lesson{display:none;border-top:1px solid #dbe3ef;margin-top:.75rem;padding-top:1.2rem}
.book-page .bk-endpaper:has(#bk-closing-trace:checked) .bk-closing-lesson{display:block;animation:bk-study-step .4s both}
.book-page .bk-miss-sequence{position:relative;list-style:none;margin:1.1rem 0 0;padding:0 0 0 1.35rem}
.book-page .bk-miss-sequence:before{content:'';position:absolute;left:.2rem;top:.45rem;bottom:1rem;width:1px;background:linear-gradient(#8ba9f5,#d7e1f7)}
.book-page .bk-miss-sequence li{position:relative;margin-bottom:1rem}
.book-page .bk-miss-sequence li:last-child{margin-bottom:0}
.book-page .bk-miss-sequence li:before{content:'';position:absolute;width:.4rem;height:.4rem;border:1px solid #94aff2;background:#fff;border-radius:50%;left:-1.35rem;top:.4rem}
.book-page .bk-miss-place{display:block;margin-bottom:.4rem;font:500 .75rem/1.5 var(--ds-body,Inter,Arial,sans-serif);color:var(--ds-blue,#2255f5)}
.book-page .bk-miss-sequence p{font:400 .9375rem/1.6 var(--ds-body,Inter,Arial,sans-serif);color:var(--ds-muted,#4a5769)}
@keyframes bk-study-step{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:760px){
 .book-page .bk-study-source{grid-column:1;grid-row:1;margin:0 0 .65rem;font-size:.6875rem}
 .book-page :is(.bk-panel-passage,.bk-panel-training) .bk-page-caption h3{grid-row:2;margin-bottom:1.2rem}
 .book-page :is(.bk-panel-passage,.bk-panel-training) .bk-page-art{grid-row:3}
 .book-page .bk-panel-passage .bk-trace-control{grid-row:4}
 .book-page :is(.bk-panel-passage,.bk-panel-training) .bk-source-excerpt{grid-row:5;font-size:1.125rem}
 .book-page .bk-panel-passage .bk-page-notes{grid-row:6;margin-top:1.35rem}
 .book-page .bk-adaptation-note{grid-column:1;grid-row:7;margin:.65rem 0 .6rem;font-size:.75rem}
 .book-page :is(.bk-panel-passage,.bk-panel-training) .bk-page-caption>.ds-link{grid-row:8}
 .book-page :is(.bk-panel-passage,.bk-panel-training) .bk-page-caption>.ds-link+.ds-link{grid-row:9}
 .book-page .bk-page-notes dd{font-size:1rem}
 .book-page .bk-learning-role{margin-top:1.1rem;padding-top:1rem}
 .book-page :is(.bk-atlas-plate,.bk-set-plate) figcaption .bk-learning-copy{font-size:1rem}
 .book-page .bk-learning-role h4{font-size:1.0625rem}
 .book-page .bk-learning-steps{gap:.55rem}
 .book-page .bk-learning-steps li{font-size:.8125rem}
 .book-page .bk-closing-lesson{padding-top:1rem}
 .book-page .bk-miss-sequence p{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.book-page .bk-color-overlay,.book-page .bk-learning-steps li,.book-page .bk-closing-lesson{animation:none!important;transition:none!important}}

/* The reader previews the learning progression while full instruction stays in the book. */
.book-page .bk-training-note{margin:1.2rem 0 0;font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769)}
.book-page .bk-training-sheet{padding:1.4rem 1.8rem 1.5rem;background:linear-gradient(90deg,#f8f9fb 0,#fff 18px);box-sizing:border-box;overflow-wrap:anywhere}
.book-page .bk-training-sheet-head{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid var(--ds-ink,#121c2c);font-size:.6875rem;line-height:1.5;letter-spacing:.025em;color:#68758a}
.book-page .bk-training-sheet-head>span:first-child{letter-spacing:.1em;color:var(--ds-ink,#121c2c)}
.book-page .bk-training-principle{font:400 1.5rem/1.3 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.03em;margin:1.5rem 0 1.4rem}
.book-page .bk-training-principle strong{font-weight:500;color:var(--ds-blue,#2255f5)}
.book-page .bk-training-stages{list-style:none;padding:0;margin:0}
.book-page .bk-training-stages>li{display:grid;grid-template-columns:2.5rem minmax(0,1fr);gap:1.25rem;padding:1.4rem 0 1.3rem;border-top:1px solid #dce3ee;position:relative;animation:bk-study-step .45s both}
.book-page .bk-training-stages>li:nth-child(2){animation-delay:.08s}
.book-page .bk-training-stages>li:nth-child(3){animation-delay:.16s}
.book-page .bk-training-count{font:400 1.75rem/1.2 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.04em;color:var(--ds-blue,#2255f5);font-variant-numeric:tabular-nums}
.book-page .bk-training-stages h4{margin:.45rem 0 .45rem;font:500 1rem/1.4 var(--ds-body,Inter,Arial,sans-serif);letter-spacing:-.015em}
.book-page .bk-training-stages p{font-size:.875rem;line-height:1.6;color:var(--ds-muted,#4a5769);hyphens:auto}
.book-page .bk-training-marks{display:flex;gap:.35rem;align-items:flex-end;flex-wrap:wrap;margin-top:1rem}
.book-page .bk-training-marks>span{display:flex;flex-direction:column;gap:3px;width:1.35rem;min-height:1.8rem;padding:5px 4px;border:1px solid #b9c9ed;background:#fff;box-shadow:2px 2px 0 #edf1f8;box-sizing:border-box}
.book-page .bk-training-marks i{display:block;height:1px;background:#9bb2e5}
.book-page .bk-training-marks-teach i:nth-child(2){background:var(--ds-blue,#2255f5)}
.book-page .bk-training-marks-drill>span{border-color:#cbd4e4}
.book-page .bk-training-marks-drill i{background:#c2cbd9}
.book-page .bk-training-exam{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1rem;max-width:17rem}
.book-page .bk-training-exam>span{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;align-items:start}
.book-page .bk-training-exam i{display:block;height:1.65rem;border:1px solid #bec8d9;background:linear-gradient(90deg,#f2f5f9,#fff)}
.book-page .bk-training-exam small{grid-column:1/-1;display:block;margin-top:.25rem;font-size:.6875rem;line-height:1.4;color:#68758a}
.book-page .bk-training-sheet-end{border-top:1px solid var(--ds-ink,#121c2c);padding-top:.9rem;font-size:.6875rem;line-height:1.6;color:#68758a}
.book-page .bk-chart-order{margin:1.4rem 0 1rem;padding-left:1rem;border-left:2px solid #b7c9fa}
.book-page .bk-chart-order>p{font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769);margin:.6rem 0 .9rem}
.book-page .bk-panel-chart .bk-page-art{align-self:start;margin-top:3rem}

/* Plan comparison shows the learning sequence, with the detailed schedules reserved for the book. */
.book-page .bk-schedule{padding:4rem 0 4.5rem;border-top:1px solid var(--ds-rule,#d3dbe7)}
.book-page .bk-schedule-heading{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:2.75rem;margin-bottom:2.5rem;align-items:end}
.book-page .bk-schedule-heading h2{font:400 2rem/1.18 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.035em;margin-top:1rem}
.book-page .bk-schedule-heading>p{max-width:34rem;font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769)}
.book-page .bk-plan-reader{border:0;margin:0;padding:0;min-width:0}
.book-page .bk-plan-controls{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--ds-ink,#121c2c)}
.book-page .bk-plan-choice{position:relative;cursor:pointer;flex:0 0 9rem}
.book-page .bk-plan-choice>span{display:flex;align-items:baseline;gap:.5rem;padding:.85rem 1rem .95rem;font-size:.875rem;line-height:1.4;color:#67758b;position:relative;border-left:1px solid #e1e7f0}
.book-page .bk-plan-choice:first-child>span{border-left:0}
.book-page .bk-plan-choice strong{font:400 1.75rem/1.1 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.book-page .bk-plan-choice>span:after{content:'';position:absolute;left:1rem;right:1rem;bottom:-1px;height:3px;background:var(--ds-blue,#2255f5);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.book-page .bk-plan-choice:has(input:checked)>span{color:var(--ds-blue,#2255f5)}
.book-page .bk-plan-choice:has(input:checked)>span:after{transform:scaleX(1)}
.book-page .bk-plan-choice:has(input:focus-visible){outline:2px solid var(--ds-blue,#2255f5);outline-offset:4px}
.book-page .bk-plan-instruction{margin-left:auto;padding-left:1.5rem;font-size:.75rem;line-height:1.5;color:var(--ds-muted,#4a5769)}
.book-page .bk-plan-panels{position:relative;border:1px solid #dce3ed;border-top:0;background:linear-gradient(105deg,#fbfcfe 0,#fff 23%);box-shadow:0 18px 32px -28px #182a4e38}
.book-page .bk-plan-panel{display:none;padding:2rem 2.25rem 1.8rem;min-width:0}
.book-page .bk-plan-reader:has(#bk-plan-12:checked) #bk-plan-panel-12,
.book-page .bk-plan-reader:has(#bk-plan-9:checked) #bk-plan-panel-9,
.book-page .bk-plan-reader:has(#bk-plan-6:checked) #bk-plan-panel-6{display:block;animation:bk-study-step .35s both}
.book-page .bk-plan-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:3rem}
.book-page .bk-plan-top h3{font:400 1.5rem/1.3 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.025em;margin-top:.55rem;max-width:32rem}
.book-page .bk-plan-description{font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769);max-width:40rem;margin-top:.85rem}
.book-page .bk-plan-window{display:flex;align-items:center;gap:1rem;padding:.15rem 0 .2rem 1.5rem;border-left:1px solid #c9d6f0;color:var(--ds-blue,#2255f5)}
.book-page .bk-plan-window strong{font:400 2.5rem/1 var(--ds-display,'Inter Display',Inter,sans-serif);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.book-page .bk-plan-window>span{font-size:.6875rem;line-height:1.5;color:#68758a}
.book-page .bk-plan-fit{display:flex;align-items:baseline;gap:1.5rem;border-top:1px solid #dfe6ef;padding-top:1.15rem;margin-top:1.6rem}
.book-page .bk-plan-fit>.ds-eyebrow{flex:0 0 8.5rem}
.book-page .bk-plan-fit>p{font-size:.875rem;line-height:1.6;color:var(--ds-muted,#4a5769)}
.book-page .bk-plan-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;list-style:none;margin:0 2.25rem 2rem;padding:1.2rem 0 0;border-top:1px solid #c4d2ee}
.book-page .bk-plan-flow>li{position:relative;min-width:0;padding-left:1rem;border-left:2px solid #94b0ef}
.book-page .bk-plan-flow>li:before{content:'';position:absolute;left:-4px;top:0;width:6px;height:6px;background:#fff;border:1px solid var(--ds-blue,#2255f5);box-sizing:border-box}
.book-page .bk-plan-flow>li>span{font-size:.75rem;font-weight:500;line-height:1.5;color:var(--ds-blue,#2255f5)}
.book-page .bk-plan-flow p{font-size:1rem;line-height:1.5;margin-top:.5rem}
.book-page .bk-plan-reserve{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3rem;margin-top:2rem}
.book-page .bk-plan-reserve p{max-width:43rem;margin-top:.65rem;font-size:1rem;line-height:1.65;color:var(--ds-muted,#4a5769)}
.book-page .bk-plan-reserve>.ds-link{font-size:.8125rem;min-height:44px;gap:1.25rem}

/* The sample download is one blank chart. */

.book-page .bk-news-copy{padding-top:.7rem}
.book-page .bk-news-copy>p{font-size:1rem;line-height:1.65;color:var(--ds-ink,#121c2c)}
.book-page .bk-news-copy>.bk-news-note{margin-top:.65rem;color:var(--ds-muted,#4a5769)}
.book-page .bk-news-downloads{margin:1.5rem 0 .8rem;border-top:1px solid #bdcbe2}
.book-page .bk-news-downloads>a{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:78px;padding:.85rem 0;border-bottom:1px solid #dbe3ef;color:var(--ds-ink,#121c2c);text-decoration:none;transition:color .2s}
.book-page .bk-news-downloads>a>span{display:flex;flex-direction:column;gap:.4rem}
.book-page .bk-news-downloads strong{font-size:1rem;line-height:1.4;font-weight:400}
.book-page .bk-news-downloads small{font-size:.6875rem;line-height:1.5;color:var(--ds-muted,#4a5769)}
.book-page .bk-news-downloads svg{width:1.25rem;height:1.25rem;flex:none;fill:none;stroke:var(--ds-blue,#2255f5);stroke-width:1.2;transition:transform .2s}
.book-page .bk-news-downloads>a:hover{color:var(--ds-blue,#2255f5)}
.book-page .bk-news-downloads>a:hover svg{transform:translateX(3px)}
.book-page .bk-news-copy>.ds-link{font-size:.75rem;min-height:44px;gap:1.5rem}

@media(max-width:1100px){
 .book-page .bk-panel-chart .bk-page-art{margin-top:0}
 .book-page .bk-plan-panel{padding-inline:1.5rem}
 .book-page .bk-plan-top{gap:2rem}
 .book-page .bk-plan-flow{margin-inline:1.5rem;gap:1.5rem}
 .book-page .bk-plan-window{gap:.75rem;padding-left:1rem}
 .book-page .bk-plan-reserve{grid-template-columns:1fr;gap:.8rem}
 .book-page .bk-plan-reserve>.ds-link{justify-self:start}
}
@media(max-width:760px){
 .book-page .bk-training-note{grid-column:1;grid-row:6;margin-top:1.2rem}
 .book-page .bk-training-sheet{padding:1.15rem 1.2rem 1.2rem}
 .book-page .bk-training-stages>li{grid-template-columns:2rem minmax(0,1fr);gap:1rem;padding-block:1.25rem}
 .book-page .bk-training-stages p{font-size:.9375rem}
 .book-page .bk-training-marks{gap:.4rem}
 .book-page .bk-training-marks>span{width:1.3rem}
 .book-page .bk-panel-chart .bk-study-source{grid-column:1;grid-row:1}
 .book-page .bk-panel-chart .bk-page-caption h3{grid-column:1;grid-row:2}
 .book-page .bk-panel-chart .bk-page-art{grid-column:1;grid-row:3;margin:0}
 .book-page .bk-panel-chart .bk-source-excerpt{grid-column:1;grid-row:4;margin-top:1.4rem}
 .book-page .bk-panel-chart .bk-chart-order{grid-column:1;grid-row:5;margin:1.25rem 0 .6rem}
 .book-page .bk-panel-chart .bk-adaptation-note{grid-column:1;grid-row:6}
 .book-page .bk-panel-chart .bk-page-caption>.ds-link{grid-column:1;grid-row:7}
 .book-page .bk-panel-chart .bk-page-caption>.ds-link+.ds-link{grid-row:8}
 .book-page :is(.bk-panel-passage,.bk-panel-training) .bk-source-excerpt{font-size:1.25rem}
 .book-page .bk-schedule{padding:2.5rem 0 2.8rem}
 .book-page .bk-schedule-heading{display:block;margin-bottom:1.5rem}
 .book-page .bk-schedule-heading h2{font-size:1.75rem;margin-top:.8rem}
 .book-page .bk-schedule-heading>p{margin-top:1.1rem;max-width:none}
 .book-page .bk-plan-choice{flex:1 1 0;min-width:0}
 .book-page .bk-plan-choice>span{padding:.85rem .6rem .9rem;font-size:.75rem;gap:.35rem;flex-wrap:wrap}
 .book-page .bk-plan-choice strong{font-size:1.5rem}
 .book-page .bk-plan-choice>span:after{left:.6rem;right:.6rem}
 .book-page .bk-plan-instruction{display:none}
 .book-page .bk-plan-panel{padding:1.4rem 1.1rem 1.3rem}
 .book-page .bk-plan-top{display:flex;flex-direction:column-reverse;gap:1.2rem}
 .book-page .bk-plan-top h3{font-size:1.375rem;max-width:none}
 .book-page .bk-plan-window{padding-left:.8rem}
 .book-page .bk-plan-window strong{font-size:2rem}
 .book-page .bk-plan-window>span br{display:none}
 .book-page .bk-plan-fit{display:block;margin-top:1.2rem;padding-top:1rem}
 .book-page .bk-plan-fit>p{font-size:1rem;margin-top:.65rem}
 .book-page .bk-plan-flow{display:block;margin:0 1.1rem 1.4rem;padding-top:.2rem}
 .book-page .bk-plan-flow>li{display:grid;grid-template-columns:clamp(68px,5.5rem,90px) minmax(0,1fr);gap:.8rem;padding:.9rem 0 .9rem 1rem;border-left:1px solid #becff4}
 .book-page .bk-plan-flow>li:before{top:1.25rem;left:-3px}
 .book-page .bk-plan-flow>li>span{padding-top:.15rem;overflow-wrap:anywhere}
 .book-page .bk-plan-flow p{margin:0;hyphens:auto;overflow-wrap:anywhere}
 .book-page .bk-plan-reserve{margin-top:1.5rem}
 .book-page .bk-news-copy{padding-top:0}
 .book-page .bk-news-downloads>a{gap:1rem}
}
@media(max-width:400px){
 .book-page .bk-training-stages>li{display:block}
 .book-page .bk-training-count{display:block;font-size:1.5rem;margin-bottom:.7rem}
 .book-page .bk-training-marks>span{width:1.2rem;min-height:1.7rem}
 .book-page .bk-training-sheet{padding-inline:clamp(14px,1.2rem,22px)}
 .book-page .bk-training-principle{font-size:1.375rem}
 .book-page .bk-plan-description,.book-page .bk-plan-fit>p{hyphens:auto;overflow-wrap:anywhere}
 .book-page .bk-plan-flow>li{display:block;padding-block:.9rem}
 .book-page .bk-plan-flow p{margin-top:.45rem}
}
@supports not selector(:has(*)){
 .book-page .bk-plan-controls{display:none}
 .book-page .bk-plan-panel{display:block}
 .book-page .bk-plan-panel+.bk-plan-panel{border-top:1px solid #dce3ed}
}
@media(prefers-reduced-motion:reduce){
 .book-page .bk-training-stages>li,.book-page .bk-plan-panel,.book-page .bk-plan-choice>span:after,.book-page .bk-news-downloads>a,.book-page .bk-news-downloads svg{animation:none!important;transition:none!important}
}
