@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Pinyon+Script&family=Montserrat:wght@300;400;600&family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=Cinzel:wght@400;700&display=swap";:root{--color-bg: #fdfdfd;--color-text: #2d332d;--color-accent: #8ba082;--color-sage: #6b7a64;--color-sage-light: #d4dbd0;--color-gold: #C5A059;--font-serif: "Playfair Display", serif;--font-script: "Pinyon Script", cursive;--font-body: "Cormorant Garamond", serif;--font-sans: "Montserrat", sans-serif;--font-cinzel: "Cinzel", serif}*{box-sizing:border-box;margin:0;padding:0}html{font-size:21px}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden;font-size:1rem}h1{font-family:var(--font-serif)}h2{font-family:var(--font-script);font-weight:400;text-transform:none}h3{font-family:var(--font-serif);font-weight:300}.hidden{display:none!important}section{padding:80px 20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative}.section-intro{position:fixed;top:0;left:0;width:100%;height:100%;background:#fdfaf6;z-index:1000;display:grid;place-items:center;padding:0!important;transition:opacity 1s ease-in-out}.intro-background{position:absolute;top:0;left:0;width:100%;height:100%;background:#fff;opacity:.5;background-image:radial-gradient(#dcdcdc .5px,transparent .5px);background-size:20px 20px;pointer-events:none}.intro-ui{position:relative;z-index:1001;text-align:center;display:flex;flex-direction:column;align-items:center;width:100%}.wax-seal-container{cursor:pointer;transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}.wax-seal-container:hover{transform:scale(1.08) rotate(2deg)}.wax-seal{width:140px;height:140px;background:var(--color-sage);background-image:radial-gradient(circle at 30% 30%,rgba(255,255,255,.15) 0%,transparent 40%),url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-blend-mode:overlay;border-radius:50%;display:flex;justify-content:center;align-items:center;position:relative;box-shadow:inset 0 0 15px #0006,inset -8px -8px 12px #0003,inset 8px 8px 12px #ffffff26,0 15px 35px #6b7a6466;filter:url(#wax-organic);clip-path:polygon(50% 1%,70% 4%,85% 12%,96% 28%,99% 48%,94% 68%,82% 88%,62% 97%,48% 99%,32% 96%,12% 84%,4% 64%,1% 44%,6% 24%,18% 8%,34% 3%);transform:rotate(-2deg)}.seal-inner{width:95px;height:95px;background:var(--color-sage);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3Cfilter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");background-blend-mode:overlay;border:1px solid rgba(0,0,0,.15);border-radius:50%;display:flex;justify-content:center;align-items:center;box-shadow:inset 4px 4px 8px #00000040,1px 1px 2px #ffffff1a;position:relative;transform:rotate(1deg)}.seal-inner:after{content:"";position:absolute;inset:6%;border:1px solid rgba(255,255,255,.1);border-radius:50%;pointer-events:none}.wax-seal .initials{font-family:var(--font-serif);font-size:2rem;color:#ffffffd9;-webkit-user-select:none;user-select:none;text-shadow:-1px -1px 1px rgba(0,0,0,.4),1px 1px 1px rgba(255,255,255,.2);filter:blur(.3px);letter-spacing:-1px}.click-to-open{margin-top:25px;font-family:var(--font-serif);font-size:1.1rem;color:var(--color-accent);font-style:italic;letter-spacing:1px}.section-hero{text-align:center;background-color:var(--color-bg);padding:120px 0 80px!important;overflow:hidden;isolation:isolate}.hero-content{position:relative;z-index:2;width:100%;padding-left:clamp(16px,3vw,40px);padding-right:clamp(16px,3vw,40px)}.hero-ornaments{position:absolute;inset:0;z-index:1;pointer-events:none}.hero-column{position:absolute;top:50%;--column-shift: 0px;--column-scale: 1.14;transform:translate(var(--column-shift),-50%) scale(var(--column-scale));transform-origin:center center;width:clamp(270px,25vw,400px);max-height:88vh;object-fit:contain;opacity:.4;filter:saturate(1) contrast(1)}.hero-column-left{width:clamp(260px,24.2vw,382px);left:0;--column-shift: -86px}.hero-column-right{right:0;--column-shift: 86px}.section-hero h1{font-family:var(--font-serif);font-size:clamp(1.75rem,8vw,3.25rem);font-weight:400;text-transform:uppercase;letter-spacing:.5rem;color:var(--color-text);margin-bottom:2rem;display:flex;justify-content:center;align-items:center;gap:1.5rem}@media(max-width:768px){.hero-column{--column-scale: 1.12;width:clamp(208px,37vw,292px);top:56%;opacity:.33}.hero-column-left{width:clamp(200px,35vw,278px);left:0;--column-shift: -54px}.hero-column-right{right:0;--column-shift: 54px}.section-hero h1{flex-direction:column;gap:.5rem;letter-spacing:.3rem}.section-hero h1 .amp{font-size:.8em;opacity:.6;margin:.5rem 0}}@media(max-width:480px){.hero-column{--column-scale: 1.1;width:clamp(162px,33vw,214px);top:58%;opacity:.3}.hero-column-left{width:clamp(154px,31vw,202px);left:0;--column-shift: -34px}.hero-column-right{right:0;--column-shift: 34px}}.section-hero p.wedding-date{font-family:var(--font-script);font-size:clamp(1.8rem,5vw,2.5rem);color:var(--color-accent);margin-top:1rem}.hero-save-the-date{font-family:var(--font-script);font-size:clamp(1.8rem,5vw,2.5rem);color:var(--color-accent);margin-bottom:.5rem}.section-countdown{min-height:auto;padding:60px 20px;background-color:#fff}.timer{display:flex;justify-content:center;gap:15px;margin-top:3rem;flex-wrap:wrap}.time-box{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;padding:15px 5px;min-width:100px;border-radius:8px;box-shadow:0 4px 15px #00000008;border:1px solid rgba(107,122,100,.1);overflow:hidden}@media(max-width:480px){.timer{gap:4px;flex-wrap:nowrap;width:100%;padding:0 5px}.time-box{min-width:0;flex:1;padding:6px 2px}.time-box span{font-size:1rem!important;white-space:nowrap}.time-box label{font-size:.16rem;letter-spacing:0;white-space:nowrap;margin-top:4px}}.time-box span{font-family:var(--font-serif);font-size:2.2rem;color:var(--color-accent);line-height:1;display:block;text-align:center}.time-box label{font-family:var(--font-sans);font-size:.7rem;letter-spacing:2px;margin-top:10px}.section-timeline{background-color:#fff;padding:100px 20px}.section-timeline h2{font-family:var(--font-script);font-size:clamp(3rem,10vw,4.5rem);margin-bottom:60px;text-align:center;color:var(--color-text)}.timeline-container{position:relative;max-width:600px;width:100%}.timeline-container:before{content:"";position:absolute;left:31px;top:0;bottom:0;width:1px;background:var(--color-accent);opacity:.2}.timeline-item{display:flex;gap:30px;margin-bottom:50px;position:relative}.timeline-icon{width:64px;height:64px;background:var(--color-bg);border:1px solid var(--color-accent);border-radius:50%;display:flex;justify-content:center;align-items:center;color:var(--color-accent);z-index:1;transition:all .3s ease}.timeline-icon svg{width:28px;height:28px}.timeline-item:hover .timeline-icon{background:var(--color-accent);color:#fff}.timeline-info{flex:1}.timeline-info .time{font-family:var(--font-sans);font-size:.8rem;letter-spacing:2px;color:var(--color-accent);font-weight:700;display:block;margin-bottom:5px}.timeline-info h3{font-size:1.5rem;margin-bottom:5px;color:var(--color-text)}.timeline-info p{font-size:.9rem;opacity:.6}.section-locations{background-color:#fff;padding:100px 20px}.section-locations h2{font-family:var(--font-script);font-size:clamp(3rem,10vw,4.5rem);margin-bottom:50px;text-align:center;color:var(--color-text);letter-spacing:2px}.locations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;width:100%}.location-card{background:var(--color-bg);padding:40px;border-radius:12px;text-align:center;border:1px solid rgba(107,122,100,.1);transition:transform .3s ease,box-shadow .3s ease}.location-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}.location-icon{margin-bottom:20px}.icon-img{width:80px;height:80px;object-fit:contain;mix-blend-mode:multiply;opacity:.9}.location-card h3{font-size:1.8rem;margin-bottom:5px;color:var(--color-accent)}.locations-grid .location-card .location-time{font-family:var(--font-script)!important;font-size:1.2rem!important;font-weight:400!important;color:var(--color-text);margin-bottom:8px;opacity:.7;display:block}.locations-grid .location-card .location-subtitle{font-family:var(--font-script)!important;font-size:1.42rem!important;font-weight:400!important;color:var(--color-text);margin-bottom:12px;opacity:.75;display:block;line-height:1}.location-card p{margin-bottom:5px;font-size:.95rem;opacity:.8}.btn-map{display:inline-block;margin-top:25px;padding:12px 25px;background:#fff;border:1px solid var(--color-accent);color:var(--color-accent);text-decoration:none;font-family:var(--font-sans);font-size:.8rem;text-transform:uppercase;letter-spacing:1px;font-weight:700;border-radius:6px;transition:all .3s ease}.btn-map:hover{background:var(--color-accent);color:#fff}.section-rsvp{background-color:var(--color-bg);padding:100px 20px}.rsvp-card{background:#fff;padding:50px 40px;border-radius:12px;box-shadow:0 10px 40px #0000000d;max-width:600px;width:100%;text-align:center}.rsvp-card h2{font-size:clamp(3rem,10vw,4.5rem);margin-bottom:10px;color:var(--color-text)}.rsvp-intro{font-size:.9rem;font-style:italic;opacity:.6;margin-bottom:40px}.rsvp-form{text-align:left}.form-group{margin-bottom:25px}.form-group label{display:block;font-family:var(--font-sans);font-size:.75rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;color:var(--color-accent);font-weight:700}.rsvp-form input,.rsvp-form select,.rsvp-form textarea{width:100%;padding:15px;border:1px solid rgba(0,0,0,.1);border-radius:6px;font-family:var(--font-sans);font-size:1rem;transition:border-color .3s ease}.rsvp-form input:focus,.rsvp-form select:focus,.rsvp-form textarea:focus{outline:none;border-color:var(--color-accent)}.rsvp-form textarea{height:100px;resize:none}.btn-submit{width:100%;padding:18px;background-color:var(--color-accent);color:#fff;border:none;border-radius:8px;font-family:var(--font-sans);font-weight:700;font-size:1rem;letter-spacing:2px;cursor:pointer;transition:all .3s ease;margin-top:20px;text-transform:uppercase}.btn-submit:hover{background-color:var(--color-sage);transform:translateY(-2px);box-shadow:0 5px 15px #6b7a644d}.rsvp-status{margin-top:20px;font-size:.9rem;font-weight:500}.rsvp-status.success{color:#4caf50}.rsvp-status.error{color:#f44336}.site-footer{background-color:var(--color-sage);color:#fff;padding:80px 20px;text-align:center;min-height:auto}.footer-names{font-family:var(--font-serif)!important;font-size:clamp(1.2rem,5vw,1.8rem)!important;text-transform:uppercase;letter-spacing:.5rem;margin-bottom:1rem;color:#fff!important}.footer-date{font-family:var(--font-script);font-size:clamp(1.8rem,5vw,2.5rem);margin-bottom:2rem;opacity:.9}.footer-quote{font-family:var(--font-body);font-size:1rem;font-style:italic;max-width:600px;margin:0 auto;opacity:.8;letter-spacing:1px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn 1.5s ease-out forwards}.hero{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(circle at center,#fff,#96928733);padding:2rem}.hero-names{font-family:var(--font-script);font-size:5rem;color:var(--color-sage);margin-bottom:1rem;line-height:1.2;text-shadow:1px 1px 0px rgba(197,160,89,.2)}.hero-date{font-size:1.5rem;letter-spacing:3px;text-transform:uppercase;margin-top:1rem;color:var(--color-gold);font-weight:600}.scroll-indicator{position:absolute;bottom:2rem;animation:bounce 2s infinite;opacity:.6}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.details-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:3rem}@media(min-width:768px){.details-grid{grid-template-columns:1fr 1fr}}.detail-card{padding:2rem;background:var(--color-white);border:1px solid var(--color-pink);border-radius:8px;box-shadow:0 4px 15px #94a89a1a;transition:transform .3s ease}.detail-card:hover{transform:translateY(-5px);border-color:var(--color-gold)}.rsvp-form{background:var(--color-white);padding:3rem;border-radius:12px;box-shadow:0 10px 30px #00000008;margin-top:2rem;text-align:left;border-top:5px solid var(--color-sage)}.form-group{margin-bottom:1.5rem}label{display:block;margin-bottom:.5rem;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-text)}input,select,textarea{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:4px;font-family:var(--font-sans);font-size:1rem;transition:border-color .3s;background-color:#fbfbfb}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-sage);background-color:var(--color-white)}button{width:100%;padding:15px;background-color:var(--color-sage);color:#fff;border:none;font-family:var(--font-serif);font-size:1.2rem;cursor:pointer;border-radius:4px;transition:background-color .3s,transform .2s;letter-spacing:1px}button:hover{background-color:#7da085;transform:scale(1.01)}.message-box{margin-top:1rem;padding:1rem;border-radius:4px;display:none;text-align:center}.success{background-color:#d4edda;color:#155724;display:block}.error{background-color:#f8d7da;color:#721c24;display:block}footer{padding:2rem;text-align:center;font-size:.9rem;opacity:.7;border-top:1px solid rgba(0,0,0,.05);margin-top:4rem;color:var(--color-text);opacity:.8}@media(max-width:600px){.countdown-container{gap:1rem}.countdown-item .number{font-size:1.8rem}.countdown-item{min-width:60px}}.envelope-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;overflow:hidden;background:transparent;pointer-events:auto}.envelope-overlay.hidden{pointer-events:none;opacity:0;transition:opacity 1s ease .5s}.envelope-container{position:relative;width:300px;height:200px;background-color:var(--color-beige);cursor:pointer;box-shadow:0 10px 20px #0000001a;transition:transform .5s ease}.envelope-back{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--color-sage)}.tear-envelope{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column}.envelope-section{flex:1;background-color:var(--color-sage);background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM12 60c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='%23969287' fill-opacity='0.1' fill-rule='evenodd'/%3E%3C/svg%3E");display:flex;justify-content:center;align-items:center;transition:transform 1.2s ease-in-out,opacity 1s ease .5s;box-shadow:0 0 20px #0000001a;z-index:2;position:relative;overflow:hidden}.top-section{align-items:flex-end;padding-bottom:2rem;box-shadow:0 5px 15px #0000000d;border-bottom:1px solid rgba(0,0,0,.05)}.bottom-section{align-items:flex-start;padding-top:2rem}.wax-seal-static{width:120px;height:120px;background-color:var(--color-pink);border-radius:50%;display:flex;justify-content:center;align-items:center;position:relative;margin-bottom:60px;box-shadow:0 4px 15px #0003;border:4px double rgba(255,255,255,.4)}.seal-s,.seal-and,.seal-f{font-family:var(--font-script);color:#fff;position:absolute;line-height:1}.seal-s{font-size:2.5rem;top:15px;left:18px}.seal-and{font-size:1.5rem;font-family:var(--font-serif);top:50%;left:50%;transform:translate(-50%,-50%);opacity:.8}.seal-f{font-size:2.5rem;bottom:15px;right:20px}.invite-preview{font-family:var(--font-serif);letter-spacing:3px;text-transform:uppercase}.main-content-hidden{opacity:0;transition:opacity 1.5s ease}.main-content-visible{opacity:1}.hero{border-radius:0;padding:2rem;height:100vh}
