@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600;1,700&family=DM+Sans:wght@400;500;600&display=swap";:root{--ink:#261524;--rose:#f3a6c8;--deep:#c94f82;--paper:#fff6f8;--cherry:#a62c4c;--lilac:#dcd0e6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif}button{font:inherit;cursor:pointer}main{position:relative;overflow:hidden}.noise{pointer-events:none;opacity:.035;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");position:fixed;inset:0}.topbar{height:66px;color:var(--cherry);letter-spacing:.08em;border-bottom:1px solid #26152424;justify-content:space-between;align-items:center;padding:0 clamp(22px,6vw,82px);font-size:11px;display:flex}.topbar-mark{align-items:center;gap:7px;font-weight:600;display:flex}.topbar-date{opacity:.65}.hero{grid-template-columns:minmax(0,1fr) minmax(280px,.88fr);align-items:center;gap:7vw;max-width:1280px;min-height:calc(100vh - 66px);margin:auto;padding:clamp(50px,8vw,120px) clamp(22px,7vw,100px) 90px;display:grid;position:relative}.hero-copy{z-index:2;max-width:560px;position:relative}.eyebrow{color:var(--deep);letter-spacing:.12em;margin:0 0 23px;font-size:11px;font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.045em;font-family:Cormorant Garamond,serif;font-weight:600;line-height:.88}h1{margin-bottom:30px;font-size:clamp(61px,9vw,124px)}h1 em,h2 em{color:var(--deep);font-weight:500}.hero-intro{color:#261524b8;max-width:340px;margin-bottom:32px;font-size:15px;line-height:1.7}.primary-button{background:var(--ink);color:var(--paper);border:0;border-radius:100px;align-items:center;gap:20px;padding:14px 17px 14px 22px;font-size:13px;font-weight:600;transition:transform .25s,background .25s;display:inline-flex}.primary-button:hover,.primary-button:focus-visible{background:var(--cherry);transform:translateY(-2px)}.primary-button svg{background:var(--rose);color:var(--ink);border-radius:50%;width:25px;height:25px;padding:4px}.scroll-hint{color:var(--deep);background:0 0;border:0;align-items:center;gap:8px;margin-left:20px;padding:18px 0;font-size:11px;display:flex}.hero-art{aspect-ratio:.82;background:#ead8e6;justify-self:end;width:min(100%,470px);position:relative;overflow:hidden;transform:rotate(3.5deg);box-shadow:18px 20px #c94f821a}.orb{filter:blur(1px);border-radius:50%;position:absolute}.orb-one{aspect-ratio:1;background:var(--rose);width:82%;top:-16%;right:-16%}.orb-two{aspect-ratio:1;background:#c7b5d2;width:72%;bottom:-21%;left:-18%}.paint-stroke{background:var(--cherry);opacity:.76;mix-blend-mode:multiply;border-radius:50% 20%;width:130%;height:36%;position:absolute;top:38%;left:-15%;transform:rotate(-14deg)}.hero-photo{object-fit:cover;object-position:center 28%;border:9px solid var(--paper);filter:saturate(.9)contrast(.96);width:72%;height:68%;position:absolute;top:10%;left:14%;transform:rotate(-4deg);box-shadow:10px 14px #26152424}.scribble{color:var(--ink);font:italic 19px Cormorant Garamond,serif;position:absolute}.scribble-top{top:9%;left:6%;transform:rotate(-10deg)}.scribble-bottom{text-align:right;max-width:82%;font-size:16px;line-height:1.05;bottom:5%;right:5%;transform:rotate(-4deg)}.letter-reveal{color:var(--cherry);align-items:center;gap:8px;font-family:Cormorant Garamond,serif;font-size:21px;animation:.55s both reveal;display:flex;position:absolute;bottom:23px;left:clamp(22px,7vw,100px)}@keyframes reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.section-shell{max-width:1120px;margin:auto;padding:120px clamp(22px,7vw,100px)}.constellation{border-top:1px solid #26152421;grid-template-columns:1fr 1fr;gap:8vw;display:grid}h2{margin-bottom:0;font-size:clamp(50px,6vw,82px)}.constellation-body{padding-top:38px}.constellation-body>p{max-width:350px;font-family:Cormorant Garamond,serif;font-size:25px;line-height:1.15}.sky-map{min-height:315px;color:var(--paper);background-color:#261524;background-image:radial-gradient(circle at 20% 30%,#f3a6c81f,#0000 24%),radial-gradient(circle at 80% 80%,#dcd0e61f,#0000 28%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;grid-column:1/-1;margin-top:35px;padding:20px 24px 23px;position:relative;overflow:hidden}.sky-map-heading{color:var(--rose);letter-spacing:.1em;text-transform:lowercase;z-index:1;justify-content:space-between;align-items:center;font-size:10px;display:flex;position:relative}.sky-map-heading strong{color:#fff6f8b3;letter-spacing:.14em;font-weight:500}.sky-map svg{width:100%;height:220px;margin:0 auto;display:block;overflow:visible}.constellation-line{fill:none;stroke:#f3a6c8b8;stroke-width:1px;stroke-dasharray:2 4}.constellation-line.faint{opacity:.32}.stars circle{fill:var(--paper);filter:drop-shadow(0 0 4px #f3a6c8cc)}.stars circle:nth-child(4){fill:var(--rose)}.star-glow{fill:none;stroke:var(--rose);stroke-width:1px;opacity:.45}.sky-map>p{color:#fff6f8a8;margin:0;font:italic 18px/1.05 Cormorant Garamond,serif}.trait-list{gap:22px;margin-top:45px;display:grid}.trait-list div{color:var(--deep);align-items:flex-start;gap:16px;display:flex}.trait-list span{color:var(--ink);font-size:13px;line-height:1.25}.trait-list small{color:#2615248c;font-size:11px}.memories{padding-top:50px}.memories-heading{justify-content:space-between;align-items:end;margin-bottom:45px;display:flex}.memories-heading h2{text-align:right;font-size:clamp(44px,5vw,68px)}.memory-grid{grid-template-columns:1.12fr .85fr .93fr;align-items:start;gap:18px;display:grid}.memory-card{min-width:0}.memory-card:nth-child(2){margin-top:62px}.memory-card:nth-child(3){margin-top:20px}.memory-visual{height:240px;position:relative;overflow:hidden}.memory-watercolor .memory-visual{background:#e7ceda}.memory-music .memory-visual{background:#302034}.memory-horror .memory-visual{background:#dbe1d5}.watercolor-shape{filter:blur(12px);background:radial-gradient(at 30%,#f8b0c9 0 25%,#0000 26%),radial-gradient(at 72% 24%,#c94f82 0 22%,#0000 23%),radial-gradient(at 66% 83%,#bba6c7 0 30%,#0000 31%);width:115%;height:100%;position:absolute}.memory-photo{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.music-lines{background:repeating-linear-gradient(#0000 0 18px,#f3a6c8b3 19px 20px);position:absolute;inset:23% -10%;transform:rotate(-10deg)}.music-note{color:var(--rose);font:120px Cormorant Garamond,serif;position:absolute;top:32px;left:33%}.red-balloon{background:var(--cherry);border-radius:52% 48% 50% 45%;width:105px;height:130px;position:absolute;top:28px;left:33%;transform:rotate(8deg)}.red-balloon:after{content:"";border-left:1px solid var(--cherry);height:130px;position:absolute;top:125px;left:50%}.horror-eye{color:#f5f4e8;font-size:46px;position:absolute;top:90px;left:45%}.card-number{color:var(--paper);opacity:.8;font-size:10px;position:absolute;top:14px;right:15px}.memory-copy{padding:15px 4px}.memory-copy h3{margin-bottom:8px;font:600 27px/1 Cormorant Garamond,serif}.memory-copy p{color:#26152499;font-size:12px;line-height:1.5}.playlist-link{color:var(--cherry);border:1px solid #a62c4c73;border-radius:999px;align-items:center;gap:7px;margin-top:3px;padding:8px 11px;font-size:11px;font-weight:600;text-decoration:none;transition:background .2s,color .2s,transform .2s;display:inline-flex}.playlist-link:hover,.playlist-link:focus-visible{background:var(--cherry);color:var(--paper);transform:translateY(-2px)}.final-note{padding-top:50px;padding-bottom:120px}.final-card{background:var(--ink);color:var(--paper);padding:clamp(35px,7vw,75px);position:relative;overflow:hidden}.final-card:after{content:"✦";color:var(--rose);opacity:.6;font-size:120px;position:absolute;top:10%;right:6%}.final-topline{color:var(--rose);align-items:center;gap:8px;margin-bottom:32px;font-size:11px;display:flex}.final-card h2{z-index:1;font-size:clamp(55px,7vw,92px);position:relative}.final-card h2 em{color:var(--rose)}.final-card p{color:#fff6f8b3;z-index:1;max-width:400px;margin-top:30px;font-size:14px;line-height:1.6;position:relative}.final-message{white-space:pre-line}.ghost-button{color:var(--rose);z-index:1;background:0 0;border:1px solid #f3a6c8b3;border-radius:100px;align-items:center;gap:10px;padding:12px 17px;font-size:12px;display:inline-flex;position:relative}.ghost-button:hover,.ghost-button:focus-visible{background:var(--rose);color:var(--ink)}footer{color:#26152480;letter-spacing:.04em;border-top:1px solid #26152421;justify-content:space-between;padding:25px clamp(22px,7vw,100px);font-size:10px;display:flex}button:focus-visible{outline:2px solid var(--deep);outline-offset:4px}@media (width<=760px){.topbar{height:54px}.hero{flex-direction:column;align-items:stretch;gap:48px;min-height:auto;padding-top:68px;padding-bottom:80px;display:flex}.hero-copy{max-width:none}.hero-art{align-self:flex-end;width:82%}.letter-reveal{margin-top:-20px;position:relative;bottom:auto;left:auto}.section-shell{padding-top:85px;padding-bottom:85px}.constellation{display:block}.constellation-body{padding-top:36px}.memories-heading{display:block}.memories-heading h2{text-align:left;margin-top:15px}.memory-grid{grid-template-columns:1fr 1fr;gap:24px 12px}.memory-card:first-child{grid-column:span 2}.memory-card:nth-child(2),.memory-card:nth-child(3){margin-top:0}.memory-visual{height:190px}.memory-card:first-child .memory-visual{height:260px}.final-note{padding-top:15px}.final-card{margin:0 -22px}.scribble{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
