@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;700&family=Parisienne&display=swap";:root{--pink:#f7c8d9;--rose:#d85b8a;--cream:#fffaf3;--peach:#ffe1d1;--lav:#eee1ff;--text:#50243a;--muted:#8d6375;--white:#fff;--shadow:0 22px 60px #a14a6d2e}*{box-sizing:border-box}body{color:var(--text);background:radial-gradient(circle at 0 0,#ffe0ef 0,#fffaf3 34%,#fff 68%);margin:0;font-family:Inter,system-ui,sans-serif;overflow-x:hidden}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}main{min-height:100vh;position:relative}.petals{pointer-events:none;z-index:5;position:fixed;inset:0;overflow:hidden}.petals span{color:#e68aae;opacity:.38;font-size:28px;animation:14s linear infinite fall;position:absolute;top:-10%}.petals span:first-child{animation-delay:0s;left:10%}.petals span:nth-child(2){animation-delay:5s;left:26%}.petals span:nth-child(3){animation-delay:2s;left:43%}.petals span:nth-child(4){animation-delay:8s;left:61%}.petals span:nth-child(5){animation-delay:3s;left:78%}.petals span:nth-child(6){animation-delay:10s;left:91%}@keyframes fall{to{transform:translateY(120vh)rotate(340deg)}}nav{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffaf3c7;border-bottom:1px solid #d85b8a1f;align-items:center;gap:28px;padding:18px 6vw;display:flex;position:sticky;top:0;box-shadow:0 8px 30px #d85b8a0f}nav a{color:#70455a;font-size:14px}nav a:hover{color:var(--rose)}.brand{color:var(--rose);align-items:center;gap:9px;margin-right:auto;font-family:Cormorant Garamond,serif;font-size:26px;font-weight:700;display:flex}.hero{background:linear-gradient(135deg,#ffe2eee6,#fffaf3e6 46%,#eee1ff8c),url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"120\" height=\"120\"><text x=\"10\" y=\"55\" font-size=\"30\" fill=\"%23eaa2bd\" opacity=\"0.24\">✿</text><text x=\"70\" y=\"95\" font-size=\"23\" fill=\"%23d85b8a\" opacity=\"0.18\">♡</text></svg>");grid-template-columns:1.02fr .98fr;align-items:center;gap:48px;min-height:calc(100vh - 74px);padding:56px 7vw 70px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--rose);font-size:13px;font-weight:700}.hero h1,.section h2,.because h2,.playlist h2,.letter h2{margin:0;font-family:Cormorant Garamond,serif;font-weight:700;line-height:.95}.hero h1{color:#602442;max-width:760px;font-size:clamp(62px,9vw,112px)}.lead{color:#765065;max-width:660px;font-size:22px;line-height:1.65}.heroButtons{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.heroButtons a{background:var(--rose);color:#fff;border-radius:999px;padding:15px 22px;font-weight:700;box-shadow:0 15px 35px #d85b8a42}.heroButtons .soft{color:var(--rose);background:#fff;border:1px solid #ffd2e3}.heroPhoto{box-shadow:var(--shadow);background:#ffffffb3;border-radius:42px;padding:14px;position:relative;transform:rotate(1deg)}.heroPhoto img{object-fit:cover;border-radius:32px;width:100%;height:640px}.badge{color:var(--rose);box-shadow:var(--shadow);background:#fff;border-radius:999px;align-items:center;gap:9px;padding:14px 18px;font-weight:800;display:flex;position:absolute;bottom:34px;left:-18px}.section{padding:90px 6vw}.section h2{text-align:center;font-size:58px}.section>.sub,.section>.eyebrow{text-align:center;margin-left:auto;margin-right:auto}.sub{max-width:760px;color:var(--muted);font-size:18px;line-height:1.7}.timeline{grid-template-columns:repeat(4,1fr);gap:24px;margin-top:45px;display:grid}.memory{text-align:left;box-shadow:var(--shadow);cursor:pointer;color:var(--text);background:#fff;border:0;border-radius:26px;padding:14px 14px 20px;transition:all .25s;position:relative}.memory:hover{transform:translateY(-7px)rotate(-1deg)}.memory img{object-fit:cover;border-radius:20px;width:100%;height:220px}.memory h3{color:#76314f;margin:17px 6px 6px;font-family:Cormorant Garamond,serif;font-size:26px}.memory p{color:var(--muted);margin:0 6px;line-height:1.55}.tape{background:#ffe1d1c7;border-radius:4px;width:76px;height:26px;position:absolute;top:-12px;left:50%;transform:translate(-50%)rotate(-3deg)}.shine{background:linear-gradient(135deg,#fff4f8,#fffaf3 55%,#f5ecff);padding:95px 6vw}.shineCard{text-align:center;max-width:880px;box-shadow:var(--shadow);background:#ffffffb8;border:1px solid #d85b8a24;border-radius:38px;margin:auto;padding:54px}.shineCard svg{color:var(--rose);width:42px;height:42px}.quote{color:var(--rose);margin:10px 0;font-family:Parisienne,cursive;font-size:78px}.shineCard p:not(.quote){color:#6f4157;font-size:22px;line-height:1.7}.lessonGrid{grid-template-columns:repeat(4,1fr);gap:22px;margin-top:35px;display:grid}.lesson{min-height:210px;box-shadow:var(--shadow);background:#fff;border-radius:28px;padding:30px}.lesson svg{color:var(--rose)}.lesson h3{margin:18px 0 8px;font-family:Cormorant Garamond,serif;font-size:30px}.lesson p{color:var(--muted);line-height:1.6}.because{background:#fff;grid-template-columns:.9fr 1.1fr;align-items:center;gap:45px;padding:95px 7vw;display:grid}.because img{box-shadow:var(--shadow);object-fit:cover;object-position:center;border-radius:38px;width:100%;max-height:680px}.because h2{color:#743151;font-size:64px}.because p,.because li{color:#78576a;font-size:18px;line-height:1.8}.because ul{padding-left:20px}.playlist{text-align:center;background:linear-gradient(135deg,#ffe3ef,#fff7ed);padding:80px 7vw}.playlist svg{color:var(--rose);width:46px;height:46px}.playlist h2{font-size:54px}.playlist p{color:#765065;max-width:720px;margin:15px auto;line-height:1.7}.songPills{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:24px;display:flex}.songPills span{color:#934663;background:#fff;border:1px solid #f6bfd3;border-radius:999px;padding:12px 20px;font-weight:800}.letter{grid-template-columns:1fr .82fr;align-items:center;gap:36px;padding:100px 7vw;display:grid}.paper{box-shadow:var(--shadow);background:#ffffffe0;border:1px solid #d85b8a1f;border-radius:34px;padding:50px;position:relative}.paper:before{content:"✿";color:#eaa2bd;opacity:.45;font-size:52px;position:absolute;top:22px;right:35px}.paper svg{color:var(--rose)}.paper h2{color:#73314f;font-size:64px}.paper p{color:#684658;font-size:18px;line-height:1.85}.paper h3{color:var(--rose);font-family:Cormorant Garamond,serif;font-size:34px}.signature{color:#8c3f61;font-family:Parisienne,cursive;font-size:48px}.momFinal{box-shadow:var(--shadow);border-radius:42px;transform:rotate(2deg)}footer{text-align:center;color:#9b5b74;background:#fff4f8;padding:34px}.modal{z-index:50;background:#50243a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalCard{background:#fffaf3;border-radius:30px;max-width:620px;padding:18px 18px 28px;position:relative;box-shadow:0 30px 90px #00000040}.modalCard img{object-fit:cover;border-radius:22px;width:100%;max-height:520px}.modalCard h2{color:#743151;margin:18px 8px 5px;font-family:Cormorant Garamond,serif;font-size:42px}.modalCard p{color:#765065;margin:0 8px;line-height:1.7}.close{color:var(--rose);cursor:pointer;background:#fff;border:0;border-radius:999px;place-items:center;padding:9px;display:grid;position:absolute;top:15px;right:15px;box-shadow:0 8px 22px #0000001f}@media (width<=950px){nav a{display:none}.hero,.because,.letter{grid-template-columns:1fr}.heroPhoto img{height:500px}.timeline,.lessonGrid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.hero{padding:42px 5vw}.hero h1{font-size:58px}.heroPhoto img{height:420px}.timeline,.lessonGrid{grid-template-columns:1fr}.section h2,.because h2,.playlist h2,.paper h2{font-size:44px}.quote{font-size:54px}.paper{padding:30px}.letter{padding:70px 5vw}}
