@font-face{font-family:FortunaText;src:local('Baskerville'),local('Libre Baskerville');font-display:swap}
:root{--paper:#f3eee4;--page:#f8f3e9;--ink:#22344b;--navy:#182b40;--gold:#bfa578;--muted:#857d6e;--terracotta:#a65f44;--rule:#cdbb9d;--serif:FortunaText,'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;--page-width:clamp(340px,32vw,460px);--page-height:calc(var(--page-width)*1.36);--open-duration:1400ms}
*{box-sizing:border-box}html{min-height:100%;background:var(--paper)}body{margin:0;min-height:100svh;background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;position:relative;isolation:isolate}body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 55% 35%,#fffcf550,transparent 75%)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--terracotta);outline-offset:6px}::selection{background:#dfcaab;color:#182b40}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:100;background:var(--page);padding:1rem;color:var(--ink)}.skip-link:focus{top:1rem}
.masthead{display:flex;align-items:center;gap:3.8rem;padding:40px 5.4vw 22px;position:relative;z-index:10}.brand{width:clamp(210px,23vw,320px);background:none;padding:0;display:block}.brand img{display:block;width:100%;height:auto}.site-nav{margin-left:auto;display:flex;gap:2.7rem}.nav-item{position:relative;background:none;padding:13px 0;font-size:13px;text-transform:uppercase;letter-spacing:.2em;white-space:nowrap}.nav-item::after{content:'';position:absolute;left:calc(50% - 3px);bottom:0;width:6px;height:6px;border-radius:50%;background:var(--terracotta);opacity:0;transition:opacity .3s}.nav-item.active::after,.nav-item:hover::after{opacity:1}.motto{border-left:1px solid #bcaa8970;padding:8px 0 8px 34px;margin:0;color:#8b7b66;font-size:15px;line-height:1.5;font-style:italic}
.desk{padding:27px 24px 0;position:relative;z-index:2}.book-stage{display:grid;place-items:center;perspective:2200px;padding:6px 0 18px;min-height:calc(var(--page-height) + 24px)}.book{position:relative;width:var(--page-width);height:var(--page-height);transform-style:preserve-3d;transition:transform var(--open-duration) cubic-bezier(.25,.8,.25,1)}.desk[data-state='open'] .book,.desk[data-state='opening'] .book{transform:translateX(50%)}.back-board{position:absolute;inset:-3px -8px -8px -4px;background:var(--navy);border-radius:3px 9px 9px 3px;box-shadow:1px 2px 2px #09131eb3,12px 26px 35px -13px #40332566,2px 10px 13px -6px #443a3066;transform:translateZ(-3px)}.page-block{position:absolute;inset:5px -5px -5px 0;border-radius:0 5px 5px 0;background:repeating-linear-gradient(to bottom,#f5ecdd 0,#f5ecdd 2px,#c8bba9 2.5px,#ede3d1 3.5px);border-right:1px solid #b9aa93;transform:translateZ(-1px);box-shadow:inset -3px 0 5px #b5a28366}
.front-cover{position:absolute;inset:0;z-index:5;transform-style:preserve-3d;transform-origin:left center;transition:transform var(--open-duration) cubic-bezier(.25,.8,.25,1);will-change:transform}.desk[data-state='open'] .front-cover,.desk[data-state='opening'] .front-cover{transform:rotateY(-180deg)}.cover-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-color:var(--navy);background-image:linear-gradient(90deg,#09182780,transparent 3%,#050c1570 5%,#63758820 6%,transparent 8%,transparent 96%,#07142360);background-size:100% 100%,380px 380px;border-radius:3px 8px 8px 3px;box-shadow:inset 0 1px 1px #76829155,inset -2px 0 3px #08132199,inset 0 -2px 2px #020c1799,2px 4px 5px #16223233}.cover-front{width:100%;height:100%;padding:0;display:flex;flex-direction:column;align-items:center;color:var(--gold);text-align:center;outline-offset:9px}.cover-frame{position:absolute;inset:9px 9px 10px 25px;border:1px solid #070f1733;border-radius:1px 5px 5px 1px;box-shadow:0 1px 0 #ffffff08;pointer-events:none}.cover-main{position:absolute;inset:11% 9% auto 11%;display:flex;flex-direction:column;align-items:center}.cover-emblem{width:76%;height:auto;mix-blend-mode:screen;filter:grayscale(1) invert(1) contrast(1.85) sepia(.9) brightness(.84);opacity:.88}.cover-wordmark{width:89%;height:auto;margin-top:13px;filter:brightness(0) saturate(100%) invert(74%) sepia(16%) saturate(728%) hue-rotate(358deg) brightness(90%) contrast(90%);opacity:.98}.ornament{display:flex;align-items:center;justify-content:center;gap:10px;width:67%;color:var(--gold);font-size:23px;line-height:1;margin:19px auto 18px}.ornament i{display:block;flex:1;height:1px;background:currentColor;opacity:.6}.cover-type{text-transform:uppercase;letter-spacing:.14em;font-size:clamp(12px,1.2vw,16px);line-height:1.6;text-shadow:0 1px 1px #050c1899}.cover-number{font-size:.9em}.cover-title{text-transform:uppercase;letter-spacing:.13em;font-size:clamp(12px,1.15vw,15px);line-height:1.55;margin-top:22px}.cover-imprint{position:absolute;bottom:6.4%;left:25%;right:25%;font-size:12px;text-transform:uppercase;line-height:1.7;letter-spacing:.15em}.cover-imprint span{font-size:11px}.cover-blindmark{position:absolute;right:6%;bottom:4%;font-size:64px;line-height:1;color:#0e2135;opacity:.8;text-shadow:1px 1px 0 #56677755,-1px -1px 1px #0008}.cover-back{transform:rotateY(180deg);border-radius:8px 2px 2px 8px;color:var(--gold);padding:11%;display:flex;flex-direction:column;justify-content:flex-end;background-image:linear-gradient(90deg,transparent 92%,#08172799)}.cover-back img{width:70%;align-self:center;margin:auto;filter:grayscale(1) invert(1) contrast(1.85) sepia(.9) brightness(.8);mix-blend-mode:screen;opacity:.65}.cover-back p{text-transform:uppercase;letter-spacing:.18em;font-size:13px;line-height:1.8}.cover-back>span{font-size:14px;font-style:italic}
.paper-page{position:absolute;inset:0;background-color:var(--page);background-image:linear-gradient(90deg,#ae9c793d,transparent 9%,transparent 95%,#cdbb9d20);box-shadow:inset -1px 0 0 #c4b79755;border-radius:0 3px 3px 0;padding:8% 9% 7%;display:flex;flex-direction:column;overflow:auto;scrollbar-width:thin;scrollbar-color:#c6b493 transparent}.right-page{z-index:1}.left-page{transform:translateX(-100%);z-index:2;border-radius:4px 0 0 4px;background-image:linear-gradient(90deg,#d5c4a514,transparent 7%,transparent 89%,#ad9c7e33);visibility:hidden}.desk[data-state='open'] .left-page{visibility:visible}.left-page.endpaper{visibility:hidden!important}.paper-page:focus{outline:none}.page-running{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #cbbb9e77;padding-bottom:13px;text-transform:uppercase;letter-spacing:.16em;font-size:10px;line-height:1.5;color:#7f796b;flex-shrink:0}.page-body{flex:1;padding-top:28px}.page-body h2{font-weight:400;font-size:clamp(23px,2.2vw,30px);line-height:1.16;letter-spacing:-.025em;text-wrap:balance;margin:0 0 24px}.page-body p{font-size:16px;line-height:1.62;margin:0 0 17px}.page-body .lead{font-size:20px;line-height:1.45}.page-body p:last-child{margin-bottom:0}.page-folio{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px;padding-top:12px;flex-shrink:0;color:#918168;font-size:11px;letter-spacing:.12em}.page-folio .star{font-size:19px;color:var(--gold)}.title-page{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:0;height:100%}.title-emblem{display:block;width:54%;height:auto;mix-blend-mode:multiply;margin:0 auto 10px;opacity:.88}.title-wordmark{width:71%;height:auto;margin-bottom:4px}.page-body .title-page h2{font-size:clamp(20px,2vw,28px);letter-spacing:.045em;text-transform:uppercase;line-height:1.43;margin:15px 0 18px}.title-page .memo-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;line-height:1.8;margin:7px 0}.title-page .subtitle{font-size:16px;line-height:1.5;font-style:italic}.title-page .ornament{width:45%;margin:12px auto}.title-page .title-place{margin-top:auto;padding-top:26px;text-transform:uppercase;letter-spacing:.13em;font-size:10px;line-height:1.7}.contents-list{list-style:none;margin:26px 0 0;padding:0}.contents-list li{border-bottom:1px solid #cdbb9d60}.contents-list button{display:flex;gap:20px;align-items:baseline;width:100%;text-align:left;background:none;padding:18px 0;font-size:17px;line-height:1.3}.contents-list button span{font-size:11px;color:#a18764;letter-spacing:.1em}.contents-list button:hover{color:#a46746}.margin-note{border-left:1px solid var(--gold);padding-left:16px;font-style:italic;color:#8d785d}.page-body .small-copy{font-size:14px;line-height:1.6}.business-steps{padding-left:22px;margin:15px 0}.business-steps li{padding-left:5px;margin:0 0 13px;font-size:15px;line-height:1.5}.business-steps li::marker{color:#9b815d}.closing-quote{font-style:italic;font-size:25px!important;line-height:1.5!important;margin:30px 0!important}.turning-page{position:absolute;inset:0;transform-origin:left center;transform-style:preserve-3d;pointer-events:none;z-index:4;display:none}.turn-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;background-color:var(--page);box-shadow:3px 0 15px #4f433626}.turn-front{background-image:linear-gradient(90deg,#b8a58335,transparent 10%)}.turn-back{transform:rotateY(180deg);background-image:linear-gradient(90deg,transparent 90%,#b8a58335)}.turn-face .paper-page{transform:none;visibility:visible;box-shadow:none;border-radius:0;overflow:hidden}
.closed-controls,.reading-controls{display:flex;align-items:center;justify-content:center;gap:29px;margin:25px auto 0;min-height:44px}.text-link{background:none;font-size:12px;text-transform:uppercase;letter-spacing:.14em;padding:10px 0;border-bottom:1px solid #aa957299;transition:color .25s}.text-link:hover{color:#ad7950}.text-link span{margin-left:8px;color:#a48659}.control-divider{height:30px;width:1px;background:#b7a48477}.edition{font-size:12px;color:#857d6e;font-style:italic}.reading-controls{max-width:calc(var(--page-width)*2);justify-content:space-between}.utility-button{background:none;font-size:13px;padding:10px 0;color:#766e61}.utility-button:hover{color:var(--ink)}.utility-button span{margin:0 5px}.page-navigation{display:flex;align-items:center;gap:20px}.page-arrow{background:none;padding:8px 11px;font-size:25px;line-height:1;transition:transform .2s,color .2s}.page-arrow:disabled{color:#beb5a7}.page-arrow:not(:disabled):hover{color:#a06143;transform:translateX(2px)}.page-arrow:first-child:not(:disabled):hover{transform:translateX(-2px)}.page-position{font-size:12px;letter-spacing:.1em;text-align:center;min-width:110px;color:#847764}.interaction-hint{text-align:center;font-size:12px;color:#a09583;margin:18px 0 0;font-style:italic}.desk-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;padding:18px 4.2vw 28px;position:relative;z-index:0}.credo{font-size:11px;line-height:1.65;letter-spacing:.14em;text-transform:uppercase;color:#6e716a;margin:0}.credo span{font-size:10px;letter-spacing:.09em}.location{display:flex;align-items:center;gap:20px;color:#9d8b70}.compass{font-size:67px;line-height:1;font-weight:400;color:#b8a68a;opacity:.85}.location p{font-size:10px;line-height:1.9;letter-spacing:.15em;text-transform:uppercase}.location p span{font-size:9px}.no-script{max-width:600px;margin:3rem auto;background:var(--page);padding:30px;font-size:18px;line-height:1.6}
body::before{background-image:linear-gradient(#f3eee41c,#f3eee428),url('assets/ivory-landscape.webp');background-size:cover;background-position:left bottom;opacity:.74}
.desk[data-state='open'] .front-cover{z-index:0}
.cover-emblem{filter:grayscale(1) invert(1) contrast(2) brightness(1.5) sepia(.7)}
.cover-back img{filter:grayscale(1) invert(1) contrast(2) brightness(1.35) sepia(.7)}
.paper-page{background-image:linear-gradient(90deg,#ae9c793d,transparent 9%,transparent 95%,#cdbb9d20),url('assets/ivory-landscape.webp');background-size:100% 100%,1800px auto;background-position:center,right top}
.left-page{background-image:linear-gradient(90deg,#d5c4a514,transparent 7%,transparent 89%,#ad9c7e33),url('assets/ivory-landscape.webp');background-size:100% 100%,1800px auto;background-position:center,right top}
.paper-page{touch-action:pan-y}
.title-page .title-place{padding-top:18px}
.book-stage{touch-action:pan-y}
.desk[data-busy='true'] .page-arrow,.desk[data-busy='true'] .utility-button{pointer-events:none}
.book.is-turning .paper-page{pointer-events:none}
.print-heading{display:none}
@media(min-width:1100px) and (min-height:900px){.desk{padding-top:45px}.desk-footer{padding-top:35px}}
@media(max-width:1000px){:root{--page-width:clamp(320px,40vw,410px)}.masthead{gap:28px;padding:30px 5vw 15px}.motto{display:none}.site-nav{gap:28px}.nav-item{font-size:12px}.desk{padding-top:30px}.page-body p{font-size:15px;line-height:1.55}.page-body{padding-top:23px}.page-body h2{font-size:25px;margin-bottom:19px}.cover-type{font-size:14px}.cover-title{font-size:13px}}
@media(max-width:720px){:root{--page-width:min(82vw,390px);--page-height:calc(var(--page-width)*1.4);--open-duration:1000ms}.masthead{padding:27px 7vw 16px;gap:20px}.brand{width:180px}.site-nav{gap:0}.nav-item{font-size:10px;letter-spacing:.12em}.site-nav #approach-button{display:none}.desk{padding:28px 16px 0}.book-stage{perspective:1400px}.desk[data-state='open'] .book,.desk[data-state='opening'] .book{transform:none}.desk[data-state='open'] .front-cover{visibility:hidden}.desk[data-state='opening'] .front-cover{transform:rotateY(-105deg);opacity:0;transition:transform var(--open-duration) ease,opacity var(--open-duration) ease}.desk[data-state='open'] .left-page{display:none}.cover-main{inset:10% 8% auto 10%}.cover-emblem{width:73%}.cover-wordmark{margin-top:9px}.ornament{margin-top:16px;margin-bottom:15px}.cover-title{margin-top:22px}.closed-controls{gap:16px;margin-top:25px;flex-wrap:wrap}.edition{font-size:11px}.control-divider{height:25px}.text-link{font-size:11px;letter-spacing:.12em}.reading-controls{max-width:var(--page-width);display:grid;grid-template-columns:1fr 1fr;gap:8px}.page-navigation{grid-row:1;grid-column:1/-1;justify-content:center;gap:25px}.utility-button{grid-row:2;font-size:12px}.utility-button:first-child{text-align:left}.utility-button:last-child{text-align:right}.page-body p{font-size:16px;line-height:1.58}.page-body h2{font-size:27px}.page-body{padding-top:24px}.page-running{font-size:9px}.desk-footer{padding:36px 7vw 25px}.credo{font-size:9px}.credo span{display:none}.location{gap:12px}.location .compass{font-size:45px}.location p{font-size:9px}.location p span{display:none}.interaction-hint{margin-top:16px;font-size:11px}}
@media(max-width:380px){.masthead{padding-left:6vw;padding-right:6vw}.brand{width:152px}.nav-item{font-size:9px}.cover-imprint{font-size:10px}.cover-title{font-size:11px;margin-top:16px}.cover-type{font-size:12px}.cover-main .ornament{margin:12px auto}.closed-controls{gap:12px}.edition{font-size:10px}.paper-page{padding:8%}.page-body h2{font-size:25px}.page-body p{font-size:16px}.title-page .subtitle{font-size:15px}.title-page .memo-label{font-size:10px}.contents-list button{font-size:16px;padding:15px 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.nav-item,.text-link,.utility-button{font-size:14px}
.page-running,.page-folio,.page-position,.interaction-hint,.edition,.credo,.credo span,.location p,.location p span,.cover-imprint,.cover-imprint span,.contents-list button span,.title-page .memo-label,.title-page .title-place{font-size:12px}
.page-body p{font-size:16px}
.page-body .lead{font-size:20px}
.page-body .small-copy{font-size:14px}
.left-page{transform:translateX(-100%) translateZ(1px)}
@media(max-width:720px){.closed-controls{flex-direction:column;gap:12px}.control-divider{display:none}.site-nav .nav-item{font-size:12px}.paper-page .page-body h2{font-size:26px}.credo,.location p{font-size:12px}.page-body .title-page h2{font-size:22px}.cover-type,.cover-title{font-size:12px}.desk-footer{padding-top:28px}}

/* Keep the desk inscriptions attached to the viewport at every zoom level. */
.desk-footer{position:fixed;inset:auto 0 0;padding:0 4.2vw 28px;pointer-events:none}
.location p{margin:0}
@media(max-width:720px){.desk-footer{padding:0 7vw 25px}}

/* The opening leaf is plain text, spaced across the available page. */
.paper-page:has(.intro-page){padding:8% 10% 6%}
.paper-page:has(.intro-page) .page-body{padding-top:0;flex:1 0 auto;display:flex;min-height:auto}
.page-body .intro-page{flex:1;display:flex;flex-direction:column;justify-content:flex-start;gap:calc(var(--page-width)*.025)}
.page-body .intro-page p{font-size:calc(var(--page-width)*.038);line-height:1.55;margin:0}
.paper-page:has(.intro-page) .page-folio{margin-top:calc(var(--page-width)*.045);padding-top:0}

/* Contact action in the memo masthead. */
.masthead .contact-button{margin-left:auto;flex-shrink:0;display:inline-flex;align-items:center;min-height:44px;padding:0;color:var(--ink);font-size:14px;letter-spacing:.04em;text-decoration:none}
.masthead .contact-button:hover{color:var(--terracotta);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
