:root{--primary-color:#8c6721;--primary-hover:#745316;--secondary-color:#f5f0e6;--background-color:#fbf9f5;--card-bg:#fff;--accent-color:#6b4e18;--text-color:#463316;--text-muted:#7a623e;--gold-gradient:linear-gradient(135deg, #c99b42 0%, #8c6721 50%, #5c4113 100%);--wax-seal:#8c6721;--border-color:#8c672159;--font-heading:"Cinzel", serif;--font-script:"Great Vibes", cursive;--font-body:"Montserrat", sans-serif;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--shadow-subtle:0 4px 20px #787d871f;--shadow-gold:0 0 25px #d4af374d;--shadow-deep:0 12px 36px #6e737d29}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--background-color);width:100%;min-height:100%;color:var(--text-color);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--secondary-color)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.font-heading{font-family:var(--font-heading)}.font-script{font-family:var(--font-script)}.font-body{font-family:var(--font-body)}.text-gold{background:var(--gold-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;display:inline-block}@keyframes shimmerGold{0%{background-position:-200% 0}to{background-position:200% 0}}.gold-shimmer{background:linear-gradient(90deg,#d4af3733 0%,#ffeba0cc 50%,#d4af3733 100%) 0 0/200% 100%;animation:3s linear infinite shimmerGold}.glass-panel{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-deep)}.btn-gold{background:var(--gold-gradient);color:#111;font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-full);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.6rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 4px 20px #d4af3759}.btn-gold:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 6px 25px #d4af378c}.btn-gold:active{transform:translateY(1px)}.btn-outline-gold{color:var(--accent-color);font-family:var(--font-heading);letter-spacing:.06em;border-radius:var(--radius-full);border:1px solid var(--border-color);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.4rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn-outline-gold:hover{border-color:var(--primary-color);color:#fff;background:#d4af371f;transform:translateY(-1px)}:focus-visible{outline-offset:3px;outline:3px solid #c99b42}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.opening-presentation{z-index:9999;min-height:100vh;isolation:isolate;background:#eee9e0;place-items:center;min-height:100dvh;display:grid;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.opening-presentation:after{z-index:20;content:"";opacity:0;pointer-events:none;background:#fff;position:absolute;top:0;bottom:0;left:0;right:0}.opening-stage-leaving{pointer-events:none}.opening-stage-leaving:after{animation:.85s forwards opening-white-wash}.opening-status{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.opening-card-frame{--opening-seal-size:clamp(150px, 52cqw, 220px);z-index:1;width:min(94vw,470px,51.75vh);width:min(94vw,470px,51.75dvh);max-height:92vh;aspect-ratio:9/16;background:#f8f4ec;border:1px solid #8c67219e;border-radius:4px;max-height:92dvh;transition:opacity .65s,transform .85s;position:relative;overflow:hidden;box-shadow:0 24px 65px #3728183d;container-type:inline-size}.opening-card-frame:after{z-index:10;content:"";pointer-events:none;border:1px solid #f0dcac85;position:absolute;top:9px;bottom:9px;left:9px;right:9px}.opening-stage-leaving .opening-card-frame{opacity:0;transform:scale(1.025)}.opening-drone-video,.opening-video-shade,.opening-doors,.opening-bird-flock,.opening-logo-button{position:absolute;top:0;bottom:0;left:0;right:0}.opening-drone-video{z-index:1;object-fit:cover;opacity:0;border:0;width:100%;height:100%;transition:opacity .7s .18s;display:block;transform:none}.opening-stage-video .opening-drone-video,.opening-stage-leaving .opening-drone-video{opacity:1}.opening-video-shade{z-index:2;opacity:0;pointer-events:none;background:linear-gradient(#0f130a0f,#0000 52%,#090d0733),radial-gradient(#0000 48%,#0a0d071f);transition:opacity .7s .24s}.opening-stage-video .opening-video-shade,.opening-stage-leaving .opening-video-shade{opacity:1}.opening-doors{z-index:5;perspective:1200px;transform-style:preserve-3d;will-change:transform;pointer-events:none;transform:translateZ(0)}.opening-door{width:calc(50% + 1px);transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:paint;will-change:transform, opacity;transition:transform 1.12s cubic-bezier(.22,.72,.2,1) 20ms,opacity .18s linear .92s,visibility 0s linear 1.14s;position:absolute;top:0;bottom:0;overflow:hidden;transform:translate(0,0)rotateY(0)}.opening-door:before{content:"";pointer-events:none;border:1px solid #ae86404d;position:absolute;top:10px;bottom:10px;left:10px;right:10px}.opening-door-arabesque{z-index:1;opacity:.7;filter:drop-shadow(0 1px #ffffffb8);width:clamp(72px,30cqw,116px);height:auto;position:absolute}.opening-door-arabesque-top{top:15px;left:13px}.opening-door-arabesque-bottom{bottom:15px;left:13px;transform:rotate(-90deg)}.opening-door-left{transform-origin:0;background:linear-gradient(90deg,#ddcfb8b8,#0000 13% 84%,#7754271a),radial-gradient(circle at 100% 43%,#fff 0%,#faf7f0 48%,#eee6da 100%);border-right:1px solid #694a2147;left:0;box-shadow:inset -12px 0 22px #4b331914}.opening-door-right{transform-origin:100%;background:linear-gradient(270deg,#ddcfb8b8,#0000 13% 84%,#7754271a),radial-gradient(circle at 0 43%,#fff 0%,#faf7f0 48%,#eee6da 100%);border-left:1px solid #694a2147;right:0;box-shadow:inset 12px 0 22px #4b331914}.opening-door-right .opening-door-arabesque-top{left:auto;right:13px;transform:scaleX(-1)}.opening-door-right .opening-door-arabesque-bottom{left:auto;right:13px;transform:rotate(180deg)}.opening-door-seal{width:var(--opening-seal-size);aspect-ratio:1;display:block;position:absolute;top:50%;transform:translate(-50%,-50%)}.opening-door-left .opening-door-seal{left:100%}.opening-door-right .opening-door-seal{left:0}.opening-door-seal-image{object-fit:contain;filter:brightness(1.14)saturate(1.22)drop-shadow(0 18px 22px #4d301347)drop-shadow(0 0 14px #f4cb5c47);width:100%;height:100%;animation:3.2s ease-in-out infinite opening-logo-breathe;display:block}.opening-stage-video .opening-door-left,.opening-stage-leaving .opening-door-left{visibility:hidden;opacity:0;transform:translate(-2%)rotateY(-102deg)}.opening-stage-video .opening-door-right,.opening-stage-leaving .opening-door-right{visibility:hidden;opacity:0;transform:translate(2%)rotateY(102deg)}.opening-logo-button{z-index:6;-webkit-appearance:none;appearance:none;color:#5e4219;cursor:pointer;background:0 0;border:0;place-items:center;width:100%;height:100%;padding:0;transition:opacity .26s,visibility .26s;display:grid}.opening-logo-button:disabled{cursor:default}.opening-stage-video .opening-logo-button,.opening-stage-leaving .opening-logo-button{visibility:hidden;opacity:0;pointer-events:none}.opening-logo-shell{flex-direction:column;align-items:center;gap:clamp(.8rem,4cqw,1.25rem);width:86%;padding:1.5rem 1rem;display:flex}.opening-logo-eyebrow{letter-spacing:.24em;text-transform:uppercase;font-size:clamp(.66rem,2.8cqw,.82rem);font-weight:700}.opening-logo-spacer{width:var(--opening-seal-size);aspect-ratio:1;isolation:isolate;border-radius:50%;transition:outline-color .18s;display:block;position:relative}.opening-logo-spacer:before,.opening-logo-spacer:after{content:"";pointer-events:none;border-radius:50%;position:absolute;top:-12%;bottom:-12%;left:-12%;right:-12%}.opening-logo-spacer:before{z-index:-1;filter:blur(4px);background:radial-gradient(circle,#fff9d2eb 0 20%,#e7b83d80 48%,#0000 71%);animation:2.8s ease-in-out infinite opening-seal-aura}.opening-logo-spacer:after{z-index:2;border:1px solid #ffe68feb;animation:2.8s ease-in-out infinite opening-seal-ring;top:-5%;bottom:-5%;left:-5%;right:-5%;box-shadow:inset 0 0 16px #8a530961,0 0 18px #f7d0588c}.opening-brand-logo{z-index:1;object-fit:contain;filter:brightness(1.16)saturate(1.32)drop-shadow(0 18px 22px #4d301347)drop-shadow(0 0 13px #fad56975);will-change:transform, filter;width:100%;height:100%;animation:2.8s ease-in-out infinite opening-logo-breathe;display:block;position:relative;transform:translateZ(0)}.opening-logo-button:focus-visible{outline:none}.opening-logo-button:focus-visible .opening-logo-spacer{outline-offset:7px;outline:3px solid #8c67219e}.opening-logo-prompt{text-align:center;white-space:normal;width:92%;font-size:clamp(1.35rem,7cqw,1.9rem);line-height:1.15}.opening-bird-flock{z-index:4;pointer-events:none;overflow:hidden}.opening-bird{top:var(--bird-top);width:var(--bird-size);color:#2622177a;filter:blur(.15px)drop-shadow(0 1px 1px #ffefc238);opacity:0;display:block;position:absolute;left:-16%}.opening-stage-video .opening-bird{animation:opening-bird-flight var(--bird-duration) linear calc(var(--bird-delay) + 1.1s) 1 both}.opening-bird svg{width:100%;animation:none;display:block;overflow:visible}.opening-bird path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.2px}.opening-skip-button{z-index:12;right:max(16px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));color:#4c381dd1;min-width:44px;min-height:44px;font-family:var(--font-body);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:.55rem .2rem;font-size:.67rem;transition:opacity .18s 1.2s;position:absolute}.opening-stage-logo .opening-skip-button,.opening-stage-leaving .opening-skip-button{opacity:0;pointer-events:none;transition-delay:0s}@keyframes opening-logo-breathe{0%,to{transform:translateZ(0)scale(1)}50%{transform:translateZ(0)scale(1.035)}}@keyframes opening-seal-aura{0%,to{opacity:.58;transform:translateZ(0)scale(.92)}50%{opacity:1;transform:translateZ(0)scale(1.08)}}@keyframes opening-seal-ring{0%,to{opacity:.52;transform:translateZ(0)scale(.97)rotate(0)}50%{opacity:1;transform:translateZ(0)scale(1.04)rotate(4deg)}}@keyframes opening-bird-flight{0%{opacity:0;transform:translate(0,0)rotate(0)scale(.82)}10%{transform:translate3d(14cqw, var(--bird-y1), 0) rotate(var(--bird-tilt)) scale(.86);opacity:.3}25%{transform:translate3d(35cqw, var(--bird-y2), 0) rotate(var(--bird-tilt)) scale(.92);opacity:.4}43%{transform:translate3d(60cqw, var(--bird-y3), 0) rotate(var(--bird-return-tilt)) scale(.95);opacity:.42}62%{transform:translate3d(86cqw, var(--bird-y4), 0) rotate(var(--bird-return-tilt)) scale(.93);opacity:.36}81%{transform:translate3d(112cqw, var(--bird-y5), 0) rotate(var(--bird-tilt)) scale(.9);opacity:.24}to{opacity:0;transform:translate(140cqw)rotate(0)scale(.88)}}@keyframes opening-wingbeat{0%{transform:scaleY(.64)rotate(-4deg)}to{transform:scaleY(1.08)rotate(4deg)}}@keyframes opening-white-wash{0%{opacity:0}to{opacity:1}}@media (max-height:680px){.opening-card-frame{width:min(90vw,49.5vh);--opening-seal-size:clamp(116px, 42cqw, 165px);width:min(90vw,49.5dvh);max-height:88dvh}}@media (prefers-reduced-motion:reduce){.opening-brand-logo,.opening-door-seal-image,.opening-bird,.opening-logo-spacer:before,.opening-logo-spacer:after{animation:none}.opening-bird{opacity:0}.opening-door{transition:none}.opening-stage-video .opening-doors,.opening-stage-leaving .opening-doors{visibility:hidden;opacity:0}.opening-stage-video .opening-drone-video,.opening-stage-leaving .opening-drone-video{opacity:1;transition:none;transform:none}.opening-stage-leaving:after{animation-duration:.18s}.opening-stage-leaving .opening-card-frame{transition:opacity .18s;transform:none}}.music-player-floating{align-items:center;gap:.28rem;max-width:min(80vw,245px);display:inline-flex;position:relative}.music-toggle-btn,.mute-btn-mini{border:1px solid var(--border-color);cursor:pointer;min-height:42px}.music-toggle-btn{min-width:0;color:var(--accent-color);border-radius:var(--radius-full);background:#fffffff0;align-items:center;gap:.48rem;padding:.38rem .72rem;transition:transform .18s,background-color .18s,border-color .18s,box-shadow .18s;display:inline-flex;box-shadow:0 4px 18px #787d8726,0 0 15px #d4af3726}.music-toggle-btn:hover{border-color:var(--primary-color);background:#fff;transform:translateY(-1px);box-shadow:0 6px 22px #8c672133}.disc-wrapper{color:var(--primary-color);flex:none;place-items:center;display:grid}.music-disc-icon.spinning{animation:4s linear infinite spinRecord}@keyframes spinRecord{to{transform:rotate(360deg)}}.music-copy{text-align:left;min-width:0;display:grid}.music-label{color:var(--accent-color);font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:700;line-height:1.1}.music-title{color:var(--text-muted);text-overflow:clip;white-space:normal;overflow-wrap:anywhere;text-wrap:balance;font-size:.64rem;line-height:1.2;overflow:visible}.equalizer-bars{flex:none;align-items:flex-end;gap:2px;height:15px;display:flex}.equalizer-bars .bar{background:var(--primary-color);border-radius:4px;width:2.5px}.equalizer-bars .b1{animation:1.2s ease-in-out infinite bounceBar}.equalizer-bars .b2{animation:.8s ease-in-out .2s infinite bounceBar}.equalizer-bars .b3{animation:1s ease-in-out .4s infinite bounceBar}@keyframes bounceBar{0%,to{height:4px}50%{height:14px}}.mute-btn-mini{color:var(--text-muted);background:#ffffffe0;border-radius:50%;flex:0 0 42px;place-items:center;padding:0;transition:transform .18s,color .18s,border-color .18s;display:grid}.mute-btn-mini:hover{color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-1px)}.music-error-message{color:#7a281f;text-align:center;background:#fff8f4;border:1px solid #ac4b3a4d;border-radius:.5rem;width:max-content;max-width:220px;padding:.45rem .65rem;font-size:.7rem;line-height:1.3;position:absolute;top:calc(100% + .35rem);right:0}.golden-confetti{z-index:40;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0;overflow:hidden}.golden-confetti-stream{top:var(--y);opacity:0;will-change:transform, opacity;width:0;height:0;animation:3s cubic-bezier(.16,.78,.24,1) infinite paused confetti-cross-card;position:absolute}.golden-confetti-stream.from-left{--travel-x:clamp(142px, 47vw, 220px);left:-.75rem}.golden-confetti-stream.from-right{--travel-x:clamp(-220px, -47vw, -142px);left:calc(100% + .75rem)}.golden-confetti-flake{will-change:transform, filter;background:linear-gradient(130deg,#fffdec 0%,#ffe9a2 24%,#efb72e 58%,#925403 100%);border-radius:.12rem;width:.66rem;height:1.08rem;animation:3s cubic-bezier(.18,.68,.22,1) infinite paused confetti-flake-flow;display:block;position:relative;box-shadow:0 0 7px #ffe78bf2,0 0 18px #dea62bb8}.golden-confetti-flake:before,.golden-confetti-flake:after{content:"";pointer-events:none;position:absolute;top:50%;bottom:auto;left:50%;right:auto}.golden-confetti-flake:before{mix-blend-mode:screen;background:radial-gradient(circle,#fffcd6f2 0 5%,#fad36357 26%,#0000 66%);width:2.1rem;height:2.1rem;animation:3s ease-out infinite paused confetti-glint;transform:translate(-50%,-50%)}.golden-confetti-flake:after{opacity:0;background:linear-gradient(90deg,#0000 44%,#ffffebfa 49%,#0000 54%),linear-gradient(#0000 46%,#ffffebfa 51%,#0000 56%);width:1.12rem;height:1.12rem;animation:3s ease-out infinite paused confetti-star;transform:translate(-50%,-50%)rotate(45deg)}.golden-confetti.is-active .golden-confetti-stream,.golden-confetti.is-active .golden-confetti-flake,.golden-confetti.is-active .golden-confetti-flake:before,.golden-confetti.is-active .golden-confetti-flake:after{animation-play-state:running}@media (pointer:coarse){.golden-confetti-stream:nth-child(n+29){display:none}.golden-confetti-flake{box-shadow:0 0 5px #ffe78bc7}.golden-confetti-flake:before,.golden-confetti-flake:after{display:none}}.golden-confetti-flake.variant-1{border-radius:50%;width:.95rem;height:.42rem}.golden-confetti-flake.variant-2{background:radial-gradient(circle at 35% 30%,#fffde5,#d99818 74%);border-radius:50%;width:.46rem;height:.46rem}.golden-confetti-flake.variant-3{border-radius:50% .08rem;width:.42rem;height:1.22rem}@keyframes confetti-cross-card{0%{opacity:0;transform:translate(0,0)}6%{opacity:1}61%{opacity:1;transform:translate3d(var(--travel-x), 0, 0)}66.67%,to{opacity:0;transform:translate3d(var(--travel-x), 0, 0)}}@keyframes confetti-flake-flow{0%{filter:brightness(.9)saturate(1.05);transform:translate(0,0)rotate(0)scale(.35)}28%{filter:brightness(1.35)saturate(1.18);transform:translate3d(0, var(--arc-y), 0) rotate(var(--mid-spin)) scale(1.08)}61%{filter:brightness(1.05)saturate(1.12);transform:translate3d(0, var(--end-y), 0) rotate(var(--spin)) scale(.88)}66.67%,to{filter:brightness(.9)saturate();transform:translate3d(0, var(--end-y), 0) rotate(var(--spin)) scale(.72)}}@keyframes confetti-glint{0%,12%,66.67%,to{opacity:0;transform:translate(-50%,-50%)scale(.42)}25%,48%{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes confetti-star{0%,17%,66.67%,to{opacity:0;transform:translate(-50%,-50%)rotate(45deg)scale(.4)}32%,51%{opacity:.9;transform:translate(-50%,-50%)rotate(45deg)scale(1)}}@media (prefers-reduced-motion:reduce){.golden-confetti{display:none}}.hero-section{text-align:center;border-bottom:1px solid var(--border-color);background-color:var(--card-bg);flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:560px;padding:3.5rem 1.2rem 2.5rem;display:flex;position:relative;overflow:hidden}.hero-background-image{filter:brightness(1.03)saturate(1.08);opacity:.38;background-position:50% 20%;background-size:cover;position:absolute;top:0;bottom:0;left:0;right:0;transform:scale(1.03)}.hero-overlay{pointer-events:none;background:radial-gradient(at 50% 42%,#ffffff9e 0%,#fbf9f5c7 45%,#fbf9f5f2 80%,#fff 100%);position:absolute;top:0;bottom:0;left:0;right:0}.hero-corner-ornaments{z-index:1;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.hero-ornament{aspect-ratio:1;opacity:.38;width:clamp(5.8rem,27vw,8.9rem);position:absolute;overflow:visible}.hero-ornament path{fill:none;stroke:#7e581db8;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.25px}.hero-ornament circle{fill:#7e581d9e}.hero-ornament-top-left{top:-.55rem;left:-.45rem}.hero-ornament-top-right{top:-.55rem;right:-.45rem;transform:scaleX(-1)}.hero-ornament-bottom-left{bottom:-.55rem;left:-.45rem;transform:scaleY(-1)}.hero-ornament-bottom-right{bottom:-.55rem;right:-.45rem;transform:scale(-1)}.hero-content{z-index:2;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:440px;display:flex;position:relative}.hero-guest-welcome-badge{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border:1px solid #8c672173;flex-direction:column;align-items:center;gap:.15rem;padding:.4rem 1.2rem;display:flex;box-shadow:0 4px 18px #8c672124,0 0 16px #ffffffe6}.hero-guest-label{text-transform:uppercase;letter-spacing:.15em;color:#6b5c3b;font-size:.68rem;font-weight:600}.hero-guest-name{font-family:var(--font-script), "Great Vibes", cursive;color:#2b1a03;letter-spacing:.02em;filter:drop-shadow(0 0 3px #fffffff2);font-size:clamp(1.6rem,5.5vw,2.2rem);font-weight:500;line-height:1.25}.hero-badge{border-radius:var(--radius-full);font-family:var(--font-heading);letter-spacing:.18em;text-transform:uppercase;color:#5c3e0e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff0;border:1px solid #8c672173;align-items:center;gap:.5rem;padding:.38rem 1.15rem;font-size:.76rem;font-weight:700;display:inline-flex;box-shadow:0 4px 15px #8c67211f,0 0 16px #ffffffe6}.hero-brand-logo{object-fit:contain;filter:drop-shadow(0 8px 12px #5d3e1638);width:clamp(78px,21vw,94px);height:auto;margin-bottom:.15rem;display:block}.hero-couple-names{z-index:1;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:100%;margin:.35rem 0;padding:.35rem .2rem;display:flex;position:relative}.hero-couple-names:before{content:"";filter:blur(14px);z-index:-1;pointer-events:none;background:radial-gradient(#fffffff5 0%,#ffffffd9 45%,#fbf9f580 70%,#0000 100%);border-radius:50%;width:140%;height:155%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bride-name,.groom-name{font-family:var(--font-script), "Great Vibes", cursive;white-space:normal;overflow-wrap:anywhere;text-wrap:balance;text-align:center;letter-spacing:.02em;color:#4d3308;background:linear-gradient(135deg,#7c5415 0%,#4f3306 60%,#301f03 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 1px #fff)drop-shadow(0 0 6px #fffffff2)drop-shadow(0 0 14px #ffffffe6)drop-shadow(0 2px 4px #3c280a4d);-webkit-background-clip:text;width:100%;max-width:100%;margin:0;padding:0 .25rem;font-size:clamp(2.1rem,7.6vw,3.1rem);font-weight:500;line-height:1.18}.couple-ampersand{font-family:var(--font-script), "Great Vibes", cursive;color:#745217;filter:drop-shadow(0 0 1px #fff)drop-shadow(0 0 6px #fffffff2)drop-shadow(0 2px 4px #3c280a40);margin:-.4rem 0;font-size:clamp(1.8rem,6.2vw,2.5rem);font-style:italic;line-height:1}.hero-date-banner{z-index:1;align-items:center;gap:.8rem;width:100%;max-width:370px;margin:.6rem 0;padding:.35rem .8rem;display:flex;position:relative}.hero-date-banner:before{content:"";filter:blur(8px);z-index:-1;pointer-events:none;background:radial-gradient(#fffffff0 0%,#ffffffb8 60%,#0000 100%);border-radius:14px;width:100%;height:170%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.date-line{background:linear-gradient(90deg,#0000,#8c6721 50%,#0000);flex:1;height:1.5px}.hero-date-text{letter-spacing:.16em;color:#4a320c;filter:drop-shadow(0 0 4px #fffffff2);font-size:.9rem;font-weight:700}.hero-quote-box{border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;background:#fffffff0;border-left:2.5px solid #8c6721;border-right:2.5px solid #8c6721;margin-top:.6rem;padding:.95rem 1.4rem;box-shadow:0 4px 20px #8c67211a,0 0 25px #ffffffd9}.hero-quote-title{color:#6b4910;margin:0 0 .35rem;font-size:clamp(1.35rem,5.4vw,2rem);font-weight:500;line-height:1}.hero-quote{color:#3b2707;text-shadow:0 0 4px #fffc;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;margin:0;font-family:Cormorant Garamond,Georgia,serif;font-size:1.18rem;font-style:italic;font-weight:600;line-height:1.6}.hero-quote-reference{color:#75561e;font-family:var(--font-heading);letter-spacing:.11em;text-transform:uppercase;margin-top:.55rem;font-size:.65rem;font-style:normal;font-weight:700;display:block}.hero-parents-box{z-index:1;border-top:1px solid #8c672140;width:100%;margin-top:1rem;padding:.9rem .25rem .5rem;position:relative}.hero-parents-box:before{content:"";filter:blur(8px);z-index:-1;pointer-events:none;background:radial-gradient(#ffffffeb 0%,#ffffffa6 60%,#0000 100%);border-radius:12px;width:105%;height:120%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.parents-intro{text-transform:uppercase;letter-spacing:clamp(.04em,.6vw,.11em);color:#5c3e0e;filter:drop-shadow(0 0 4px #ffffffe6);white-space:normal;overflow-wrap:anywhere;text-wrap:balance;text-align:center;width:min(100%,34rem);max-width:100%;margin:0 auto .85rem;font-size:clamp(.6rem,2.1vw,.74rem);font-style:italic;font-weight:700;line-height:1.55;display:block}.parents-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(.7rem,3vw,1.35rem);width:100%;display:grid}.parents-col{text-align:center;grid-template-rows:minmax(2.5em,auto) minmax(7em,auto);align-content:start;gap:.4rem;min-width:0;display:grid}.parents-side{letter-spacing:.08em;text-transform:uppercase;color:#7a5518;filter:drop-shadow(0 0 4px #ffffffe6);font-size:clamp(.64rem,2vw,.72rem);font-weight:800;line-height:1.28}.parents-names,.parents-col p{font-family:var(--font-script), "Great Vibes", cursive;color:#362204;white-space:normal;letter-spacing:.01em;filter:drop-shadow(0 0 4px #ffffffe6);text-align:center;width:100%;min-height:7em;margin:0;font-size:clamp(1.16rem,3.65vw,1.68rem);font-weight:500;line-height:1.35}.parent-single-name,.parents-names span{white-space:nowrap;overflow-wrap:normal;text-wrap:nowrap;max-width:100%;line-height:1.25;display:block}.parent-ampersand{color:var(--primary-color);margin:-.08em 0;font-size:1.28em;line-height:.76}.parent-spacer{height:.6rem;display:block}@media (max-width:380px){.bride-name,.groom-name{font-size:2.1rem}.couple-ampersand{margin:-.3rem 0;font-size:1.8rem}.parents-names,.parents-col p{font-size:clamp(1.08rem,4.2vw,1.28rem)}.parents-grid{gap:.35rem}.parents-intro{letter-spacing:.04em;font-size:.58rem}.parents-side{font-size:.62rem}}@media (max-width:330px){.parents-names,.parents-col p{font-size:1rem}.parents-intro{letter-spacing:.02em;font-size:.52rem}}.welcome-message-section{width:100%;margin:2.3rem 0 0;padding:0 1.15rem}.welcome-message-card{text-align:center;background:radial-gradient(circle at 50% 0,#e6cc8f40,#0000 46%),#ffffffe6;padding:2rem 1.45rem 1.7rem;position:relative;overflow:hidden}.welcome-message-card:before,.welcome-message-card:after{content:"";pointer-events:none;border:1px solid #8c672147;width:74px;height:74px;position:absolute}.welcome-message-card:before{border-radius:50%;top:-42px;left:-42px}.welcome-message-card:after{border-radius:50%;bottom:-42px;right:-42px}.welcome-message-ornament,.welcome-message-signature{justify-content:center;align-items:center;gap:.5rem;display:flex}.welcome-message-ornament{color:var(--primary-color);margin-bottom:.9rem}.welcome-message-ornament span{background:linear-gradient(90deg, transparent, var(--primary-color));width:38px;height:1px}.welcome-message-ornament span:last-child{transform:scaleX(-1)}.welcome-message-eyebrow{color:var(--text-muted);font-family:var(--font-heading);letter-spacing:.18em;text-transform:uppercase;font-size:.66rem;font-weight:700}.welcome-message-title{color:#5f3d08;margin:.35rem 0 .85rem;font-size:clamp(2rem,7vw,2.75rem);font-weight:500;line-height:1.08}.welcome-message-copy{max-width:34rem;color:var(--text-color);margin:0 auto;font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.08rem,3.5vw,1.25rem);font-style:italic;line-height:1.55}.welcome-message-signature{color:var(--text-muted);letter-spacing:.17em;margin-top:1.15rem;font-size:.62rem;font-weight:700}.countdown-container{text-align:center;width:100%;max-width:285px;margin:.9rem auto 1.6rem}.countdown-header{justify-content:center;align-items:center;gap:.375rem;margin-bottom:.675rem;display:flex}.countdown-subtitle{font-family:var(--font-heading);letter-spacing:.15em;text-transform:uppercase;color:var(--accent-color);font-size:.585rem}.countdown-grid{justify-content:center;align-items:center;gap:.2625rem;display:flex}.time-box{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-color);background:#ffffffeb;border-radius:6px;flex:1;min-width:43.5px;padding:.525rem .15rem;position:relative;overflow:hidden;box-shadow:0 4px 15px #787d871f}.time-box:before{content:"";background:var(--gold-gradient);height:1.5px;position:absolute;top:0;left:0;right:0}.time-number{color:#fff;background:var(--gold-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.125rem;font-weight:700;line-height:1.1}.time-label{letter-spacing:.12em;color:var(--text-muted);margin-top:.225rem;font-size:.435rem;font-weight:500}.time-colon{color:var(--primary-color);margin-top:-9px;font-size:.9rem;font-weight:700}.countdown-expired-msg{border:1px solid var(--border-color);color:var(--accent-color);background:#d4af371a;border-radius:6px;padding:.75rem}.countdown-expired-msg p{margin-bottom:.2rem;font-size:.825rem;font-weight:600}.countdown-expired-msg span{color:var(--text-muted);font-size:.638rem}.event-date-calendar{width:min(100% - 2rem,285px);color:var(--accent-color);text-align:center;border:1px solid var(--border-color);background:#ffffffd1;border-radius:12px;margin:1.35rem auto .2rem;padding:.8rem .9rem .65rem;box-shadow:0 7px 22px #785a1e1a}.event-date-calendar-heading{font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;justify-content:center;align-items:center;gap:.38rem;margin-bottom:.6rem;font-size:.72rem;font-weight:700;display:flex}.event-date-week,.event-date-days{grid-template-columns:repeat(7,1fr);align-items:center;display:grid}.event-date-week{color:var(--text-muted);margin-bottom:.28rem;font-size:.5rem;font-weight:700}.event-date-days{row-gap:.15rem}.event-date-day{width:1.42rem;height:1.42rem;color:var(--text-color);border-radius:50%;place-items:center;margin:0 auto;font-size:.61rem;font-weight:600;display:grid}.event-date-day.is-event-day{color:#fff;background:var(--gold-gradient);box-shadow:0 4px 10px #8c672152}.event-date-caption{color:var(--text-muted);margin:.62rem 0 0;font-family:Cormorant Garamond,Georgia,serif;font-size:.78rem;font-style:italic}.story-section{width:100%;margin:2.5rem 0}.story-card{text-align:center;flex-direction:column;align-items:center;gap:1.4rem;padding:1.6rem 1.4rem;display:flex}.story-photo-wrapper{background:var(--gold-gradient);border-radius:160px 160px 24px 24px;width:100%;max-width:320px;height:460px;margin:.5rem auto;padding:6px;transition:transform .4s,box-shadow .4s;position:relative;box-shadow:0 12px 32px #78643c38,0 0 30px #d4af374d}.story-photo-wrapper:hover{transform:translateY(-4px)scale(1.01);box-shadow:0 16px 40px #78643c4d,0 0 40px #d4af3773}.story-couple-image{object-fit:cover;object-position:center 15%;border-radius:154px 154px 18px 18px;width:100%;height:100%;display:block}.story-photo-frame{pointer-events:none;border:1.5px dashed #d4af3799;border-radius:168px 168px 30px 30px;position:absolute;top:-7px;bottom:-7px;left:-7px;right:-7px}.story-text-body{width:100%;padding:.8rem 1.2rem .4rem}.story-paragraph{color:var(--text-color,#151311);letter-spacing:.02em;text-align:center;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:1.25rem;font-style:italic;font-weight:600;line-height:1.85}.locations-section{width:100%;margin:2.5rem 0}.section-title-wrapper{text-align:center;margin-bottom:1.8rem}.section-subtitle{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-color);margin-bottom:.3rem;font-size:.75rem;display:block}.section-title{color:var(--text-color);letter-spacing:.05em;font-size:1.6rem;font-weight:700}.section-divider{justify-content:center;align-items:center;gap:.8rem;margin-top:.5rem;display:flex}.section-divider:before,.section-divider:after{content:"";background:var(--gold-gradient);width:50px;height:1px}.locations-cards-grid{flex-direction:column;gap:1.5rem;display:flex}.location-card{text-align:center;padding:1.6rem 1.2rem;transition:transform .3s,border-color .3s;position:relative}.location-card:hover{border-color:var(--primary-color);transform:translateY(-3px)}.location-badge{border:1px solid var(--border-color);color:var(--accent-color);font-family:var(--font-heading);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-full);background:#d4af3726;align-items:center;gap:.4rem;margin-bottom:.8rem;padding:.3rem .8rem;font-size:.72rem;display:inline-flex}.reception-badge{background:#e898ac26;border-color:#e898ac4d}.location-name{color:var(--text-color);margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.location-time-tag{font-family:var(--font-heading);color:var(--primary-color);margin-bottom:.7rem;font-size:.9rem;font-weight:700;display:inline-block}.location-address{color:var(--text-muted);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;justify-content:center;align-items:flex-start;gap:.4rem;margin-bottom:.8rem;font-size:.86rem;line-height:1.4;display:flex}.pin-icon{flex-shrink:0;margin-top:2px}.location-note{color:var(--accent-color);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;background:#ffffff08;margin-bottom:1.2rem;padding:.4rem .8rem;font-size:.78rem;font-style:italic}.location-buttons-group{flex-direction:column;gap:.6rem;width:100%;display:flex}.location-btn{width:100%;padding:.85rem 1rem;font-size:.88rem}.location-btn-waze{width:100%;padding:.6rem 1rem;font-size:.8rem}.itinerary-section{width:100%;margin:2.5rem 0}.itinerary-timeline{flex-direction:column;gap:1.2rem;padding:.5rem 0;display:flex;position:relative}.timeline-item{align-items:flex-start;gap:.8rem;display:flex;position:relative}.timeline-time-col{text-align:right;flex-shrink:0;width:72px;padding-top:.4rem}.timeline-time{color:var(--accent-color);letter-spacing:.05em;font-size:.76rem;font-weight:700}.timeline-node{flex-direction:column;flex-shrink:0;align-items:center;padding-top:.2rem;display:flex;position:relative}.node-icon-circle{background:var(--secondary-color);border:1.5px solid var(--primary-color);z-index:2;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;box-shadow:0 0 12px #d4af3759}.timeline-connector{background:linear-gradient(180deg, var(--primary-color) 0%, #d4af3733 100%);z-index:1;width:2px;position:absolute;top:34px;bottom:-22px}.timeline-content-card{border-radius:var(--radius-sm);flex:1;padding:.85rem 1rem;transition:transform .2s}.timeline-content-card:hover{border-color:var(--primary-color);transform:translate(3px)}.timeline-item-title{color:var(--text-color);margin-bottom:.2rem;font-size:.95rem;font-weight:600}.timeline-item-desc{color:var(--text-muted);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;font-size:.78rem;line-height:1.4}.dresscode-section{width:100%;margin:2.2rem 0}.dresscode-card{text-align:center;border-radius:var(--radius-md,16px);background:#fffffff0;border:1px solid #d4af3759;padding:2.2rem 1.6rem;position:relative;overflow:hidden;box-shadow:0 8px 25px #78643c14}.dresscode-floral-corner{pointer-events:none;width:50px;height:50px;position:absolute}.dresscode-corner-tl{opacity:.45;top:6px;left:6px}.dresscode-corner-tr{opacity:.45;top:6px;right:6px;transform:scaleX(-1)}.dresscode-attire-icon-wrap{justify-content:center;margin-bottom:.6rem;display:flex}.dresscode-script-title{font-family:var(--font-script), "Great Vibes", cursive;color:#745217;letter-spacing:.02em;background:linear-gradient(135deg,#7c5415 0%,#4f3306 60%,#301f03 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:.2rem 0 1rem;font-size:clamp(2.3rem,7.5vw,3.1rem);font-weight:500;line-height:1.25}.dresscode-kicker{color:var(--text-muted);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .15rem;font-size:.68rem;font-weight:700}.dresscode-suggest-text{color:#4a3413;letter-spacing:.02em;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;margin:0 0 1.2rem;font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:1.2rem;font-style:italic;font-weight:500;line-height:1.6}.dresscode-divider{background:linear-gradient(90deg,#0000,#8c672180,#0000);width:76%;max-width:255px;height:1px;margin:1.1rem auto}.dresscode-white-warning{color:#6b4d1b;letter-spacing:.02em;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;max-width:320px;margin:0 auto;font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:1.08rem;font-weight:600;line-height:1.6}.adults-only-note{color:#634716;text-align:left;background:#f9f3e3d9;border:1px solid #8c672142;border-radius:.8rem;align-items:flex-start;gap:.7rem;max-width:340px;margin:1.35rem auto 0;padding:.9rem 1rem;display:flex}.adults-only-note>svg{color:var(--primary-color);flex:none;margin-top:.08rem}.adults-only-label{font-family:var(--font-heading);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.18rem;font-size:.7rem;font-weight:700;display:block}.adults-only-note p{font-family:Cormorant Garamond,Georgia,serif;font-size:1rem;font-weight:600;line-height:1.38}.gifts-section{width:100%;margin:2.5rem 0}.gifts-card{text-align:center;padding:1.8rem 1.4rem}.gifts-message{color:var(--text-muted);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;margin-bottom:1.4rem;font-size:.88rem;line-height:1.6}.bank-card{border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:left;background:#0a0c10a6;margin-bottom:1.2rem;padding:1.2rem;box-shadow:inset 0 0 15px #0006}.bank-header{border-bottom:1px solid #d4af3733;align-items:center;gap:.5rem;margin-bottom:.8rem;padding-bottom:.6rem;display:flex}.bank-title{color:var(--accent-color);font-size:.95rem;font-weight:700}.bank-info-grid{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.bank-field{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem;font-size:.8rem;display:flex}.field-label{color:var(--text-muted)}.field-val{color:var(--text-color);font-weight:500}.account-number-box{border:1px dashed var(--primary-color);border-radius:var(--radius-sm);background:#d4af3714;justify-content:space-between;align-items:center;gap:.8rem;padding:.5rem .8rem;display:flex}.acc-number-text{letter-spacing:.08em;color:var(--primary-color);word-break:break-all;font-family:monospace;font-size:1.05rem;font-weight:700}.copy-btn{flex-shrink:0;padding:.45rem .9rem;font-size:.76rem}.wishlist-wrap{margin-top:1rem}.wishlist-btn{width:100%;font-size:.82rem}.rsvp-section{width:100%;margin:2.5rem 0}.rsvp-card{text-align:center;padding:1.8rem 1.4rem}.guest-welcome-line{border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#d4af371a;margin-bottom:1.4rem;padding:.8rem 1rem}.welcome-tag{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-size:.74rem;display:block}.welcome-name{font-family:var(--font-script), "Great Vibes", cursive;color:#3b2707;letter-spacing:.02em;margin-top:.2rem;font-size:clamp(1.65rem,5.5vw,2.2rem);font-weight:500}.simple-name-group{text-align:left;margin-bottom:1.4rem}.simple-label{letter-spacing:.08em;text-transform:uppercase;color:var(--accent-color);margin-bottom:.5rem;font-size:.8rem;font-weight:600;display:block}.simple-name-input{border:1px solid var(--border-color);border-radius:var(--radius-sm);color:#202226;width:100%;font-family:var(--font-body);background:#fffffff2;outline:none;padding:.85rem 1rem;font-size:.95rem;transition:all .2s}.simple-name-input:focus{border-color:var(--primary-color);box-shadow:0 0 12px #c59b274d}.simple-name-input.has-error{border-color:#ef4444}.error-text{color:#ef4444;margin-top:.3rem;font-size:.76rem;display:block}.passes-pill-selector{text-align:left;border:0;margin-bottom:1.6rem;padding:0}.passes-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);align-items:center;gap:.4rem;margin-bottom:.6rem;font-size:.78rem;font-weight:600;display:flex}.passes-buttons-row{flex-wrap:wrap;gap:.5rem;display:flex}.pass-pill{border-radius:var(--radius-sm);border:1px solid var(--border-color);color:#202226;cursor:pointer;background:#0000000a;flex:1;min-width:60px;padding:.6rem .5rem;font-size:.82rem;font-weight:600;transition:all .2s}.pass-pill:hover{background:#c59b271f}.pass-pill.selected{background:var(--gold-gradient);border-color:var(--primary-color);color:#1a1a1a;font-weight:700;box-shadow:0 4px 12px #c59b274d}.rsvp-two-buttons{flex-direction:column;gap:.9rem;width:100%;display:flex}.btn-accept-rsvp{background:var(--gold-gradient);color:#111;border-radius:var(--radius-full);cursor:pointer;text-align:left;border:none;justify-content:center;align-items:center;gap:.8rem;padding:1.1rem 1.4rem;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 6px 25px #d4af3766}.btn-accept-rsvp:hover{filter:brightness(1.1);transform:translateY(-2px)scale(1.02);box-shadow:0 8px 30px #d4af3799}.btn-accept-rsvp svg{color:#111;flex-shrink:0}.btn-decline-rsvp{color:#f87171;border-radius:var(--radius-full);cursor:pointer;text-align:left;background:#ffffff0a;border:1px solid #ef444466;justify-content:center;align-items:center;gap:.8rem;padding:.9rem 1.4rem;transition:all .25s;display:flex}.btn-decline-rsvp:hover{color:#fff;background:#ef444426;border-color:#ef4444;transform:translateY(-1px)}.btn-decline-rsvp svg{color:#ef4444;flex-shrink:0}.btn-text-block{flex-direction:column;display:flex}.btn-main-label{font-family:var(--font-heading);letter-spacing:.05em;text-transform:uppercase;font-size:.98rem;font-weight:700}.btn-sub-label{opacity:.85;font-size:.74rem}.rsvp-simple-success{text-align:center;padding:1.2rem .5rem}.status-icon-glow{margin-bottom:.8rem;animation:.4s pulseIn}@keyframes pulseIn{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.success-heading{color:var(--accent-color);margin-bottom:.5rem;font-size:1.4rem}.success-paragraph{color:var(--text-muted);margin-bottom:1.4rem;font-size:.9rem;line-height:1.5}.rsvp-delivery-note{color:var(--text-muted);max-width:300px;margin:-.7rem auto 1.2rem;font-size:.76rem;line-height:1.4}.rsvp-two-buttons button:disabled{cursor:wait;opacity:.7}.change-resp-btn{padding:.5rem 1.2rem;font-size:.78rem}.calendar-quick-container{text-align:center;width:100%;max-width:380px;margin:1.65rem auto .65rem;padding:0 .8rem}.calendar-hint{color:var(--text-color,#4a3413);white-space:pre-line;word-break:break-word;max-width:330px;margin:0 auto .9rem;font-family:Cormorant Garamond,Playfair Display,Georgia,serif;font-size:1.05rem;font-style:italic;font-weight:500;line-height:1.55}.calendar-actions-grid{flex-direction:column;gap:.65rem;max-width:320px;margin:0 auto;display:flex}.calendar-btn{letter-spacing:.06em;text-transform:uppercase;border-radius:30px;justify-content:center;align-items:center;gap:.55rem;width:100%;padding:.78rem 1rem;font-size:.84rem;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex}.calendar-btn:hover{transform:translateY(-2px);box-shadow:0 5px 16px #d4af3766}.invitation-view-root{background-color:var(--background-color);background-image:radial-gradient(1.5px 1.5px at 25px 25px,#8c67211f,#0000),radial-gradient(2px 2px at 120px 80px,#8c67212e,#0000);background-size:200px 200px;justify-content:center;align-items:flex-start;width:100%;min-height:100vh;padding:1.5rem 1rem 5rem;display:flex}.invitation-vertical-card{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:450px;box-shadow:var(--shadow-deep), 0 0 45px #d4af371f;flex-direction:column;padding:0 0 1.5rem;display:flex;position:relative;overflow:hidden}.card-corner{border:2px solid var(--primary-color);pointer-events:none;z-index:10;width:24px;height:24px;position:absolute}.corner-tl{border-bottom:none;border-right:none;top:12px;left:12px}.corner-tr{border-bottom:none;border-left:none;top:12px;right:12px}.corner-bl{border-top:none;border-right:none;bottom:12px;left:12px}.corner-br{border-top:none;border-left:none;bottom:12px;right:12px}.guest-personalized-banner{border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center;background:#d4af371f;margin:.8rem .5rem 0;padding:.6rem .8rem}.guest-greeting{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem;display:block}.guest-name-pill{font-family:var(--font-heading);color:var(--accent-color);margin-top:.2rem;font-size:1.05rem;font-weight:700;display:block}.passes-badge{border-radius:var(--radius-full);color:var(--text-muted);background:#ffffff14;margin-top:.3rem;padding:.15rem .5rem;font-size:.7rem;display:inline-block}.card-music-wrapper{z-index:50;position:absolute;top:14px;right:14px}.card-share-block{text-align:center;width:100%;max-width:380px;margin:1.5rem auto .5rem;padding:0 .8rem}.btn-whatsapp-inside{color:#128c40;border-radius:var(--radius-full);cursor:pointer;background:#25d36614;border:1.5px solid #25d36673;justify-content:center;align-items:center;gap:.6rem;width:100%;padding:.85rem 1.4rem;font-size:.86rem;font-weight:700;transition:all .25s;display:inline-flex}.btn-whatsapp-inside:hover{color:#fff;background:#25d366;border-color:#25d366;transform:translateY(-2px);box-shadow:0 4px 15px #25d3664d}.invitation-footer{text-align:center;border-top:1px solid #d4af3733;margin-top:2rem;padding:3rem 1rem 2rem}.footer-monogram{color:var(--primary-color);letter-spacing:.1em;margin-bottom:.4rem;font-size:1.5rem;font-weight:700}.footer-thanks{color:var(--text-color);margin-bottom:.6rem;font-size:2.1rem}.footer-copyright{color:var(--text-muted);letter-spacing:.08em;flex-wrap:wrap;justify-content:center;align-items:center;gap:.3rem;font-size:.75rem;display:flex}.footer-couple-names{font-family:var(--font-script), "Great Vibes", cursive;color:#5c3e0e;letter-spacing:.02em;text-transform:none;font-size:1.4rem;font-weight:500}.footer-year{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.card-admin-footer{border-top:1px dashed #8c672133;margin-top:1.4rem;padding-top:.8rem}.btn-admin-discrete{color:#8c6721;opacity:.75;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;transition:opacity .2s;display:inline-flex}.btn-admin-discrete:hover{opacity:1;background:#8c672114}.mobile-sticky-bar{z-index:900;-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-color);background:#fffffff5;justify-content:center;align-items:center;gap:.75rem;width:100%;max-width:450px;padding:.65rem 1rem;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 20px #8c67211f}.sticky-action-btn{border-radius:var(--radius-full);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.75rem .6rem;font-size:.8rem;font-weight:600;display:flex}.maps-sticky-btn{border:1px solid var(--border-color);color:var(--primary-color);background:#8c672114}.maps-sticky-btn:hover{background:#8c672126}.rsvp-sticky-btn{box-shadow:0 4px 15px #8c67214d}@media (max-width:500px){.invitation-view-root{background-color:var(--background-color);padding:.75rem .45rem 5rem}.invitation-vertical-card{border:1px solid var(--border-color);border-radius:var(--radius-md);max-width:100%;padding:0 0 1rem;box-shadow:0 8px 30px #00000014,0 0 25px #d4af3714}.card-corner{width:18px;height:18px;display:block}.corner-tl{top:8px;left:8px}.corner-tr{top:8px;right:8px}.corner-bl{bottom:8px;left:8px}.corner-br{bottom:8px;right:8px}.mobile-sticky-bar{border-left:none;border-right:none;max-width:100%}}.is-simulator-mode{background:0 0;min-height:auto;padding:0}.is-simulator-mode .invitation-vertical-card{box-shadow:none;border:none;border-radius:0}.app-container{flex-direction:column;width:100%;min-height:100vh;display:flex}.admin-loading-state{min-height:100vh;color:#5e4219;min-height:100dvh;font-family:var(--font-heading);letter-spacing:.08em;text-align:center;background:#f8f4ec;place-items:center;padding:2rem;display:grid}
