@font-face{font-family:Instrument Serif;src:url(/fonts/InstrumentSerif-Italic.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}*{box-sizing:border-box}body{background:var(--color-bg);min-height:100vh;font-family:var(--font-mono);margin:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.book__home{z-index:3;color:var(--color-red);letter-spacing:.08em;font-size:14px;text-decoration:none;position:fixed;top:24px;left:28px}.book__home:hover{color:var(--soft-grain)}.book{place-items:center;min-height:100vh;padding:72px 16px;display:grid}.book__scene{position:relative}.book__cardback{z-index:0;opacity:.85;pointer-events:none;width:240px;position:absolute}.book__key{z-index:0;opacity:.9;pointer-events:none;width:120px;transition:opacity .8s,transform .8s;position:absolute;top:8%;left:-170px;transform:rotate(-24deg)}.book__cardback--right{transition:opacity .8s,transform .8s;bottom:8%;right:-175px;transform:rotate(11deg)}.access{z-index:1;flex-direction:column;align-items:center;gap:20px;display:flex;position:relative}.access__card{width:min(440px,92vw);position:relative}.access__art{width:100%;height:auto;display:block}.access__field{color:var(--dark-ember);transform-origin:0 100%;background:0 0;border:0;outline:0;padding:0;font-family:Instrument Serif,serif;font-size:clamp(16px,4.4cqw,21px);font-style:italic;position:absolute}.access__card{container-type:inline-size}.access__field::placeholder{color:color-mix(in srgb, var(--dark-ember) 42%, transparent)}.access__field--name{width:37%;top:41.8%;left:12.5%;transform:rotate(-8deg)}.access__field--email{width:37%;top:53.2%;left:15%;transform:rotate(-8deg)}.access__months,.access__days{position:absolute}.access__months{grid-template-columns:repeat(12,1fr);width:83.6%;height:3%;display:grid;top:75.5%;left:8.2%}.access__days{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(14,1fr);width:81%;height:10.8%;display:grid;top:84%;left:9.8%}.access__pick{appearance:none;cursor:pointer;background:0 0;border:0;padding:0;position:relative}.access__pick:before{content:"";position:absolute;inset:-7px}.access__pick:after{content:"";border:2px solid var(--color-red);opacity:0;border-radius:50%;transition:opacity .15s;position:absolute;inset:4%}.access__pick:hover:after{opacity:.35}.access__pick[aria-checked=true]:after{background:var(--color-bg);box-shadow:inset 0 1px 2px #0009, 0 0 0 1.5px color-mix(in srgb, var(--dark-ember) 35%, transparent);opacity:1;border:0;border-radius:46% 54% 50% 50%/53% 47% 56% 44%;animation:.25s cubic-bezier(.2,1.6,.4,1) punch;inset:12%}@keyframes punch{0%{transform:scale(.2)}60%{transform:scale(1.15)}to{transform:scale(1)}}.access__submit{appearance:none;border:1px solid var(--color-red);color:var(--color-red);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;padding:13px 26px;font-size:14px;transition:background .2s,color .2s}.access__submit:hover{background:var(--color-red);color:var(--soft-grain)}.access__hint{min-height:1.2em;color:var(--dust-stone);letter-spacing:.06em;margin:0;font-size:12px}.book__quote{text-align:center;letter-spacing:.06em;color:var(--soft-grain);opacity:0;filter:blur(10px);pointer-events:none;place-items:center;margin:0;padding:0 24px;font-family:Instrument Serif,serif;font-size:clamp(26px,4.5vw,44px);font-style:italic;display:grid;position:absolute;inset:0}body.is-sent{overflow:hidden}.is-sent .access{animation:1.1s cubic-bezier(.55,-.2,.75,.2) forwards card-away}.is-sent .book__key,.is-sent .book__cardback{opacity:0;transform:translateY(40px)rotate(0)}.is-sent .book__quote{animation:2.6s .9s forwards from-the-shadows}@keyframes card-away{0%{opacity:1;transform:translateY(0)rotate(0)}25%{transform:translateY(24px)rotate(-2.5deg)}to{opacity:1;transform:translateY(-125vh)rotate(10deg)}}@keyframes from-the-shadows{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur()}}@media (prefers-reduced-motion:reduce){.is-sent .access{visibility:hidden;animation:none}.is-sent .book__quote{opacity:1;filter:none;animation:none}}@media (width<=900px){.book__cardback,.book__key{display:none}.book{padding:56px 12px calc(24px + env(safe-area-inset-bottom))}.access__card{width:min(440px,94vw)}.access__submit{width:100%;max-width:320px;padding:16px 26px;font-size:15px}}
