
:root{--ink:#3b2e29;--gold:#bb8063;--gold-ink:#966046;--paper:#dce7ec;--night:#3b2e29;--mauve:#a5bac8;--ib-entry-bg:#3b2e29}body{background:#2e2521;color:var(--ink)}.paper{background:linear-gradient(158deg,#dce7ec 2%,#eef4f6 36%,#c8d9e2 74%,#dce7ec 98%)}.sage{background:linear-gradient(170deg,#a5bac8,#b8cbd6 37%,#90a8b9 75%,#a5bac8)}.dark{background:radial-gradient(ellipse at 85% 20%,#87574340,transparent 62%),linear-gradient(165deg,#3b2e29,#514037 46%,#332721);color:#f8ede2;--gold-ink:#d2a38a}.surface:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.095;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='190' height='190'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.42' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E");pointer-events:none}.eyebrow{letter-spacing:.25em}.signature,.script-label{color:var(--gold-ink)}.button{border-radius:4px;background:#3b2e29;border-color:#3b2e29;color:#f5e8dc;min-height:57px}.button-light{background:#efddd0;border-color:#efddd0;color:#3b2e29}.button:hover{background:#34595a;color:#fff}.button-light:hover{background:#fff4e9;color:#3b2e29}.button-outline{background:transparent;color:#3b2e29;border-color:#748e9e}.text-button{border-color:#927d6e}.text-button.light{color:#f2d1ba;border-color:#bd9278}.fine-rule{background:linear-gradient(90deg,transparent,#bd8e72,transparent)}
.entry{min-height:100dvh;background:radial-gradient(ellipse at 50% 48%,#8a726455,transparent 63%),linear-gradient(150deg,#372a24,#312621 65%,#3b2e29);color:#f3ece4}.entry-content{max-width:670px;padding:90px 100px 50px;z-index:3}.entry-monogram{display:none}.entry-prelude{font-family:Hand,cursive;font-size:33px;color:#d9ab90;margin-bottom:25px}.entry .eyebrow{font-size:10px;letter-spacing:.24em}.entry h1{font-size:clamp(66px,8vw,95px);line-height:.95;margin:28px 0}.entry h1>span{display:block}.entry h1 em{font-size:42px;margin:8px 0;color:#d2a38a}.entry-date{font-size:17px;letter-spacing:.26em;color:#e8cfbe}.entry-message{font-size:16px;color:#e4d3c6}.entry .fine-rule{width:94px;margin:24px auto}.entry-actions{margin-top:25px;gap:15px}.entry-actions .button{width:min(275px,100%)}
.hero{height:112svh;min-height:930px;max-height:1180px;background:#3b2e29;color:#fff8ef}.hero-media{position:absolute;inset:0;overflow:hidden;z-index:0}.hero-photo{object-position:center 53%;transform-origin:center 60%}.hero-shade{inset:0;width:100%;height:100%;z-index:1;background:linear-gradient(180deg,#30282085 0%,#403a3255 28%,#403a3222 55%,#2a221c99 100%)}
.hero-copy{top:20%;left:18%;width:64%;padding:0 15px}.hero h1{font-size:clamp(75px,9vw,110px);line-height:.91;margin:24px auto}.hero h1>span{display:block}.hero h1 em{display:block;font-size:.5em;line-height:.8;margin:12px 0;color:#f1c5ad}.hero-date{margin-top:30px;gap:15px;font-size:16px;letter-spacing:.25em}.hero-date span{width:24px;background:#dfb79a88}.hero .eyebrow{font-size:11px}.hero .scroll-cue{bottom:125px}.scroll-cue i{color:#dfb79a}.divider{height:150px}.section-top{top:-149px}.divider path+path{stroke:#b77a5c;stroke-opacity:.5}
.story,.event,.album,.agenda,.details,.rsvp{padding-bottom:245px}.story{padding-top:70px}.countdown{padding-bottom:115px}.count-grid strong{font-size:72px}.count-grid span,.story-copy>p,.timeline p{color:#4c6170}.count-grid i,.tiny-heart{color:#ad8069}.story-copy h2{font-size:67px}.story-copy>p{font-size:18px}.story .signature{margin-top:35px}.event-intro h2{font-size:61px}.date-seal{height:345px;width:300px;border:1px solid #758e9e80;border-radius:48% 48% 5px 5px;gap:5px}.date-seal strong{font-size:156px}.event-details{margin-top:115px}.event-details h3{font-size:39px}.event-details article+article{border-color:#758e9e66}.event-details p:not(.eyebrow):not(.event-time){color:#425765}.album-layout{max-width:925px;display:grid;grid-template-columns:.85fr 1fr;gap:82px;align-items:center}.album-copy{text-align:left;margin:0}.album-copy h2{font-size:54px;color:#f3ece4}.album-copy>p{color:#d7ddd5;font-size:17px}.album-copy .fine-rule{margin-left:0}.album-stage{aspect-ratio:4/5;max-width:490px;border-radius:0;outline:0;box-shadow:0 24px 60px #23191477}.slide{animation:none!important;transform:none!important;object-fit:cover}.album-controls button{color:#e5baa0}.timeline li{padding-bottom:62px}.timeline time{color:#966046}.timeline li>div{border-color:#849caa80}.timeline li>div:before{background:#ad8069}.timeline h3{font-size:38px}.section-heading{margin-bottom:90px}.detail-grid{display:flex;flex-direction:column;gap:0;text-align:left}.detail-grid article{display:grid;grid-template-columns:80px 1fr 1fr;gap:10px 28px;padding:65px 0}.detail-index{color:#966046;font-size:13px;padding-top:8px}.detail-grid h3{font-size:39px;margin:0}.detail-grid p{color:#425765;font-size:17px;margin:0;grid-column:3}.detail-grid .text-button{grid-column:3;justify-self:start;margin-top:15px}.detail-grid article+article:before{top:0;left:0;right:0;bottom:auto;width:100%;height:1px;background:linear-gradient(90deg,transparent,#829bab66 20% 80%,transparent)}.notes-row{margin-top:60px;padding-top:60px;border-color:#758e9e77}.rsvp h2{font-size:79px;color:#f3ece4}.rsvp-content>p:not(.eyebrow){color:#d7ddd5}.rsvp .signature{font-size:47px}.closing{height:870px;background:#3b2e29}.closing-shade{background:linear-gradient(#3b2e2922,#241d18bb)}.closing-copy{top:25%;padding:0 25px}.closing-copy h2{font-size:72px}.closing-copy .signature{color:#e2bfa9}footer{color:#3b2e29}footer em{color:#966046}footer p{color:#4c6170}.music-button{background:#3b2e29;color:#efc2a4;border-color:#bd927866}.music-button[aria-pressed=true]{background:#efddd0;color:#3b2e29}dialog{background:#dce7ec;color:#3b2e29;border-color:#91a8b6}dialog::backdrop{background:#241d18c9}.modal-close,input,select{color:#3b2e29}.form-note{color:#4c6170}.form-result{background:#c8d9e2;border-color:#a37658}
@media(max-width:700px){.entry-content{padding:102px 55px 40px}.entry-prelude{font-size:29px;margin-bottom:19px}.entry h1{font-size:clamp(58px,16vw,72px);margin:25px 0}.entry h1 em{font-size:33px;margin:9px 0}.entry .eyebrow{font-size:9px;letter-spacing:.16em}.entry-date{font-size:14px}.entry-message{font-size:15px}.entry .fine-rule{margin:21px auto}.entry-actions{margin-top:23px}.hero{height:110svh;min-height:850px;max-height:1120px}.hero-copy{top:17%;left:12%;width:76%;padding:0}.hero h1{font-size:clamp(59px,17vw,81px);line-height:.93;margin:23px auto}.hero h1 em{font-size:.47em}.hero .eyebrow{font-size:10px}.hero-date{font-size:13px;letter-spacing:.16em;gap:9px;margin-top:26px}.hero-date span{width:16px}.hero .scroll-cue{font-size:10px;bottom:112px}.divider{height:116px}.section-top{top:-115px}.story,.event,.album,.agenda,.details,.rsvp{padding:85px 28px 222px}.story{padding-top:42px}.countdown{padding-bottom:90px}.count-grid strong{font-size:58px}.story-copy h2{font-size:50px}.story-copy>p{font-size:17px}.event-intro{display:flex;flex-direction:column;gap:68px}.event-intro h2{font-size:50px}.date-seal{height:300px;width:270px}.date-seal strong{font-size:140px}.event-details{margin-top:94px}.event-details article+article{border-left:0;border-top:1px solid #758e9e66;margin-top:77px;padding-top:76px}.event-details h3{font-size:37px}.album-layout{display:block}.album-copy{text-align:center;margin-bottom:50px}.album-copy h2{font-size:47px}.album-copy .fine-rule{margin:27px auto}.album-stage{max-width:450px}.section-heading{margin-bottom:77px}.section-heading h2{font-size:49px}.timeline h3{font-size:35px}.timeline li{padding-bottom:48px}.detail-grid article{display:block;text-align:center;margin:0!important;padding:74px 5px}.detail-grid article:first-child{padding-top:10px}.detail-grid article+article:before{left:9%;right:9%;width:82%}.detail-grid h3{font-size:40px;margin:20px 0}.detail-grid p{font-size:17px}.detail-grid .text-button{margin-top:23px}.notes-row{margin-top:42px;padding-top:50px}.rsvp h2{font-size:53px}.closing{height:770px}.closing-copy h2{font-size:52px}}
@media(max-height:740px){.entry-content{padding:70px 55px 25px}.entry-prelude{font-size:26px;margin-bottom:13px}.entry h1{font-size:55px;margin:20px 0}.entry h1 em{font-size:28px;margin:7px 0}.entry .fine-rule{margin:16px auto}.entry-message{font-size:14px}.entry-actions{margin-top:17px}}



/* Arcada: columnas lisas y arco en un único trazo arquitectónico. */
:root{--ink:#3b2e29;--paper:#dce7ec;--night:#3b2e29;--mauve:#a5bac8;--ib-entry-bg:#3b2e29;--gold-ink:#846b59}
.paper{background:radial-gradient(ellipse at 0 35%,#b8cfde60,transparent 55%),radial-gradient(ellipse at 100% 72%,#fafcfdcc,transparent 56%),linear-gradient(#dce7ec,#d4e1e9 55%,#dce7ec)}
.sage{background:radial-gradient(ellipse at 80% 40%,#d6e5ee80,transparent 65%),linear-gradient(#a5bac8,#98b1c2 60%,#a5bac8)}
.dark{background:radial-gradient(ellipse at 20% 50%,#82624b30,transparent 68%),linear-gradient(#3b2e29,#4a382e 55%,#3b2e29);--gold-ink:#d2b39b}
.surface:before{opacity:.06}
.entry{background:radial-gradient(ellipse at 50% 30%,#765c4860,transparent 65%),linear-gradient(145deg,#3b2e29,#291f1b)}
.arch-frame{position:absolute;inset:22px 0 135px;pointer-events:none;z-index:2;background:#ead8c5;opacity:0;-webkit-mask-image:url(assets/arch.png);mask-image:url(assets/arch.png);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.entry>.arch-frame{position:fixed;inset:24px max(0px,calc((100vw - 680px)/2)) 25px;background:#caa98c;animation:archArrival 2.8s ease-out .1s both}
.hero>.arch-frame{animation:none!important;opacity:0;will-change:opacity;transform:translateZ(0);backface-visibility:hidden;transition:opacity 3s cubic-bezier(.22,.45,.35,1)}
.arch-ready .hero>.arch-frame{opacity:.72}
@keyframes archArrival{from{opacity:0}to{opacity:.72}}
.entry-content{padding:155px 65px 65px;max-width:610px}.entry-prelude{font-size:32px}.entry h1{font-size:85px;line-height:1}.entry h1>span{display:inline}.entry h1 em{display:block;font-size:40px;margin:6px 0}.entry-date{margin-top:28px}.entry-actions{margin-top:30px}.entry .button{border-radius:40px}.entry .fine-rule{width:80px}
.hero-copy{top:23%;left:15%;width:70%}.hero h1{font-size:100px;line-height:.95}.hero .scroll-cue{bottom:155px}.hero .eyebrow{letter-spacing:.23em}.hero-date{margin-top:27px}.hero-shade{background:linear-gradient(#30282075,#33281f3b 35%,transparent 65%,#2a221c8c)}
.event-intro{display:flex;flex-direction:column;text-align:center;gap:45px}.date-seal{border:0;border-radius:0;border-top:1px solid #7f98a777;border-bottom:1px solid #7f98a777;flex-direction:row;flex-wrap:wrap;width:360px;height:auto;padding:25px 10px;gap:15px}.date-seal strong{font-size:150px;order:2;width:55%;line-height:1}.date-day{width:100%;order:1}.date-seal .month{order:3;width:30%;font-size:14px;letter-spacing:.16em}.date-seal .date-year{order:4;width:100%;font-size:18px;margin:0}
.album-layout{display:block;max-width:650px}.album-copy{text-align:center;margin-bottom:58px}.album-copy h2{font-size:60px}.album-copy .fine-rule{margin:28px auto}.album-stage{max-width:475px;box-shadow:0 28px 70px #21150e66}.event-details{margin-top:105px}.detail-grid{display:block;text-align:center}.detail-grid article{display:block;padding:78px 20px}.detail-grid h3{font-size:43px;margin:20px 0}.detail-grid p{margin-bottom:22px}.detail-grid article+article:before{left:14%;right:14%;width:72%}.detail-grid .text-button{margin-top:5px}.button{border-radius:40px}
@media(max-width:700px){.entry>.arch-frame{inset:18px 0 20px}.entry-content{padding:130px 50px 55px}.entry h1{font-size:64px}.entry h1 em{font-size:34px}.entry-prelude{font-size:28px}.hero>.arch-frame{inset:18px -3px 118px}.hero-copy{top:23%;left:15%;width:70%}.hero h1{font-size:clamp(58px,17vw,80px)}.hero .scroll-cue{bottom:147px}.event-intro{gap:42px}.date-seal{width:280px;height:auto;padding:23px 0}.date-seal strong{font-size:127px}.date-seal .month{font-size:12px}.album-copy h2{font-size:48px}.album-copy{margin-bottom:46px}.detail-grid article{padding:78px 5px}.detail-grid h3{font-size:39px}}
@media(max-height:740px){.entry-content{padding-top:95px;padding-bottom:35px}.entry h1{font-size:54px;margin:18px 0}.entry h1 em{font-size:28px}.entry-date{margin-top:16px}.entry-actions{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.hero>.arch-frame{transition:opacity 3s ease!important}}
/* Detalle central de papelería: florituras discretas, sin arco ni círculo. */
.entry h1 em{position:relative;width:180px;height:72px;line-height:72px;margin:8px auto;color:#e4c6a7;font-size:48px}
.entry h1 em:before,.entry h1 em:after{content:'';position:absolute;top:6px;width:64px;height:64px;background:#cfab87;opacity:.8;-webkit-mask:url(assets/entry-flourish.png) center/contain no-repeat;mask:url(assets/entry-flourish.png) center/contain no-repeat;pointer-events:none}
.entry h1 em:before{left:0;transform:rotate(-45deg)}
.entry h1 em:after{right:0;transform:rotate(135deg)}
.entry-content{padding-top:80px;padding-bottom:65px}
@media(max-height:740px){.entry-content{padding-top:35px;padding-bottom:30px}.entry h1 em{height:58px;line-height:58px;font-size:40px}.entry h1 em:before,.entry h1 em:after{width:55px;height:55px;top:2px}}
/* Nombres sobre el cielo, dejando libres los rostros de esta fotografía. */
.hero-photo{object-position:center top;transform-origin:center 42%}.hero-copy{top:9%;left:13%;width:74%}.hero h1{font-size:78px;line-height:1;margin:18px auto}.hero h1>span,.hero h1 em{display:inline}.hero h1 em{font-size:.65em;margin:0 8px}.hero-date{margin-top:21px;font-size:15px}.hero .eyebrow{font-size:10px}
@media(max-width:700px){.hero-copy{top:8%;left:12%;width:76%}.hero h1{font-size:clamp(42px,11.8vw,56px);margin:16px auto;white-space:nowrap}.hero h1 em{margin:0 3px}.hero-date{font-size:12px;margin-top:17px;letter-spacing:.15em}.hero .eyebrow{font-size:9px;letter-spacing:.22em}}
