html{scroll-behavior:smooth}body{color:#eee5d5;background:#181b25;margin:0;font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.siteShell{background:radial-gradient(circle at 50% 8%,#2b2c43 0,#181b25 45%);min-height:100vh}.topbar{letter-spacing:.04em;border-bottom:1px solid #ffffff21;justify-content:space-between;align-items:center;height:82px;padding:0 clamp(22px,5vw,88px);font-family:Arial,sans-serif;font-size:.82rem;display:flex}.brand{letter-spacing:0;white-space:nowrap;font-family:Georgia,serif;font-size:1.3rem;font-weight:700}.brandIcon{color:#c9a9e7;vertical-align:-2px;margin-right:10px;font-size:1.7rem}.topbar nav{gap:32px;display:flex}.topbar a:hover{color:#d4b9ed}.bookLayout{grid-template-columns:minmax(80px,1fr) minmax(0,730px) minmax(80px,1fr);gap:20px;max-width:1510px;margin:auto;display:grid}.leftRail{color:#a49bb2;border-right:1px solid #ffffff17;margin-top:65px;position:relative}.verticalText{writing-mode:vertical-rl;letter-spacing:.25em;margin:60px auto;font:.7rem Arial,sans-serif;display:block;transform:rotate(180deg)}.railStar{color:#c4a8dc;font-size:2rem;position:absolute;bottom:25px;left:50%}.mainColumn{padding:80px 20px 120px}.eyebrow{letter-spacing:.25em;color:#bfaad4;justify-content:center;align-items:center;gap:15px;font:.7rem Arial,sans-serif;display:flex}.line{background:#a38cbe;width:37px;height:1px}.dateLine{text-align:center;color:#b6adbb;letter-spacing:.07em;margin:22px 0 36px;font:.85rem Arial,sans-serif}.letter{color:#282536;background:#f0e9da;padding:36px clamp(32px,6vw,72px) 0;position:relative;box-shadow:0 28px 70px #06071366,0 0 0 1px #fff4}.letter:before{content:"";pointer-events:none;border:1px solid #b8a99866;position:absolute;inset:8px}.letterTop{letter-spacing:.2em;color:#85738c;border-bottom:1px solid #b9ab9b;justify-content:space-between;padding-bottom:22px;font:.7rem Arial,sans-serif;display:flex}.letterTop span:last-child{color:#88699c;font-size:1.3rem}.letter h1{letter-spacing:-.045em;max-width:600px;margin:60px 0 32px;font-size:clamp(2.5rem,5vw,4.35rem);font-weight:400;line-height:1.05}.letterBody{white-space:normal;max-width:590px;font-size:clamp(1.1rem,1.75vw,1.3rem);line-height:1.75}.letterBody p{margin:0 0 1.3em}.signature{color:#594269;flex-direction:column;gap:8px;margin:54px 0 50px;font-size:1.05rem;font-style:italic;display:flex}.signature strong{font-family:Georgia,serif;font-size:2rem;font-weight:400}.letterFoot{letter-spacing:.1em;text-transform:uppercase;color:#85738c;border-top:1px solid #b9ab9b;justify-content:space-between;padding:22px 0;font:.7rem Arial,sans-serif;display:flex}.rightRail{color:#b9acc7;border-left:1px solid #ffffff17;margin-top:65px;padding:110px 25px}.starLarge{color:#ba9fce;font-size:3rem}.rightRail p{max-width:180px;margin:40px 0;font-size:1.5rem;font-style:italic;line-height:1.4}.ornament{letter-spacing:.3em;color:#9b83aa;font-size:1.2rem}.shelf{padding-top:100px}.shelfHeader{border-bottom:1px solid #ffffff45;justify-content:space-between;align-items:end;margin-bottom:20px;padding-bottom:23px;display:flex}.sectionLabel{letter-spacing:.23em;color:#bda4d7;font:.7rem Arial,sans-serif}.shelf h2,.scheduled h2{margin:10px 0 0;font-size:2rem;font-weight:400}.shelfCount{letter-spacing:.14em;color:#968e9c;font:.67rem Arial,sans-serif}.shelfGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.shelfCard{background:#242635;border:1px solid #77708055;flex-direction:column;min-height:170px;padding:22px;transition:background .2s,transform .2s;display:flex}.shelfCard:hover{background:#333347;transform:translateY(-3px)}.shelfNumber,.shelfBottom{letter-spacing:.08em;color:#ae9db8;font:.72rem Arial,sans-serif}.shelfTitle{margin:auto 0;font-size:1.6rem;line-height:1.15}.shelfBottom{justify-content:space-between;display:flex}.shelfBottom span{font-size:1rem}footer{text-align:center;color:#978e9f;border-top:1px solid #ffffff20;padding:30px;font-size:.9rem;font-style:italic}.entry{background:radial-gradient(circle,#363146,#161925 68%);place-items:center;min-height:100vh;padding:28px;display:grid}.entryCard{color:#292332;background:#eee7d9;border:8px double #bcaeba;max-width:540px;padding:clamp(36px,7vw,80px);box-shadow:0 25px 80px #080913aa}.smallMark{color:#7b598f;letter-spacing:.25em;font:.7rem Arial,sans-serif}.entry h1{letter-spacing:-.05em;margin:35px 0 23px;font-size:clamp(3rem,8vw,5rem);font-weight:400;line-height:1.03}.entry p{margin-bottom:35px;font-size:1.2rem;line-height:1.6}.button{color:#fff;letter-spacing:.07em;cursor:pointer;background:#4b365e;border:0;justify-content:space-between;align-items:center;gap:40px;padding:17px 22px;font:.83rem Arial,sans-serif;display:inline-flex}.button:hover{background:#684a80}.deskShell{background:radial-gradient(circle at 50% 0,#292a3d,#181b25 55%);min-height:100vh}.deskContent{max-width:810px;margin:auto;padding:80px 25px 140px}.deskContent h1{margin:13px 0 20px;font-size:clamp(2.7rem,6vw,4.6rem);font-weight:400}.deskIntro{color:#c9c0cd;max-width:650px;font-size:1.15rem;line-height:1.65}.writeForm{color:#2e2933;background:#eee7da;gap:25px;margin-top:45px;padding:clamp(25px,5vw,48px);display:grid}.writeForm label{text-transform:uppercase;letter-spacing:.14em;gap:9px;font:.77rem Arial,sans-serif;display:grid}.writeForm input,.writeForm select,.writeForm textarea{color:#292332;letter-spacing:0;text-transform:none;background:#fffbf4;border:1px solid #bcb0af;border-radius:0;width:100%;padding:14px;font:1.05rem Georgia,serif}.writeForm textarea{resize:vertical;line-height:1.6}.writeForm .button{justify-self:start}.formRow{grid-template-columns:1fr 1fr;gap:20px;display:grid}.scheduled{margin-top:80px}.scheduledList{border-top:1px solid #ffffff30;margin-top:25px}.scheduledItem{border-bottom:1px solid #ffffff30;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;display:flex}.scheduledItem>div{gap:5px;display:grid}.scheduledItem time,.scheduledItem span{color:#ae9bbd;font:.75rem Arial,sans-serif}.scheduledItem strong{font-size:1.25rem;font-weight:400}.scheduledItem button{color:#d3b6cd;cursor:pointer;background:0 0;border:1px solid #ffffff50;padding:8px 12px}.notice{background:#3d4750;padding:14px 18px}.error{color:#ffd2d2;font:1rem Arial,sans-serif}.muted{color:#aca0b4}.pastContent{max-width:770px;margin:auto;padding:75px 25px 120px}@media (width<=900px){.bookLayout{grid-template-columns:1fr}.leftRail,.rightRail{display:none}.mainColumn{width:100%;max-width:730px;margin:auto;padding-top:65px}}@media (width<=600px){.topbar{height:72px;padding:0 19px}.brand{font-size:1.05rem}.brandIcon{margin-right:5px;font-size:1.4rem}.topbar nav{gap:14px;font-size:.72rem}.mainColumn{padding:55px 14px 90px}.letter{padding:26px 28px 0}.letter h1{margin:42px 0 28px}.letterFoot{gap:10px;font-size:.58rem}.shelf{padding-top:75px}.shelfGrid{grid-template-columns:1fr}.shelfCard{min-height:138px}.shelfCount{display:none}.formRow{grid-template-columns:1fr}.deskContent{padding-top:55px}}.scrollExperience{perspective:1000px}.scrollExperience .letter{display:none}.scrollExperience.isOpen .letter{transform-origin:50%;animation:1.1s cubic-bezier(.19,.72,.22,1) both unfoldLetter;display:block}.sealedNote{color:#342939;background:linear-gradient(90deg,#d6c6b1 0%,#eee5d5 5%,#f4ead9 48%,#e9dcc7 95%,#cbb9a8 100%);border-top:12px solid #c8b19f;border-bottom:12px solid #c3ad9b;flex-direction:column;min-height:490px;padding:33px clamp(28px,5vw,57px);display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #08091477,inset 0 0 38px #92735b30}.sealedNote:before,.sealedNote:after{content:"";pointer-events:none;background:linear-gradient(#6e554e26,#0000);height:26px;position:absolute;left:0;right:0}.sealedNote:before{top:0}.sealedNote:after{bottom:0;transform:rotate(180deg)}.sealedTop,.sealedBottom{letter-spacing:.2em;color:#82698d;justify-content:space-between;font:.7rem Arial,sans-serif;display:flex}.sealedBottom{border-top:1px solid #a18a9259;justify-content:center;padding-top:23px}.sealedCentre{text-align:center;flex-direction:column;align-items:center;margin:auto;display:flex}.sealedLabel{letter-spacing:-.045em;margin-bottom:20px;font-size:clamp(2.2rem,5vw,3.6rem);font-style:italic}.sealedCentre p{color:#705c72;margin:24px 0 0;font-size:1rem;font-style:italic}.bowButton{color:#594269;cursor:pointer;letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;flex-direction:column;align-items:center;gap:8px;padding:5px 18px 12px;font:.75rem Arial,sans-serif;display:flex}.bowButton:hover .bowGlyph,.bowButton:focus-visible .bowGlyph{transform:translateY(-5px)rotate(-8deg)scale(1.1)}.bowButton:focus-visible{outline-offset:4px;outline:2px solid #594269}.bowGlyph{filter:drop-shadow(0 8px 7px #8f536052);font-size:4.5rem;line-height:1.2;transition:transform .3s}.letter h1:focus{outline:none}@keyframes unfoldLetter{0%{opacity:0;filter:brightness(.78);transform:scaleY(.07)rotateX(18deg)}48%{opacity:1;filter:brightness(1.04);transform:scaleY(.78)rotateX(4deg)}to{opacity:1;filter:brightness();transform:scaleY(1)rotateX(0)}}.formHint{color:#6f536d;letter-spacing:0;margin:-4px 0 0;font:.88rem/1.5 Arial,sans-serif}.scheduledActions{align-items:center;gap:10px;font:.8rem Arial,sans-serif;display:flex}.scheduledActions>a{color:#fff;background:#624775;padding:9px 13px}.scheduledActions>a:hover{background:#795992}@media (width<=600px){.sealedNote{min-height:430px}.bowGlyph{font-size:3.8rem}.sealedTop,.sealedBottom{font-size:.58rem}}@media (prefers-reduced-motion:reduce){.scrollExperience.isOpen .letter{animation:none}.bowGlyph,.shelfCard{transition:none}}.scrollExperience.isOpen .letter{filter:none;animation:1.35s cubic-bezier(.45,0,.16,1) both unravelPage;display:block;transform:none}.unravellingScroll{background:#f0e9da;position:relative;overflow:hidden;box-shadow:0 28px 70px #06071366}.scrollRoll{z-index:3;pointer-events:none;background:linear-gradient(#b49e88 0%,#f8efdf 18%,#e7d8c4 45%,#aa8d79 76%,#71594e 100%);border-radius:50%/35%;height:32px;position:absolute;left:0;right:0;box-shadow:0 8px 13px #3a252e5c,inset 0 2px 3px #fff8}.scrollRollTop{animation:1.3s cubic-bezier(.45,0,.16,1) both travelTop}.scrollRollBottom{animation:1.3s cubic-bezier(.45,0,.16,1) both travelBottom}.releasedBow{z-index:4;filter:drop-shadow(0 6px 6px #6d425744);pointer-events:none;font-size:4.4rem;line-height:1;animation:.85s ease-in both releaseBow;position:absolute;top:50%;left:50%}@keyframes unravelPage{0%{clip-path:inset(49% 0);opacity:.75}20%{opacity:1}to{clip-path:inset(0);opacity:1}}@keyframes travelTop{0%{top:calc(50% - 32px)}95%{opacity:1}to{opacity:0;top:-34px}}@keyframes travelBottom{0%{bottom:calc(50% - 32px)}95%{opacity:1}to{opacity:0;bottom:-34px}}@keyframes releaseBow{0%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}45%{opacity:1;transform:translate(-50%,-90%)scale(1.2)rotate(-17deg)}to{opacity:0;transform:translate(-50%,-210%)scale(.5)rotate(-40deg)}}@media (prefers-reduced-motion:reduce){.scrollExperience.isOpen .letter,.scrollRoll,.releasedBow{animation:none}.scrollRoll,.releasedBow{display:none}}.topbar nav button,.backButton,.authLinks button{color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;background:0 0;border:0;padding:0}.topbar nav button:hover,.backButton:hover,.authLinks button:hover{color:#d4b9ed}.shelfCard{text-align:left;color:inherit;cursor:pointer;font-family:Georgia,serif}.authForm{gap:18px;margin-top:25px;display:grid}.authForm label{letter-spacing:.09em;text-transform:uppercase;gap:7px;font:.78rem Arial,sans-serif;display:grid}.authForm input{color:#2c2332;background:#fffaf2;border:1px solid #bab;width:100%;padding:14px;font:1rem Arial,sans-serif}.authForm .button{justify-self:start}.authLinks{color:#60446c;gap:20px;margin-top:20px;font:.82rem Arial,sans-serif;display:flex}.authError,.appError{color:#9e2f46;font:.9rem Arial,sans-serif}.authNotice,.appNotice{color:#335e4b;font:.9rem Arial,sans-serif}.appError,.appNotice{background:#eee7da;max-width:730px;margin:20px auto;padding:14px 22px}.appNotice{background:#dcebdc}.backButton{color:#c5aad4;margin:28px auto;display:block}.scheduledActions button{color:#eadcf1;cursor:pointer;background:0 0;border:1px solid #aa94b8;padding:9px 13px}.scheduledActions button:hover{background:#5b426d}.scheduledActions button:first-child{background:#624775}.waitingNote{color:#362b3e;text-align:center;background:#eee7da;flex-direction:column;justify-content:center;align-items:center;min-height:360px;padding:70px 35px;display:flex;box-shadow:0 25px 60px #090a144e}.waitingNote span{color:#816499;font-size:2rem}.waitingNote h1{margin:25px 0 12px;font-size:clamp(2rem,5vw,3rem);font-weight:400}.waitingNote p{color:#706078;font-size:1.1rem;font-style:italic}.letterBody p{white-space:pre-wrap;overflow-wrap:anywhere}.googleButton{gap:16px;width:100%;margin-top:28px}.googleButton .googleMark{color:#4285f4;background:#fff;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;font:700 1rem Arial,sans-serif;display:inline-grid}.googleButton>span:last-child{margin-left:auto}.emailFallback{color:#60446c;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin-top:18px;padding:0;font:.82rem Arial,sans-serif;text-decoration:underline;display:block}.emailFallback:hover{color:#372744}
