/* Velo — pliegues de luz, seda difusa y un centro despejado. */
:root{--ink:#3b283c;--gold:#dfbdc9;--gold-ink:#765567;--paper:#eee5e8;--night:#3b283c;--mauve:#c9b3bd;--ib-entry-bg:#3b283c}
body{background:#291d2d}.paper{background:linear-gradient(180deg,#eee5e8 3%,#f5edf0 29%,#e6d7e2 63%,#eee5e8 96%)}.sage{background:linear-gradient(180deg,#c9b3bd 3%,#d9c4cd 35%,#bca2b3 72%,#c9b3bd 96%)}.dark{background:linear-gradient(180deg,#3b283c 3%,#593d52 45%,#322237 73%,#3b283c 96%);--gold-ink:#dfbdc9}.surface:before{background:linear-gradient(112deg,transparent 15%,#ffffff04 28%,#ffffff14 35%,#ffffff03 43%,transparent 52%,#ffffff0a 71%,transparent 83%);opacity:.8}.eyebrow{font-size:13px}.button{border-radius:3px;padding:16px 28px;min-height:58px}.button-light{background:#f0dce5;color:#402a3f}.fine-rule{background:linear-gradient(90deg,transparent,#c7a1b4,transparent)}
.entry{background:radial-gradient(ellipse at 20% 0%,#a2738e55,transparent 60%),linear-gradient(155deg,#422b40,#2d2033 72%,#493044);color:#f7e9f0;min-height:100dvh}.entry-border{position:fixed;inset:25px;pointer-events:none;border:1px solid #dcc0cf38;z-index:2}.entry-content{max-width:700px;padding:65px 28px 45px}.entry-prelude{font-family:Hand,cursive;font-size:34px;color:#e0bdce;margin-bottom:24px}.entry .eyebrow{font-size:11px;letter-spacing:.22em;color:#ead8e2}.entry-monogram{display:none}.entry h1{font-family:Display,serif;font-size:clamp(68px,8vw,98px);margin:27px 0 26px;line-height:.98;letter-spacing:-.015em}.entry h1>span{display:block}.entry h1 em{font-size:45px;margin:3px 0;color:#c9a0b7;line-height:.95}.entry-date{font-size:15px;letter-spacing:.23em}.entry-message{font-size:16px;line-height:1.8}.entry .fine-rule{margin:25px auto}.entry-actions{margin-top:28px;gap:14px}.entry-actions .button{width:min(280px,100%)}.entry-veil{position:fixed;top:-7%;left:-7%;width:min(69vw,630px);height:85%;object-fit:fill;opacity:.28;pointer-events:none;mix-blend-mode:screen;filter:saturate(.25);mask-image:linear-gradient(#000 55%,transparent 98%);z-index:1;animation:welcomeVeil 2.2s ease-out both}
@keyframes welcomeVeil{from{opacity:0;transform:translate(-25px,-15px)}to{opacity:.28;transform:none}}
.hero{height:110svh;min-height:960px;max-height:1200px;background:#3b283c}.hero-media{position:absolute;inset:0;overflow:hidden;z-index:0}.hero-photo{object-position:50% 45%;transform-origin:50% 55%}.hero-shade{inset:0;width:100%;height:100%;z-index:1;background:linear-gradient(180deg,#33203688,#3c253b55 36%,#35273b0d 68%,#23182799)}.header-veil{position:absolute;left:-9%;top:-6%;width:75%;height:72%;object-fit:fill;z-index:2;pointer-events:none;opacity:0;filter:saturate(.25);mix-blend-mode:screen;mask-image:linear-gradient(#000 58%,transparent 100%);transform-origin:0 0}.entered .header-veil{animation:veilEntrance 2.3s cubic-bezier(.19,.68,.29,1) both,veilBreathe 12s ease-in-out 2.3s infinite alternate}
@keyframes veilEntrance{from{opacity:0;transform:translate(-25px,-28px) scale(1.035)}to{opacity:.38;transform:translate(0,0) scale(1)}}
@keyframes veilBreathe{from{transform:translate(0,0) rotate(0)}to{transform:translate(4px,3px) rotate(.4deg)}}
.hero-copy{top:18%;padding:0 24px}.hero h1{font-size:clamp(76px,9vw,116px);line-height:.9;margin:22px auto;letter-spacing:-.015em}.hero h1>span{display:block}.hero h1>em{display:block;font-family:Hand,cursive;font-size:.52em;line-height:.8;margin:15px auto;color:#ead0de}.hero-date{margin-top:28px;color:#faedf5;font-size:17px}.hero .eyebrow{font-size:13px}.hero .scroll-cue{bottom:118px;font-size:11px}.divider{height:145px}.section-top{top:-144px}.section-veil{position:absolute;width:40%;max-width:410px;height:420px;object-fit:fill;top:-118px;left:-7%;z-index:3;opacity:.12;pointer-events:none;filter:saturate(.1);mask-image:linear-gradient(#000 45%,transparent 95%)}.veil-1{left:auto;right:-7%;transform:scaleX(-1);opacity:.11}.veil-2{opacity:.19;mix-blend-mode:screen;top:-115px;width:34%}
.story,.event,.album,.agenda,.details,.rsvp{padding-bottom:250px}.story{padding-top:65px}.story-copy h2{font-size:68px}.story-copy>p{font-size:18px}.countdown{padding-bottom:115px}.count-grid{gap:30px}.count-grid strong{font-size:72px}.count-grid span{font-size:12px}.tiny-heart{font-size:26px;margin-top:35px}.event-intro{grid-template-columns:1fr 1fr;gap:55px}.date-seal{border:0;position:relative;height:350px;width:300px}.date-seal:before,.date-seal:after{content:'';position:absolute;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#9c768f88,transparent)}.date-seal:before{top:0}.date-seal:after{bottom:0}.date-seal strong{font-size:170px}.date-seal>span{font-size:13px}.event-details{margin-top:110px}.event-details article+article{border-color:#9c768f66}.album-layout{max-width:700px}.album-copy h2{font-size:65px}.album-stage{max-width:530px;border-radius:0;outline:0;box-shadow:0 20px 65px #24132544}.slide{transform:none!important;animation:none!important;object-fit:cover}.album-controls{margin-top:28px;gap:36px}.album-controls button{color:#e0bdce}.section-heading{margin-bottom:90px}.timeline li{padding-bottom:58px}.timeline h3{font-size:39px}.timeline p{font-size:17px}.timeline time{font-size:16px}.detail-grid{gap:55px}.detail-grid article{padding-top:30px}.detail-grid h3{font-size:37px}.detail-grid p{font-size:17px}.detail-grid article+article:before{left:-28px;background:linear-gradient(transparent,#9f7a9166,transparent)}.notes-row{margin-top:115px;padding-top:65px}.rsvp h2{font-size:80px}.rsvp .signature{font-size:48px}.closing{height:870px;background:#3b283c}.closing-shade{background:linear-gradient(#3b283c40,#251527bb)}.closing-copy{top:38%;padding:0 28px}.closing-copy h2{font-size:69px}.closing-copy .signature{color:#dfbdc9}dialog{background:#eee5e8;color:#3b283c}dialog::backdrop{background:#27172cc9}.music-button{background:#3b283c;color:#efd6e3;border-color:#c4a8b877}.music-button[aria-pressed=true]{background:#f0dce5;color:#3b283c}
@media(max-width:700px){.entry-border{inset:17px}.entry-content{padding:48px 30px 40px}.entry-prelude{font-size:30px;margin-bottom:22px}.entry h1{font-size:70px;margin:24px 0}.entry h1 em{font-size:38px}.entry .eyebrow{font-size:10px;letter-spacing:.17em}.entry-veil{width:84%;height:68%;left:-12%;top:-3%;opacity:.28}.entry-message{font-size:16px}.entry .fine-rule{margin:22px auto}.entry-actions{margin-top:26px}.hero{height:108svh;min-height:830px;max-height:1100px}.hero-copy{top:15%}.hero h1{font-size:73px;margin:22px auto;line-height:.92}.hero h1>em{font-size:37px;margin:10px 0}.hero .eyebrow{font-size:12px}.hero-date{font-size:15px;margin-top:26px}.header-veil{width:80%;height:63%;left:-13%;top:-5%}.hero-photo{object-position:50% 45%}.hero .scroll-cue{bottom:112px;font-size:10px}.divider{height:112px}.section-top{top:-111px}.story,.event,.album,.agenda,.details,.rsvp{padding:85px 28px 220px}.story{padding-top:44px}.story-copy h2{font-size:52px}.story-copy>p{font-size:17px}.countdown{padding-bottom:95px}.count-grid{gap:16px}.count-grid strong{font-size:59px}.count-grid span{font-size:11px}.section-veil{width:54%;height:290px;top:-85px;left:-16%;opacity:.12}.veil-1{left:auto;right:-15%}.veil-2{width:47%;top:-85px;opacity:.19}.event-intro{display:flex;gap:64px}.event-intro h2{font-size:52px}.date-seal{width:270px;height:330px}.date-seal strong{font-size:160px}.event-details{margin-top:85px}.event-details article+article{margin-top:80px;padding-top:78px}.album-copy h2{font-size:46px}.album-copy{margin-bottom:48px}.album-stage{max-width:450px}.section-heading h2{font-size:49px}.section-heading{margin-bottom:75px}.timeline h3{font-size:35px}.timeline time{font-size:14px}.timeline li{padding-bottom:49px}.detail-grid article+article{margin-top:100px;padding-top:90px}.detail-grid article+article:before{left:8%;right:8%;width:84%;background:linear-gradient(90deg,transparent,#9f7a9199,transparent)}.detail-grid h3{font-size:40px}.notes-row{margin-top:95px;padding-top:55px}.rsvp h2{font-size:54px}.closing{height:770px}.closing-copy{top:38%}.closing-copy h2{font-size:52px}}
@media(max-height:740px){.entry-content{padding-top:30px;padding-bottom:30px}.entry-prelude{font-size:26px;margin-bottom:17px}.entry h1{font-size:59px;margin:18px 0}.entry h1 em{font-size:30px}.entry .fine-rule{margin:18px auto}.entry-message{font-size:15px}.entry-actions{margin-top:21px;gap:10px}.entry-date{font-size:14px}}
@media(prefers-reduced-motion:reduce){.header-veil{opacity:.38}.entry-veil{opacity:.28}}
/* Los nombres ocupan el espacio de arquitectura; los rostros quedan debajo. */
.hero-copy{top:10%}.hero h1{font-size:clamp(70px,8vw,100px);line-height:1.1;white-space:nowrap;margin:24px auto}.hero h1>span,.hero h1>em{display:inline}.hero h1>em{font-size:.6em;margin:0 .15em}.hero-date{margin-top:24px}
@media(max-width:700px){.hero-copy{top:12%;padding:0 22px}.hero h1{font-size:clamp(40px,12vw,72px);margin:20px auto;letter-spacing:-.025em}.hero h1>em{font-size:.65em;margin:0 .08em}.hero-date{margin-top:24px;font-size:14px}}
@media(max-width:700px){.hero-copy{top:10%}.hero h1{font-size:clamp(46px,14vw,80px)}}
