*{box-sizing:border-box} :root{--paper:#f8f6ee;--ink:#292821;--gold:#b18b2e;--yellow:#f3d949;--line:#d5d1c3}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:17px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #956c10;outline-offset:6px}header{display:flex;justify-content:space-between;align-items:center;padding:30px 5%;gap:35px;border-bottom:1px solid var(--line)}.wordmark{font-family:Georgia,serif;font-size:29px;line-height:1.3;white-space:nowrap}.wordmark span{display:block;font-family:"DM Sans",sans-serif;font-size:11px;letter-spacing:1.8px;margin-top:7px}nav{display:flex;flex-wrap:wrap;gap:25px;font-size:14px}nav a:last-child{border-bottom:1px solid var(--ink)}.hero{display:grid;grid-template-columns:1.2fr 1fr;min-height:650px;padding:65px 7% 70px;gap:7%;align-items:center}.eyebrow{font-family:"Special Elite",monospace;font-size:13px;letter-spacing:1.4px;line-height:1.7}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.1}h1{font-size:clamp(48px,5.5vw,84px);letter-spacing:-2.5px;margin:30px 0}h2{font-size:clamp(35px,3.7vw,56px);letter-spacing:-1.3px;margin:22px 0}h3{font-size:32px;margin:25px 0 15px}.intro{font-size:21px;max-width:420px}.byline{font-size:14px;margin:30px 0}.byline a{border-bottom:1px solid var(--line)}.button{display:inline-flex;gap:40px;align-items:center;border:1px solid var(--ink);padding:12px 24px;font-size:15px;background:transparent}.hero-art{min-height:450px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.sun{height:300px;width:300px;border-radius:50%;background:var(--yellow);position:absolute;top:15px;right:0}.hero-art p{font-family:"Special Elite",monospace;font-size:clamp(30px,3vw,46px);line-height:1.5;position:relative;margin-top:85px}.hero-art>span{font-size:11px;letter-spacing:2px;margin-top:28px}.book-preview{background:#ede9df;padding:65px 9%;display:grid;grid-template-columns:1fr 1fr;gap:14%;align-items:center}.book-preview p{max-width:440px}.book-type{padding:45px 35px;background:var(--yellow);min-height:365px;border-left:7px solid #d7b62f;box-shadow:12px 12px 0 #ddd7c5}.book-type>span,.book-type>p{font-family:"Special Elite",monospace;font-size:14px}.book-type h2{font-family:"Special Elite",monospace;font-size:70px;line-height:1.05;margin:35px 0}.dot{color:#926d0f}.text-link{display:inline-block;font-size:15px;border-bottom:1px solid var(--ink);padding-bottom:5px;margin-top:18px}.section{padding:85px 7%}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.tile{border-top:1px solid var(--ink);padding-top:25px}.tile>span:first-child{font-family:"Special Elite",monospace;font-size:13px}.tile:hover{text-decoration:none}.tile:hover h3{text-decoration:underline;text-underline-offset:6px}.tile p{font-size:16px}.author-strip{margin:0 7%;padding:65px 0;border-top:1px solid var(--line);max-width:1000px}.author-strip p:not(.eyebrow){max-width:670px;font-size:21px}.letter{background:var(--yellow);text-align:center;padding:65px 7%}.letter .button{margin-top:20px}footer{padding:35px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px}footer>div{display:flex;flex-wrap:wrap;gap:25px;font-size:14px}.skip{position:absolute;top:-100px;background:white;padding:10px}.skip:focus{top:10px;z-index:10}.page-head{padding:65px 8% 40px;max-width:1100px}.page-head h1{font-size:clamp(48px,6vw,85px)}.page-head .intro{max-width:730px}.prose{padding:0 8% 80px;max-width:1080px}.prose p,.prose li{max-width:760px}.prose h2{margin-top:50px}.note{font-size:14px;color:#625e51}.exercise{padding:28px;border:1px solid var(--line);margin:30px 0}.exercise h3{margin-top:0}.portrait{width:100%;max-height:560px;object-fit:cover;object-position:center;display:block}.portrait-wrap{margin:25px 0;max-width:580px}.portrait-wrap figcaption{font-size:12px}.print-button{font:inherit;padding:10px 20px;border:1px solid var(--ink);cursor:pointer;background:var(--yellow)}@media(max-width:950px){header{align-items:flex-start;flex-direction:column;gap:22px}nav{gap:17px}.hero{gap:3%;padding-top:35px}.sun{width:240px;height:240px}.book-preview{gap:8%}.book-type h2{font-size:58px}}@media(max-width:650px){body{font-size:16px}header{padding:24px 6%}nav{font-size:14px;gap:12px 20px}.hero{grid-template-columns:1fr;padding:35px 7%}.hero-art{min-height:300px}.hero-art p{font-size:32px;margin:45px 0 0}.sun{right:10%;top:0;width:230px;height:230px}h1{letter-spacing:-1.5px}.book-preview{grid-template-columns:1fr;padding:45px 7%;gap:35px}.book-type{min-height:310px}.section{padding:55px 7%}.grid{grid-template-columns:1fr;gap:32px}.author-strip{padding:45px 0}.author-strip p:not(.eyebrow){font-size:18px}footer{align-items:flex-start;flex-direction:column}.page-head{padding-top:40px}.page-head,.prose{padding-left:7%;padding-right:7%}.letter{padding:45px 7%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,footer,.letter,.print-button{display:none}.page-head,.prose{padding:15px}body{background:white}}.hero-portrait{margin:0;position:relative;padding:0 0 18px 18px}.hero-portrait:before{content:"";position:absolute;background:var(--yellow);inset:30px -18px 0 0;border-radius:50% 50% 0 0;z-index:-1}.hero-portrait img{width:100%;height:450px;object-fit:cover;object-position:center 35%;filter:saturate(.75)}.hero-portrait figcaption{font-family:"Special Elite",monospace;font-size:13px;padding-top:12px}@media(max-width:650px){.hero-portrait{margin:20px 10px}.hero-portrait img{height:390px}}
/* A living notebook: paper, ink and a little curiosity. */
body{overflow-x:clip}::selection{background:var(--yellow);color:var(--ink)}
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#b18b2e;z-index:30;transform-origin:left;pointer-events:none}
.hero,.letter,.page-head{position:relative;isolation:isolate}.hero{overflow:clip}.hero-copy{position:relative;z-index:2}
.hero-doodle{position:absolute;left:49%;top:35px;font-size:74px;color:var(--gold);animation:gentle-spin 35s linear infinite}.hero-portrait{transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .35s ease}.hero-portrait img{border-radius:46% 46% 2px 2px;transition:filter .6s,border-radius .7s}.hero-portrait:hover img{filter:saturate(1);border-radius:42% 48% 2px 2px}.portrait-label{position:absolute;right:-20px;top:40px;background:var(--yellow);padding:10px 18px;font-family:'Special Elite',monospace;font-size:13px;box-shadow:3px 4px 0 #2928211a;rotate:8deg;animation:bob 6s ease-in-out infinite}
nav a{position:relative;transition:color .25s}nav a:before{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .3s}nav a:hover{text-decoration:none}nav a:hover:before{transform:scaleX(1)}
.button{position:relative;transition:background .25s,box-shadow .25s,transform .25s;cursor:pointer;color:var(--ink);font-family:inherit}.button:hover{background:var(--yellow);box-shadow:5px 5px 0 var(--ink);transform:translate(-3px,-3px);text-decoration:none}.button span{display:inline-block;transition:transform .35s}.button:hover span{transform:rotate(35deg)}.text-link{transition:background-size .35s,translate .3s;background:linear-gradient(var(--yellow),var(--yellow)) 0 100%/0 45% no-repeat}.text-link:hover{background-size:100% 45%;translate:4px 0;text-decoration:none}
.idea-ribbon{border-block:1px solid var(--line);overflow:hidden;padding:17px 0;background:var(--paper)}.idea-ribbon>div{display:flex;align-items:center;gap:45px;width:max-content;animation:marquee 36s linear infinite}.idea-ribbon span{font-family:'Special Elite',monospace;font-size:12px;letter-spacing:2px}.idea-ribbon b{color:var(--gold);font-size:27px;font-weight:400}.idea-ribbon:hover>div{animation-play-state:paused}
.tile{position:relative;padding:25px 18px 24px;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s,background .3s,box-shadow .3s}.tile:hover{background:#f0eadb;box-shadow:6px 7px 0 #ddd5c0}.tile:nth-child(2):hover{background:#f6e99c}.tile:nth-child(3):hover{background:#e9ecd9}.tile:hover h3{text-decoration:none}.tile:after{content:'↗';position:absolute;top:14px;right:15px;font-size:26px;transition:rotate .3s}.tile:hover:after{rotate:45deg}
.idea-playground{padding:55px 10% 90px;display:grid;grid-template-columns:1fr 1fr;gap:13%;align-items:center}.idea-playground h2 em{color:#96701f}.idea-note{background:#f4df6c;min-height:290px;padding:40px 35px 30px;position:relative;rotate:-2deg;box-shadow:7px 12px 22px #29282112;transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .3s}.idea-note:before{content:'';position:absolute;width:90px;height:28px;background:#e3ddc2b3;top:-13px;left:calc(50% - 45px);rotate:5deg}.idea-note>p{font-family:Georgia,serif;font-size:clamp(25px,2.6vw,36px);line-height:1.25;min-height:135px;margin:22px 0}.note-signoff{font-family:'Special Elite',monospace;font-size:11px}.spark-button{margin-top:15px}.spark-bit{position:absolute;left:50%;top:30%;pointer-events:none;color:#96701f;font-size:25px;z-index:5}
.letter{overflow:hidden}.letter .button:hover{background:var(--paper)}.letter-doodle{position:absolute;right:7%;top:25%;font-size:150px;line-height:1;color:#29282120;z-index:-1;animation:gentle-spin 45s linear infinite}.page-doodle{position:absolute;right:4%;top:10%;font-size:100px;color:var(--gold);z-index:-1;animation:bob 6s ease-in-out infinite}.exercise{transition:background .3s,box-shadow .3s}.exercise:hover{background:#f3d94920;box-shadow:6px 6px 0 #d5d1c360}
@media(prefers-reduced-motion:no-preference){.reveal{opacity:0;translate:0 24px;transition:opacity .75s var(--delay,0ms),translate .75s cubic-bezier(.2,.7,.2,1) var(--delay,0ms)}.reveal.is-visible{opacity:1;translate:0 0}}
@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -12px}}@keyframes book-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gentle-spin{to{rotate:360deg}}@keyframes ink-in{to{stroke-dashoffset:0}}@keyframes dot-pulse{0%,85%,100%{transform:translateY(0)}92%{transform:translateY(-10px)}}@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:950px){.hero-doodle{left:45%;font-size:48px}.idea-playground{gap:8%;padding-inline:7%}}
@media(max-width:650px){.hero-doodle{left:auto;right:7%;top:20px;font-size:40px}.portrait-label{right:-4px;font-size:11px}.idea-playground{grid-template-columns:1fr;gap:40px;padding-bottom:65px}.idea-note{margin:0 6px;min-height:260px}.idea-note>p{min-height:110px}.letter-doodle{right:-25px;font-size:125px}.page-doodle{font-size:65px;opacity:.35}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;translate:none}}
@media print{.reveal{opacity:1;translate:none}}

/* Peel-away presentation. The book above retains its original design. */
.paper-presentation{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;padding:85px 9% 95px;background:#eeeade;overflow:clip;border-block:1px solid #ded8c8}.paper-intro>p:not(.eyebrow){max-width:360px}.paper-intro h2{font-size:clamp(38px,4.1vw,62px)}.paper-instruction{font-family:'Special Elite',monospace;font-size:14px;line-height:1.8;margin-top:35px}.paper-instruction>span{display:inline-block;font-size:45px;line-height:1;margin-left:20px;vertical-align:middle}.paper-experience{min-width:0}.paper-stack{position:relative;isolation:isolate;perspective:1100px;margin:15px 8px 35px;height:450px}.paper-stack:before,.paper-stack:after{content:'';position:absolute;inset:0;background:#e9cb3c;z-index:-1;transform:rotate(-5deg) translate(-5px,9px);box-shadow:0 14px 24px #352d1814;transition:transform .5s,opacity .4s}.paper-stack:after{background:#f6dc55;transform:rotate(4deg) translate(5px,6px)}.paper-slide{position:absolute;inset:0;width:100%;height:100%;border:0;padding:32px;text-align:left;color:var(--ink);background:linear-gradient(180deg,#eed044 0,#eed044 45px,#f8df59 85px,#f9e56c 92%,#e6c747 100%);box-shadow:0 18px 28px #5a481721;display:flex;flex-direction:column;cursor:grab;touch-action:pan-x;transform-origin:50% 0;user-select:none;-webkit-user-select:none;font-family:inherit;will-change:transform}.paper-slide[hidden],.paper-finish[hidden]{display:none}.paper-slide:active{cursor:grabbing}.paper-number{font-family:'Special Elite',monospace;font-size:12px;letter-spacing:1px}.paper-symbol{font-family:Georgia,serif;font-size:65px;line-height:1;margin:22px 0 12px;align-self:flex-end;margin-right:8px}.paper-heading{font-family:Georgia,serif;font-size:clamp(30px,3vw,45px);line-height:1.07;letter-spacing:-1.2px}.paper-body{font-size:15px;line-height:1.65;max-width:310px;margin-top:18px}.paper-peel{font-family:'Special Elite',monospace;letter-spacing:1.2px;font-size:9px;margin-top:auto;padding-top:18px;display:flex;justify-content:space-between;align-items:center;width:100%;border-bottom:1px solid #29282130;padding-bottom:7px}.paper-peel>span{font-size:23px;transition:translate .25s}.paper-slide:hover .paper-peel>span{translate:0 5px}.paper-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;font-family:'Special Elite',monospace;font-size:11px}.paper-dots{display:flex;gap:7px}.paper-dots i{width:6px;height:6px;border:1px solid #85742e;border-radius:50%;transition:background .3s,scale .3s}.paper-dots i.active{background:#887020;scale:1.4}.paper-dots i.done{background:#b5a363}.paper-reset{border:0;border-bottom:1px solid transparent;background:none;font:inherit;color:inherit;padding:9px 0;cursor:pointer}.paper-reset:hover{border-color:currentColor}.paper-finish{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:25px;border:1px dashed #b7a874;background:var(--paper)}.paper-finish h3{font-size:42px}.paper-finish .eyebrow{font-size:10px}.is-finished:before,.is-finished:after{opacity:0;transform:rotate(0)}
@media(max-width:950px){.paper-presentation{padding:60px 7%;gap:6%}.paper-slide{padding:25px}.paper-stack{height:465px}.paper-heading{font-size:34px}}
@media(max-width:700px){.paper-presentation{grid-template-columns:1fr;gap:30px;padding:50px 7%}.paper-intro h2{font-size:40px}.paper-instruction{margin-top:22px}.paper-stack{height:450px;max-width:440px;margin:15px auto 30px}.paper-experience{padding:0 9px}.paper-heading{font-size:36px}.paper-body{font-size:15px}.paper-symbol{margin-top:20px}.paper-controls{max-width:440px;margin:auto}}
@media print{.paper-stack{height:auto}.paper-slide,.paper-slide[hidden]{display:block;position:relative;break-inside:avoid;margin:20px 0}.paper-slide>span{display:block}.paper-controls,.paper-peel{display:none}}

/* A smaller, uncropped editorial portrait. */
.hero-portrait{width:min(100%,390px);justify-self:center;margin:0;padding:0 14px 16px 0;isolation:isolate}
.hero-portrait:before{inset:18px -10px 0 18px;border-radius:3px;transform:rotate(1.8deg)}
.hero-portrait:after{content:none}
.hero-portrait img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center;border-radius:3px;filter:saturate(.95) contrast(1.01);box-shadow:9px 11px 0 #29282112}
.hero-portrait figcaption{padding:13px 0 0 18px;letter-spacing:.15px}
.portrait-label{right:-22px;top:34px;rotate:5deg;border:1px solid #29282118}
.hero-portrait:hover img{filter:saturate(1.03) contrast(1.01);border-radius:3px}
@media(max-width:950px){.hero-portrait{width:min(100%,350px)}}
@media(max-width:650px){.hero-portrait{width:min(88vw,340px);margin:30px auto 8px;padding:0 10px 14px 0}.hero-portrait:before{inset:14px -8px 0 14px}.hero-portrait figcaption{padding-left:14px}.portrait-label{right:-4px;top:28px}}

/* Vertical book cover, based on Pilar's original yellow-and-gold concept. */
.book-type{width:min(100%,390px);min-height:520px;aspect-ratio:3/4;justify-self:center;display:flex;flex-direction:column;align-items:flex-start;padding:38px 38px 32px;background:linear-gradient(100deg,#d7b62f 0 7px,#f3d949 7px 100%);border:0;border-left:7px solid #d7b62f;border-radius:0;box-shadow:12px 12px 0 #ddd7c5;transform:none;transition:none}
.book-type:before,.book-type:after{content:none}
.book-type:hover{transform:none;box-shadow:12px 12px 0 #ddd7c5}
.book-type>span:first-child{font-size:12px;letter-spacing:.5px}
.book-type h2{align-self:stretch;text-align:left;font-family:"Special Elite",monospace;font-size:clamp(55px,5vw,72px);line-height:.98;letter-spacing:-2px;margin:54px 0 11px}
.book-type .dot{color:#926d0f}
.book-type .book-subtitle{font-family:"Special Elite",monospace;font-size:18.3px;letter-spacing:0;line-height:1.25;margin:0;white-space:nowrap;text-align:left}
.book-type .book-author{align-self:stretch;font-family:"Special Elite",monospace;font-size:17px;letter-spacing:.7px;margin:auto 0 0;text-align:center;text-transform:uppercase}
@media(max-width:950px){.book-type{width:min(100%,350px);min-height:467px;padding:32px}.book-type h2{font-size:58px;margin-top:42px}.book-type .book-subtitle{font-size:15px}}
@media(max-width:650px){.book-type{width:min(88vw,350px);min-height:467px;margin:auto}.book-type h2{font-size:58px}}
