*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff9fc;color:#553d53;font-family:'DM Sans',sans-serif}.top{height:76px;padding:0 7%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f3e4ee;background:#fffafd}.logo{font-family:'Playfair Display',serif;font-style:italic;color:#865c85;font-size:19px}.logo span{color:#c17ba5}.logo i{font-style:normal;color:#d88db3;margin-left:5px}.admin-link,.back{font-size:11px;color:#a36e92;text-decoration:none}.hero{min-height:520px;text-align:center;padding:100px 20px 75px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 15% 20%,#f3d9ed,transparent 38%),radial-gradient(ellipse at 85% 80%,#eadcf8,transparent 36%),linear-gradient(135deg,#fff4fa,#f8effb)}.tiny-heart{font-size:10px;letter-spacing:2px;color:#b27d9d;text-transform:uppercase}.hero h1{font:500 clamp(48px,8vw,83px)/1.12 'Playfair Display',serif;color:#76547b;margin:28px 0 17px;letter-spacing:-2px}.hero h1 em{color:#c17da5}.hero>p{max-width:420px;margin:0 auto;color:#987e96;font-size:13px;line-height:1.9}.scroll{display:inline-flex;gap:24px;align-items:center;margin-top:32px;padding:13px 20px;background:#815e83;color:white;text-decoration:none;font-size:11px;border-radius:30px}.scroll span{color:#ffd8ed;font-size:16px}.hero-flower{position:absolute;right:13%;top:90px;font-size:105px;color:#c58bb41c;transform:rotate(18deg)}.moments{max-width:1100px;margin:auto;padding:85px 24px 100px}.section-title{text-align:center;margin-bottom:35px}.section-title>span{font-size:25px;color:#d38caf}.section-title p{font-size:9px;letter-spacing:2.5px;color:#b18ca8}.section-title h2{font:500 37px 'Playfair Display',serif;color:#76547b;margin:10px 0}.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.post{background:white;border:1px solid #f1e4ed;box-shadow:0 12px 35px #68425d0c;overflow:hidden}.post img{width:100%;height:240px;object-fit:cover;display:block}.post-content{padding:20px}.post h3{font:500 23px 'Playfair Display',serif;color:#805b80;margin:0 0 10px}.post p{font-size:12px;line-height:1.8;color:#927d91;white-space:pre-wrap;margin:0}.empty{text-align:center;color:#ad8da6;font:italic 16px 'Playfair Display';padding:35px}footer{text-align:center;padding:25px;background:#f8edf5;color:#9c7c95;font-size:11px}footer span{color:#d58caf}.admin-page{min-height:100vh;padding:35px 16px;background:radial-gradient(ellipse at 20% 10%,#f2dff0,transparent 40%),#fbf4fa}.admin-box{max-width:610px;margin:0 auto;background:#fffafd;padding:30px;border:1px solid #f0e1ed;box-shadow:0 15px 55px #68425d12}.admin-heading{text-align:center;padding:25px 0}.admin-heading>span{font-size:27px;color:#d18bb0}.admin-heading p{font-size:9px;letter-spacing:2px;color:#b18ca8}.admin-heading h1{font:italic 38px 'Playfair Display';color:#805b80;margin:8px}.admin-heading small{color:#a58da1;font-size:12px}form{display:grid;gap:16px}label{display:grid;gap:8px;color:#805f7e;font-size:11px;font-weight:600}input,textarea{font:13px 'DM Sans';color:#5c455a;background:#fff;border:1px solid #eadbe8;border-radius:4px;padding:12px;outline:none}input:focus,textarea:focus{border-color:#c58ab0}textarea{resize:vertical}button{border:0;border-radius:4px;padding:14px;background:linear-gradient(100deg,#88628e,#cc8bb0);color:white;font:600 12px 'DM Sans';cursor:pointer}#message{font-size:12px;color:#8b6b91;margin:0}.manage{border-top:1px solid #f0e5ef;margin-top:28px;padding-top:15px}.manage h2{font:22px 'Playfair Display';color:#805b80}.admin-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #f2e9f1}.admin-item img{width:52px;height:52px;object-fit:cover}.admin-item strong{flex:1;font:16px 'Playfair Display';color:#76547b}.admin-item button{padding:8px 10px;background:#f5e8f0;color:#9c5e83}.admin-item .delete{background:#fff0f3;color:#b45f7e}@media(max-width:700px){.posts{grid-template-columns:1fr}.post img{height:260px}.hero{min-height:470px;padding-top:85px}.hero-flower{right:-5%;top:35px}.top{padding:0 18px}.logo{font-size:15px}.moments{padding:65px 18px}.admin-box{padding:22px 18px}}
.login-gate{max-width:390px;margin:0 auto 25px}.login-gate .admin-heading{padding:15px 0}.login-gate form{display:grid;gap:15px}#loginMessage{font-size:12px;color:#b45f7e}
