:root{--blue:#006184;--link:#157493;--text:#212225;--text-secondary:#53575b;--border:#e0e2e2;--panel:#f7f8f8;--font-sans:"Ensign:Sans", Roboto, Arial, sans-serif;--font-serif:"Ensign:Serif", "Noto Serif", Georgia, serif;font-family:var(--font-sans);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;background:#fff;line-height:1.4}*{box-sizing:border-box}body{background:#fff;min-width:320px;margin:0}a{color:var(--link)}a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.index-page,.story-page{width:min(100% - 3rem,72rem);margin:0 auto}.index-page{padding:5rem 0}.site-footer{border-top:1px solid var(--border);width:min(100% - 3rem,72rem);color:var(--text-secondary);margin:0 auto;padding:1.5rem 0;font-size:.75rem}.site-footer p{margin:0}.index-intro{max-width:42rem;margin-bottom:4rem}.eyebrow,.story-context{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .75rem;font-size:.75rem;font-weight:700}h1,h2,p{margin-top:0}h1{letter-spacing:-.025em;margin-bottom:1rem;font-size:clamp(2.25rem,6vw,5rem);line-height:1.05}.index-intro>p:last-child{color:var(--text-secondary);margin:0;font-size:1.1rem}.book-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.book{border:1px solid var(--border);border-top:3px solid var(--blue);background:#fff;padding:1.5rem}.book h2{color:var(--text);margin-bottom:1rem;font-size:1.75rem;font-weight:300}.book ol{gap:.45rem;margin:0;padding-left:1.5rem;display:grid}.book li{padding-left:.25rem}.book a{text-underline-offset:.2em;text-decoration-color:#bdc0c0}.story-page{touch-action:pan-y;grid-template-rows:auto minmax(0,1fr) auto;width:100%;height:100dvh;max-height:100vh;padding:clamp(.75rem,2.5vh,2rem) 0;display:grid;overflow:hidden}.story-header,.slide-nav{justify-content:space-between;align-items:center;gap:1rem;display:flex}.story-header{padding:0 clamp(1rem,3vw,3rem) clamp(.5rem,2vh,2rem)}.brand{color:var(--blue);font-size:.85rem;font-weight:700;text-decoration:none}.story-context{margin:clamp(.35rem,1.5vh,1.5rem) 0 clamp(.2rem,.75vh,.45rem)}.story-header h1{letter-spacing:-.025em;max-width:40rem;margin:0;font-size:clamp(1.35rem,min(4vw,5vh),3.5rem)}.story-video{margin:clamp(.25rem,1vh,1rem) 0 0;font-size:.9rem;font-weight:600}.story-video a{text-underline-offset:.2em}.slide-number{color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;align-self:flex-start}.slide{grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;padding:clamp(.25rem,1vmin,.75rem);display:grid;overflow:hidden}.slide-images{justify-content:center;align-items:center;min-width:0;min-height:0;padding:clamp(.5rem,min(3vw,2.5vh),3rem);display:flex;overflow:hidden}.slide-images img{object-fit:contain;max-width:100%;max-height:100%;display:block}.slide-images--gallery{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));grid-auto-rows:minmax(0,1fr);gap:.75rem;display:grid}.slide-images--gallery img{width:100%;max-height:100%}.slide-copy{min-width:0;min-height:0;font-family:var(--font-serif);align-items:center;padding:clamp(.5rem,min(2vw,2vh),2rem);font-size:clamp(.85rem,min(2.5vw,3.25vh),1.8rem);line-height:1.45;display:flex;overflow:hidden}.slide-copy .prose{width:100%;max-width:34rem;margin:auto}.prose p{margin:0 0 clamp(.5em,1.5vh,1.25em)}.prose p:last-child{margin-bottom:0}.prose a{text-underline-offset:.15em;text-decoration-color:#bdc0c0}.slide-nav{border-top:1px solid var(--border);color:var(--text-secondary);padding:clamp(.5rem,1.5vh,1rem) clamp(1rem,3vw,3rem) 0;font-size:clamp(.75rem,min(2vw,1.75vh),.9rem)}.slide-nav a{color:var(--blue);text-underline-offset:.2em;font-weight:700}.slide-nav span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=760px){.index-page,.site-footer{width:min(100% - 2rem,72rem)}.story-page{width:100%}.index-page{padding:3rem 0}.index-intro{margin-bottom:2.5rem}.book-list{grid-template-columns:1fr}.story-page{padding:clamp(.5rem,2vh,1rem) 0}.story-header{padding-bottom:clamp(.35rem,1.5vh,1rem)}.story-header h1{font-size:clamp(1.2rem,min(8vw,4.5vh),2.7rem)}.slide-nav span{display:none}}@media (orientation:portrait){.slide{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:minmax(0,1fr)}.slide-copy{font-size:clamp(.75rem,min(5vw,2.2vh - .03rem),1.7rem)}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}
