@import"https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap";html,body{margin:0!important;padding:0!important;height:100%;width:100%;overflow-x:hidden}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,Georgia,serif;font-weight:600}@keyframes introFadeUp{0%{opacity:0;transform:translate3d(0,14px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes introScale{0%{opacity:0;transform:scale3d(.88,.88,1)}to{opacity:1;transform:scaleZ(1)}}@keyframes introFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalSlideUp{0%{opacity:0;transform:translate3d(0,36px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes modalBgIn{0%{opacity:0}to{opacity:1}}.intro-sun{opacity:0;animation:introScale .5s cubic-bezier(.25,.1,.25,1) .15s forwards;will-change:transform,opacity}.intro-title{opacity:0;animation:introFadeUp .45s cubic-bezier(.25,.1,.25,1) .4s forwards;will-change:transform,opacity}.intro-text{opacity:0;animation:introFadeUp .45s cubic-bezier(.25,.1,.25,1) .65s forwards;will-change:transform,opacity}.intro-btn{opacity:0;animation:introFadeUp .45s cubic-bezier(.25,.1,.25,1) .95s forwards;will-change:transform,opacity}.intro-container.exiting{animation:introFadeOut .35s cubic-bezier(.4,0,1,1) forwards;will-change:opacity}.login-modal-backdrop{animation:modalBgIn .2s cubic-bezier(.25,.1,.25,1) forwards}.login-modal-card{animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1) forwards;will-change:transform,opacity}.login-enter-btn-wrap{opacity:0;animation:introFadeUp .45s cubic-bezier(.25,.1,.25,1) .25s forwards;will-change:transform,opacity}@keyframes floatBounce{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-5px,0)}}.login-enter-btn{animation:floatBounce 2.5s ease-in-out infinite;will-change:transform}.login-enter-btn:hover{transform:scale(1.06)}.login-enter-btn:active{transform:scale(.96)}.modal-backdrop{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important}@keyframes animateIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.animate-in{animation:animateIn .25s cubic-bezier(.16,1,.3,1)}@keyframes slowZoom{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.vision-board-img{animation:slowZoom 20s ease-in-out infinite}.magnifier-active{cursor:none}.login-input{width:100%;padding:14px 16px;border-radius:12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:#fafaf9;font-size:14px;outline:none;transition:border-color .3s,box-shadow .3s,background .3s}.login-input::placeholder{color:#ffffff40}.login-input:focus{border-color:#fdb81359;box-shadow:0 0 0 3px #fdb8130f;background:#ffffff14}.login-submit-btn{width:100%;padding:13px 0;margin-top:4px;border-radius:12px;border:none;background:#fdb81326;color:#ffffffe6;font-size:14px;font-weight:500;cursor:pointer;transition:background .25s,box-shadow .25s}.login-submit-btn:hover{background:#fdb81340}.login-submit-btn:disabled{opacity:.5;cursor:not-allowed}.floating-enter-btn{padding:12px 36px;border-radius:9999px;background:#00000059;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);color:#ffffffe6;font-size:14px;font-weight:500;box-shadow:0 4px 24px #00000040;cursor:pointer;transition:background .3s,box-shadow .3s}.floating-enter-btn:hover{background:#00000080;box-shadow:0 8px 32px #00000059}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.dark ::-webkit-scrollbar-thumb{background:#ffffff1a}.letter-reading-bg{background:#f5f0e8;background-image:radial-gradient(ellipse at 20% 50%,rgba(139,90,43,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(139,90,43,.02) 0%,transparent 50%)}.dark .letter-reading-bg{background:#141210;background-image:radial-gradient(ellipse at 20% 50%,rgba(139,90,43,.05) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(139,90,43,.03) 0%,transparent 50%)}.letter-paper{position:relative;background:#fdfaf4;border:1px solid rgba(139,90,43,.12);border-radius:4px;padding:48px 44px;box-shadow:0 1px 3px #8b5a2b0f,0 4px 16px #8b5a2b0a,inset 0 0 80px #8b5a2b08;background-image:repeating-linear-gradient(0deg,transparent,transparent 27px,rgba(139,90,43,.03) 27px,rgba(139,90,43,.03) 28px)}.dark .letter-paper{background:#1c1a17;border-color:#8b5a2b26;box-shadow:0 1px 3px #0003,0 4px 16px #00000026,inset 0 0 80px #8b5a2b0a;background-image:repeating-linear-gradient(0deg,transparent,transparent 27px,rgba(139,90,43,.05) 27px,rgba(139,90,43,.05) 28px)}.letter-flourish{text-align:center;font-size:14px;color:#8b5a2b40;margin-bottom:28px;letter-spacing:12px}.dark .letter-flourish{color:#c49b5a33}.letter-date{text-align:right;font-family:Lora,Playfair Display,Georgia,serif;font-size:13px;font-style:italic;color:#8b6f47;opacity:.6;margin-bottom:24px}.dark .letter-date{color:#b8976a;opacity:.5}.letter-subject{font-family:Playfair Display,Georgia,serif;font-size:24px;font-weight:600;color:#3d2e1c;line-height:1.3;margin-bottom:16px}.dark .letter-subject{color:#e8dcc8}.letter-divider{width:60px;height:1px;background:#8b5a2b33;margin:20px 0 28px}.dark .letter-divider{background:#8b5a2b26}.letter-body{font-family:Lora,Georgia,serif;font-size:15px;line-height:1.9;color:#4a3c2a}.letter-body p{margin-bottom:20px;text-indent:0}.letter-body p:last-child{margin-bottom:0}.dark .letter-body{color:#c4b49a}.letter-signoff{margin-top:36px;padding-top:24px;border-top:1px solid rgba(139,90,43,.1);font-family:Lora,Georgia,serif;font-style:italic;font-size:14px;color:#6b5a3e;line-height:1.7}.dark .letter-signoff{border-top-color:#8b5a2b1a;color:#a08b6d}.letter-sender{margin-top:12px;font-style:normal;font-weight:600;font-family:Playfair Display,Georgia,serif;font-size:15px;color:#4a3c2a}.dark .letter-sender{color:#c4b49a}.letter-flourish-bottom{text-align:center;font-size:18px;color:#8b5a2b33;margin-top:32px}.dark .letter-flourish-bottom{color:#c49b5a26}@media (max-width: 640px){.letter-paper{padding:32px 28px}.letter-paper:before{left:20px}.letter-subject{font-size:20px}.letter-body{font-size:14px}}.breakdown-images-poi-collage{display:grid;gap:4px;width:100%;aspect-ratio:16 / 9;border-radius:12px;overflow:hidden}.collage-image-wrapper{position:relative;overflow:hidden;cursor:pointer;background-color:#f0f0f0}.dark .collage-image-wrapper{background-color:#1a1a1a}.collage-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.25,.1,.25,1)}.collage-image-wrapper:hover img{transform:scale(1.04)}.collage-more-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000073;color:#fff;display:flex;justify-content:center;align-items:center;font-size:1.25em;font-weight:600;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.images-1{grid-template-columns:1fr}.images-1 .collage-image-wrapper{aspect-ratio:16/10}.images-2{grid-template-columns:repeat(2,1fr)}.images-2 .collage-image-wrapper{aspect-ratio:1/1}.images-3{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.images-3 .collage-image-wrapper:nth-child(1){grid-column:1/2;grid-row:1/3}.images-4{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.images-5,.images-5plus{grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr)}.images-5 .collage-image-wrapper:nth-child(1),.images-5plus .collage-image-wrapper:nth-child(1){grid-column:1/3;grid-row:1/3}.images-5 .collage-image-wrapper:nth-child(2),.images-5plus .collage-image-wrapper:nth-child(2){grid-column:3/4;grid-row:1/2}.images-5 .collage-image-wrapper:nth-child(3),.images-5plus .collage-image-wrapper:nth-child(3){grid-column:4/5;grid-row:1/2}.images-5 .collage-image-wrapper:nth-child(4),.images-5plus .collage-image-wrapper:nth-child(4){grid-column:3/4;grid-row:2/3}.images-5 .collage-image-wrapper:nth-child(5),.images-5plus .collage-image-wrapper:nth-child(5){grid-column:4/5;grid-row:2/3}@media (max-width: 768px){.breakdown-images-poi-collage{aspect-ratio:4/3;border-radius:12px;gap:4px}}
