@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;700&family=Quicksand:wght@400;500;600&family=Great+Vibes&display=swap";:root{font-family:Quicksand,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:#293c70;background-color:#eaf6fd;--sky-light: #eaf6fd;--sky-main: #8fc8ee;--sky-dark: #4777a5;--navy: #293c70;--terracotta: #b85d3a;--paper: #fffdf8;--surface-soft: #f3f9fd;--card-bg: rgba(255, 253, 248, .9);--text-main: var(--navy);--text-muted: #52779d;--border-soft: #bddcf1;--shadow-soft: rgba(71, 119, 165, .26);--shadow-strong: rgba(41, 60, 112, .3);--danger: #a73d32;--success: #39765b}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--sky-light);background-image:url(/img/background.avif);background-size:cover;background-position:center;display:flex;justify-content:center;align-items:flex-start;padding:1.5rem 0}#root{width:100%}.app-container{padding:1.5rem;display:flex;justify-content:center}.card-layout{width:100%;max-width:420px;background:var(--card-bg);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:26px;box-shadow:0 18px 40px var(--shadow-strong);border:1px solid var(--border-soft);overflow:hidden;text-align:center;padding:0}.card-content{padding:1.75rem 1.75rem 2.1rem}.section{margin-top:1.35rem;opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.section:first-of-type{margin-top:0}.section-visible{opacity:1;transform:translateY(0)}.section-title{margin:0 0 .7rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.18em;color:var(--terracotta);opacity:.9;font-family:Playfair Display,serif}p{margin:0;color:var(--text-muted);font-size:.95rem}.section-text{font-size:.9rem;line-height:1.6}.invitation-intro{font-size:.98rem;line-height:1.7}.header-evento{display:flex;flex-direction:column;align-items:center;gap:.55rem;text-align:center}.header-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:var(--navy);background:#8fc8ee38;padding:.3rem .9rem;border-radius:999px}.header-main-title{margin:0;font-size:2rem;color:var(--text-main);font-family:Great Vibes,cursive}.header-subtitle{margin:0;font-size:.95rem;color:var(--text-muted);font-family:Playfair Display,serif}.header-meta{margin-top:.4rem;font-size:.86rem;color:var(--text-muted)}.eco-frame{position:relative;overflow:hidden;border-radius:22px;border:1px solid var(--border-soft);box-shadow:0 12px 28px var(--shadow-soft);background:linear-gradient(145deg,#fffdf8f5,#eaf6fdeb)}.eco-frame--top{margin-bottom:.3rem}.eco-frame--bottom{margin-top:.3rem}.eco-image{width:100%;display:block;object-fit:cover}.eco-frame--top .eco-image{height:210px}.eco-frame--bottom .eco-image{height:180px}.btn-primary{display:inline-flex;justify-content:center;align-items:center;padding:.75rem 1.5rem;border-radius:999px;border:none;background:linear-gradient(135deg,var(--sky-dark),var(--navy));color:var(--paper);font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;box-shadow:0 10px 20px var(--shadow-soft)}.btn-primary:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 14px 26px var(--shadow-strong)}.btn-primary:active{transform:translateY(0);box-shadow:0 8px 16px var(--shadow-soft)}.btn-block{width:100%}.btn-secondary{display:inline-flex;justify-content:center;align-items:center;padding:.7rem 1.4rem;border-radius:999px;border:1px solid var(--sky-main);background:var(--paper);color:var(--navy);font-weight:600;font-size:.9rem;text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn-secondary:hover{background:var(--surface-soft);transform:translateY(-1px);box-shadow:0 8px 16px var(--shadow-soft)}.btn-secondary:active{transform:translateY(0);box-shadow:0 4px 10px var(--shadow-soft)}.btn-location{display:inline-flex;justify-content:center;align-items:center;gap:.4rem;padding:.75rem 1.5rem;border-radius:999px;border:none;background:var(--paper);color:var(--navy);font-weight:600;font-size:.9rem;cursor:pointer;text-decoration:none;box-shadow:0 8px 18px var(--shadow-soft);transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn-location:hover{background:var(--surface-soft);transform:translateY(-1px);box-shadow:0 10px 22px var(--shadow-strong)}.btn-location:active{transform:translateY(0);box-shadow:0 6px 14px var(--shadow-soft)}.btn-location-icon{font-size:1.1rem}.countdown{display:flex;flex-direction:column;align-items:center;gap:.4rem}.countdown-label{font-size:.9rem;color:var(--text-muted)}.countdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;width:100%}.countdown-item{background:var(--surface-soft);border-radius:16px;padding:.5rem .3rem;text-align:center;border:1px solid var(--border-soft)}.countdown-value{display:block;font-weight:700;font-size:1.1rem;color:var(--navy)}.countdown-unit{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.countdown-message{font-size:.95rem;text-align:center;color:var(--text-main)}.contact-buttons-row{display:flex;justify-content:center;gap:1rem;margin-top:.5rem}.contact-btn{width:70px;height:70px;border-radius:16px;border:none;background:var(--paper);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 18px var(--shadow-soft);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.contact-btn:hover{background:var(--surface-soft);transform:translateY(-2px);box-shadow:0 12px 28px var(--shadow-strong)}.contact-btn:active{transform:translateY(0);box-shadow:0 6px 14px var(--shadow-soft)}.contact-icon{width:34px;height:34px}.rsvp-form{display:flex;flex-direction:column;gap:.75rem;text-align:left}.form-field{display:flex;flex-direction:column;gap:.25rem;width:100%}.form-row{display:flex;gap:.75rem}.form-row .form-field{flex:1;min-width:0}.form-field label{font-size:.85rem;color:var(--text-main)}.form-field input,.form-field textarea{width:100%;box-sizing:border-box}.form-field input{border-radius:999px;border:1px solid var(--border-soft);padding:.55rem .9rem;font-size:.9rem;outline:none}.form-field input:focus{border-color:var(--sky-dark);box-shadow:0 0 0 2px #8fc8ee59}.form-row .form-field input[type=number]{text-align:center}.form-message{font-size:.85rem;margin-top:.25rem}.form-message-error{color:var(--danger)}.form-message-success{color:var(--success)}.attendance-options{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.attendance-option{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.4rem .75rem;border-radius:999px;border:1px solid var(--border-soft);font-size:.9rem;cursor:pointer;background-color:var(--paper);text-align:center}.attendance-option input{accent-color:var(--navy)}.attendance-option.is-selected{border-color:var(--sky-dark);background:#8fc8ee33}.attendance-message{margin-top:.25rem;font-size:.9rem;color:var(--text-muted)}.form-field textarea{border-radius:16px;border:1px solid var(--border-soft);padding:.6rem .9rem;font-size:.9rem;resize:vertical;min-height:70px;outline:none}.form-field textarea:focus{border-color:var(--sky-dark);box-shadow:0 0 0 2px #8fc8ee59}.hero-invitacion{position:relative;width:100%;height:280px;background-size:cover;background-position:center;display:flex;align-items:flex-end;justify-content:center;text-align:center;color:#fff}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#00000059,#0000008c 45%,#00000026 75%,#fce4ec00 90%)}.hero-content{position:relative;padding:1.6rem 1.1rem 1.8rem;z-index:1;text-shadow:0 2px 6px rgba(0,0,0,.75)}.hero-event-title{display:block;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;font-family:Playfair Display,serif;margin-bottom:.3rem;opacity:.9}.hero-baby-name{margin:0;font-size:2.2rem;font-family:Great Vibes,cursive;line-height:1.1}.hero-tagline{margin-top:.45rem;font-size:.9rem;opacity:.95}.hero-portada{width:100%;overflow:hidden}.hero-portada-video,.hero-portada-image{display:block;width:100%;height:auto;border-radius:0}@media(max-width:480px){.card-layout{padding:0;border-radius:22px}.header-main-title{font-size:1.7rem}.eco-frame--top .eco-image{height:190px}.eco-frame--bottom .eco-image{height:170px}.hero-invitacion{height:240px;border-radius:20px}.hero-baby-name{font-size:2rem}}
