@import "https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap";
.hero-container{text-align:center;background-color:#f4f7f6;background-image:url(/background2-v4.png);background-position:50% 50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;min-height:75vh;padding:5rem 2rem;display:flex;position:relative;overflow:hidden}.hero-container:before{content:"";pointer-events:none;background:linear-gradient(180deg,rgba(240,244,248,.25) 0%,rgba(240,244,248,.55) 60%,rgba(240,244,248,.8) 100%);position:absolute;inset:0;z-index:1}.hero-content{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff66;border:1px solid #fff;border-radius:16px;box-shadow:0 8px 32px #0000000d;z-index:10;max-width:480px;padding:1.5rem 1.5rem;margin:1rem auto;position:relative}.hero-title{font-family:var(--font-playfair), serif;color:#1a232c;text-transform:none;letter-spacing:1px;margin-bottom:.4rem;font-size:2.5rem;line-height:1.2}.hero-subtitle-new{font-family:var(--font-lato), sans-serif;color:#5a7184;text-transform:uppercase;letter-spacing:2.5px;margin-bottom:.7rem;font-size:1.05rem;font-weight:500;line-height:1.2}.hero-date-new{font-family:var(--font-playfair), 'Libre Baskerville', serif;color:#2b3a4a;letter-spacing:0.5px;font-size:1.35rem;font-weight:500;white-space:nowrap}@media (max-width:768px){.hero-container{background-color:#0000;background-image:url(/background2-v4.png);background-position:center top;background-size:cover;min-height:100vh;min-height:100dvh;padding:6rem 1rem 5rem}.hero-container:before{content:"";pointer-events:none;background:linear-gradient(180deg,rgba(240,244,248,.15) 0%,rgba(240,244,248,.4) 70%,rgba(240,244,248,.75) 100%);position:absolute;inset:0;z-index:1}.hero-content{width:86%;max-width:380px;padding:1.5rem 1.1rem;margin:0 auto;border-radius:14px}.hero-title{font-size:1.65rem;margin-bottom:.25rem;line-height:1.2}.hero-subtitle-new{font-size:.78rem;letter-spacing:2px;margin-bottom:.5rem;font-weight:500}.hero-date-new{font-size:1.02rem;white-space:nowrap;letter-spacing:0.3px}}@media (max-width:360px){.hero-title{font-size:1.5rem}.hero-subtitle-new{font-size:.72rem}.hero-date-new{font-size:.92rem;white-space:nowrap}}
.countdown-section{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#f8f4ef;background-image:none;padding:4rem 2rem;position:relative;overflow:hidden}.countdown-container{justify-content:center;gap:2rem;max-width:600px;margin:0 auto;display:flex}.countdown-item{-webkit-backdrop-filter:blur(8px);background:#ffffffa6;border:1px solid #fff9;border-radius:12px;flex-direction:column;align-items:center;min-width:100px;padding:1.5rem;display:flex;box-shadow:0 8px 32px #0000000d}.countdown-number{font-family:var(--font-playfair);color:var(--color-sage);margin-bottom:.5rem;font-size:2.5rem;line-height:1}.countdown-label{font-family:var(--font-lato);text-transform:uppercase;letter-spacing:2px;color:var(--color-blue);font-size:.8rem}@media (max-width:600px){.countdown-section{padding:3.5rem 1rem}.countdown-container{flex-wrap:nowrap;gap:.5rem}.countdown-item{flex:1;min-width:0;padding:1rem .5rem}.countdown-number{font-size:1.5rem}.countdown-label{letter-spacing:1px;font-size:.6rem}}
.details-section{background-image:linear-gradient(#f0f4f8e6,#f0f4f8e6),url(/background2-v4.png);background-position:50%;background-size:cover;padding:4rem 0;position:relative;overflow:visible}.details-card{-webkit-backdrop-filter:blur(8px);text-align:center;background:#ffffff66;border:1px solid #ffffffd0;border-radius:16px;min-width:0;max-width:780px;margin:0 auto;padding:4rem 2rem;box-shadow:0 8px 32px #0000000d}@media (max-width:600px){.details-card{padding:1.5rem 1rem}}.timeline-container{width:100%;margin-top:1.5rem;overflow:hidden}.map-overlay{z-index:9999999 !important;background-color:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;cursor:pointer}.map-content-wrapper{max-width:90%;max-height:90vh;position:relative;cursor:default}.map-image{object-fit:contain;background:#fff;border-radius:8px;max-width:100%;max-height:90vh;padding:1rem}.map-close{color:#fff;cursor:pointer;z-index:10000000 !important;background:0 0;border:none;font-size:40px;font-weight:700;transition:color .3s;position:absolute;top:20px;right:30px}.map-close:hover{color:#ccc}@media (max-width:768px){.map-close{font-size:30px;top:15px;right:20px}}
.order-of-day{width:100%;margin:0 auto}
.schedule-image-wrapper{display:flex;justify-content:center;align-items:center;width:100%;margin:0 auto;box-sizing:border-box}
.schedule-image{width:100%;max-width:576px;height:auto;object-fit:contain;display:block;margin:0 auto;border-radius:12px;box-shadow:0 4px 20px rgba(59,78,65,.08)}
.gallery-section{-webkit-backdrop-filter:blur(4px);background-image:linear-gradient(#fef7f5e6,#fef7f5e6),url(/ravenswood-v4.png);background-position:50%;background-size:cover;padding:4rem 2rem;position:relative;overflow:hidden}.gallery-section .container{max-width:1200px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.gallery-item{aspect-ratio:4/5;cursor:pointer;border:12px solid #fff;border-radius:4px;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000000d}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery-item:hover img{transform:scale(1.05)}.lightbox-overlay{z-index:9999;background-color:#000000e6;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.lightbox-content-wrapper{justify-content:center;align-items:center;max-width:90%;max-height:90vh;display:flex;position:relative}.lightbox-image{object-fit:contain;-webkit-user-select:none;user-select:none;max-width:100%;max-height:90vh}.lightbox-close{color:#fff;cursor:pointer;z-index:10000;background:0 0;border:none;font-size:40px;font-weight:700;transition:color .3s;position:absolute;top:20px;right:30px}.lightbox-close:hover{color:#ccc}.lightbox-nav{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:10000;background:0 0;border:none;padding:16px;font-size:50px;font-weight:700;transition:color .3s;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{color:#ccc}.lightbox-prev{left:20px}.lightbox-next{right:20px}@media (max-width:768px){.lightbox-nav{padding:10px;font-size:30px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{font-size:30px;top:15px;right:20px}.gallery-section .container{padding:0 1rem}.gallery-grid{grid-template-columns:1fr;gap:24px;max-width:400px;margin:0 auto}.gallery-item{border:8px solid #fff}}
.dress-code-section{-webkit-backdrop-filter:blur(4px);background-image:linear-gradient(#f0f4f8e6,#f0f4f8e6),url(/background2-v4.png);background-position:50%;background-size:cover;padding:4rem 2rem;position:relative}.dress-code-content{-webkit-backdrop-filter:blur(8px);background:#ffffffa6;border:1px solid #fff9;border-radius:16px;max-width:800px;margin:0 auto;padding:3rem 2rem;box-shadow:0 8px 32px #0000000d}.dress-code-text{font-family:var(--font-playfair);color:var(--color-slate);margin-bottom:2rem;font-size:1.5rem;line-height:1.5}.palette-container{justify-content:center;margin-top:1.5rem;display:flex}.palette-image{border-radius:8px;max-width:100%;height:auto;box-shadow:0 4px 15px #0000000d}@media (max-width:768px){.dress-code-text{font-size:1.2rem}}
.rsvp-section{-webkit-backdrop-filter:blur(4px);background-image:linear-gradient(#f0f4f8e6,#f0f4f8e6),url(/ravenswood-v4.png);background-position:50%;background-size:cover;padding:4rem 0;position:relative;overflow:hidden}.rsvp-form-container{-webkit-backdrop-filter:blur(8px);background:#ffffffa6;border:1px solid #fff9;border-radius:16px;max-width:600px;margin:0 auto;padding:3rem;box-shadow:0 8px 32px #0000000d}.error-message{color:var(--color-blue);text-align:center;font-family:var(--font-lato);margin-top:1rem}.rsvp-note{font-family:var(--font-lato);color:var(--color-text);text-align:center;max-width:600px;margin:0 auto 2rem;font-size:.95rem;font-style:italic}@media (max-width:600px){.rsvp-form-container{padding:1.5rem 1rem}}
.navbar{-webkit-backdrop-filter:blur(10px);z-index:1000;background:#fffffff2;width:100%;position:sticky;top:0;left:0;box-shadow:0 4px 20px #00000008}.navbar-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:.8rem 4rem;display:flex}.navbar-brand{font-family:var(--font-playfair);color:#798e9c;letter-spacing:2px;z-index:1001;font-size:1.4rem;font-weight:700;text-decoration:none}.navbar-links{align-items:center;gap:2rem;margin:0;padding:0;list-style:none;display:flex}.navbar-links a{font-family:var(--font-lato);color:var(--color-slate-light);text-transform:uppercase;letter-spacing:1.5px;font-size:.8rem;text-decoration:none;transition:color .3s}.navbar-links a:hover{color:var(--color-slate)}.nav-btn-rsvp{border:1px solid #798e9c;border-radius:50px;padding:6px 20px;font-weight:400;transition:all .3s;color:#798e9c!important}.nav-btn-rsvp:hover{background-color:#798e9c;color:#fff!important}.hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;justify-content:space-around;width:30px;height:24px;padding:0;display:none}.hamburger span{transform-origin:1px;background-color:#798e9c;border-radius:10px;width:100%;height:2px;transition:all .3s linear;position:relative}.hamburger.open span:first-child{transform:rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;transform:translate(20px)}.hamburger.open span:nth-child(3){transform:rotate(-45deg)}@media (max-width:900px){.navbar-container{padding:1rem 1.5rem}.hamburger{display:flex}.navbar-menu{-webkit-backdrop-filter:blur(15px);background:#fffffffa;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;transition:transform .4s ease-in-out;display:flex;position:fixed;top:0;left:0;transform:translate(100%)}.navbar-menu.open{transform:translate(0)}.navbar-links{flex-direction:column;gap:2rem}.navbar-links a{font-size:1.2rem}}
.entrance-overlay{z-index:9998;touch-action:none;background-color:#f7f5f0;background-image:linear-gradient(rgba(248,246,242,.65),rgba(240,237,230,.75)),url(/background2-v4.png);background-position:50% 50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100dvh;transition:transform 1.2s cubic-bezier(.25,1,.5,1),opacity 1s ease-in-out;display:flex;position:fixed;top:0;left:0;overflow:hidden}.entrance-overlay.is-fading-out{opacity:0;pointer-events:none;transform:scale(1.08)}.entrance-content{text-align:center;flex-direction:column;align-items:center;justify-content:center;width:100%;margin:0 auto;padding:0 1rem;box-sizing:border-box;display:flex}.envelope-pre-title{font-family:var(--font-lato,sans-serif);text-transform:uppercase;letter-spacing:3px;color:#1e293b;z-index:10;margin:0 0 1.5rem;font-size:.9rem;line-height:1.2;font-weight:600;text-shadow:0 1px 3px #fffffff0;transition:opacity .5s}.entrance-overlay.is-open .envelope-pre-title,.entrance-overlay.is-open .envelope-instruction{opacity:0;pointer-events:none}.envelope-wrapper{aspect-ratio:1.42;perspective:2500px;width:90%;max-width:540px;margin:0 auto;position:relative}.envelope{width:100%;height:100%;transform-style:preserve-3d;border-radius:4px;position:relative;box-shadow:0 40px 80px #0003,0 15px 25px #0000001a}.paper-texture{background-color:#fbf9f4;background-image:linear-gradient(135deg,#fff6 0%,#f0eee6cc 100%),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.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E")}.envelope-back{z-index:1;background-color:#dfdcd3;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.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E");border-radius:4px;width:100%;height:100%;position:absolute;top:0;left:0;box-shadow:inset 0 0 50px #00000040,inset 0 20px 20px #00000026}.flap-wrapper{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.flap-bottom-wrapper{z-index:3;filter:drop-shadow(0 -6px 8px #0000001f)}.flap-bottom{clip-path:polygon(0 100%,50% 50%,100% 100%);background-color:#fbf9f4;background-image:linear-gradient(#0000 0%,#ffffff1a 85%,#0000001a 100%),linear-gradient(135deg,#fff6 0%,#f0eee6cc 100%),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.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E");border-radius:4px;width:100%;height:100%}.flap-left-wrapper{z-index:4;filter:drop-shadow(4px 0 8px #00000026)}.flap-left{clip-path:polygon(0 0,52% 56%,0 100%);background-color:#fbf9f4;background-image:linear-gradient(90deg,#0000001a 0%,#ffffff1a 10%,#0000 100%),linear-gradient(135deg,#fff6 0%,#f0eee6cc 100%),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.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E");border-radius:4px;width:100%;height:100%}.flap-right-wrapper{z-index:4;filter:drop-shadow(-4px 0 8px #00000026)}.flap-right{clip-path:polygon(100% 0,48% 56%,100% 100%);background-color:#fbf9f4;background-image:linear-gradient(270deg,#0000001a 0%,#ffffff1a 10%,#0000 100%),linear-gradient(135deg,#fff6 0%,#f0eee6cc 100%),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.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E");border-radius:4px;width:100%;height:100%}.envelope-front-clip{z-index:4;pointer-events:none;border-radius:4px;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.floral-left{pointer-events:none;z-index:4;background-image:url(/elemen-kiri-v4.png);background-position:0;background-repeat:no-repeat;background-size:contain;width:55%;height:100%;position:absolute;top:0;left:0}.floral-right{pointer-events:none;z-index:4;background-image:url(/element-kanan-v4.png);background-position:100%;background-repeat:no-repeat;background-size:contain;width:55%;height:100%;position:absolute;top:0;right:0}.top-flap-wrapper{z-index:5;perspective:2500px;pointer-events:none;width:100%;height:100%;transition:z-index;position:absolute;top:0;left:0}.envelope.open .top-flap-wrapper{z-index:1;transition:z-index 0s .3s}.top-flap{clip-path:polygon(0 0,100% 0,50% 95%);transform-origin:top;filter:drop-shadow(0 12px 15px #00000040);background-color:#fbf9f4;background-image:linear-gradient(#0000001f 0%,#ffffff26 10%,#0000 100%),linear-gradient(135deg,#fff6 0%,#f0eee6cc 100%),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.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E");justify-content:center;align-items:center;width:100%;height:60%;transition:transform .9s cubic-bezier(.2,.9,.3,1.1);display:flex}.envelope.open .top-flap{transform:rotateX(180deg)}.youre-invited{color:#6d7b73;text-align:center;margin-top:-30px;font-family:Great Vibes,cursive;font-size:2.8rem;line-height:1.2;transition:opacity .3s}.envelope.open .youre-invited{opacity:0}.invitation-card{z-index:2;box-sizing:border-box;text-align:center;background-color:#fff;border:1px solid #f0f0f0;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;width:90%;height:90%;padding:1.5rem;transition:transform .8s .6s;display:flex;position:absolute;bottom:5%;left:5%;box-shadow:0 5px 25px #00000040}.envelope.open .invitation-card{transform:translateY(-55%);box-shadow:0 -5px 25px #00000026}.oval-image-wrapper{aspect-ratio:16/9;border:3px solid #f9f8f4;border-radius:50%;width:80%;max-width:320px;margin:0 auto 10px;overflow:hidden;box-shadow:0 4px 10px #0000001a}.oval-landscape{object-fit:cover;width:100%;height:100%;display:block}.lace-trim{pointer-events:none;border:1px solid #e8e8e8;position:absolute;inset:10px}.card-subtitle{font-family:var(--font-lato,sans-serif);color:#888;letter-spacing:2px;margin-bottom:5px;font-size:.6rem}.card-names{font-family:var(--font-playfair,serif);color:#333;margin-bottom:5px;font-size:1.7rem}.card-date{font-family:var(--font-lato,sans-serif);color:#666;font-size:.8rem}.wax-seal-container{aspect-ratio:1;z-index:6;cursor:pointer;width:12%;transition:opacity .4s,transform .3s;position:absolute;top:55%;left:50%;transform:translate(-50%,-50%)}.wax-seal{object-fit:contain;mix-blend-mode:multiply;clip-path:circle(46%);filter:drop-shadow(0 4px 6px #00000026);width:100%;height:100%}.envelope-wrapper:hover .wax-seal-container{transform:translate(-50%,-50%)scale(1.1)}.envelope.open .wax-seal-container{opacity:0;pointer-events:none}.envelope-instruction{font-family:var(--font-lato,sans-serif);color:#1e293b;margin-top:1.25rem;margin-bottom:.75rem;font-size:1.05rem;font-style:italic;font-weight:600;text-shadow:0 1px 2px #fffe,0 0 10px #fffc;animation:2s infinite pulse}.envelope-footer{margin-top:.75rem;margin-bottom:0;padding-bottom:0}.footer-names{font-family:var(--font-playfair,serif);color:#1a232c;margin:0 0 .35rem;font-size:2.4rem;text-shadow:0 1px 3px #fffffff0}.footer-date{font-family:var(--font-lato,sans-serif);color:#22303c;letter-spacing:3px;font-size:.9rem;font-weight:600;margin:0;line-height:1.2;text-shadow:0 1px 3px #fffffff0}@keyframes pulse{0%{opacity:.85}50%{opacity:1}to{opacity:.85}}@media (max-width:768px){.entrance-overlay{background-image:linear-gradient(rgba(248,246,242,.62),rgba(240,237,230,.72)),url(/background2-v4.png);background-position:center center;background-size:cover}}@media (max-width:600px){.envelope-wrapper{width:95%}.card-names{font-size:1.4rem}.card-subtitle{letter-spacing:1px;font-size:.5rem}.card-date{font-size:.7rem}.youre-invited{font-size:2.2rem}.envelope.open .invitation-card{transform:translateY(-60%)}.footer-names{font-size:2rem}.entrance-content{padding:0 .5rem}}

.hotel-list{list-style:none;padding:0;margin:1.5rem auto 0;display:inline-block;text-align:left;max-width:100%}.hotel-item{margin-bottom:.5rem;padding-left:1.75rem;text-indent:-1.75rem;font-family:var(--font-lato),sans-serif;font-size:1rem;line-height:1.6;color:var(--color-text,#333)}.hotel-heart{color:var(--color-sage,#96a89b);display:inline-block;width:1.5rem;text-align:center;font-size:.95rem;margin-right:.25rem}.hotel-location{color:var(--color-slate,#2b3a4a);font-weight:700}.hotel-name{color:var(--color-text,#333);font-weight:400}@media (max-width:600px){.hotel-list{margin-top:1.25rem}.hotel-item{font-size:.95rem;margin-bottom:.45rem}}
