@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@300;400;500;600&display=swap');
:root{--ink:#1c1d22;--paper:#f6f2ea;--gold:#b28a50;--cream:#fffdfa}.tpl-elegante{margin:0;background:var(--paper);color:var(--ink);font-family:Montserrat,sans-serif}.hero{min-height:100vh;background-image:var(--hero);background-position:center;background-size:cover;position:relative;display:grid;place-items:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,12,15,.2),rgba(12,12,15,.78))}.hero-content{position:relative;text-align:center;color:#fff;padding:2rem}.hero h1{font:600 clamp(4rem,12vw,9rem)/.8 'Cormorant Garamond';margin:1rem 0}.hero h1 b{display:block;color:#dec196;font-weight:400;font-size:.55em}.eyebrow{text-transform:uppercase;letter-spacing:.35em;font-size:.72rem}.scroll,.button{display:inline-block;border:1px solid currentColor;padding:.85rem 1.4rem;text-decoration:none;color:inherit;background:transparent;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}.section{max-width:1050px;margin:auto;padding:6rem 1.5rem;text-align:center}.section h2{font:600 clamp(2.6rem,6vw,4.8rem)/1 'Cormorant Garamond';margin:1rem}.intro p{max-width:700px;margin:auto;font:400 1.4rem/1.8 'Cormorant Garamond';font-style:italic}.ornament{color:var(--gold);font-size:2rem}.date-block{background:#1c1d22;color:#fff;display:flex;justify-content:center;gap:clamp(1.5rem,8vw,7rem);padding:3rem 1rem}.date-block div{display:grid;text-align:center}.date-block strong{font:600 3rem 'Cormorant Garamond';color:#dec196}.date-block span{font-size:.65rem;letter-spacing:.2em;text-transform:uppercase}.details,.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem}.details article,.cards article,.cards blockquote{background:var(--cream);border:1px solid #ded7ca;padding:2rem;margin:0}.details article span{color:var(--gold);font:600 2.3rem 'Cormorant Garamond'}.details h3,.timeline h3{font:600 1.8rem 'Cormorant Garamond'}.details .button{grid-column:1/-1;margin:auto;color:var(--ink)}.people,.gallery,.signatures{background:#ebe4d8;max-width:none}.people>* ,.gallery>* ,.signatures>*{max-width:1050px;margin-left:auto;margin-right:auto}.cards article{display:grid;gap:.6rem}.cards small{text-transform:capitalize;color:#806b50}.cards strong{font:600 1.5rem 'Cormorant Garamond'}.timeline-list{max-width:720px;margin:auto}.timeline article{display:grid;grid-template-columns:100px 1fr;text-align:left;border-bottom:1px solid #d5ccbd;padding:1.5rem 0}.timeline time{color:var(--gold);font-weight:600}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}.gallery figure{margin:0;background:#fff;padding:.5rem}.gallery img{width:100%;aspect-ratio:4/5;object-fit:cover}.gallery figcaption{padding:.6rem;font:italic 1.1rem 'Cormorant Garamond'}.rsvp form,.signatures form{max-width:620px;margin:2rem auto;display:grid;gap:1rem;text-align:left}.rsvp label{display:grid;gap:.4rem}.rsvp input,.rsvp select,.rsvp textarea,.signatures input,.signatures textarea{padding:1rem;border:1px solid #cfc5b6;background:#fff;font:inherit}.rsvp .button,.signatures .button{background:var(--ink);color:#fff;justify-self:center}.gifts .cards img{max-width:180px;margin:auto}.gifts .cards span{display:block}.cards blockquote cite{display:block;margin-top:1rem;color:var(--gold)}footer{background:#17181c;color:#fff;padding:4rem 1rem;text-align:center;display:grid;gap:.4rem}footer strong{font:600 2.4rem 'Cormorant Garamond'}footer small{opacity:.55}.demo-bar{position:fixed;top:0;z-index:50;width:100%;background:#b28a50;color:#fff;text-align:center;padding:.55rem;font-size:.7rem;letter-spacing:.1em}.extra div{max-width:760px;margin:auto;line-height:1.8}@media(max-width:600px){.date-block{gap:1.2rem}.date-block strong{font-size:2rem}.timeline article{grid-template-columns:70px 1fr}}

.private-guest-banner{position:relative;z-index:30;padding:.8rem 1rem;text-align:center;font-size:.92rem;background:#fff8e8;color:#5b4528;border-bottom:1px solid rgba(143,107,53,.25)}.private-guest-banner strong{font-weight:800}
.reconfirmation-box{margin:0 auto 1.25rem;max-width:680px;padding:1rem 1.15rem;border:1px solid rgba(176,135,58,.35);background:#fffaf0;border-radius:14px;line-height:1.6;text-align:left}.reconfirmation-box strong{color:#7c5a1f}.reconfirmation-box small{color:#6f675b}

/* Opciones múltiples de regalo */
.gifts .gift-card{align-content:start}.gifts .gift-kind{display:inline-flex;justify-self:center;padding:.35rem .65rem;border-radius:999px;background:#eee5d5;color:#806b50;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.gifts .gift-card--billetera_digital .gift-kind{background:#eee8f8;color:#664a8c}.gifts .gift-card--enlace_externo .gift-kind{background:#e4eee6;color:#416a4b}.gifts .gift-description{margin:.15rem 0 .35rem;line-height:1.55}.gifts .gift-link{justify-self:center;margin-top:.35rem;color:var(--ink);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.gifts .gift-card b{font-weight:600}

.vip-ceremony-message{max-width:820px;padding:4.5rem 1.5rem 1rem}.vip-ceremony-message .eyebrow{color:var(--gold)}.vip-ceremony-message p{max-width:700px;margin:1.2rem auto 0;padding:2rem 2.2rem;border:1px solid #d7cab8;background:rgba(255,253,250,.92);box-shadow:0 14px 35px rgba(59,49,35,.08);font:italic 1.35rem/1.75 'Cormorant Garamond';color:#4e4438}@media(max-width:600px){.vip-ceremony-message{padding:3.5rem 1rem .5rem}.vip-ceremony-message p{padding:1.5rem 1.25rem;font-size:1.18rem}}


/* SISINV 3.0.0: confirmación privada de regalos */
.gift-confirmation{margin-top:1.5rem;padding:1.25rem;border:1px solid rgba(0,0,0,.12);border-radius:18px;background:rgba(255,255,255,.72)}
.gift-confirmation h3{margin:0 0 .5rem}.gift-confirmation form{display:grid;gap:.85rem;margin-top:1rem}.gift-confirmation label{display:grid;gap:.35rem;text-align:left}.gift-confirmation input,.gift-confirmation select,.gift-confirmation textarea{width:100%;padding:.75rem;border:1px solid rgba(0,0,0,.18);border-radius:10px;background:#fff}.gift-confirmation button{justify-self:center}.gift-confirmation .gift-confirmation-submit{justify-self:center}.gift-confirmation-grid{display:grid;grid-template-columns:2fr 1fr;gap:.75rem}.gift-confirmation-history{display:grid;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.1)}.gift-confirmation-history div{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem}.gift-confirmation-history em{font-style:normal;font-weight:600}@media(max-width:520px){.gift-confirmation-grid{grid-template-columns:1fr}.gift-confirmation-history div{display:grid;gap:.15rem}}
