*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary:#e63946;--color-secondary:#ff6b9d;--color-accent:#ffb5c5;--color-cream:#fff5f7;--color-warm-cream:#ffeef2;--color-text-dark:#2b2d42;--color-text-light:#8d99ae;--color-white:#fff;--gradient-romantic:linear-gradient(135deg,#e63946,#ff6b9d 50%,#ffb5c5);--gradient-soft:linear-gradient(135deg,#ffb5c5,#fff5f7);--gradient-overlay:linear-gradient(180deg,rgba(255,245,247,0),rgba(255,245,247,.95))}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-cream);color:var(--color-text-dark);overflow-x:hidden}html{scroll-behavior:smooth}h1{font-size:clamp(2.2rem,5vw,3.5rem);font-weight:800;line-height:1.2;background:var(--gradient-romantic);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:inline-block}h2{font-size:clamp(1.8rem,4vw,2.5rem);color:var(--color-primary);margin-bottom:1rem}h2,h3{font-weight:600}h3{font-size:clamp(1.3rem,3vw,1.8rem);color:var(--color-secondary)}p{font-size:clamp(.95rem,2vw,1.1rem);line-height:1.6;color:var(--color-text-light)}button{cursor:pointer;border:none;outline:none;font-family:inherit}.btn-primary,button{transition:all .3s ease}.btn-primary{background:var(--gradient-romantic);color:#fff;padding:.875rem 2rem;border-radius:50px;font-size:1.1rem;font-weight:600;box-shadow:0 10px 25px rgba(230,57,70,.25);display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(230,57,70,.35)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#fff;color:var(--color-primary);padding:.875rem 2rem;border-radius:50px;font-size:1rem;font-weight:600;border:2px solid var(--color-primary);transition:all .3s ease}.btn-secondary:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px)}.card{background:#fff;border-radius:24px;padding:2rem;box-shadow:0 10px 40px rgba(0,0,0,.08);transition:all .3s ease}.envelope-card{background:hsla(0,0%,100%,.92);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(255,181,197,.6);border-radius:32px;box-shadow:0 20px 50px rgba(230,57,70,.15),0 10px 20px rgba(0,0,0,.02)}.input-envelope{width:100%;height:52px;padding:0 1.25rem;background:var(--color-warm-cream);border:2px solid var(--color-accent);border-radius:16px;font-size:1rem;color:var(--color-text-dark);text-align:center;outline:none;box-sizing:border-box;transition:all .3s ease}.input-envelope:focus{border-color:var(--color-secondary);box-shadow:0 0 15px rgba(255,107,157,.25);background:#fff}.wax-seal{background:var(--gradient-romantic);box-shadow:0 6px 16px rgba(230,57,70,.35)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes petalFall{0%{top:-10%;transform:translateX(0) rotate(0deg);opacity:0}10%{opacity:.85}90%{opacity:.85}to{top:105%;transform:translateX(120px) rotate(1turn);opacity:0}}.petal{position:absolute;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:petalFall linear infinite}.fade-in{animation:fadeIn .8s ease-out}.animate-shake{animation:shake .6s cubic-bezier(.36,.07,.19,.97) both}.container{max-width:1200px;margin:0 auto;padding:0 2rem}section{padding:4rem 0}@media (min-width:768px){section{padding:6rem 0}}