*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#16090f;color:#f7efe5;font-family:"DM Sans",sans-serif;line-height:1.7;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 0%,#55203366,transparent 48%),radial-gradient(ellipse at 80% 70%,#3c132766,transparent 38%)}.ambient{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.ambient span{position:absolute;width:3px;height:3px;background:#d9b56b;border-radius:50%;opacity:.5;animation:float 12s infinite ease-in-out}.ambient span:nth-child(1){left:12%;top:24%}.ambient span:nth-child(2){left:83%;top:18%;animation-delay:2s}.ambient span:nth-child(3){left:70%;top:75%;animation-delay:4s}.ambient span:nth-child(4){left:23%;top:84%;animation-delay:1s}.ambient span:nth-child(5){left:50%;top:45%;animation-delay:3s}@keyframes float{0%,100%{transform:translateY(0);opacity:.15}50%{transform:translateY(-25px);opacity:.8}}main,footer{position:relative;z-index:1}.section{padding:100px 22px;max-width:900px;margin:auto}.hero{min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding-top:70px;padding-bottom:55px}.eyebrow,.section-label,.scroll-note,.surprise-label{font-size:.64rem;letter-spacing:.22em;color:#c8a66c}.eyebrow{display:flex;align-items:center;gap:12px}.line{width:25px;height:1px;background:#9e7b48}.halo{margin-top:46px;width:74px;height:74px;border:1px solid #b89a624f;border-radius:50%;display:grid;place-items:center;color:#d7b773;font-size:1.6rem;box-shadow:0 0 45px #a777321a}.small-script{font-family:"Cormorant Garamond",serif;font-size:1.3rem;font-style:italic;color:#d9b98a;margin:24px 0 6px}h1,h2{font-family:"Cormorant Garamond",serif;font-weight:500;line-height:.98;margin:12px 0 20px}h1{font-size:clamp(3.8rem,14vw,7.3rem);letter-spacing:-.04em}h1 em,h2 em{color:#d7b16a;font-weight:400}h2{font-size:clamp(2.7rem,9vw,4.6rem)}.intro{color:#d4c4c3;font-size:.94rem;max-width:330px;margin:14px auto 32px}.primary-btn,.surprise-btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 23px;border:1px solid #b8955c;background:#b8955c;color:#1b0c11;text-decoration:none;font:600 .8rem "DM Sans",sans-serif;letter-spacing:.05em;cursor:pointer;transition:transform .25s,background .25s}.primary-btn:hover,.surprise-btn:hover{transform:translateY(-3px);background:#e0c58f}.primary-btn span{font-size:1.1rem}.scroll-note{margin-top:70px;font-size:.55rem}.portrait-section{text-align:center}.section-label{margin-bottom:35px}.portrait-frame{width:min(100%,340px);margin:0 auto 22px;position:relative;padding:10px;border:1px solid #9c7b4d77;background:#211017}.portrait-frame img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.portrait-placeholder{aspect-ratio:4/5;display:flex;flex-direction:column;justify-content:center;align-items:center;background:linear-gradient(145deg,#3b1b2a,#1b0d14);color:#d8bb88}.portrait-symbol{font-size:3.5rem}.portrait-placeholder p{font-family:"Cormorant Garamond",serif;font-size:1.5rem;margin:8px}.portrait-placeholder small{font-size:.67rem;padding:0 12px;color:#c7b2b0}.frame-corner{position:absolute;width:28px;height:28px;border-color:#d5b574;border-style:solid}.top-left{top:0;left:0;border-width:1px 0 0 1px}.bottom-right{bottom:0;right:0;border-width:0 1px 1px 0}.center-copy{max-width:430px;color:#cdbdbb;margin:25px auto}.tiny-star{color:#c5a264;letter-spacing:.4em;margin-top:28px}.letter-section{max-width:760px}.letter-card{background:linear-gradient(135deg,#f5ebdc,#e9d8c1);color:#35202a;padding:clamp(24px,6vw,56px);box-shadow:0 22px 70px #0004;position:relative}.letter-card:before{content:"";position:absolute;inset:8px;border:1px solid #a98b5a66;pointer-events:none}.letter-top{font-family:"Cormorant Garamond",serif;font-size:1.65rem;color:#6c2b3d;margin-bottom:25px}.letter-top span,.letter-signature span{color:#8c3045}.letter-body p{font-size:.91rem;line-height:1.9;margin:0 0 17px}.italic-line{font-family:"Cormorant Garamond",serif;font-size:1.65rem!important;font-style:italic;color:#7a3445}.letter-signature{text-align:right;font-family:"Cormorant Garamond",serif;font-size:1.8rem;font-style:italic;margin-top:25px}.memory-section{text-align:center;max-width:700px}.memory-mark{font-family:"Cormorant Garamond",serif;font-size:6rem;color:#b78f54;line-height:.7}.memory-section h2{margin:20px 0 28px}.memory-section>p{max-width:570px;margin:0 auto 20px;color:#d4c4c3}.english-line{font-family:"Cormorant Garamond",serif;font-style:italic;color:#d9b98a!important;font-size:1.3rem}.gold-rule{width:55px;height:1px;background:#b8955c;margin:38px auto 0}.music-section{max-width:720px}.music-section h2{text-align:center;margin-bottom:35px}.music-section>.small-script{text-align:center}.song-card{display:flex;align-items:center;gap:15px;padding:18px 15px;border:1px solid #98754c70;background:#25121c;margin:14px 0}.song-number{font-size:.7rem;color:#c8a66c}.vinyl{flex:0 0 54px;width:54px;height:54px;border-radius:50%;background:repeating-radial-gradient(circle,#27131d 0 4px,#5b3140 5px 6px);display:grid;place-items:center;border:1px solid #ad8a58}.vinyl span{width:17px;height:17px;border-radius:50%;background:#c6a46b;color:#25121c;display:grid;place-items:center;font-size:.75rem}.song-info{flex:1;min-width:0;display:flex;flex-direction:column}.song-info strong{font-family:"Cormorant Garamond",serif;font-size:1.25rem;font-weight:600}.song-info span{font-size:.75rem;color:#c4b2b3}.song-btn{width:38px;height:38px;border-radius:50%;border:1px solid #c7a56a;color:#e0c58f;text-decoration:none;display:grid;place-items:center;font-size:.8rem;flex-shrink:0}.surprise-wrap{margin-top:42px;text-align:center}.surprise-label{font-size:.58rem;margin-bottom:15px}.surprise-btn{background:transparent;color:#e4c991}.surprise-song{margin-top:20px;text-align:left}.surprise-note{color:#d4c4c3;font-family:"Cormorant Garamond",serif;font-style:italic;text-align:center}.closing-section{text-align:center;max-width:700px;padding-bottom:80px}.closing-star{color:#d7b16a;font-size:2rem}.closing-section>p:not(.small-script){max-width:500px;color:#d4c4c3;margin:0 auto 28px}.whatsapp-btn{margin:4px auto 12px;background:#b8955c}.text-btn{display:block;margin:10px auto;background:none;border:0;border-bottom:1px solid #8e6e4b;color:#e2c995;padding:10px 4px;font:inherit;font-size:.82rem;cursor:pointer}.meet-message{padding:18px;border:1px solid #94754c;color:#eadac5!important;font-family:"Cormorant Garamond",serif;font-size:1.25rem}.final-signature{margin-top:55px;font-family:"Cormorant Garamond",serif;color:#d2bca7;font-size:1rem}.final-signature em{display:inline-block;margin-top:5px;font-size:2.6rem;color:#d7b16a}.end-heart{color:#b95062;margin-top:30px}footer{text-align:center;padding:25px 15px 35px;font-size:.58rem;letter-spacing:.2em;color:#9d8187;border-top:1px solid #5e344344}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}@media(min-width:700px){.section{padding-top:125px;padding-bottom:125px}.hero{padding-top:80px;padding-bottom:60px}.letter-body p{font-size:1rem}.song-card{padding:20px 24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
