*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.9}h1,h2,h3,.signature{font-family:var(--heading);font-weight:400;line-height:1.1}h1{font-size:clamp(58px,9vw,118px);margin:24px 0;max-width:950px;overflow-wrap:anywhere}h2{font-size:clamp(34px,5vw,53px);margin:15px auto 25px;max-width:730px}h3{font-size:32px}a{color:inherit}button,input,select,textarea{font:inherit}.section{padding:85px 24px;text-align:center;position:relative}.section-cover{min-height:100svh;display:grid;place-items:center;overflow:hidden;padding:65px 25px}.section-cover:before{content:'';position:absolute;inset:27px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:42% 42% 0 0;pointer-events:none;z-index:1}.cover-content{position:relative;z-index:2}.botanical{font-family:Georgia,serif;font-size:85px;color:var(--accent);line-height:1}.eyebrow{font-size:10px;letter-spacing:4px;font-weight:500}.date-line{display:flex;align-items:center;justify-content:center;gap:20px;font-size:12px;letter-spacing:4px;margin:30px auto}.date-line span{width:55px;height:1px;background:currentColor;opacity:.4}.cover-title{font-family:var(--heading);font-size:29px;margin:30px 0 0}.cover-content>p:last-of-type{font-size:12px}.scroll{display:block;text-decoration:none;font-size:28px;margin-top:40px}.cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.section-cover:has(.cover-photo):after{content:'';position:absolute;inset:0;background:#14251c66}.with-photo{color:white;text-shadow:0 1px 10px #0006}.with-photo .botanical{color:white}.prose{max-width:600px;margin:0 auto 25px;white-space:normal;overflow-wrap:anywhere;font-size:13px;line-height:2.2}.ornament{font-size:37px;color:var(--accent)}.section-countdown,.section-dress,.section-rsvp{background:color-mix(in srgb,var(--accent) 10%,var(--paper))}.countdown{display:flex;justify-content:center;gap:clamp(20px,6vw,65px);margin:40px 0 10px}.countdown div{display:flex;flex-direction:column;min-width:40px}.countdown strong{font-family:var(--heading);font-weight:400;font-size:clamp(38px,7vw,65px);line-height:1}.countdown span{font-size:8px;letter-spacing:3px;margin-top:15px}.section-featured{padding:30px 25px 70px}.section-featured figure{max-width:900px;margin:0 auto;position:relative}.section-featured img{width:100%;max-height:650px;object-fit:cover;border-radius:220px 220px 0 0}.section-featured figcaption{font-family:var(--heading);font-size:38px;margin-top:15px}.photo-placeholder{margin:auto;max-width:800px;min-height:300px;border-radius:300px 300px 0 0;background:radial-gradient(ellipse at bottom left,#b9c2a34a,transparent),linear-gradient(120deg,#d8dbce55,#ece6db55);padding:60px 20px}.photo-placeholder>span{font-size:80px;color:var(--accent)}.locations{display:grid;grid-template-columns:1fr 1fr;max-width:900px;margin:50px auto 0}.locations article{padding:10px 30px}.locations article+article{border-left:1px solid color-mix(in srgb,var(--accent) 40%,transparent)}.location-icon{font-size:40px;color:var(--accent)}.locations p{font-size:12px;min-height:50px}.button{display:inline-block;padding:13px 29px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);text-decoration:none;font-size:10px;letter-spacing:1.5px;cursor:pointer;text-transform:uppercase;transition:background .2s}.button:hover{background:var(--ink);color:var(--paper)}.button:disabled{opacity:.5;cursor:default}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;max-width:1050px;margin:40px auto 0}.gallery img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover}.gallery a:nth-child(3n+2){margin-top:35px}.section-gallery:has(.gallery:empty){padding:25px}.gift-details{max-width:550px;margin:30px auto 0}.gift-details summary{list-style:none}.gift-details p{padding:25px;background:#ffffff55;overflow-wrap:anywhere}.rsvp-form{max-width:580px;margin:35px auto 0;text-align:left}.rsvp-form label{display:block;font-size:11px;margin-bottom:18px}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{display:block;width:100%;border:1px solid color-mix(in srgb,var(--accent) 60%,transparent);background:var(--paper);color:var(--ink);padding:12px;margin-top:5px;border-radius:0;font-size:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rsvp-form>.button{display:block;margin:25px auto 0;background:var(--ink);color:var(--paper)}.hint{font-size:10px;opacity:.75}.rsvp-form .hint{text-align:center}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.section-music{padding:35px 20px}.section-music audio{max-width:100%}.section-music:empty{display:none}.signature{font-size:54px;margin:40px 0 20px}.section-closing{padding:80px 25px}.section-closing>p:last-child{font-size:11px}.site-footer{text-align:center;font-size:8px;letter-spacing:3px;padding:25px;border-top:1px solid #89958030}.preview-note{background:#243e35;color:#fff;text-align:center;padding:8px;font:9px Arial,sans-serif;letter-spacing:1px}.response-message{border:1px solid var(--accent);padding:15px;max-width:580px;margin:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}@media(max-width:600px){.section{padding:65px 25px}.section-cover{padding:70px 30px;min-height:94svh}.section-cover:before{inset:16px}.section-cover h1{font-size:65px}.cover-title{font-size:25px}.eyebrow{font-size:9px;letter-spacing:2px}.locations{grid-template-columns:1fr;margin-top:25px}.locations article{padding:25px 5px}.locations article+article{border-left:0;border-top:1px solid #89958030;margin-top:20px;padding-top:40px}.gallery{grid-template-columns:1fr 1fr;gap:10px}.gallery a:nth-child(3n+2){margin-top:0}.gallery a:nth-child(even){margin-top:25px}.section-featured{padding:20px}.section-featured figcaption{font-size:29px}.section-music{padding:20px}.form-row{grid-template-columns:1fr;gap:0}.signature{font-size:44px}.section-countdown{padding:55px 18px}.countdown{gap:23px}.section-gallery:has(.gallery:empty){padding:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Ornamento vectorial propio; no depende de fotografías externas. */
.rsvp-form .member-row{border:1px solid var(--accent);padding:18px;margin:25px 0;text-align:left}.rsvp-form .member-row legend{font-size:13px;padding:0 8px}.rsvp-form .remove-member{background:none;border:0;color:var(--ink);text-decoration:underline;font-size:11px;cursor:pointer}.rsvp-form .remove-member:disabled{opacity:.35;cursor:default}.rsvp-form .secondary-button{display:block;margin:15px auto}.rsvp-form [data-attendees]>h3{font-size:28px;margin-bottom:15px}.rsvp-form [hidden]{display:none!important}.rsvp-form .hint{text-transform:none;letter-spacing:0}
.cover-content .botanical,.section-closing>.botanical,.photo-placeholder>span{display:inline-block;width:80px;height:95px;font-size:0;background:url('/assets/botanical.svg') center/contain no-repeat}
