:root{--bg:#eee7dd;--ink:#27231f;--muted:#766f65;--line:#cfc5b7;--dark:#171512;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#d6cec2;color:var(--ink);font-family:var(--sans);font-weight:300}.site{max-width:820px;margin:auto;background:var(--bg);box-shadow:0 0 60px #0002;overflow:hidden}.opening{position:fixed;inset:0;z-index:90;background:#151310;color:#fff;display:grid;place-items:center;overflow:hidden;transition:opacity 1.4s,transform 1.4s}.opening.open{opacity:0;transform:scale(1.08);pointer-events:none}.opening-photo,.photo{position:absolute;inset:0;background:center/cover no-repeat}.opening-photo{background-image:url('assets/hero-anillos.png');animation:cinema 9s ease-out forwards}.shade{position:absolute;inset:0;background:linear-gradient(#0004,#0001 45%,#0008)}@keyframes cinema{to{transform:scale(1)}}.opening-copy,.hero-content{position:relative;text-align:center;z-index:2}.kicker{display:block;text-transform:uppercase;letter-spacing:4px;font-size:9px;opacity:.75}.initials{font:500 clamp(60px,12vw,100px)/.8 var(--serif)}.initials i{font-size:.55em;font-weight:400}.opening-copy p{height:25px;font:italic 22px var(--serif)}button,.line{cursor:pointer}.opening-copy button{margin-top:25px;border:1px solid #fff8;background:transparent;color:#fff;padding:15px 25px;letter-spacing:2px;text-transform:uppercase;font-size:9px}.sound{position:absolute;right:24px;bottom:24px;width:42px;height:42px;border:1px solid #fff5;border-radius:50%;background:transparent;color:#fff}.full{height:100svh;min-height:620px;position:relative;color:#fff;overflow:hidden}.hero-content h1{font:500 clamp(70px,13vw,125px)/.72 var(--serif);margin:25px 0}.hero-content h1 i{font-size:.5em}.scroll{display:block;margin-top:24vh;font-size:8px;letter-spacing:3px;text-transform:uppercase}.section{padding:120px 10%;text-align:center;position:relative}.section small{display:block;font-size:8px;letter-spacing:3px;color:var(--muted);margin-bottom:20px}.section h2{font:500 clamp(55px,9vw,90px)/.78 var(--serif);margin:25px 0 35px}.section h2 i{font-weight:400}.section>p{max-width:500px;margin:auto;line-height:1.9;font-size:13px;color:var(--muted)}.editorial{background:#f5f0e8}.photo-break{min-height:700px}.photo2{background-image:url('assets/photo-2.jpg')}.photo3{background-image:url('assets/photo-3.jpg')}.photo4{background-image:url('assets/photo-4.jpg')}.caption{position:absolute;left:8%;bottom:9%;font:italic clamp(25px,5vw,45px) var(--serif);text-shadow:0 2px 15px #0008}.countdown{max-width:600px;margin:60px auto 0;display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.countdown b{padding:25px 5px;border-right:1px solid var(--line);font:500 48px var(--serif)}.countdown b:last-child{border:0}.beige{background:#ded3c4}.timeline{max-width:570px;margin:60px auto 0;text-align:left}.timeline article{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:27px 0;border-top:1px solid #8f837455}.timeline time{font:500 23px var(--serif)}.timeline h3{font:500 25px var(--serif);margin:0 0 5px}.timeline p{margin:0;font-size:11px}.gallery-section{background:#f5f0e8}.gallery{margin-top:60px;display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left}.gallery figure{margin:0}.gallery figure:nth-child(even){transform:translateY(55px)}.gimg{height:420px;background:center/cover;transition:transform 1s}.gimg:hover{transform:scale(1.035)}.a{background-image:url('assets/gallery-1.jpg')}.b{background-image:url('assets/gallery-2.jpg')}.c{background-image:url('assets/gallery-3.jpg')}.d{background-image:url('assets/gallery-4.jpg')}figcaption{padding-top:12px;font-size:8px;letter-spacing:2px;color:var(--muted)}.palette{display:flex;justify-content:center;gap:11px;margin-top:45px}.palette i{width:39px;height:39px;border-radius:50%}.palette i:nth-child(1){background:#d8cfc2}.palette i:nth-child(2){background:#b9ad9d}.palette i:nth-child(3){background:#8f8477}.palette i:nth-child(4){background:#c5b091}.palette i:nth-child(5){background:#efe9df}.line{display:inline-block;margin-top:35px;padding-bottom:9px;border-bottom:1px solid var(--ink);color:var(--ink);text-decoration:none;text-transform:uppercase;letter-spacing:2px;font-size:9px}.rsvp{background:#d7c8b6}.rsvp form{max-width:520px;margin:55px auto 0;text-align:left}.rsvp label{display:block;margin-bottom:24px;font-size:9px;text-transform:uppercase;letter-spacing:2px;color:var(--muted)}.rsvp input,.rsvp select,.rsvp textarea{width:100%;margin-top:9px;padding:14px 0;border:0;border-bottom:1px solid #766f6555;background:transparent;outline:0}.rsvp button{width:100%;padding:17px;border:1px solid var(--ink);background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:2px;font-size:9px}.rsvp output{display:block;text-align:center;margin-top:20px;font-size:10px}footer{background:var(--dark);color:#eee7dd;text-align:center;padding:80px 20px}footer .initials{font-size:70px}footer p{font-size:9px;letter-spacing:4px}.reveal{opacity:0;transform:translateY(35px);transition:opacity 1s,transform 1s}.reveal.visible{opacity:1;transform:none}@media(max-width:600px){.gallery{grid-template-columns:1fr}.gallery figure:nth-child(even){transform:none}.gimg{height:470px}.countdown b{font-size:35px}.timeline article{grid-template-columns:75px 1fr}}