/* A silvered manuscript in a midnight-plum binding. Everything is local. */
@font-face{font-family:Newsreader;src:url('assets/fonts/Newsreader-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DMSans-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DMSans-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DMSans-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--binding:#211c2f;--binding-light:#32283f;--paper:#e6e4e1;--ink:#302a3c;--muted:#615b69;--brass:#beaa78;--wine:#79405b;--rule:#b9b3b6;--turn-time:1050ms}
*{box-sizing:border-box}html{scroll-padding-top:24px}body{margin:0;background:radial-gradient(ellipse at 50% 34%,var(--binding-light),var(--binding) 75%);color:var(--ink);font:18px/1.65 'DM Sans',sans-serif;min-height:100vh}body::before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.76' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.3' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--wine);outline-offset:5px}.masthead a:focus-visible,.site-footer a:focus-visible{outline-color:var(--brass)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Newsreader,Georgia,serif;font-weight:400}svg,img{display:block;max-width:100%}::selection{background:#d3bca0;color:var(--ink)}.skip{position:absolute;left:20px;top:-100px;z-index:30;background:var(--paper);padding:12px 20px}.skip:focus{top:12px}
.masthead,.site-footer{width:min(1310px,calc(100% - 112px));margin-inline:auto}
.masthead{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px 0 32px;color:#e7e0d4}
.brand{display:flex;align-items:center;gap:12px;font:43px/1 Newsreader,Georgia,serif;text-decoration:none;letter-spacing:-.04em}
.brand svg{width:34px;height:34px;color:var(--brass)}
.brand-note{font:11px/1.5 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);max-width:100px;margin-left:23px;padding-left:23px;border-left:1px solid #75667e}
.masthead nav{display:flex;gap:36px;font-size:17px}
.masthead nav a{text-decoration:none;padding:8px 0;border-bottom:1px solid transparent}
.masthead nav a:hover{border-color:var(--brass)}
/* Binding, tooling, and the curved gutter stay still while leaves move. */
.book{width:min(1310px,calc(100% - 112px));margin:8px auto 0;position:relative;isolation:isolate;perspective:2400px;border:9px solid #44344a;border-radius:5px 8px 8px 5px;box-shadow:0 0 0 1px #937e6580,0 7px 0 -2px #b9b1ad,0 10px 0 -3px #463d48,0 14px 0 -4px #b9b1ad,0 17px 0 -4px #44344a,0 35px 65px #08061080}
.book::before{content:'';position:absolute;z-index:9;top:0;bottom:0;left:50%;width:48px;transform:translateX(-50%);pointer-events:none;background:linear-gradient(90deg,transparent,#3024380d 22%,#211c2f35 48%,#211c2f58 50%,#211c2f18 54%,transparent)}
.book::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:10;box-shadow:inset 0 0 50px #44344a16;background:radial-gradient(ellipse at 25% 0%,#fff3,transparent 65%)}
.spread{display:none;grid-template-columns:1fr 1fr}
.opening{display:grid}
.book:not([data-enhanced]):has(.spread:target) .opening{display:none}
.book:not([data-enhanced]):has(.spread:target) .spread:target{display:grid}
.book[data-enhanced] .spread{display:none}
.book[data-enhanced] .spread[data-active]{display:grid}
.page{position:relative;min-width:0;min-height:max(740px,var(--spread-height,0px));background:var(--paper);padding:30px 52px 20px;display:flex;flex-direction:column;background-image:radial-gradient(ellipse at 100% 70%,#8e789214,transparent 70%),repeating-linear-gradient(13deg,#64556503 0 1px,transparent 1px 4px)}
.verso{border-radius:1px 0 0 2px;background-color:#dedcda;padding-right:57px}
.recto{border-radius:0 2px 2px 0;padding-left:57px}
.page::before{content:'';position:absolute;inset:13px;border:1px solid #8e7d8735;pointer-events:none}
.running-head{display:flex;justify-content:space-between;gap:15px;font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);padding-bottom:15px;border-bottom:1px solid var(--rule);line-height:1.5}
.running-head span:last-child{text-align:right}
.eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--wine);line-height:1.5}
.invitation,.collections,.chapter-copy,.method,.creator-invitation{padding-top:43px}
.invitation h1{font-size:clamp(60px,5.1vw,76px);letter-spacing:-.045em;line-height:1.04;margin:24px 0 26px}
.invitation em,.chapter-copy em,.creator-invitation em{color:var(--wine);font-weight:400}
.lead{font-size:19px;line-height:1.75;max-width:440px}
.drop-cap::first-letter{float:left;font:66px/.85 Newsreader,Georgia,serif;color:var(--wine);padding-right:7px;margin-top:9px}
.colophon{display:flex;align-items:center;gap:17px;margin-top:29px;padding-top:20px;border-top:1px solid var(--rule);font-size:12px;line-height:1.8;text-transform:uppercase;letter-spacing:.08em}
.colophon p span{text-transform:none;letter-spacing:0;font:20px Newsreader,Georgia,serif}
.small-star{font-size:31px;color:var(--wine)}
.archive{display:grid;grid-template-columns:46px 1fr;gap:20px;text-decoration:none;padding:24px 0;border-bottom:1px solid var(--rule)}
.archive img{margin-top:5px;border-radius:50%;box-shadow:0 0 0 5px #fff3}
.archive-index{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted)}
.archive h2{font-size:38px;line-height:1.1;letter-spacing:-.025em;margin:4px 0 8px}
.archive p{font-size:15px;line-height:1.5}
.archive-action{display:flex;align-items:center;gap:18px;font-size:14px;font-weight:500;margin-top:17px;color:var(--wine)}
.archive-action span{transition:transform .2s}
.archive:hover h2{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.archive:hover .archive-action span{transform:translate(3px,-3px)}
.engraving{color:#766357;margin:24px auto 13px;width:100%;max-width:355px}
.engraving svg{height:145px;width:100%;opacity:.78}
.page-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:22px;min-height:73px}
.folio-number{font:17px Newsreader,Georgia,serif;color:var(--muted);min-width:20px}
.turn-cue{display:inline-flex;gap:12px;align-items:center;font-size:13px;text-decoration:none;color:#9a773e;font-weight:500;min-height:46px}
.curl{width:72px;height:46px;display:block;flex-shrink:0;transition:transform .3s ease}
.curl img{width:72px;height:46px}
.turn-cue:hover .curl{transform:translateX(4px) rotate(-3deg)}
.back .curl{transform:scaleX(-1)}
.back:hover .curl{transform:translateX(-4px) scaleX(-1) rotate(-3deg)}
.chapter-copy h2{font-size:clamp(48px,4.3vw,62px);line-height:1.06;letter-spacing:-.04em;margin:24px 0 27px}
.source-note{display:flex;gap:16px;border-top:1px solid var(--rule);padding-top:22px;margin-top:28px;font-size:16px;line-height:1.65}
.source-note>span{color:var(--wine);font-size:24px}
.method ol{list-style:none;counter-reset:step;padding:0;margin:23px 0 0}
.method li{counter-increment:step;position:relative;padding:22px 0 24px 49px;border-bottom:1px solid var(--rule)}
.method li::before{content:'0' counter(step);position:absolute;top:24px;left:0;font:23px Newsreader,Georgia,serif;color:var(--wine)}
.method h3{font-size:32px;line-height:1.15;margin-bottom:10px}
.method li p{font-size:17px;line-height:1.7}


.creator-invitation{text-align:center;display:flex;flex-direction:column;align-items:center}
.seal{width:135px;height:135px;border:1px solid #978070;border-radius:50%;box-shadow:inset 0 0 0 6px var(--paper),inset 0 0 0 7px #978070;position:relative;color:#806651;margin-bottom:26px}
.seal span{font:italic 80px/1.5 Newsreader,Georgia,serif;position:relative;z-index:1}
.seal svg{position:absolute;width:98px;inset:18px;opacity:.45}
.creator-invitation h3{font-size:51px;line-height:1.04;letter-spacing:-.03em;margin-bottom:24px}
.creator-invitation>p{max-width:355px;font-size:18px}
.creator-invitation .small-note{font-size:14px;line-height:1.7;margin-top:27px;color:var(--muted);max-width:345px}
.source-reference{font-size:15px;line-height:1.7;color:var(--muted);margin-top:28px}
.chapter-description{font-size:17px;line-height:1.7;margin-top:19px;max-width:440px}
h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus{outline:none}
.creator-invitation .closing-contact{font-size:17px;line-height:1.7;margin-top:33px}
.closing-contact a{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;white-space:nowrap}
.site-footer{display:flex;justify-content:flex-end;color:#e7e0d4;padding:32px 0 25px}
.site-footer a{font:17px/1.65 'DM Sans',sans-serif;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;padding:8px 0}
.site-footer a:hover,.closing-contact a:hover{text-decoration-thickness:2px}
body:has(.book:not([data-enhanced]) #creators:target) .site-footer{display:none}
body:has(.book[data-enhanced] #creators[data-active]) .site-footer{display:none}
.book:has(#creators[data-active]),.book:not([data-enhanced]):has(#creators:target){margin-bottom:48px}
/* One sheet, with the outgoing page on one face and the incoming page on
   the other. The stationary pages stay visible beneath it throughout. */
.book[data-enhanced] .spread[data-measure]{display:grid;position:absolute;inset:0 0 auto;visibility:hidden;pointer-events:none}
.page-turn{position:absolute;inset:0;z-index:8;pointer-events:none;perspective:2200px;overflow:clip;display:none}
.book[data-turn] .page-turn{display:block}
.turn-base{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr}
.turn-base>.page{height:100%;min-height:0}
.turn-leaf{position:absolute;left:50%;top:0;bottom:0;width:50%;transform-origin:left center;transform-style:preserve-3d;z-index:2;will-change:transform}
.leaf-face{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;background:var(--paper);box-shadow:0 0 1px #4a364e33}
.leaf-face>.page{height:100%;min-height:0!important}
.leaf-back{transform:rotateY(180deg)}
.leaf-face::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#30243820,transparent 14%,transparent 85%,#30243812)}
.turn-shadow{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,transparent 15%,#211c2f33 47%,#211c2f22 53%,transparent 85%);opacity:0}
.page-turn .spread{display:grid!important}
.page-turn .page a{pointer-events:none}
@media(max-width:800px){
  .turn-base{display:block;background:var(--paper)}
  .turn-leaf{left:0;width:100%}
  .turn-leaf[data-direction="backward"]{transform-origin:right center}
  .leaf-face>.spread{min-height:100%;background:var(--paper)}
}
/* Keep chapter navigation in view when a fragment brings the book to the top. */
html{scroll-padding-top:125px}.spread{scroll-margin-top:0}.masthead nav a{min-height:44px;display:inline-flex;align-items:center}
body:has(.book:not([data-enhanced]) #idea:target) .masthead a[href="#idea"],body:has(.book:not([data-enhanced]) #creators:target) .masthead a[href="#creators"]{border-color:var(--brass);color:#e2d5b6}
.masthead nav a[aria-current="page"]{border-color:var(--brass);color:#e2d5b6}
/* Tablet keeps the open spread; a phone becomes a single column of folios. */
@media(min-width:1600px){.book{margin-top:24px}.masthead{padding-top:45px}.page{min-height:max(795px,var(--spread-height,0px));padding-inline:60px}.invitation,.collections,.chapter-copy,.method,.creator-invitation{padding-top:55px}}
@media(max-width:1100px){.masthead,.site-footer,.book{width:calc(100% - 64px)}.page{padding-inline:32px;min-height:max(740px,var(--spread-height,0px))}.invitation h1{font-size:clamp(50px,6.1vw,68px)}.archive{gap:15px;grid-template-columns:38px 1fr}.archive img{width:38px;height:38px}.archive h2{font-size:33px}.running-head{font-size:9px}.lead{font-size:18px}.chapter-copy h2{font-size:50px}.brand-note{display:none}}
@media(max-width:800px){.masthead,.site-footer,.book{width:calc(100% - 36px)}.masthead{padding:25px 0 21px;gap:18px}.brand{font-size:36px;gap:8px}.brand svg{width:26px}.masthead nav{gap:21px;font-size:14px}.book{border-width:6px}.spread{grid-template-columns:1fr}.page{padding:26px 32px 15px;min-height:0}.verso{padding-bottom:16px}.recto{border-top:1px solid #9c8b9f;background-image:linear-gradient(#44344a16,transparent 35px),repeating-linear-gradient(13deg,#64556503 0 1px,transparent 1px 4px)}.book::before{display:none}.running-head{font-size:10px}.invitation,.collections,.chapter-copy,.method,.creator-invitation{padding-top:32px}.invitation h1{font-size:clamp(48px,12.8vw,64px);margin-top:21px}.lead{font-size:19px;max-width:100%}.page-bottom{padding-top:25px;min-height:84px}.colophon{margin-top:25px}.archive{grid-template-columns:46px 1fr;padding:25px 0;gap:18px}.archive img{width:46px;height:46px}.archive h2{font-size:36px}.archive p{font-size:15px}.engraving{margin-top:30px}.chapter-copy h2{font-size:clamp(48px,8vw,60px)}.source-note{margin-bottom:6px}.method li p{font-size:18px}.creator-invitation{padding-bottom:10px}.creator-invitation h3{font-size:51px}.site-footer{justify-content:center;padding:30px 0 24px}.site-footer a{font-size:14px}}
@media(max-width:390px){.masthead,.site-footer,.book{width:calc(100% - 24px)}.masthead nav{gap:15px;font-size:13px}.brand{font-size:31px}.brand svg{width:22px}.site-footer a{font-size:13px}.page{padding-inline:25px}.running-head{font-size:9px}.archive h2{font-size:31px}.chapter-copy h2{font-size:48px}.creator-invitation h3{font-size:46px}.turn-cue{gap:12px;font-size:12px}}
@supports not selector(:has(*)){.spread{display:grid}.page-turn{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.page-turn{display:none}}
/* A useful, complete document when printed rather than only the chosen spread. */
@media print{body{background:white}.masthead,.site-footer{color:black}.book{border:0;box-shadow:none;width:100%;margin:0}.book::before,.book::after,.page-turn,.turn-cue{display:none}.book .spread,.book:not([data-enhanced]):has(.spread:target) .opening{display:grid!important;break-after:page}.page{min-height:0}.page>*{animation:none!important;opacity:1!important}.site-footer{width:100%;padding-top:20px}}
