:root{color-scheme:light;--paper:#faf6eb;--ink:#463423;--muted:#6e5944;--line:#d8ccba;--accent:#5c482f}
*{box-sizing:border-box}html{font-size:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65;min-height:100vh;display:flex;flex-direction:column}
a{color:inherit;text-underline-offset:.24em}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid #335f62;outline-offset:6px}
.skip{position:absolute;left:1rem;top:-6rem;background:white;padding:.75rem;z-index:2}.skip:focus{top:1rem}
.page{width:min(100% - 3rem,72rem);margin:auto;flex:1;display:grid;place-items:center;padding:3.5rem 0}
.welcome{width:100%;text-align:center;background:linear-gradient(#faf6eb80,#faf6eb80),url('assets/ivory-linen.webp') center/650px;padding:clamp(1.6rem,5vw,4.2rem) 1.5rem;border:1px solid #e3d9c9}
.artwork{display:block;width:min(100%,34rem);height:auto;margin:0 auto 2.2rem}
h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.14}h1{font-size:clamp(2.55rem,5.1vw,4.75rem);letter-spacing:-.035em;margin:0 0 1.25rem;text-wrap:balance}h2{font-size:1.65rem;margin:2rem 0 .65rem}
.intro{font-size:1.15rem;color:var(--muted);max-width:34rem;margin:0 auto 1.8rem;text-wrap:pretty}.intro span{display:block}
.contact{display:inline-flex;align-items:center;justify-content:center;min-height:3.25rem;padding:.7rem 1.65rem;background:var(--accent);border:1px solid var(--accent);color:#fffdf6;text-decoration:none;font-weight:600}.contact:hover{background:#40331f}
footer{width:min(100% - 3rem,72rem);margin:0 auto;padding:1.5rem 0 1.75rem;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.8rem}footer p{margin:0}footer nav{display:flex;flex-wrap:wrap;gap:.65rem 1.4rem}
.document{width:min(100%,48rem);padding:1rem 0 2rem}.back{display:inline-block;margin-bottom:2rem}.document h1{font-size:clamp(2.3rem,5vw,3.6rem)}.document p{max-width:67ch}.document a{overflow-wrap:anywhere}
@media(max-width:600px){.page{width:calc(100% - 2rem);padding:1.5rem 0}.welcome{padding:2rem 1rem}.artwork{margin-bottom:2rem}.intro{font-size:1rem}footer{width:calc(100% - 2rem);align-items:flex-start;flex-direction:column}footer nav{gap:.7rem 1.15rem}.document{padding:.5rem .25rem 1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
