:root{--ink:#35432f;--muted:#869079;--paper:#fbfaf3;--soft:#e9eddf;--accent:#718260;--gold:#b2976f;--dark:#35422f;--line:#dce2ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.8 Arial,sans-serif}a{color:inherit;text-decoration:none}[hidden]{display:none!important}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h2{font-size:43px;letter-spacing:-1.5px;margin:18px 0 28px}h2 i{color:var(--accent)}.wedding-backdrop{position:fixed;inset:0;background-size:cover;background-position:center;z-index:-2}.wedding-cover{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 24px;background:linear-gradient(#24331a55,#26341c88);color:white;text-align:center;gap:30px}.cover-top,.cover-signature{font-size:8px;letter-spacing:2.8px}.cover-card{width:min(420px,100%);padding:40px 30px 32px;background:#fbfaf0f2;color:var(--ink);border-radius:160px 160px 3px 3px;border:1px solid #c4cca6;box-shadow:0 15px 70px #13220b33}.fine-rule{display:block;width:45px;height:1px;background:var(--gold);margin:10px auto 22px}.cover-title{font:italic 18px Georgia,serif;color:var(--accent);margin:15px 0 25px}.cover-card h1{font-size:45px;letter-spacing:-1px;margin:20px 0}.cover-card h1>span{display:block;overflow-wrap:anywhere}.cover-card h1>i{font-size:28px;color:var(--gold);display:block;margin:8px 0}.cover-message{font-size:11px;color:var(--muted);max-width:240px;margin:22px auto}.cover-date{display:block;font-size:10px;letter-spacing:1px;margin:25px 0}.open-button,.solid-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 22px;border:1px solid var(--accent);background:var(--accent);color:white;font-size:11px;font-weight:600;border-radius:3px;cursor:pointer;line-height:1.6}.open-button{font-size:10px;padding:13px 17px}.open-button>span{font-size:17px;font-weight:400}.cover-guest{font-size:10px;margin:20px 0;color:var(--muted)}.cover-card>.fine-rule:last-child{margin:24px auto 0}.cover-signature{opacity:.75;font-size:7px}.wedding-cover.opening{animation:opening .6s forwards}@keyframes opening{to{opacity:0;transform:scale(1.025)}}.wedding-nav{display:flex;justify-content:space-between;align-items:center;gap:15px;position:absolute;top:0;left:0;right:0;padding:24px 6%;color:white;z-index:3;font-size:9px;letter-spacing:1px}.wedding-nav>a{font-size:9px;letter-spacing:0}.wedding-nav>button{font-size:9px;padding:7px 10px;border:1px solid #fff8;background:#fff1;color:white;border-radius:20px;cursor:pointer}.wedding-hero{min-height:100svh;background:linear-gradient(#12200d66,#14210ca3);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:white;padding:110px 30px 65px}.eyebrow{font-size:8px;letter-spacing:2.5px;color:var(--gold);font-weight:600}.wedding-hero>.eyebrow{color:#eeead3}.wedding-hero h1{font-size:clamp(55px,8vw,95px);font-style:italic;letter-spacing:-2px;margin:35px 0 25px;max-width:100%}.wedding-hero h1>span{display:block;overflow-wrap:anywhere}.wedding-hero h1>i{display:block;font-size:38px;line-height:1.4;color:#e7d6b0}.hero-date{font-size:12px;letter-spacing:2px;border-top:1px solid #fff5;border-bottom:1px solid #fff5;padding:12px 20px}.wedding-hero>p{max-width:420px;font-size:13px;line-height:1.9;margin:25px auto;white-space:pre-line}.ghost-button{background:transparent;color:white;border-color:#fff6;font-size:10px}.hero-bottom{font-size:7px;letter-spacing:2px;margin-top:40px;color:#fff9}.story-section,.countdown-section,.celebration-section,.program-section,.dress-section,.photo-section,.gifts-section,.rsvp-section{text-align:center;padding:75px 30px;background:var(--paper)}.story-section>p{max-width:550px;margin:25px auto;color:var(--muted);font-size:14px;white-space:pre-line}.ornament{display:block;color:var(--gold);font-size:25px;margin-top:30px}.countdown-section{background:var(--soft);padding:60px 25px}.countdown-section h2{font-size:36px;margin-bottom:30px}.countdown{display:flex;gap:20px;max-width:410px;margin:auto;justify-content:center}.countdown>div{flex:1;border-right:1px solid var(--line);padding-right:15px}.countdown>div:last-child{border:0;padding:0}.countdown b{display:block;font:400 43px Georgia,serif;color:var(--accent)}.countdown span{font-size:7px;letter-spacing:1.5px;color:var(--muted)}.location-grid{max-width:850px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:25px;margin:40px auto 20px}.location-grid article{border:1px solid var(--line);border-radius:120px 120px 4px 4px;padding:35px 30px 30px;background:var(--paper)}.location-icon{font:33px Georgia,serif;display:block;color:var(--gold);margin-bottom:22px}.location-grid h3{font-size:29px;margin:20px 0 10px}.time{font:italic 25px Georgia,serif;color:var(--accent);display:block;margin:15px 0}.location-grid p{font-size:12px;color:var(--muted);max-width:300px;margin:20px auto}.location-grid a,.calendar-link{font-size:10px;color:var(--accent);border-bottom:1px solid var(--line);padding-bottom:5px}.timezone-note{font-size:8px;color:var(--muted);margin:22px}.program-section{background:var(--soft)}.timeline{max-width:480px;list-style:none;margin:35px auto 0;padding:0;text-align:left}.timeline li{display:grid;grid-template-columns:95px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:18px 5px;align-items:center}.timeline li>span{font:italic 23px Georgia,serif;color:var(--accent)}.timeline p{font-size:13px;margin:0;color:var(--muted)}.dress-section>p,.gifts-section>p{color:var(--muted);font-size:13px;max-width:500px;margin:25px auto;white-space:pre-line}.adults-note{font-size:11px!important}.photo-section{padding-top:30px}.photo-grid{max-width:950px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:35px auto 0}.photo-grid img{width:100%;height:300px;object-fit:cover;border-radius:3px;display:block}.gifts-section{background:var(--soft)}.rsvp-section>p{font-size:12px;color:var(--muted);max-width:470px;margin:20px auto}.rsvp-card{max-width:420px;margin:30px auto}.rsvp-card h3{font:italic 30px Georgia,serif;margin-bottom:10px}.rsvp-card>p{font-size:12px;color:var(--muted)}.rsvp-card form{text-align:left;margin:30px 0}.rsvp-card label{display:block;font-size:10px;color:var(--muted);margin-bottom:17px;font-weight:600}.rsvp-card input,.rsvp-card select,.rsvp-card textarea{display:block;width:100%;margin-top:7px;padding:13px;border:1px solid var(--line);background:#fff;color:#37442f;border-radius:3px;font:13px Arial,sans-serif}.rsvp-card .solid-button{width:100%;font-size:12px}.notice{padding:18px 22px;background:var(--soft);border-radius:5px}.notice.error{background:#f4e0df!important;color:#91655c!important}.assigned-tables{border-top:1px solid var(--line);padding-top:25px;text-align:left}.assigned-tables p{display:flex;justify-content:space-between;gap:20px;font-size:11px;border-bottom:1px solid var(--line);padding-bottom:10px}.assigned-tables p>span{color:var(--muted)}.small-note{font-size:9px!important}.wedding-footer{background:var(--dark);text-align:center;color:#f7f6e5;padding:60px 25px}.wedding-footer>span{font-size:7px;letter-spacing:2px;color:#f7f6e588}.wedding-footer h2{font:italic 35px Georgia,serif;color:#f7f6e5;max-width:500px;margin:25px auto}.wedding-footer h2 i{color:#d4c399}.wedding-footer p{font-size:11px;color:#f7f6e588}.wedding-footer a{display:block;font-size:8px;margin-top:35px;color:#f7f6e588}.preview-ribbon{position:fixed;top:0;left:0;right:0;background:var(--soft);color:var(--accent);text-align:center;padding:6px 10px;font-size:7px;line-height:1.3;font-weight:600;letter-spacing:1px;z-index:20}body[data-preview="1"] .wedding-nav{top:22px}.theme-editorial{--ink:#5a3c41;--muted:#a28889;--paper:#fff8f3;--soft:#f2e2df;--accent:#9b636d;--gold:#bd947f;--dark:#5a3c41;--line:#ead4cd}.theme-editorial h1,.theme-editorial h2,.theme-editorial h3{font-family:Arial,sans-serif;letter-spacing:-2px}.theme-editorial .cover-card{border-radius:4px;padding:40px 25px;text-align:left}.theme-editorial .cover-title{font-family:Arial,sans-serif;font-style:normal;font-size:12px}.theme-editorial .cover-card h1{font-weight:600;font-size:43px;letter-spacing:-2px}.theme-editorial .cover-card h1 i{font-weight:400;font-style:normal;display:inline;font-size:28px}.theme-editorial .cover-message{margin-left:0}.theme-editorial .fine-rule{margin-left:0}.theme-editorial .wedding-hero{align-items:flex-start;text-align:left;background:linear-gradient(#3e16216b,#3e1621b0)}.theme-editorial .wedding-hero h1{font-weight:600;font-style:normal;font-size:clamp(52px,8vw,90px);letter-spacing:-3px}.theme-editorial .wedding-hero h1 i{font-style:normal}.theme-editorial .wedding-hero>p{margin-left:0}.theme-editorial .hero-date{padding-left:0;border:0}.theme-editorial h2{font-size:39px;font-weight:500}.theme-editorial h2 i{font:italic 1.1em Georgia,serif;letter-spacing:-1px}.theme-editorial .location-grid article{border-radius:0;border:0;border-left:1px solid var(--line)}.theme-editorial .location-grid h3{font-size:25px}.theme-editorial .countdown b{font-family:Arial,sans-serif;font-weight:500}.theme-noche{--ink:#f1eadb;--muted:#a9a99b;--paper:#252f2b;--soft:#303b34;--accent:#d0b98b;--gold:#cfb887;--dark:#1b241e;--line:#53604c}.theme-noche .cover-card{background:#263026ed;border-color:#9b8b63;border-radius:3px;outline:1px solid #9b8b6355;outline-offset:-12px}.theme-noche .cover-card h1{color:#ece5d4}.theme-noche .wedding-cover{background:#111b1660}.theme-noche .wedding-hero{background:linear-gradient(#15201a7d,#142019c9)}.theme-noche .solid-button,.theme-noche .open-button{color:#253022}.theme-noche .location-grid article{border-radius:3px}.theme-noche .rsvp-card input,.theme-noche .rsvp-card select,.theme-noche .rsvp-card textarea{background:#303b34;color:#eee9da}.theme-noche .photo-grid img{border:1px solid #8f8461}.theme-noche .cover-title{color:#d0b98b}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:4px}@media(max-width:600px){.wedding-cover{padding:35px 22px;gap:25px}.cover-card{padding:35px 24px 27px;max-width:340px;border-radius:145px 145px 3px 3px}.cover-card h1{font-size:44px}.cover-top{font-size:7px;letter-spacing:1.8px}.cover-signature{font-size:6px;letter-spacing:2px}.wedding-hero{padding:95px 25px 55px}.wedding-hero h1{font-size:64px}.wedding-hero h1>i{font-size:30px}.hero-date{font-size:10px;letter-spacing:1px}.wedding-hero>p{font-size:12px}.wedding-nav{padding:22px;font-size:8px}.wedding-nav>a{font-size:8px}.story-section,.celebration-section,.program-section,.dress-section,.photo-section,.gifts-section,.rsvp-section{padding:55px 23px}h2{font-size:37px}.countdown-section{padding:50px 23px}.countdown-section h2{font-size:32px}.countdown{gap:12px}.countdown b{font-size:36px}.countdown>div{padding-right:8px}.countdown span{font-size:6px;letter-spacing:1px}.location-grid{grid-template-columns:1fr;max-width:370px}.location-grid article{padding:30px 25px}.timeline li{grid-template-columns:70px 1fr;gap:15px}.timeline li>span{font-size:21px}.timeline p{font-size:12px}.photo-grid{grid-template-columns:1fr 1fr;gap:10px}.photo-grid img{height:220px}.photo-grid a:first-child{grid-column:1/-1}.photo-grid a:first-child img{height:330px}.theme-editorial .wedding-hero h1{font-size:61px}.theme-editorial h2{font-size:35px}.theme-editorial .cover-card h1{font-size:40px}.theme-noche .cover-card{border-radius:3px}.wedding-footer h2{font-size:31px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
