:root{--ink:#263349;--gold:#bdcadd;--gold-ink:#4c617f;--paper:#e7eaf0;--night:#172032;--ib-entry-bg:#172032}
body{background:#172032;color:var(--ink)}
.paper{background:linear-gradient(180deg,#e7eaf0 0 5%,#fafbfe 34%,#d7dfea 73%,#e7eaf0 96%)}
.sage{background:linear-gradient(180deg,#acb8cb 0 5%,#cdd7e4 34%,#93a4bd 74%,#acb8cb 96%)}
.dark{color:#edf2fa;background:linear-gradient(180deg,#172032 0 5%,#2b3b53 49%,#172032 96%);--gold-ink:#c6d3e5}
.surface:before{opacity:.8;background:repeating-linear-gradient(127deg,transparent 0 13px,#ffffff06 14px,transparent 15px 36px),linear-gradient(115deg,transparent 16%,#ffffff0c 29%,transparent 43%,#ffffff09 72%,transparent 87%)}
.button{border-radius:3px;border-color:#364966;background:#26364f;color:#eef4ff;min-height:57px;font-size:15px;padding:17px 28px}
.button:hover{background:#415774}.button-light{background:linear-gradient(112deg,#aab8cc,#f8faff 44%,#bdcadd 81%,#e5edf8);color:#202e44;border-color:#e1e8f3}.button-light:hover{background:#f3f6fc;color:#202e44}.button-outline{background:transparent;color:#273b57;border-color:#586d8d}.button-outline:hover{background:#334969;color:white}
.text-button{border-color:#70839f;font-size:15px}.text-button.light{color:#d8e3f2;border-color:#7e93b0}.fine-rule{background:linear-gradient(90deg,transparent,#aebdd2,transparent)}
/* Bienvenida: nombres escalonados alrededor de una gran ligadura plateada. */
.entry{background:radial-gradient(ellipse at 45% 40%,#8398ba26,transparent 62%),linear-gradient(142deg,#152033,#28374e 49%,#101b2e);color:#ecf2fd;overflow-x:hidden}
.entry-content{max-width:570px;padding:48px 30px 40px}
.entry-prelude{font-family:Hand,cursive;color:#becde3;font-size:28px;margin-bottom:25px}
.entry .eyebrow{font-size:12px;color:#c3d0e2;letter-spacing:.16em}
.entry h1{position:relative;max-width:420px;margin:32px auto 30px;padding:12px 0;height:240px;font-size:78px;color:#f3f7ff;line-height:1.15}
.entry h1>span{display:block;position:relative;z-index:2;text-align:left}
.entry h1>span:last-child{text-align:right;margin-top:35px}
.entry h1 em{position:absolute;inset:8px 0 auto;z-index:1;font-size:210px;line-height:1;color:#b5c7e173;margin:0;animation:silverBreath 7s ease-in-out infinite alternate}
.entry-date{font-size:15px;color:#d2dded;letter-spacing:.25em;margin-top:8px}
.entry .fine-rule{margin:23px auto;width:92px;transform:rotate(-12deg)}
.entry-message{font-size:16px;color:#c4d0e0}.entry-actions{margin-top:27px;gap:15px}.entry-actions .button{width:285px;max-width:100%}
@keyframes silverBreath{from{opacity:.6;text-shadow:0 0 15px #d8e4ff00}to{opacity:1;text-shadow:0 0 35px #d8e4ff30}}
/* Bordes de filigrana abiertos, sin dintel ni marco en las esquinas. */
.hero{height:110svh;min-height:850px;max-height:1150px;background:#172032}
.hero-media{position:absolute;inset:0;overflow:hidden}.hero-photo{object-position:center top;transform-origin:50% 65%}
.hero-shade{background:linear-gradient(180deg,#142038b5 0%,#1b2e4c66 30%,#1b2e4c0a 57%,#17203240 80%,#172032a6 100%)}
.silver-frame{position:absolute;inset:28px 3px 130px;z-index:2;pointer-events:none;opacity:0;will-change:opacity;transition:opacity 3.2s cubic-bezier(.22,.45,.35,1);background:linear-gradient(128deg,#8d9fbc 0%,#e6edf8 25%,#ffffff 40%,#a4b6d1 62%,#eff6ff 84%,#9daec8 100%);background-size:210% 210%;-webkit-mask:url(assets/silver-frame.png) center/100% 100% no-repeat;mask:url(assets/silver-frame.png) center/100% 100% no-repeat}
.frame-ready .silver-frame{opacity:.95;animation:silverReflection 12s ease-in-out infinite alternate}
@keyframes silverReflection{from{background-position:5% 5%}to{background-position:90% 90%}}
.hero-copy{top:12%;left:14%;width:72%;padding:0}.hero .eyebrow{font-size:12px;color:#e5edf8;letter-spacing:.22em}.hero h1{font-size:88px;line-height:1.02;margin:25px 0}.hero h1>span{display:block}.hero h1 em{display:block;color:#dbe6f6;font-size:.55em;margin:5px 0}.hero-date{margin-top:26px;color:#f1f5fc;font-size:15px;letter-spacing:.2em;gap:12px}.hero-date span{background:#d3deef88;width:22px}.hero .scroll-cue{bottom:143px;font-size:12px;color:#eef4ff}.scroll-cue i{color:#d4e0f4}
.divider{height:155px}.section-top{top:-154px}
.story,.event,.album,.agenda,.details,.rsvp{padding-bottom:225px}.story{padding-top:55px}.countdown{padding-bottom:100px}.count-grid strong{font-size:72px}.count-grid span{font-size:12px;color:#526681}.count-grid i,.tiny-heart{color:#7c90ae}.story-copy>p{font-size:18px;color:#53657e;line-height:1.9}.story-copy h2{font-size:61px;line-height:1.08}.signature,.script-label{color:var(--gold-ink)}
.event-intro{gap:70px}.event-intro h2{font-size:61px}.date-seal{border:0;border-top:1px solid #637b9a80;border-bottom:1px solid #637b9a80;width:285px;height:300px}.date-seal strong{font-size:155px}.date-seal>span{font-size:13px}.event-details{gap:65px;margin-top:100px}.event-details article+article{border-color:#627a9780}.event-details h3{font-size:37px}.event-details p:not(.eyebrow):not(.event-time){color:#3c516e}
.album-copy h2{font-size:57px;color:#eff4fc}.album-copy>p{color:#cad6e6}.album-stage{aspect-ratio:4/5;max-width:480px;border-radius:2px;outline:1px solid #a8bad230;outline-offset:9px;box-shadow:0 22px 55px #0003}.slide{animation:none!important;transform:none!important;object-fit:cover}.album-controls button{color:#d6e3f5}
.section-heading{margin-bottom:80px}.section-heading h2{font-size:59px}.timeline h3{font-size:35px}.timeline li{padding-bottom:52px}.timeline li>div{border-color:#9caec7}.timeline li>div:before{background:#859cbb}.timeline time{color:#4c6282}.timeline p{color:#536780}
.detail-grid{display:block;max-width:670px;margin:auto;text-align:center}.detail-grid article{padding:72px 20px}.detail-grid article:first-child{padding-top:5px}.detail-grid article+article:before{left:15%;top:0;bottom:auto;width:70%;height:1px;background:linear-gradient(90deg,transparent,#60779680,transparent)}.detail-grid h3{font-size:43px;margin:23px 0}.detail-grid p{color:#3d526e;font-size:18px}.detail-index{color:#415b7e;font-size:13px}.notes-row{border-color:#687f9c80;margin-top:60px;padding-top:50px}
.rsvp h2{font-size:73px;color:#edf3ff}.rsvp-content>p:not(.eyebrow){color:#cbd7e8}.rsvp .signature{color:#c1d1e8}.closing{height:820px;background:#172032}.closing-shade{background:linear-gradient(#15223644,#142238d1)}.closing-copy{top:28%}.closing-copy h2{font-size:68px}.closing-copy .signature{color:#dfebfc}footer em{color:#667f9f}footer p{color:#576c88}.music-button{background:#172032;color:#dae6f6;border-color:#9eb2d088}.music-button[aria-pressed=true]{background:#e2eaf5;color:#26334b}
dialog{background:#e7eaf0;color:#263349;border-color:#a7b8cf}dialog::backdrop{background:#111c2fda}.modal-close,input,select{color:#263349}.form-note{color:#596d88}.form-result{background:#d1dce9;border-color:#839cbc}
@media(max-width:700px){.entry-content{padding:35px 26px}.entry-prelude{font-size:26px}.entry h1{font-size:66px;height:221px;max-width:330px}.entry h1 em{font-size:185px}.entry h1>span:last-child{margin-top:34px}.hero{height:110svh;min-height:860px;max-height:1060px}.silver-frame{inset:24px -2px 124px}.hero-copy{top:11%;left:17%;width:66%}.hero h1{font-size:clamp(55px,16vw,72px);margin:22px 0}.hero h1 em{font-size:.6em;margin:2px 0}.hero-date{font-size:13px;letter-spacing:.18em;gap:9px}.hero-date span{width:15px}.hero .scroll-cue{bottom:147px;font-size:11px;letter-spacing:.12em}.divider{height:120px}.section-top{top:-119px}.story,.event,.album,.agenda,.details,.rsvp{padding:80px 28px 210px}.story{padding-top:42px}.countdown{padding-bottom:87px}.count-grid strong{font-size:52px}.count-grid span{font-size:12px}.story-copy h2{font-size:47px}.story-copy>p{font-size:17px}.event-intro h2{font-size:49px}.date-seal{width:260px;height:282px}.date-seal strong{font-size:142px}.event-details h3{font-size:35px}.event-details article+article{border-color:#627a9780;padding-top:72px;margin-top:75px}.album-copy h2{font-size:43px}.section-heading h2{font-size:47px}.timeline h3{font-size:33px}.detail-grid article{padding:75px 4px;margin:0!important}.detail-grid h3{font-size:39px}.detail-grid p{font-size:17px}.rsvp h2{font-size:51px}.closing{height:740px}.closing-copy h2{font-size:51px}}
@media(max-height:760px){.entry-content{padding-top:23px;padding-bottom:24px}.entry-prelude{font-size:23px;margin-bottom:15px}.entry h1{height:177px;font-size:55px;margin:21px auto}.entry h1 em{font-size:157px;top:0}.entry h1>span:last-child{margin-top:20px}.entry .fine-rule{margin:18px auto}.entry-actions{margin-top:22px}.entry-actions .button{min-height:52px;padding:13px 24px}}
@media(prefers-reduced-motion:reduce){.silver-frame{transition:opacity 3.2s ease!important}}
/* Reservar el cielo sobre la pareja para los nombres y la fecha en móvil. */
@media(max-width:700px){.hero-copy{top:7%}.hero h1{font-size:clamp(55px,15vw,64px)}}
