*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background-color:#f8f5f1;color:#1a1a1a;font-family:DM Sans,system-ui,sans-serif;font-weight:400;line-height:1.5;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.card{background:#fff;border:1px solid #e5e0d8;border-radius:3px;padding:3.5rem 4rem;max-width:480px;width:100%;text-align:center;box-shadow:0 8px 48px #0000000f;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.emoji{display:block;font-size:3.2rem;line-height:1;margin-bottom:1.5rem}h1{font-family:Cormorant Garamond,Georgia,serif;font-size:2.4rem;font-weight:300;letter-spacing:-.02em;line-height:1.2;color:#1a1a1a;margin:0 0 .75rem}.subtitulo{font-size:.95rem;color:#7a7269;font-weight:300;line-height:1.65;margin-bottom:2.5rem}.buttons{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:280px;margin:0 auto 2rem}.btn{padding:.75rem 1.5rem;border:1px solid #1a1a1a;border-radius:2px;background:transparent;font-family:DM Sans,system-ui,sans-serif;font-size:.9rem;font-weight:400;letter-spacing:.06em;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .18s,color .18s;white-space:nowrap}.btn-si{background:#1a1a1a;color:#fff}.btn-si:hover{background:#2e2e2e}.btn-no{color:#1a1a1a;background:#fff}.firma{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.05rem;font-weight:300;color:#b0a898;margin:0}.celebration .mensaje{font-size:1rem;color:#5a5248;font-weight:300;line-height:1.65;margin-bottom:1.5rem}.type-selector{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.5rem}.type-option{padding:.75rem .5rem;border:1px solid #d6d1c8;border-radius:2px;background:transparent;font-family:DM Sans,system-ui,sans-serif;font-size:.85rem;color:#7a7269;cursor:pointer;transition:all .18s}.type-option:hover{border-color:#1a1a1a;color:#1a1a1a}.type-option.active{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.purchase-card{max-width:520px}.purchase-form{display:flex;flex-direction:column;gap:1.2rem;margin-bottom:2rem;text-align:left}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-size:.82rem;letter-spacing:.06em;color:#5a5248;font-weight:400}.optional{color:#b0a898;font-style:italic}.field input,.field textarea{padding:.65rem .9rem;border:1px solid #d6d1c8;border-radius:2px;font-family:DM Sans,system-ui,sans-serif;font-size:.9rem;color:#1a1a1a;background:#fdfcfb;outline:none;resize:vertical;transition:border-color .18s}.field input:focus,.field textarea:focus{border-color:#1a1a1a}.submit-btn{width:100%;margin-top:.5rem;padding:.85rem;font-size:.95rem}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.photo-upload-label{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border:1px dashed #d6d1c8;border-radius:2px;color:#7a7269;font-size:.88rem;cursor:pointer;transition:background .18s,border-color .18s}.photo-upload-label:hover{background:#f5f1ec;border-color:#b0a898}.photo-preview{display:flex;flex-direction:column;align-items:center;gap:.75rem}.photo-preview img{width:110px;height:110px;object-fit:cover;border-radius:50%;border:3px solid #e5e0d8;box-shadow:0 4px 16px #00000014}.photo-remove{background:none;border:none;font-size:.78rem;color:#b0a898;cursor:pointer;text-decoration:underline;padding:0}.invitation-photo{width:120px;height:120px;object-fit:cover;border-radius:50%;border:3px solid #e5e0d8;box-shadow:0 4px 20px #0000001a;margin-bottom:1rem}.field-hint{font-size:.78rem;color:#b0a898;font-style:italic;line-height:1.4}.error-msg{color:#c0392b;font-size:.85rem;text-align:center}.link-box{display:flex;align-items:center;gap:.75rem;background:#f5f1ec;border:1px solid #e5e0d8;border-radius:2px;padding:.75rem 1rem;margin-bottom:1.5rem;flex-wrap:wrap}.link-text{flex:1;font-size:.8rem;color:#5a5248;word-break:break-all}.btn-copy{padding:.45rem 1rem;font-size:.8rem;white-space:nowrap;border:1px solid #1a1a1a;border-radius:2px;background:#fff;cursor:pointer;font-family:DM Sans,system-ui,sans-serif}@media (max-width: 520px){.card{padding:2.5rem 1.75rem}h1{font-size:2rem}}.home-page{min-height:100vh}.home-nav{position:sticky;top:0;z-index:50;background:#f8f5f1e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e5e0d8;padding:1rem 2rem;text-align:center}.home-logo{font-family:Cormorant Garamond,Georgia,serif;font-size:1.15rem;font-weight:400;letter-spacing:.04em;color:#1a1a1a}.home-type-bar{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.6rem 1rem;background:#f0ece6;border-bottom:1px solid #e5e0d8}.home-type-btn{background:none;border:none;font-family:DM Sans,system-ui,sans-serif;font-size:.8rem;color:#b0a898;cursor:pointer;padding:.2rem .5rem;border-radius:99px;transition:color .18s,background .18s;letter-spacing:.02em}.home-type-btn:hover{color:#1a1a1a}.home-type-btn.active{color:#1a1a1a;background:#fff;font-weight:500}.home-type-sep{color:#d6d1c8;font-size:.9rem}.home-hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem 3rem;position:relative}.home-hero .container{min-height:unset}.demo-badge{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#b0a898;border:1px solid #e5e0d8;border-radius:99px;padding:.3rem .9rem;margin-bottom:1.5rem}.home-hint{margin-top:1.5rem;font-size:.85rem;color:#b0a898;font-style:italic;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.demo-after{margin-top:1.5rem;font-family:Cormorant Garamond,Georgia,serif;font-size:1.3rem;font-style:italic;color:#5a5248;animation:fadeIn .5s ease}.hero-cta{margin-top:1.5rem;padding:.7rem 2rem;font-size:.85rem;background:transparent!important;color:#7a7269!important;border-color:#d6d1c8!important}.hero-cta:hover{background:#f0ece6!important;color:#1a1a1a!important}.home-steps{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;padding:4rem 2rem;background:#fff;border-top:1px solid #e5e0d8;border-bottom:1px solid #e5e0d8}.step{text-align:center;max-width:200px}.step-icon{display:block;font-size:2rem;margin-bottom:.75rem}.step strong{display:block;font-family:Cormorant Garamond,Georgia,serif;font-size:1.15rem;font-weight:400;margin-bottom:.4rem;color:#1a1a1a}.step p{font-size:.85rem;color:#7a7269;line-height:1.5;font-weight:300}.home-form-section{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:4rem 1rem}
