@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;700&family=Caveat:wght@400;700&family=Shadows+Into+Light&display=swap");body{margin:0;padding:0;background-color:#121217;color:#ffffff;overflow-x:hidden;font-family:Shadows Into Light,cursive;font-size:24px}.hero-container{min-height:80vh;align-items:center;flex-direction:column;padding:40px 20px}.envelope-wrapper,.hero-container{display:flex;justify-content:center}.envelope-wrapper{background:#BC2C1A;height:200px;width:300px;position:relative;z-index:0;cursor:pointer;transition:transform .3s ease}.envelope-wrapper:hover{transform:translateY(-10px)}.envelope{position:relative;background-color:#BC2C1A;height:200px;width:300px}.envelope:before{top:0;z-index:3;border-top:100px solid #d13824;border-right:150px solid transparent;border-left:150px solid transparent;transform-origin:top;transition:all .5s ease-in-out}.envelope:after,.envelope:before{content:"";position:absolute;left:0;width:0;height:0;pointer-events:none}.envelope:after{bottom:0;z-index:2;border-color:transparent #bc2c1a #bc2c1a;border-style:solid;border-width:100px 150px}.letter{position:absolute;left:10%;bottom:5px;width:80%;height:80%;background:#D3F3EE;transition:all .5s ease-in-out;padding:15px;box-sizing:border-box;z-index:1;overflow:hidden;box-shadow:0 0 10px rgba(0,0,0,.1)}.letter-text{font-family:Caveat,cursive;color:#121217;font-size:16px;text-align:left;line-height:1.2}.envelope-wrapper:hover .envelope:before{transform:rotateX(180deg);z-index:0}.envelope-wrapper:hover .letter{bottom:50px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal-content{background:#D3F3EE;width:100%;max-width:600px;padding:60px;border-radius:2px;position:relative;box-shadow:0 30px 60px rgba(0,0,0,.8);animation:modalIn .5s cubic-bezier(.175,.885,.32,1.275)}@keyframes modalIn{0%{opacity:0;transform:scale(.9) translateY(40px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-text{font-family:Caveat,cursive;color:#121217;font-size:32px;line-height:1.4}.close-button{position:absolute;top:15px;right:20px;font-size:30px;color:#BC2C1A;cursor:pointer;border:none;background:none}.section-title{text-align:left;margin-bottom:30px;color:#DACC3E;letter-spacing:1px}.grid-card{padding:5px 0;transition:transform .2s;font-size:28px}