@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Great+Vibes&display=swap";@font-face{font-family:Switzerland;src:url(/assets/Switzerland-C1cU2UFJ.ttf) format("truetype");font-weight:400;font-style:normal}:root{font-family:Georgia,serif;line-height:1.6;font-weight:400;color:#5a4a3a;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}a{color:inherit;text-decoration:none}button{border-radius:8px;border:2px solid #d4c4b0;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:Georgia,serif;background-color:#fff;color:#5a4a3a;cursor:pointer;transition:all .3s ease}button:hover{background-color:#d4c4b0;transform:translateY(-2px)}button:focus,button:focus-visible{outline:2px solid #8b7355}.envelope-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:#fff;transition:opacity 1.5s ease-out;padding:40px 20px}.envelope-container.opening{opacity:0;pointer-events:none}.envelope-header-text{text-align:center;margin-bottom:20px}.families-line{font-family:Georgia,serif;font-size:14px;color:#333;letter-spacing:3px;margin-bottom:15px;text-transform:uppercase}.couple-names-script{font-family:Great Vibes,Brush Script MT,cursive;font-size:56px;color:#333;margin:0;font-weight:400}.envelope{position:relative;width:500px;max-width:90vw;cursor:pointer;transition:transform .3s ease;margin-bottom:20px}.envelope:hover{transform:scale(1.05)}.envelope-image-container{position:relative;width:100%;display:flex;justify-content:center;align-items:center}.envelope-img{width:100%;height:auto;display:block}.wax-seal{position:absolute;width:80px;height:80px;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10}.flowers-decoration{position:absolute;bottom:-5%;right:0%;width:300px;height:auto;z-index:5}.envelope-body{background:transparent;display:flex;align-items:center;justify-content:center}.envelope-flap{display:none}.envelope-text{font-family:Georgia,serif;font-size:18px;color:#333;text-align:center;letter-spacing:2px;text-transform:uppercase;margin-top:20px}.envelope.opening .envelope-flap{animation:openFlap 1s ease-out forwards}@keyframes openFlap{to{transform:rotateX(180deg)}}.home-container{min-height:100vh;background:#fff;padding:40px 0 0;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;overflow-x:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.collage-wrapper{position:relative;width:100%;max-width:1400px;min-height:1500px;margin:0 auto;padding:0 20px}.envelope-open-section{position:absolute;top:20px;left:50%;transform:translate(-50%);z-index:10;width:400px;animation:fadeIn .8s ease-out forwards;opacity:0}.envelope-open-img{width:100%;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}.main-invitation-card{position:absolute;top:300px;left:52%;background:#fff;padding:40px 50px;border:8px solid #000000;box-shadow:0 0 0 8px #fff,0 10px 30px #0000004d;text-align:center;z-index:11;max-width:400px;border-radius:150px 150px 0 0;animation:fadeIn .8s ease-out .2s forwards;opacity:0}.invitation-header{font-family:Georgia,serif;font-size:14px;letter-spacing:2px;color:#333;margin:0 0 5px}.invitation-subheader{font-family:Georgia,serif;font-size:12px;letter-spacing:2px;color:#333;margin:0 0 20px}.couple-names-script{font-family:Switzerland,Great Vibes,cursive;font-size:64px;color:#333;margin:60px 0 0;padding-bottom:-20px;line-height:1.2;font-weight:400}.wedding-details{margin-top:25px;border-top:1px solid #333;padding-top:20px}.wedding-date{font-family:Georgia,serif;font-size:18px;font-weight:700;color:#333;margin:5px 0}.wedding-venue,.wedding-location{font-family:Georgia,serif;font-size:14px;color:#333;margin:3px 0}.polaroid{position:absolute;background:#fff;padding:15px 15px 45px;box-shadow:0 8px 20px #0003;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;animation:fadeIn .8s ease-out forwards;opacity:0}.polaroid:hover{transform:scale(1.05)!important;box-shadow:0 12px 30px #0000004d;z-index:50!important}.polaroid img{width:250px;height:300px;object-fit:cover;display:block}.polaroid-1{top:350px;left:28%;transform:rotate(-8deg);z-index:15;animation-delay:.4s}.polaroid-2{top:1150px;left:calc(32% + 30px);transform:rotate(5deg);z-index:12;animation-delay:.8s}.polaroid-3{top:850px;left:52%;transform:rotate(-4deg);z-index:13;animation-delay:1s}.details-card{position:absolute;top:660px;left:calc(42% - 80px);background:#1a1a1a;color:#fff;padding:40px 50px;text-decoration:none;box-shadow:0 8px 20px #0000004d;transform:rotate(-2deg);z-index:16;transition:transform .3s ease,box-shadow .3s ease;animation:fadeIn .8s ease-out .6s forwards;opacity:0;border-top-right-radius:150px}.details-card:hover{transform:rotate(-2deg) scale(1.05);box-shadow:0 12px 30px #0006}.details-card .card-label{font-family:Georgia,serif;font-size:20px;letter-spacing:2px;display:block;margin-bottom:10px}.details-card .card-title{font-family:Switzerland,Great Vibes,cursive;font-size:48px;margin:50px 0 -10px;font-weight:400}.details-card .card-cta{font-family:Georgia,serif;font-size:20px;letter-spacing:2px;margin-top:15px;text-transform:uppercase}.rsvp-card{position:absolute;top:900px;left:calc(32% + 30px);background:#f8f6f0;color:#000;padding:40px 50px;text-decoration:none;border:3px solid #000000!important;border-radius:50px!important;box-shadow:0 10px 30px #0000004d;transform:rotate(3deg);z-index:14;transition:transform .3s ease,box-shadow .3s ease;animation:fadeIn .8s ease-out 1.2s forwards;opacity:0}.rsvp-card:hover{transform:rotate(3deg) scale(1.05);box-shadow:0 12px 30px #0000004d}.rsvp-card .card-title-script{font-family:Switzerland,Great Vibes,cursive;font-size:48px;margin:30px 0 -15px;font-weight:400;color:#000}.rsvp-card .card-title{font-family:Georgia,serif;font-size:32px;font-weight:700;margin:5px 0 15px;letter-spacing:2px;color:#000}.rsvp-card .card-cta{font-family:Georgia,serif;font-size:20px;letter-spacing:2px;text-transform:uppercase;color:#000}.story-card{position:absolute;top:1150px;left:52%;background:#000;color:#fff;padding:40px 50px;text-decoration:none;border:2px solid #333;box-shadow:0 8px 20px #0003;transform:rotate(-5deg);z-index:16;transition:transform .3s ease,box-shadow .3s ease;animation:fadeIn .8s ease-out 1.4s forwards;opacity:0}.story-card:hover{transform:rotate(-5deg) scale(1.05);box-shadow:0 12px 30px #0000004d}.story-card .card-cta{font-family:Georgia,serif;font-size:20px;letter-spacing:2px;text-transform:uppercase;display:block;margin-bottom:8px}.story-card .card-label{font-family:Georgia,serif;font-size:20px;letter-spacing:2px;display:block;margin-bottom:10px}.story-card .card-title-script{font-family:Switzerland,Great Vibes,cursive;font-size:48px;margin:50px 0 -30px;font-weight:400}@media(max-width:1200px){.collage-wrapper{min-height:2200px}.main-invitation-card{right:5%;top:450px}.polaroid img{width:200px;height:240px}}@media(max-width:768px){.collage-wrapper{min-height:2500px}.envelope-open-section{width:300px;left:50%;transform:translate(-50%)}.main-invitation-card{position:relative;top:350px;right:auto;left:50%;transform:translate(-50%);margin:20px 0}.polaroid img{width:180px;height:220px}.details-card,.rsvp-card,.story-card{left:50%;transform:translate(-50%) rotate(-2deg)}}.home-footer{position:relative;width:100vw;height:300px;margin-top:50px;margin-left:calc(-50vw + 50%);background-image:url(/assets/cincinnati-BTR1Xg0N.webp);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}.home-footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0000004d;z-index:1}.footer-content{position:relative;z-index:2;text-align:center;color:#fff}.footer-sincerely{font-family:Georgia,serif;font-size:16px;letter-spacing:3px;margin:0 0 10px;font-weight:400}.footer-names{font-family:Switzerland,Great Vibes,cursive;font-size:72px;margin:50px 0 -25px;font-weight:400;color:#fff}.footer-date{font-family:Georgia,serif;font-size:28px;letter-spacing:8px;margin:15px 0 25px;font-weight:400}.footer-back{font-family:Georgia,serif;font-size:14px;letter-spacing:2px;color:#fff;text-decoration:none;display:inline-block;transition:opacity .3s ease}.footer-back:hover{opacity:.7}.details-container{min-height:100vh;background:#fff;padding:0}.details-header{position:relative;width:100%;height:300px;background-image:url(/assets/cincinnati-BTR1Xg0N.webp);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}.details-header:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0006;z-index:1}.back-link{position:relative;z-index:2;font-family:Georgia,serif;font-size:14px;letter-spacing:2px;color:#fff;text-decoration:none;margin-bottom:20px;transition:opacity .3s ease}.back-link:hover{opacity:.7}.details-title{position:relative;z-index:2;text-align:center;color:#fff;margin:0}.title-the{display:block;font-family:Georgia,serif;font-size:24px;letter-spacing:4px;font-weight:400;margin-bottom:10px}.title-details{display:block;font-family:Switzerland,Great Vibes,cursive;font-size:72px;font-weight:400;margin-top:20px}.details-content{max-width:800px;margin:0 auto;padding:60px 20px;text-align:center}.section-title{font-family:Switzerland,Great Vibes,cursive;font-size:64px;color:#333;margin:0;font-weight:400}.info-section{margin-bottom:50px}.info-heading{font-family:Georgia,serif;font-size:24px;letter-spacing:3px;color:#333;margin:0 0 15px;font-weight:700}.info-text{font-family:Georgia,serif;font-size:24px;color:#333;margin:8px 0;line-height:1.6}.info-subtext{font-family:Georgia,serif;font-size:14px;color:#666;margin:8px 0;font-style:italic}.accommodation-title{margin-top:120px;margin-bottom:-60px}.accommodation-section{max-width:600px;margin:0 auto;padding:40px 20px}.accommodation-intro{font-family:Georgia,serif;font-size:18px;color:#333;line-height:1.8;margin-bottom:40px;text-align:center}.hotel-icon{display:flex;justify-content:center;margin:30px 0}.hotel-name{font-family:Georgia,serif;font-size:24px;letter-spacing:2px;color:#333;margin:20px 0 15px;font-weight:700;text-transform:uppercase}.hotel-address{font-family:Georgia,serif;font-size:18px;color:#333;margin:5px 0}.hotel-distance{font-family:Georgia,serif;font-size:16px;color:#666;margin:15px 0}.hotel-phone{font-family:Georgia,serif;font-size:18px;color:#333;margin:10px 0 30px}.reserve-button{display:inline-block;background:#000;color:#fff;font-family:Georgia,serif;font-size:16px;letter-spacing:1px;padding:15px 40px;text-decoration:none;transition:background .3s ease;margin-top:20px}.reserve-button:hover{background:#333}.other-details-title{margin-top:120px;margin-bottom:-60px}.other-details-section{max-width:600px;margin:0 auto;padding:40px 20px}.detail-item{margin-bottom:60px}.detail-heading{font-family:Georgia,serif;font-size:24px;letter-spacing:3px;color:#333;margin:0 0 20px;font-weight:700;text-align:center}.detail-text{font-family:Georgia,serif;font-size:18px;color:#333;line-height:1.8;text-align:center;margin:0}.registry-title{margin-top:120px;margin-bottom:-60px}.registry-section{max-width:600px;margin:0 auto;padding:40px 20px;text-align:center}.gift-icon{display:flex;justify-content:center;margin:30px 0 40px}.registry-text{font-family:Georgia,serif;font-size:18px;color:#333;line-height:1.8;margin:20px 0;text-align:center}.registry-button{display:inline-block;background:#000;color:#fff;font-family:Georgia,serif;font-size:16px;letter-spacing:2px;padding:15px 40px;text-decoration:none;transition:background .3s ease;margin-top:30px}.registry-button:hover{background:#333}.details-footer{position:relative;width:100vw;height:300px;margin-top:100px;margin-left:calc(-50vw + 50%);background-image:url(/assets/cincinnati-BTR1Xg0N.webp);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}.details-footer:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:#0000004d;z-index:1}.details-footer .footer-content{position:relative;z-index:2;text-align:center;color:#fff}.details-footer .footer-sincerely{font-family:Georgia,serif;font-size:16px;letter-spacing:3px;margin:0 0 10px;font-weight:400}.details-footer .footer-names{font-family:Switzerland,Great Vibes,cursive;font-size:72px;margin:50px 0 -25px;font-weight:400;color:#fff}.details-footer .footer-date{font-family:Georgia,serif;font-size:28px;letter-spacing:8px;margin:15px 0 25px;font-weight:400}.details-footer .footer-back{font-family:Georgia,serif;font-size:14px;letter-spacing:2px;color:#fff;text-decoration:none;display:inline-block;transition:opacity .3s ease}.details-footer .footer-back:hover{opacity:.7}@media(max-width:768px){.details-header{height:250px}.title-details{font-size:56px}.section-title{font-size:48px}}.story-container{min-height:100vh;background:linear-gradient(135deg,#f5f5f0,#e8e8dd);padding:40px 20px}.story-content{max-width:800px;margin:0 auto}.story-section{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 12px #0000001a;border:2px solid #d4c4b0;margin-bottom:40px}.story-section h2{font-family:Playfair Display,Georgia,serif;font-size:36px;color:#5a4a3a;margin:0 0 20px;text-align:center}.story-section p{font-family:Georgia,serif;font-size:18px;color:#6a5a4a;line-height:1.8;text-align:justify}.story-photo{width:100%;max-width:600px;height:400px;background:#fff;border:3px solid #d4c4b0;border-radius:4px;display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;color:#8b7355;box-shadow:0 4px 12px #0000001a;margin:40px auto;text-align:center;padding:20px}.love-note{background:#d4c4b04d;padding:40px;border-radius:8px;text-align:center;margin-top:60px}.love-note p{font-family:Playfair Display,Georgia,serif;font-size:24px;color:#5a4a3a;font-style:italic;margin:20px 0}.signature{font-family:Georgia,serif;font-size:20px!important;color:#8b7355;font-style:normal!important;margin-top:20px}@media(max-width:768px){.story-section{padding:25px}.story-section h2{font-size:28px}.story-section p{font-size:16px}.story-photo{height:300px}}.rsvp-container{min-height:100vh;background:linear-gradient(135deg,#f5f5f0,#e8e8dd);padding:40px 20px}.rsvp-content{max-width:700px;margin:0 auto}.rsvp-card{background:#fff;padding:50px 40px;border-radius:8px;box-shadow:0 4px 12px #0000001a;border:2px solid #d4c4b0;text-align:center}.rsvp-card h2{font-family:Playfair Display,Georgia,serif;font-size:36px;color:#5a4a3a;margin:0 0 40px}.reply-by{background:#d4c4b033;padding:30px;border-radius:8px;margin:30px 0}.reply-label{font-family:Georgia,serif;font-size:16px;color:#8b7355;letter-spacing:2px;margin:0 0 10px;text-transform:uppercase}.reply-date{font-family:Playfair Display,Georgia,serif;font-size:32px;color:#5a4a3a;margin:0;font-weight:600}.rsvp-message{margin:40px 0}.rsvp-message p{font-family:Georgia,serif;font-size:18px;color:#6a5a4a;line-height:1.8}.form-placeholder{background:#8b73551a;padding:50px;border-radius:8px;border:2px dashed #d4c4b0;margin:40px 0}.form-placeholder p{font-family:Georgia,serif;font-size:16px;color:#8b7355;margin:10px 0}.contact-info{margin-top:40px;padding-top:30px;border-top:1px solid #e8e8dd}.contact-info p{font-family:Georgia,serif;font-size:16px;color:#6a5a4a;margin:10px 0}@media(max-width:768px){.rsvp-card{padding:30px 20px}.rsvp-card h2{font-size:28px}.reply-date{font-size:24px}}*{margin:0;padding:0;box-sizing:border-box}#root{min-height:100vh;margin:0;padding:0}body{font-family:Georgia,serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}
