.inv-viewport-shell{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;display:flex;align-items:center;justify-content:center;background:#1c2329;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.inv-viewport-frame{position:relative;width:min(834px,100%);height:min(1194px,100dvh);max-height:100%;overflow:hidden;background:var(--inv-paper-bg, #fdfcf8);border-radius:clamp(0px,2vw,18px);box-shadow:0 24px 72px #0000006b;transform:translateZ(0);isolation:isolate}.inv-viewport-frame .inv-screen{width:100%;height:100%;min-height:0}.inv-viewport-frame .inv-opened{height:100%;max-height:100%}.inv-viewport-frame .inv-screen.inv-center{min-height:100%;height:100%}.inv-rotate-prompt{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;align-items:center;justify-content:center;padding:28px;background:#141a20f0;text-align:center}.inv-rotate-prompt-card{display:grid;gap:10px;justify-items:center;max-width:22ch;color:#f8f4ee}.inv-rotate-prompt-icon{font-size:2.4rem;line-height:1;transform:rotate(90deg)}.inv-rotate-prompt-title{margin:0;font-family:var(--inv-font-subtitle, "Cormorant Garamond", Georgia, serif);font-size:1.35rem;font-weight:700}.inv-rotate-prompt-copy{margin:0;font-size:.95rem;line-height:1.5;color:#f8f4eed1}@media (max-width: 834px) and (orientation: portrait){.inv-viewport-shell{padding:0;background:var(--inv-paper-bg, #fdfcf8)}.inv-viewport-frame{width:100%;height:100dvh;max-height:none;border-radius:0;box-shadow:none}}@media (orientation: landscape) and (max-height: 540px) and (hover: none) and (pointer: coarse){.inv-viewport-shell .inv-rotate-prompt{display:flex}}@media (min-width: 835px),(min-aspect-ratio: 13/16) and (min-width: 600px) and (orientation: landscape){.inv-viewport-shell{background:radial-gradient(circle at 20% 15%,rgba(140,192,235,.12),transparent 42%),radial-gradient(circle at 80% 85%,rgba(197,160,89,.1),transparent 38%),#1c2329}}.inv-screen{position:relative;z-index:1;min-height:100vh;min-height:100dvh;color:var(--text);font-family:var(--inv-font-body, Lora, Georgia, "Times New Roman", serif);--inv-gold: #c5a059;--inv-gold-soft: rgba(197, 160, 89, .42);--inv-paper-bg: #fdfcf8;--inv-paper: rgba(253, 252, 248, .78);--inv-teal: #2d5a61;--inv-forest: #1b3022;--inv-sage: #2d5a27}.inv-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px}.inv-muted{color:var(--muted)}.inv-envelope-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(16px,4vw,28px);width:100%;height:100%;height:100dvh;padding:max(16px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:radial-gradient(circle at top left,rgba(255,255,255,.7),transparent 22%),linear-gradient(180deg,#fff9d2,#ffebcc 48%,#fff9d2);overflow:hidden}.inv-envelope-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.55),transparent 28%),radial-gradient(circle at 85% 15%,rgba(191,221,240,.5),transparent 26%),radial-gradient(circle at 75% 80%,rgba(255,235,204,.42),transparent 24%)}.inv-envelope-orb{position:absolute;border-radius:999px;filter:blur(10px);opacity:.65;pointer-events:none}.inv-envelope-orb-one{width:min(220px,42vw);height:min(220px,42vw);right:6%;top:10%;background:radial-gradient(circle,#8cc0eb7a,#8cc0eb00)}.inv-envelope-orb-two{width:min(180px,36vw);height:min(180px,36vw);left:-20px;bottom:12%;background:radial-gradient(circle,#bfddf080,#bfddf000)}.inv-envelope-stage{position:relative;z-index:1;perspective:1200px;width:100%;display:flex;align-items:center;justify-content:center}.inv-envelope{position:relative;width:min(92vw,calc(62dvh * 7 / 5),480px);aspect-ratio:7 / 5;border:none;background:transparent;cursor:pointer;transform-style:preserve-3d;animation:inv-float 4s ease-in-out infinite;touch-action:manipulation}.inv-envelope.is-opening{animation:none}.inv-envelope.is-opening .inv-envelope-flap{transform:rotateX(180deg)}.inv-envelope.is-opening .inv-envelope-seal{opacity:0;transform:translate(-50%,-50%) scale(.6)}.inv-envelope.is-opening .inv-envelope-card{transform:translateY(-28%)}@keyframes inv-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.inv-envelope-body,.inv-envelope-flap,.inv-envelope-card{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:14px}.inv-envelope-body{background:linear-gradient(160deg,#fffdf4,#f3e6c8);box-shadow:var(--shadow);border:1px solid var(--border);z-index:2;clip-path:polygon(0 0,50% 48%,100% 0,100% 100%,0 100%)}.inv-envelope-flap{background:linear-gradient(180deg,#e8f4fc,#bfddf0);clip-path:polygon(0 0,100% 0,50% 52%);transform-origin:top;transition:transform .9s cubic-bezier(.6,0,.2,1);z-index:3}.inv-envelope-card{margin:8% 10%;background:#ffffffeb;color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:1;transition:transform .9s ease .35s;box-shadow:inset 0 1px #fffc;border:1px solid var(--border);padding:12px;text-align:center}.inv-envelope-monogram{width:clamp(48px,12vw,58px);height:clamp(48px,12vw,58px);border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:clamp(1.3rem,4vw,1.6rem);color:var(--primary-dark);background:var(--inv-accent-soft, rgba(191, 221, 240, .35))}.inv-envelope-title{font-size:clamp(.95rem,3.2vw,1.1rem);font-weight:600;line-height:1.35;color:var(--text)}.inv-envelope-seal{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:clamp(50px,14vw,62px);height:clamp(50px,14vw,62px);border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff;display:flex;align-items:center;justify-content:center;font-size:clamp(1.2rem,4vw,1.5rem);box-shadow:0 8px 20px color-mix(in srgb,var(--inv-accent) 35%,transparent);z-index:4;transition:opacity .4s ease,transform .5s ease}.inv-envelope:hover .inv-envelope-flap,.inv-envelope:focus-visible .inv-envelope-flap{transform:rotateX(28deg)}.inv-envelope:focus-visible{outline:3px solid color-mix(in srgb,var(--inv-accent) 45%,transparent);outline-offset:8px;border-radius:14px}.inv-open-hint{position:relative;z-index:1;letter-spacing:.1em;text-transform:uppercase;font-size:clamp(.72rem,2.8vw,.82rem);font-weight:700;color:var(--muted);text-align:center;max-width:28ch;animation:inv-pulse 2.4s ease-in-out infinite}@keyframes inv-pulse{0%,to{opacity:.6}50%{opacity:1}}.inv-opened{position:relative;scroll-snap-type:y proximity;overflow-y:auto;height:100vh;height:100dvh;background-color:var(--inv-paper-bg);background-image:radial-gradient(ellipse 130% 95% at 10% 6%,var(--inv-bg-glow-a, rgba(45, 90, 97, .04)),transparent 58%),radial-gradient(ellipse 110% 85% at 92% 96%,var(--inv-bg-glow-b, rgba(27, 48, 34, .045)),transparent 56%),linear-gradient(175deg,rgba(255,255,255,.42) 0%,transparent 32%,rgba(0,0,0,.012) 100%),url(/images/wedding/paper-texture.svg);background-size:100% 100%,100% 100%,100% 100%,220px 220px}.inv-opened:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:.38;background-image:url(/images/wedding/paper-texture.svg);background-size:200px 200px;mix-blend-mode:multiply}.inv-opened>*:not(.inv-botanical-frame):not(.inv-music-toggle):not(.inv-scroll-nudge):not(.inv-scroll-rail){position:relative;z-index:1}.inv-opened>.inv-music-toggle,.inv-opened>.inv-scroll-nudge,.inv-opened>.inv-scroll-rail{position:fixed;z-index:90}.inv-section{position:relative;isolation:isolate;overflow:hidden;min-height:min(88vh,88dvh);scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(32px,8vw,48px) clamp(18px,5vw,28px);gap:18px;opacity:0;transform:translateY(36px);transition:opacity .8s ease,transform .8s ease}.inv-section>*:not(.inv-botanical-frame){position:relative;z-index:1}.inv-section.is-visible{opacity:1;transform:translateY(0)}.inv-botanical-frame{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.inv-botanical-cluster{position:absolute;width:min(46vw,240px);height:min(38vw,190px)}.inv-botanical-cluster--tl{top:0;left:0}.inv-botanical-cluster--br{right:0;bottom:0;transform:rotate(180deg)}.inv-botanical-leaf{position:absolute;display:block;border-radius:0 74%;transform-origin:bottom center;filter:blur(.25px)}.inv-botanical-leaf--tl-l1,.inv-botanical-leaf--br-l1{top:10%;left:5%;width:62px;height:36px;background:linear-gradient(145deg,var(--inv-leaf-fill-a),var(--inv-leaf-fill-b));transform:rotate(-46deg)}.inv-botanical-leaf--tl-l2,.inv-botanical-leaf--br-l2{top:4%;left:18%;width:48px;height:30px;background:linear-gradient(155deg,var(--inv-leaf-fill-c),var(--inv-leaf-fill-d));transform:rotate(-18deg)}.inv-botanical-leaf--tl-l3,.inv-botanical-leaf--br-l3{top:22%;left:2%;width:44px;height:28px;background:linear-gradient(130deg,var(--inv-leaf-fill-a),var(--inv-leaf-fill-d));transform:rotate(-68deg)}.inv-botanical-leaf--tl-l4,.inv-botanical-leaf--br-l4{top:16%;left:28%;width:38px;height:24px;background:linear-gradient(160deg,var(--inv-leaf-fill-b),color-mix(in srgb,var(--inv-leaf-deep) 68%,transparent));transform:rotate(-8deg)}.inv-botanical-leaf--tl-l5,.inv-botanical-leaf--br-l5{top:34%;left:12%;width:52px;height:30px;background:linear-gradient(140deg,var(--inv-leaf-fill-b),color-mix(in srgb,var(--inv-leaf-mid) 62%,transparent));transform:rotate(-52deg)}.inv-botanical-leaf--tl-l6,.inv-botanical-leaf--br-l6{top:8%;left:34%;width:30px;height:20px;border:1px solid color-mix(in srgb,var(--inv-leaf-outline) 92%,transparent);background:transparent;border-radius:0 80%;filter:none;transform:rotate(12deg)}.inv-botanical-leaf--tl-l7,.inv-botanical-leaf--br-l7{top:28%;left:34%;width:26px;height:18px;border:1px solid color-mix(in srgb,var(--inv-leaf-outline) 84%,transparent);background:transparent;border-radius:0 80%;filter:none;transform:rotate(-22deg)}.inv-botanical-leaf--tl-l8,.inv-botanical-leaf--br-l8{top:42%;left:24%;width:34px;height:22px;background:linear-gradient(150deg,var(--inv-leaf-fill-c),color-mix(in srgb,var(--inv-leaf-light) 76%,transparent));transform:rotate(-34deg)}.inv-botanical-sparkles--tl{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,color-mix(in srgb,var(--inv-leaf-sparkle) 96%,transparent) 0 .9px,transparent 1.2px) 16% 20% / 100% 100% no-repeat,radial-gradient(circle,color-mix(in srgb,var(--inv-leaf-mid) 88%,white) 0 .7px,transparent 1px) 30% 12% / 100% 100% no-repeat,radial-gradient(circle,color-mix(in srgb,var(--inv-leaf-sparkle) 90%,transparent) 0 .6px,transparent .9px) 24% 34% / 100% 100% no-repeat,radial-gradient(circle,color-mix(in srgb,var(--inv-leaf-light) 84%,white) 0 .5px,transparent .8px) 38% 26% / 100% 100% no-repeat}.inv-botanical-gold-leaf{position:absolute;top:50%;width:46px;height:30px;opacity:.9}.inv-botanical-gold-leaf:before,.inv-botanical-gold-leaf:after{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--inv-leaf-outline) 92%,transparent);border-radius:0 78%;background:transparent}.inv-botanical-gold-leaf:before{top:0;left:0;width:22px;height:14px;transform:rotate(-18deg)}.inv-botanical-gold-leaf:after{top:8px;left:14px;width:18px;height:12px;transform:rotate(14deg)}.inv-botanical-gold-leaf--left{left:clamp(4px,1.5vw,12px);transform:translateY(-50%) rotate(-8deg)}.inv-botanical-gold-leaf--right{right:clamp(4px,1.5vw,12px);transform:translateY(-50%) scaleX(-1) rotate(-8deg)}.inv-botanical-corner{position:absolute;pointer-events:none}.inv-botanical-corner--tr{top:clamp(10px,2.5vw,18px);right:clamp(10px,2.5vw,18px);width:56px;height:56px}.inv-botanical-corner--tr:before,.inv-botanical-corner--tr:after{content:"";position:absolute;top:0;right:0;border-top:1px solid var(--inv-gold);border-right:1px solid var(--inv-gold)}.inv-botanical-corner--tr:before{width:50px;height:50px}.inv-botanical-corner--tr:after{top:9px;right:9px;width:34px;height:34px}.inv-botanical-corner--bl{bottom:clamp(10px,2.5vw,18px);left:clamp(10px,2.5vw,18px);width:68px;height:68px}.inv-botanical-corner--bl:before{content:"";position:absolute;bottom:-10px;left:-10px;width:78px;height:78px;background:radial-gradient(ellipse at 28% 72%,rgba(120,120,120,.14),transparent 68%);z-index:-1}.inv-botanical-corner--bl:after{content:"";position:absolute;bottom:0;left:0;width:54px;height:54px;border-bottom:1px solid var(--inv-gold);border-left:1px solid var(--inv-gold);box-shadow:7px -7px 0 -6px var(--inv-gold),14px -14px 0 -6px var(--inv-gold)}.inv-botanical-dots{position:absolute;top:clamp(46px,11vw,58px);right:clamp(58px,14vw,78px);width:28px;height:18px;background:radial-gradient(circle,var(--inv-gold) 0 2px,transparent 2.4px) 0 0 / 10px 10px no-repeat,radial-gradient(circle,var(--inv-gold) 0 1.5px,transparent 1.9px) 8px 7px / 8px 8px no-repeat,radial-gradient(circle,var(--inv-gold) 0 1px,transparent 1.4px) 16px 2px / 6px 6px no-repeat;opacity:.92}.inv-section-inner{position:relative;width:min(720px,100%);padding:clamp(28px,6vw,40px) clamp(22px,5vw,36px);border:1px solid var(--inv-gold-soft);border-radius:4px;background:var(--inv-paper);box-shadow:0 10px 32px #3e302414,inset 0 0 0 1px #ffffffa6;display:grid;gap:16px;justify-items:center}.inv-section-inner:before,.inv-section-inner:after{content:"";position:absolute;pointer-events:none;border-radius:2px}.inv-section-inner:before{top:10px;right:10px;bottom:10px;left:10px;border:1px solid var(--inv-gold);opacity:.85}.inv-section-inner:after{top:15px;right:15px;bottom:15px;left:15px;border:1px solid var(--inv-gold);opacity:.42}.inv-section-inner>*{position:relative;z-index:1}.inv-section h2{margin:0;font-family:var(--inv-font-subtitle, "Cormorant Garamond", Georgia, "Times New Roman", serif);font-size:clamp(1.5rem,4.5vw,2.15rem);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--inv-serif-color, var(--text))}.inv-section-heading{display:flex;flex-direction:column;align-items:center;width:100%}.inv-section-heading .inv-gold-ornament--compact{margin-top:6px}.inv-eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:600;font-family:var(--inv-font-subtitle, "Cormorant Garamond", Georgia, serif);color:var(--inv-accent-dark, var(--primary-dark));animation:inv-fade-in 1.2s ease both}.inv-title{margin:0;font-family:var(--inv-font-title, "Great Vibes", "Cormorant Garamond", cursive);font-size:clamp(2.4rem,8vw,4rem);font-weight:400;line-height:1.1;color:var(--inv-serif-color, var(--text));animation:inv-fade-in 1.2s ease .2s both}.inv-message{margin:0;max-width:560px;line-height:1.7;color:var(--muted);animation:inv-fade-in 1.2s ease .4s both}@keyframes inv-fade-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.inv-countdown{width:100%;animation:inv-fade-in 1.2s ease .6s both}.inv-countdown-title{margin:0 0 14px;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:700;color:var(--muted)}.inv-countdown-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(8px,2.5vw,12px);width:100%;max-width:420px;margin:0 auto}.inv-countdown-cell{background:var(--inv-surface, rgba(255, 249, 210, .88));border:1px solid var(--border);border-radius:16px;padding:clamp(10px,3vw,14px) clamp(6px,2vw,10px);display:flex;flex-direction:column;gap:4px;box-shadow:var(--input-shadow)}.inv-countdown-cell strong{font-size:clamp(1.2rem,4.5vw,1.85rem);font-variant-numeric:tabular-nums;color:var(--inv-accent-dark, var(--text))}.inv-countdown-cell span{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}.inv-scroll-hint{margin-top:18px;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:700}.inv-scroll-arrow{font-size:1.3rem;color:var(--primary-dark);animation:inv-bounce 1.6s ease-in-out infinite}@keyframes inv-bounce{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(8px);opacity:1}}.inv-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;width:100%}.inv-gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow)}.inv-big-date{margin:0;font-size:clamp(1.2rem,4.5vw,1.85rem);font-weight:700;text-transform:capitalize;color:var(--text);line-height:1.4}.inv-venue{margin:0;font-size:clamp(1rem,3vw,1.35rem);max-width:560px;line-height:1.6;color:var(--text);font-weight:600}.inv-details-grid{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;width:100%}.inv-details-grid>div{background:var(--inv-surface, rgba(255, 249, 210, .88));border:1px solid var(--border);border-radius:16px;padding:16px 22px;display:flex;flex-direction:column;gap:6px;min-width:min(180px,100%);flex:1 1 160px;max-width:220px}.inv-details-grid span{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700;color:var(--muted)}.inv-details-grid strong{font-size:1.05rem;font-weight:700;color:var(--text)}.inv-map-link{margin-top:4px}.inv-footer{display:grid;justify-items:center;gap:14px;text-align:center;padding:28px 20px max(36px,env(safe-area-inset-bottom));letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:700;color:var(--muted)}.inv-footer p{margin:0}.inv-scroll-top{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:999px;background:#ffffff8c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--primary-dark);font-size:1.1rem;line-height:1;cursor:pointer;box-shadow:0 8px 20px #6aaedc2e;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.inv-scroll-top:hover,.inv-scroll-top:focus-visible{transform:translateY(-2px);background:#ffffffd1;border-color:var(--input-border-hover);box-shadow:0 12px 24px #6aaedc3d;outline:none}.inv-scroll-top:active{transform:translateY(0)}@media (max-width: 900px){.inv-opened{scroll-snap-type:y mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.inv-section{min-height:100dvh;min-height:100svh;scroll-snap-stop:always}.inv-floral-divider{scroll-snap-align:none}}@media (max-width: 480px){.inv-countdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:280px}.inv-envelope{width:min(94vw,78.4dvh)}}@media (prefers-reduced-motion: reduce){.inv-envelope,.inv-scroll-arrow,.inv-open-hint,.inv-scroll-nudge{animation:none}.inv-section{transition:none;opacity:1;transform:none}.inv-envelope-flap,.inv-envelope-card,.inv-envelope-seal,.inv-carousel-slide{transition:none}.inv-carousel-progress-bar.is-animating{animation:none;width:100%}}.inv-palette--classic .inv-countdown-cell,.inv-palette--blush .inv-countdown-cell,.inv-palette--sage .inv-countdown-cell,.inv-palette--gold .inv-countdown-cell,.inv-palette--wedding .inv-countdown-cell,.inv-palette--custom .inv-countdown-cell,.inv-palette--classic .inv-details-grid>div,.inv-palette--blush .inv-details-grid>div,.inv-palette--sage .inv-details-grid>div,.inv-palette--gold .inv-details-grid>div,.inv-palette--wedding .inv-details-grid>div,.inv-palette--custom .inv-details-grid>div{background:var(--inv-surface)}.inv-serif{font-family:var(--inv-font-subtitle, "Cormorant Garamond", Georgia, "Times New Roman", serif);color:var(--inv-serif-color, var(--text))}.inv-script{font-family:var(--inv-font-accent, "Great Vibes", cursive);font-weight:400}.inv-hero-date{margin:0;font-size:clamp(1rem,3.5vw,1.25rem);text-transform:capitalize;color:var(--muted);font-weight:600}.inv-floral-divider{display:flex;align-items:center;justify-content:center;gap:clamp(8px,2.5vw,14px);width:100%;max-width:min(560px,94vw);margin:0 auto;padding:10px 12px}.inv-divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--inv-gold),transparent);opacity:.8}.inv-gold-ornament{--orn-gold: color-mix(in srgb, var(--inv-gold) 48%, var(--inv-accent));--orn-gold-light: color-mix(in srgb, var(--inv-accent) 46%, white);--orn-gold-mid: color-mix(in srgb, var(--inv-gold) 42%, var(--inv-accent));--orn-gold-dark: color-mix(in srgb, var(--inv-accent-dark) 62%, var(--inv-gold));display:flex;flex-direction:column;align-items:stretch;gap:7px;width:clamp(210px,56vw,360px);flex-shrink:0}.inv-gold-ornament--compact{width:clamp(170px,48vw,260px);gap:5px}.inv-gold-ornament__rail{position:relative;height:28px}.inv-gold-ornament--compact .inv-gold-ornament__rail{height:22px}.inv-gold-ornament__rail:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--orn-gold) 14%,var(--orn-gold-light) 50%,var(--orn-gold) 86%,transparent 100%);opacity:.95}.inv-gold-ornament__rail--mirror{transform:scaleY(-1)}.inv-gold-ornament__bloom,.inv-gold-ornament__curl,.inv-gold-ornament__dot,.inv-gold-ornament__petal,.inv-gold-ornament__leaf,.inv-gold-ornament__fly{position:absolute;pointer-events:none}.inv-gold-ornament__bloom{left:50%;bottom:3px;width:16px;height:16px;transform:translate(-50%);border-radius:50%;background:radial-gradient(ellipse 42% 58% at 50% 8%,var(--orn-gold-light) 0 88%,transparent 90%),radial-gradient(ellipse 42% 58% at 88% 34%,var(--orn-gold-mid) 0 88%,transparent 90%),radial-gradient(ellipse 42% 58% at 72% 84%,var(--orn-gold-mid) 0 88%,transparent 90%),radial-gradient(ellipse 42% 58% at 28% 84%,var(--orn-gold-mid) 0 88%,transparent 90%),radial-gradient(ellipse 42% 58% at 12% 34%,var(--orn-gold-mid) 0 88%,transparent 90%),radial-gradient(circle at 50% 50%,var(--orn-gold-light) 0 24%,var(--orn-gold-dark) 100%);box-shadow:0 0 0 .5px #9a712840}.inv-gold-ornament--compact .inv-gold-ornament__bloom{width:12px;height:12px;bottom:2px}.inv-gold-ornament__curl{width:34px;height:18px;border:1px solid transparent;border-top-color:var(--orn-gold);border-radius:50%;opacity:.9}.inv-gold-ornament--compact .inv-gold-ornament__curl{width:26px;height:14px}.inv-gold-ornament__curl--l1{left:calc(50% - 58px);bottom:4px;transform:rotate(8deg)}.inv-gold-ornament__curl--l2{left:calc(50% - 92px);bottom:8px;width:28px;height:14px;transform:rotate(-14deg);opacity:.75}.inv-gold-ornament__curl--r1{right:calc(50% - 58px);bottom:4px;transform:scaleX(-1) rotate(8deg)}.inv-gold-ornament__curl--r2{right:calc(50% - 92px);bottom:8px;width:28px;height:14px;transform:scaleX(-1) rotate(-14deg);opacity:.75}.inv-gold-ornament__dot{width:4px;height:4px;bottom:10px;border-radius:50%;background:radial-gradient(circle,var(--orn-gold-light),var(--orn-gold-dark))}.inv-gold-ornament__dot--l{left:calc(50% - 118px)}.inv-gold-ornament__dot--r{right:calc(50% - 118px)}.inv-gold-ornament__petal{width:8px;height:11px;bottom:7px;border-radius:50% 50% 45% 45%;background:linear-gradient(160deg,var(--orn-gold-light),var(--orn-gold-mid));opacity:.88}.inv-gold-ornament__petal--l{left:calc(50% - 74px);transform:rotate(-28deg)}.inv-gold-ornament__petal--r{right:calc(50% - 74px);transform:rotate(28deg)}.inv-gold-ornament__leaf{width:7px;height:10px;bottom:6px;border-radius:0 70%;background:linear-gradient(145deg,var(--inv-leaf-fill-b),var(--inv-leaf-fill-a));opacity:.9}.inv-gold-ornament__leaf--l{left:calc(50% - 104px);transform:rotate(-42deg)}.inv-gold-ornament__leaf--r{right:calc(50% - 104px);transform:scaleX(-1) rotate(-42deg)}.inv-gold-ornament__fly{width:7px;height:5px;bottom:12px;opacity:.85}.inv-gold-ornament__fly:before,.inv-gold-ornament__fly:after{content:"";position:absolute;top:0;width:4px;height:5px;border:1px solid var(--orn-gold);border-radius:60% 60% 20% 20%;background:linear-gradient(180deg,var(--orn-gold-light),transparent)}.inv-gold-ornament__fly:before{left:0;transform:rotate(-24deg)}.inv-gold-ornament__fly:after{right:0;transform:rotate(24deg)}.inv-gold-ornament__fly--l{left:calc(50% - 46px);transform:rotate(-8deg)}.inv-gold-ornament__fly--r{right:calc(50% - 46px);transform:scaleX(-1) rotate(-8deg)}.inv-gold-ornament--compact .inv-gold-ornament__curl--l1,.inv-gold-ornament--compact .inv-gold-ornament__curl--r1{left:calc(50% - 44px);right:calc(50% - 44px)}.inv-gold-ornament--compact .inv-gold-ornament__curl--l2,.inv-gold-ornament--compact .inv-gold-ornament__curl--r2{left:calc(50% - 68px);right:calc(50% - 68px)}.inv-gold-ornament--compact .inv-gold-ornament__dot--l{left:calc(50% - 86px)}.inv-gold-ornament--compact .inv-gold-ornament__dot--r{right:calc(50% - 86px)}.inv-gold-ornament--compact .inv-gold-ornament__petal--l{left:calc(50% - 56px)}.inv-gold-ornament--compact .inv-gold-ornament__petal--r{right:calc(50% - 56px)}.inv-gold-ornament--compact .inv-gold-ornament__leaf--l{left:calc(50% - 78px)}.inv-gold-ornament--compact .inv-gold-ornament__leaf--r{right:calc(50% - 78px)}.inv-gold-ornament--compact .inv-gold-ornament__fly--l{left:calc(50% - 34px)}.inv-gold-ornament--compact .inv-gold-ornament__fly--r{right:calc(50% - 34px)}.inv-envelope--classic .inv-envelope-screen{background:url(/images/wedding/paper-texture.svg) 0 0 / 240px,linear-gradient(180deg,#fff9f0,#f5ecd8,#fff9f0)}.inv-envelope--classic .inv-envelope-body{background:linear-gradient(160deg,#fffdf8,#f3e6c8);box-shadow:0 12px 36px #3e302424}.inv-envelope--classic .inv-envelope-flap{background:linear-gradient(180deg,#f8edd8,#e8d4a8)}.inv-envelope--classic .inv-envelope-seal{background:linear-gradient(135deg,#d4af37,#a67c2e);box-shadow:0 8px 20px #a67c2e59}.inv-envelope--floral .inv-envelope-screen{background:radial-gradient(circle at 20% 30%,rgba(232,180,203,.35),transparent 35%),radial-gradient(circle at 80% 70%,rgba(143,61,79,.15),transparent 30%),linear-gradient(180deg,#fdf0f2,#f4d8de 48%,#fdf0f2)}.inv-envelope--floral .inv-envelope-body{background:linear-gradient(160deg,#fff5f6,#ecd0d8);border:1px solid rgba(143,61,79,.2)}.inv-envelope--floral .inv-envelope-flap{background:linear-gradient(180deg,#8f3d4f,#6d2f3c)}.inv-envelope--floral .inv-envelope-card{background:#fffcf7f5}.inv-envelope--floral .inv-envelope-seal{background:linear-gradient(135deg,#d4af37,#9a7228);box-shadow:0 8px 22px #9a722866}.inv-envelope--minimal .inv-envelope-screen{background:url(/images/wedding/paper-texture.svg) 0 0 / 220px,linear-gradient(180deg,#f6f8f4,#e8efe4)}.inv-envelope--minimal .inv-envelope-body{background:linear-gradient(160deg,#fff,#eef2ea);box-shadow:0 8px 28px #4a63451f}.inv-envelope--minimal .inv-envelope-flap{background:linear-gradient(180deg,#6d8a66,#4a6345)}.inv-envelope--minimal .inv-envelope-seal{background:linear-gradient(135deg,#b8a67a,#8a7a55);box-shadow:0 6px 16px #4a634540}.inv-envelope-liner{position:absolute;top:6%;right:8%;bottom:6%;left:8%;border-radius:8px;background:url(/images/wedding/botanical-liner.svg) center / cover no-repeat;opacity:0;z-index:0;transition:opacity .9s ease .2s}.inv-envelope.is-opening .inv-envelope-liner,.inv-envelope:hover .inv-envelope-liner,.inv-envelope:focus-visible .inv-envelope-liner{opacity:.55}.inv-envelope-cord{position:absolute;left:8%;right:8%;top:46%;height:2px;background:linear-gradient(90deg,transparent,#d4af37,#c9a86c,#d4af37,transparent);z-index:5;opacity:.75;pointer-events:none}.inv-envelope-cord:before,.inv-envelope-cord:after{content:"";position:absolute;top:-3px;width:8px;height:8px;border-radius:50%;background:#d4af37;opacity:.6}.inv-envelope-cord:before{left:18%}.inv-envelope-cord:after{right:18%}.inv-envelope--minimal .inv-envelope-cord{opacity:.45}.inv-envelope--floral .inv-envelope-cord{opacity:.9}.inv-portrait{width:clamp(120px,28vw,160px);height:clamp(120px,28vw,160px);border-radius:50%;overflow:hidden;border:3px solid var(--inv-accent, var(--primary));box-shadow:0 8px 24px #0000001f;margin:0 auto}.inv-portrait img{width:100%;height:100%;object-fit:cover}.inv-venue-photo{width:min(100%,420px);aspect-ratio:4 / 3;border-radius:18px;overflow:hidden;border:2px solid var(--inv-gold-soft);box-shadow:0 12px 32px #1b30221f;margin:0 auto}.inv-venue-photo img{width:100%;height:100%;object-fit:cover;display:block}.inv-couple-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(16px,4vw,28px);width:100%}.inv-couple-card{display:grid;gap:12px;justify-items:center}.inv-couple-name{margin:0;font-family:var(--inv-font-title, "Great Vibes", cursive);font-size:clamp(1.6rem,5vw,2.2rem);font-weight:400;color:var(--inv-serif-color, var(--text))}.inv-couple-amp{font-size:clamp(1.2rem,4vw,1.6rem);color:var(--inv-accent, var(--primary-dark));font-style:italic}.inv-long-message .inv-message-block{margin:0;max-width:560px;line-height:1.85;font-size:clamp(1rem,3vw,1.15rem);color:var(--text);text-align:center}.inv-poem{margin:0;max-width:520px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.05rem,3.2vw,1.3rem);font-style:italic;line-height:1.75;color:var(--inv-serif-color, var(--text));border:none;padding:0}.inv-venue-name{margin:0;font-size:clamp(1.1rem,3.5vw,1.45rem);font-weight:700;color:var(--text)}.inv-venue-address,.inv-venue-time{margin:0;font-size:clamp(.95rem,2.8vw,1.1rem);color:var(--muted);line-height:1.5}.inv-extra-note,.inv-host-notes{margin:8px 0 0;font-size:.95rem;color:var(--muted);line-height:1.6;max-width:520px}.inv-dress-code{margin:0;font-size:clamp(1.05rem,3vw,1.25rem);font-weight:600;color:var(--text)}.inv-dress-code-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,4vw,24px);width:min(100%,520px);margin-top:4px}.inv-dress-code-photo-card{display:grid;gap:10px;justify-items:center}.inv-dress-code-photo-label{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--inv-accent-dark, var(--primary-dark))}.inv-dress-code-photo-card .inv-venue-photo{width:100%;max-width:220px}.inv-dress-code-photo-placeholder{width:100%;max-width:220px;aspect-ratio:3 / 4;border-radius:14px;border:1px dashed color-mix(in srgb,var(--inv-accent-dark, var(--primary-dark)) 28%,transparent);background:linear-gradient(160deg,color-mix(in srgb,var(--inv-paper-bg) 92%,var(--inv-accent-soft)),color-mix(in srgb,var(--inv-paper-bg) 78%,var(--inv-accent-soft)));display:grid;place-items:center}.inv-dress-code-photo-placeholder span{width:36%;height:36%;border-radius:999px;border:1px solid color-mix(in srgb,var(--inv-accent-dark, var(--primary-dark)) 18%,transparent);background:color-mix(in srgb,var(--inv-paper-bg) 88%,transparent);opacity:.65}.inv-section-wide{width:min(840px,100%)}.inv-timeline{list-style:none;margin:0;padding:0;width:100%;max-width:480px;text-align:left;position:relative}.inv-timeline:before{content:"";position:absolute;left:72px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,var(--inv-accent, var(--primary)),transparent);opacity:.5}.inv-timeline li{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;padding:12px 0;position:relative}.inv-timeline li:before{content:"";position:absolute;left:66px;top:18px;width:12px;height:12px;border-radius:50%;background:var(--inv-accent, var(--primary));border:2px solid #fff;box-shadow:0 0 0 2px var(--inv-accent, var(--primary))}.inv-timeline-time{font-weight:700;font-variant-numeric:tabular-nums;color:var(--inv-accent-dark, var(--primary-dark));font-size:.95rem}.inv-timeline-title{font-weight:600;color:var(--text);line-height:1.45}.inv-gallery-showcase{display:grid;gap:28px;width:100%}.inv-carousel-rail{width:100%}.inv-carousel-stage{position:relative;min-height:clamp(220px,42vw,420px);border-radius:24px;overflow:hidden;background:linear-gradient(165deg,#ffffffb8,#fdfcf86b);box-shadow:inset 0 0 0 1px #ffffffa6,0 18px 40px #26445a1a}.inv-carousel-slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transform:scale(1.03);transition:opacity .85s ease,transform 1.1s ease;pointer-events:none}.inv-carousel-slide.is-active{opacity:1;transform:scale(1);pointer-events:auto}.inv-carousel-collage{display:grid;gap:10px;width:100%;height:100%;padding:12px}.inv-carousel-collage.is-count-1{grid-template-columns:1fr}.inv-carousel-collage.is-count-2{grid-template-columns:1.08fr .92fr}.inv-carousel-collage img{width:100%;height:100%;min-height:clamp(190px,36vw,390px);object-fit:cover;border-radius:18px;box-shadow:0 12px 28px #26445a1f}.inv-carousel-progress{position:absolute;left:16px;right:16px;bottom:14px;height:2px;border-radius:999px;background:#ffffff6b;overflow:hidden;z-index:2}.inv-carousel-progress-bar{width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,rgba(255,255,255,.88),var(--inv-gold, var(--primary)));box-shadow:0 0 10px #c5a05959}.inv-carousel-progress-bar.is-animating{animation:inv-carousel-progress-fill 10s linear forwards}@keyframes inv-carousel-progress-fill{0%{width:0%}to{width:100%}}.inv-carousel-dots{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:14px}.inv-carousel-dot{width:6px;height:6px;border-radius:50%;background:#8cc0eb59;transition:transform .35s ease,background-color .35s ease,opacity .35s ease;opacity:.65}.inv-carousel-dot.is-active{transform:scale(1.45);opacity:1;background:var(--inv-gold, var(--primary))}.inv-carousel-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.inv-carousel{width:100%;overflow:hidden}.inv-carousel-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 2px 12px;scrollbar-width:thin}.inv-carousel-track img{flex:0 0 min(78vw,320px);scroll-snap-align:center;aspect-ratio:4 / 5;object-fit:cover;border-radius:18px;border:1px solid var(--border);box-shadow:var(--shadow)}.inv-transition{display:none}.inv-rsvp-card{border-style:dashed}.inv-rsvp-badge{margin:0;display:inline-block;padding:10px 20px;border-radius:999px;background:var(--inv-surface, rgba(255, 249, 210, .88));border:1px solid var(--border);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.82rem;color:var(--inv-accent-dark, var(--primary-dark))}.inv-gift-link{margin-top:4px}.inv-gift-inner{gap:22px}.inv-gift-table-art{width:min(100%,320px);margin:4px auto 8px}.inv-gift-table-scene{position:relative;width:100%;height:168px}.inv-gift-table-top{position:absolute;left:50%;bottom:34px;width:88%;height:12px;transform:translate(-50%);border-radius:6px;background:linear-gradient(180deg,color-mix(in srgb,var(--inv-gold) 70%,#fff),var(--inv-gold));box-shadow:0 6px 16px color-mix(in srgb,var(--inv-accent-dark) 18%,transparent)}.inv-gift-table-cloth{position:absolute;left:50%;bottom:44px;width:78%;height:54px;transform:translate(-50%);border-radius:4px 4px 10px 10px;background:linear-gradient(180deg,var(--inv-surface),color-mix(in srgb,var(--inv-accent-soft, var(--inv-accent)) 35%,var(--inv-paper-bg)));border:1px solid var(--inv-gold-soft);box-shadow:inset 0 -8px 18px color-mix(in srgb,var(--inv-accent) 8%,transparent)}.inv-gift-table-leg{position:absolute;bottom:0;width:10px;height:38px;border-radius:3px;background:linear-gradient(180deg,var(--inv-gold),color-mix(in srgb,var(--inv-gold) 65%,var(--inv-accent-dark)))}.inv-gift-table-leg--left{left:16%}.inv-gift-table-leg--right{right:16%}.inv-gift-table-items{position:absolute;left:50%;bottom:58px;width:72%;transform:translate(-50%);display:flex;align-items:flex-end;justify-content:center;gap:14px}.inv-gift-table-box{position:relative;display:block;border-radius:6px;border:1px solid color-mix(in srgb,var(--inv-accent-dark) 35%,var(--inv-gold));background:linear-gradient(145deg,color-mix(in srgb,var(--inv-accent) 28%,#fff),color-mix(in srgb,var(--inv-accent-dark) 18%,var(--inv-paper-bg)));box-shadow:0 8px 14px color-mix(in srgb,var(--inv-accent-dark) 12%,transparent)}.inv-gift-table-box--1{width:42px;height:42px}.inv-gift-table-box--2{width:52px;height:52px}.inv-gift-table-box--3{width:38px;height:38px}.inv-gift-table-bow{position:absolute;left:50%;top:-9px;width:18px;height:12px;transform:translate(-50%);border-radius:999px;background:var(--inv-accent);box-shadow:-8px 0 0 -2px var(--inv-accent-dark),8px 0 0 -2px var(--inv-accent-dark)}.inv-gift-table-bow:after{content:"";position:absolute;left:50%;top:8px;width:4px;height:10px;transform:translate(-50%);border-radius:2px;background:var(--inv-accent-dark)}.inv-gift-table-vase{position:absolute;right:14%;bottom:72px;width:16px;height:28px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,var(--inv-accent-soft, rgba(106, 174, 220, .35)),var(--inv-accent));opacity:.85}.inv-gift-table-vase:before{content:"";position:absolute;left:50%;top:-8px;width:12px;height:12px;transform:translate(-50%);border-radius:999px;background:color-mix(in srgb,var(--inv-accent) 55%,#fff)}.inv-gift-links{list-style:none;margin:0;padding:0;width:min(100%,420px);display:grid;gap:10px}.inv-gift-link-btn{width:100%;justify-content:center;text-align:center;white-space:normal}.inv-closing{padding:48px 24px 64px}.inv-closing-inner{display:grid;gap:20px;justify-items:center;text-align:center;max-width:520px;margin:0 auto}.inv-closing-inner .inv-portrait{width:clamp(140px,34vw,200px);height:clamp(140px,34vw,200px);margin-top:4px}.inv-closing-message{margin:0;padding:0;max-width:36ch;font-family:var(--inv-font-accent, "Great Vibes", cursive);font-size:clamp(1.8rem,5vw,2.8rem);font-weight:400;color:var(--text);line-height:1.35;letter-spacing:.02em}.inv-music-toggle{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(80px,calc(env(safe-area-inset-bottom) + 64px));z-index:90;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--inv-gold-soft);background:var(--inv-paper);color:var(--inv-serif-color, var(--text));cursor:pointer;box-shadow:0 8px 24px #3e30241f;transition:transform .18s ease,box-shadow .18s ease}.inv-music-toggle:hover,.inv-music-toggle:focus-visible{transform:translateY(-2px);box-shadow:0 12px 28px #3e302429;outline:none}.inv-music-toggle.is-paused{opacity:.82}.inv-music-icon{font-size:.95rem;letter-spacing:-.08em;line-height:1}.inv-scroll-nudge{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:90;display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1px solid var(--border);background:#ffffffe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;box-shadow:var(--shadow);animation:inv-bounce 1.6s ease-in-out infinite}@media (max-width: 480px){.inv-timeline:before{left:56px}.inv-timeline li{grid-template-columns:56px 1fr}.inv-timeline li:before{left:50px}.inv-carousel-collage.is-count-2{grid-template-columns:1fr}.inv-carousel-collage img{min-height:220px}}.edit-preview-frame .inv-screen.inv-preview-mode{min-height:auto;font-size:.82rem}.edit-preview-frame .inv-screen.inv-preview-mode .inv-title{font-size:clamp(1.6rem,6vw,2.4rem)}.edit-preview-frame .inv-music-toggle,.edit-preview-frame .inv-scroll-top,.edit-preview-frame .inv-scroll-rail{display:none}.inv-scroll-rail{right:max(14px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);width:1.4cm;min-height:480px;pointer-events:none}.inv-scroll-rail__track{position:absolute;left:50%;top:10px;bottom:10px;width:.25cm;transform:translate(-50%);border-radius:999px;background:linear-gradient(180deg,transparent 0%,var(--inv-rail-track, var(--inv-accent-soft)) 8%,var(--inv-rail-track, var(--inv-accent-soft)) 92%,transparent 100%)}.inv-scroll-rail__progress{position:absolute;top:0;left:0;width:100%;background:var(--inv-rail-progress, var(--inv-accent));opacity:.9;transition:height .45s cubic-bezier(.22,1,.36,1)}.inv-scroll-rail__marker{position:absolute;left:50%;width:1.15cm;height:1.15cm;transform:translate(-50%,-50%);border-radius:999px;border:1px solid var(--inv-rail-icon-border, var(--inv-accent-dark));background:var(--inv-rail-icon-bg, var(--inv-paper-bg));box-shadow:0 4px 14px color-mix(in srgb,var(--inv-accent-dark) 18%,transparent);display:grid;place-items:center;transition:top .45s cubic-bezier(.22,1,.36,1);pointer-events:none}.inv-scroll-rail.is-scrolling-up .inv-scroll-rail__marker{transition-duration:.38s}.inv-scroll-rail__marker-icon{width:1cm;height:1cm;color:var(--inv-rail-icon-color, var(--inv-accent-dark));display:grid;place-items:center}.inv-scroll-rail__marker-icon svg{width:100%;height:100%}.inv-scroll-rail__steps{position:absolute;top:10px;right:0;bottom:10px;left:0;margin:0;padding:0;list-style:none}.inv-scroll-rail__step{position:absolute;left:50%;transform:translate(-50%,-50%)}.inv-scroll-rail__step-btn{position:relative;width:1cm;height:1cm;padding:0;border:1px solid var(--inv-rail-icon-border, var(--inv-accent-soft));border-radius:999px;background:var(--inv-rail-icon-bg, var(--inv-paper-bg));color:var(--inv-rail-icon-color, var(--inv-accent-dark));opacity:.72;cursor:pointer;pointer-events:auto;display:grid;place-items:center;box-shadow:0 2px 8px color-mix(in srgb,var(--inv-accent-dark) 10%,transparent);transition:opacity .25s ease,transform .25s ease,border-color .25s ease}.inv-scroll-rail__tooltip{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(4px);padding:4px 9px;border-radius:8px;border:1px solid var(--inv-rail-icon-border, var(--inv-accent-soft));background:var(--inv-rail-icon-bg, var(--inv-paper-bg));color:var(--inv-rail-icon-color, var(--inv-accent-dark));font-family:var(--inv-font-body, Lora, Georgia, serif);font-size:.72rem;font-weight:600;letter-spacing:.02em;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 4px 14px color-mix(in srgb,var(--inv-accent-dark) 14%,transparent);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:2}.inv-scroll-rail__step-btn:hover .inv-scroll-rail__tooltip,.inv-scroll-rail__step-btn:focus-visible .inv-scroll-rail__tooltip{opacity:1;visibility:visible;transform:translateY(-50%) translate(0)}.inv-scroll-rail__step.is-active .inv-scroll-rail__step-btn:hover .inv-scroll-rail__tooltip,.inv-scroll-rail__step.is-active .inv-scroll-rail__step-btn:focus-visible .inv-scroll-rail__tooltip{opacity:1;visibility:visible}.inv-scroll-rail__step-btn svg{width:100%;height:100%}.inv-scroll-rail__step.is-passed .inv-scroll-rail__step-btn{opacity:.88;border-color:var(--inv-accent-soft);color:var(--inv-accent)}.inv-scroll-rail__step.is-active .inv-scroll-rail__step-btn{opacity:0;transform:scale(.6)}.inv-scroll-rail__step.is-upcoming .inv-scroll-rail__step-btn:hover,.inv-scroll-rail__step.is-passed .inv-scroll-rail__step-btn:hover{opacity:1;border-color:var(--inv-accent)}@media (max-width: 767px){.inv-scroll-rail{display:none}}@media (prefers-reduced-motion: reduce){.inv-scroll-rail__marker,.inv-scroll-rail__progress,.inv-scroll-rail__step-btn{transition:none}}.inv-gatefold-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;width:100%;height:100%;height:100dvh;overflow:hidden;background:var(--inv-paper-bg, #fdfcf8)}.inv-gatefold-screen.is-opening{pointer-events:none}.inv-viewport-frame .inv-gatefold-screen{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;max-height:none}.inv-gatefold-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 120% 80% at 50% 40%,var(--inv-bg-glow-a, rgba(106, 174, 220, .12)),transparent 62%),url(/images/wedding/paper-texture.svg) 0 0 / 220px,var(--inv-paper-bg, #fdfcf8);opacity:.92}.inv-gatefold{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation}.inv-gatefold:disabled{cursor:default}.inv-gatefold-panel{position:absolute;top:0;bottom:0;width:50.5%;overflow:hidden;box-shadow:0 0 0 1px #ffffff14 inset,0 18px 48px #1b30222e;transition:transform 1.15s cubic-bezier(.45,.05,.2,1),opacity .85s ease,filter .85s ease;will-change:transform}.inv-gatefold-panel--left{left:0;transform-origin:left center}.inv-gatefold-panel--right{right:0;transform-origin:right center}.inv-gatefold-panel-face{position:absolute;top:0;right:0;bottom:0;left:0}.inv-gatefold-panel-face:before,.inv-gatefold-panel-face:after{content:"";position:absolute;pointer-events:none}.inv-gatefold--photo .inv-gatefold-panel{background:none}.inv-gatefold-photo-img{position:absolute;top:0;height:100%;width:200%;max-width:none;object-fit:cover;pointer-events:none;-webkit-user-select:none;user-select:none}.inv-gatefold-photo-img--left{left:0;object-position:left center}.inv-gatefold-photo-img--right{right:0;object-position:right center}.envelope-style-preview--photo .inv-gatefold-panel{background:none}.envelope-style-preview--photo .inv-gatefold-photo-img{position:absolute;top:0;height:100%;width:200%;max-width:none;object-fit:cover}.envelope-style-preview--photo .inv-gatefold-photo-img--left{left:0;object-position:left center}.envelope-style-preview--photo .inv-gatefold-photo-img--right{right:0;object-position:right center}.inv-gatefold-emblem-wrap{position:absolute;left:50%;top:50%;z-index:4;transform:translate(-50%,-50%);filter:drop-shadow(0 10px 22px rgba(0,0,0,.22));transition:opacity .6s ease,transform .6s ease}.inv-gatefold-emblem-wrap.is-compact{filter:drop-shadow(0 3px 8px rgba(0,0,0,.18))}.inv-gatefold-shade{position:absolute;top:0;bottom:0;width:50.5%;pointer-events:none;transition:opacity 1s ease;z-index:2}.inv-gatefold-shade--left{left:0;background:linear-gradient(90deg,rgba(0,0,0,.1),transparent 55%)}.inv-gatefold-shade--right{right:0;background:linear-gradient(270deg,rgba(0,0,0,.1),transparent 55%)}.inv-gatefold-crease{position:absolute;top:0;bottom:0;left:50%;width:2px;transform:translate(-50%);background:linear-gradient(180deg,transparent,rgba(0,0,0,.16) 18%,rgba(0,0,0,.22) 50%,rgba(0,0,0,.16) 82%,transparent);box-shadow:0 0 18px #0000001f;transition:opacity .6s ease;pointer-events:none;z-index:3}.inv-gatefold-peek{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;text-align:center;pointer-events:none;opacity:0;transform:scale(.96);transition:opacity .5s ease .35s,transform .7s ease .35s;z-index:0}.inv-gatefold-monogram{width:clamp(56px,14vw,72px);height:clamp(56px,14vw,72px);border-radius:999px;border:1px solid var(--inv-gold-soft);display:grid;place-items:center;font-family:var(--inv-font-subtitle, "Cormorant Garamond", Georgia, serif);font-size:clamp(1.4rem,4vw,1.8rem);color:var(--inv-accent-dark, var(--primary-dark));background:color-mix(in srgb,var(--inv-paper-bg) 88%,transparent);box-shadow:0 10px 28px #1b302214}.inv-gatefold-title{max-width:18ch;font-family:var(--inv-font-title, "Great Vibes", cursive);font-size:clamp(1.5rem,5vw,2.2rem);line-height:1.2;color:var(--inv-serif-color, var(--text))}.inv-gatefold-hint{position:absolute;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:5;margin:0;animation:inv-pulse 2.4s ease-in-out infinite}.inv-gatefold.is-opening .inv-gatefold-panel--left{transform:perspective(1400px) rotateY(82deg) translate(-6%);filter:brightness(.94)}.inv-gatefold.is-opening .inv-gatefold-panel--right{transform:perspective(1400px) rotateY(-82deg) translate(6%);filter:brightness(.94)}.inv-gatefold-screen.is-opening .inv-gatefold-panel,.inv-gatefold.is-opening .inv-gatefold-shade,.inv-gatefold.is-opening .inv-gatefold-crease,.inv-gatefold.is-opening .inv-gatefold-emblem-wrap{opacity:0}.inv-gatefold-screen.is-opening .inv-gatefold-peek{opacity:1;transform:scale(1)}.inv-gatefold-screen.is-opening .inv-gatefold-backdrop{opacity:1}.inv-gatefold--gold-lace .inv-gatefold-backdrop{background:#f3efe6}.inv-gatefold--linen-seal .inv-gatefold-backdrop{background:#f8f6f1}.inv-gatefold--heart-wax .inv-gatefold-backdrop{background:#e8dcc8}.inv-gatefold--botanical-wax .inv-gatefold-backdrop{background:#e9e0d2}.inv-gatefold--ocean-leaf .inv-gatefold-backdrop{background:#dceaf4}.inv-gatefold--pink-bow .inv-gatefold-backdrop{background:#f5e3eb}.inv-gatefold--vintage-sun .inv-gatefold-backdrop{background:#ebe2d4}.inv-gatefold--sage-floral .inv-gatefold-backdrop{background:#e4ebe4}.inv-gatefold--dusty-rose .inv-gatefold-backdrop{background:#f5f1ec}.envelope-style-preview{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:8px;background:#f8f4ee}.envelope-style-preview-panels{position:absolute;top:0;right:0;bottom:0;left:0}.envelope-style-preview .inv-gatefold-panel{position:absolute;top:0;bottom:0;width:50%;box-shadow:none;transition:none}.envelope-style-preview .inv-gatefold-panel--left{left:0}.envelope-style-preview .inv-gatefold-panel--right{right:0}.envelope-style-preview .inv-gatefold-emblem-wrap{transform:translate(-50%,-50%) scale(.55)}.envelope-style-preview:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translate(-50%);background:#0000001f;z-index:3}@media (max-width: 767px){.inv-gatefold.is-opening .inv-gatefold-panel--left{transform:perspective(1200px) rotateY(74deg) translate(-4%)}.inv-gatefold.is-opening .inv-gatefold-panel--right{transform:perspective(1200px) rotateY(-74deg) translate(4%)}}@media (prefers-reduced-motion: reduce){.inv-gatefold-panel,.inv-gatefold-shade,.inv-gatefold-crease,.inv-gatefold-peek,.inv-gatefold-hint,.inv-gatefold-emblem-wrap{transition:none;animation:none}.inv-gatefold.is-opening .inv-gatefold-panel--left,.inv-gatefold.is-opening .inv-gatefold-panel--right{transform:translate(-100%)}.inv-gatefold.is-opening .inv-gatefold-panel--right{transform:translate(100%)}}:root{--bg: #fff9d2;--surface: rgba(255, 249, 210, .72);--surface-strong: #fff9d2;--surface-alt: #ffebcc;--text: #26445a;--muted: #4f6f86;--primary: #8cc0eb;--primary-dark: #6aaedc;--accent: #bfddf0;--border: rgba(140, 192, 235, .35);--shadow: 0 20px 45px rgba(92, 141, 180, .18);--success: #2f6f62;--input-bg: rgba(255, 255, 255, .72);--input-bg-focus: rgba(255, 255, 255, .92);--input-border: rgba(140, 192, 235, .45);--input-border-hover: rgba(106, 174, 220, .65);--input-shadow: inset 0 1px 2px rgba(38, 68, 90, .06), 0 2px 8px rgba(140, 192, 235, .12);--input-shadow-focus: inset 0 1px 2px rgba(38, 68, 90, .04), 0 0 0 4px rgba(140, 192, 235, .22), 0 8px 20px rgba(106, 174, 220, .18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:radial-gradient(circle at top left,rgba(255,255,255,.7),transparent 22%),linear-gradient(180deg,#fff9d2,#ffebcc 48%,#fff9d2);color:var(--text);line-height:1.5;min-height:100vh}a{color:inherit;text-decoration:none}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.55),transparent 28%),radial-gradient(circle at 85% 15%,rgba(191,221,240,.5),transparent 26%),radial-gradient(circle at 75% 80%,rgba(255,235,204,.42),transparent 24%);z-index:0}#root,.hero,.section,.footer{position:relative;z-index:1}.hero{padding:24px;overflow:hidden}.hero-orb{position:absolute;border-radius:999px;filter:blur(10px);opacity:.7;animation:float 8s ease-in-out infinite}.hero-orb-one{width:220px;height:220px;right:8%;top:70px;background:radial-gradient(circle,#8cc0eb7a,#8cc0eb00)}.hero-orb-two{width:180px;height:180px;left:-30px;bottom:40px;background:radial-gradient(circle,#bfddf080,#bfddf000);animation-delay:-2s}.nav,.hero-content,.section,.footer{max-width:1100px;margin:0 auto}.nav{display:flex;justify-content:space-between;align-items:center;gap:16px;position:relative}.nav-toggle{display:none;width:44px;height:44px;border-radius:999px;border:1px solid var(--border);background:#ffffffd1;align-items:center;justify-content:center;cursor:pointer;padding:0;flex-shrink:0;color:var(--text)}.nav-toggle-bars{position:relative;display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:background .2s ease}.nav-toggle-bars:before,.nav-toggle-bars:after{content:"";position:absolute;left:0;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s ease,top .2s ease}.nav-toggle-bars:before{top:-6px}.nav-toggle-bars:after{top:6px}.nav.is-open .nav-toggle-bars{background:transparent}.nav.is-open .nav-toggle-bars:before{top:0;transform:rotate(45deg)}.nav.is-open .nav-toggle-bars:after{top:0;transform:rotate(-45deg)}.brand{display:inline-flex;align-items:center}.brand-logo,.footer-logo{display:block;aspect-ratio:1 / 1;border-radius:50%;object-fit:cover}.brand-logo{width:clamp(64px,10vw,96px);height:auto}.nav-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.nav-links{display:flex;gap:16px;color:var(--muted);flex-wrap:wrap}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:2px;background:var(--primary-dark);transform:scaleX(0);transform-origin:left;transition:transform .18s ease}.nav-links a:hover:after{transform:scaleX(1)}.hero-content{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;padding:56px 0;align-items:center}.hero-visual-stack{display:grid;gap:20px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--primary-dark);font-size:.8rem;font-weight:700}.section-header{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:24px}.host-breadcrumbs{margin-bottom:12px}.host-breadcrumbs-list{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;font-size:.9rem}.host-breadcrumbs-item{display:inline-flex;align-items:center;gap:8px}.host-breadcrumbs-sep{color:var(--muted);margin-right:8px;-webkit-user-select:none;user-select:none}.host-breadcrumbs a{color:var(--primary);text-decoration:none;font-weight:600}.host-breadcrumbs a:hover{text-decoration:underline}.host-breadcrumbs-item>span[aria-current=page]{color:var(--muted)}.account-zone{margin-top:24px}.section-copy{color:var(--muted);max-width:680px}h1,h2,h3{margin-top:0}h1{font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.05}.lead{color:var(--muted);font-size:1.1rem}.muted{color:var(--muted)}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;border:1px solid transparent;font-weight:700;background:transparent;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background-color .18s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px #465e782e}.btn-small{padding:10px 14px;font-size:.95rem}.btn-icon-only{width:40px;height:40px;padding:0}.btn-icon-only .btn-icon,.btn-icon-only .metric-icon{margin:0}.btn.is-disabled,.btn.is-disabled:hover{opacity:.55;cursor:not-allowed;pointer-events:none;box-shadow:none}.host-blocked-banner{margin-bottom:16px}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:var(--text)}.btn-primary:hover{background:linear-gradient(135deg,var(--primary-dark),var(--primary))}.btn-secondary{background:#fff9d280;border-color:var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#bfddf08c}.btn-danger{color:#9a4b2e;background:#9a4b2e0f;border-color:#9a4b2e66}.btn-danger:hover:not(:disabled){background:#9a4b2e1f;border-color:#9a4b2ea6}.btn-label{display:inline-flex;align-items:center;gap:8px}.btn .btn-icon{width:1.05rem;height:1.05rem;color:inherit}.btn-small .btn-icon{width:.95rem;height:.95rem}.share-block-label{display:inline-flex;align-items:center;gap:6px}.share-block-label .metric-icon{width:1rem;height:1rem}.gallery-upload{display:grid;gap:16px}.gallery-dropzone{display:grid;gap:10px;justify-items:start;padding:20px;border:1px dashed rgba(26,58,82,.28);border-radius:16px;background:#ffffff8c;transition:border-color .2s ease,background .2s ease}.gallery-dropzone.is-active{border-color:#1a3a528c;background:#bfddf059}.gallery-dropzone.is-disabled{opacity:.65}.gallery-dropzone-title{margin:0;font-weight:600}.gallery-dropzone-copy,.gallery-dropzone-hint{margin:0}.gallery-file-input{display:none}.gallery-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:0;padding:0;list-style:none}.gallery-preview-item{display:grid;gap:8px}.gallery-preview-item img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;border:1px solid rgba(26,58,82,.12);background:#fffc}.gallery-remove-btn{width:100%}.gallery-order-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.gallery-order-item{display:grid;grid-template-columns:auto 120px 1fr;gap:12px;align-items:center;padding:12px;border-radius:14px;border:1px solid rgba(26,58,82,.12);background:#ffffffb8;cursor:grab}.gallery-order-item.is-dragging{opacity:.55;cursor:grabbing}.gallery-order-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#8cc0eb59;color:var(--text);font-size:.82rem;font-weight:600}.gallery-order-item img{width:120px;aspect-ratio:1;object-fit:cover;border-radius:10px;border:1px solid rgba(26,58,82,.12)}.gallery-order-actions{display:flex;flex-wrap:wrap;gap:8px}.image-upload-field{display:grid;gap:10px}.image-upload-label{font-weight:600}.image-upload-hint{margin:0}.image-upload-preview{display:grid;gap:10px}.image-upload-preview img{width:min(100%,320px);aspect-ratio:16 / 10;object-fit:cover;border-radius:14px;border:1px solid rgba(26,58,82,.12)}.image-upload-actions{display:flex;flex-wrap:wrap;gap:8px}@media (max-width: 640px){.gallery-order-item{grid-template-columns:auto 88px 1fr}.gallery-order-item img{width:88px}}.section{padding:56px 24px}.section.alt{background:linear-gradient(180deg,#ffebccb8,#fff9d299)}.grid{display:grid;gap:20px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{position:relative;background:var(--surface-strong);border:1px solid var(--border);border-radius:24px;padding:24px;box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card:hover,.stat-card:hover,.feature-card:hover{transform:translateY(-4px);box-shadow:0 24px 48px #465e7829}.feature-card-icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;margin-bottom:16px;border-radius:16px;background:linear-gradient(135deg,#8cc0eb52,#bfddf08c);border:1px solid var(--border);color:var(--primary-dark)}.feature-card h3{margin-top:0}.metric-icon-feature{width:1.7rem;height:1.7rem}.glass-card{background:#ffffff52;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.compact{padding:16px 18px}.preview-card ul,.preview-card-list,.preview-list,.flow-list{padding-left:20px;margin-bottom:0}.preview-card-list{list-style:none;padding:0}.preview-card-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.preview-card-item:last-child{margin-bottom:0}.preview-card-icon-wrap{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#8cc0eb52,#bfddf08c);border:1px solid var(--border);color:var(--primary-dark)}.preview-card-icon{width:1.2rem;height:1.2rem}.preview-card>ul:not(.preview-card-list) li,.preview-list li,.flow-list li{margin-bottom:10px}.footer{margin-top:24px;padding:0 24px 64px;color:var(--muted)}.footer-inner{max-width:1100px;margin:0 auto;padding:40px 32px;border:1px solid var(--border);border-radius:28px;background:linear-gradient(160deg,#fff9d2eb,#ffebccc7);box-shadow:var(--shadow)}.footer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}.footer-col{display:flex;flex-direction:column;gap:14px}.footer-brand{gap:18px}.footer-logo{width:clamp(100px,12vw,140px);height:auto}.footer-slogan{margin:0;font-size:1.05rem;line-height:1.55;color:var(--text);font-weight:600}.footer-eyebrow{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary-dark)}.footer-purpose-text,.footer-contact-text{margin:0;line-height:1.65}.footer-contact-btn{align-self:flex-start;margin-top:4px}.footer-internal{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}.footer-internal-link{font-size:.82rem;opacity:.55;text-decoration:none}.footer-internal-link:hover{opacity:.85}.tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.tab{border:1px solid var(--border);background:#fff9d2cc;color:var(--text);border-radius:999px;padding:10px 16px;cursor:pointer;font-weight:700;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.tab:hover,.tab.is-active{transform:translateY(-2px)}.tab.is-active{background:linear-gradient(135deg,var(--primary),var(--accent));border-color:var(--primary-dark)}.tab-panel{display:block;animation:fadeSlideUp .32s ease}.stack-form{display:grid;gap:14px}.stack-form label,.wizard label,.form-section label{display:grid;gap:8px;font-weight:700}.stack-form label>span,.wizard label>span,.form-section label>span{font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.stack-form input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),.stack-form textarea,.stack-form select,.wizard input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),.wizard textarea,.wizard select,.form-section input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),.form-section textarea,.form-section select{width:100%;padding:14px 16px;border:1.5px solid var(--input-border);border-radius:16px;font:inherit;font-size:1.02rem;line-height:1.45;color:var(--text);background-color:var(--input-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--input-shadow);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background-color .2s ease}.stack-form textarea,.wizard textarea,.form-section textarea{min-height:112px;resize:vertical}.stack-form select,.wizard select,.form-section select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,var(--primary-dark) 50%),linear-gradient(135deg,var(--primary-dark) 50%,transparent 50%);background-position:calc(100% - 22px) calc(50% + 2px),calc(100% - 16px) calc(50% + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;cursor:pointer}.stack-form input::placeholder,.stack-form textarea::placeholder,.wizard input::placeholder,.wizard textarea::placeholder,.form-section input::placeholder,.form-section textarea::placeholder{color:#4f6f868c;font-weight:400}.stack-form input:hover:not(:disabled):not(:read-only),.stack-form textarea:hover:not(:disabled):not(:read-only),.wizard input:hover:not(:disabled):not(:read-only),.wizard textarea:hover:not(:disabled):not(:read-only),.form-section input:hover:not(:disabled):not(:read-only),.form-section textarea:hover:not(:disabled):not(:read-only){border-color:var(--input-border-hover);background-color:var(--input-bg-focus)}.stack-form select:hover:not(:disabled),.wizard select:hover:not(:disabled),.form-section select:hover:not(:disabled){border-color:var(--input-border-hover);background-color:var(--input-bg-focus);background-image:linear-gradient(45deg,transparent 50%,var(--primary-dark) 50%),linear-gradient(135deg,var(--primary-dark) 50%,transparent 50%);background-position:calc(100% - 22px) calc(50% + 2px),calc(100% - 16px) calc(50% + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.stack-form input:focus,.stack-form textarea:focus,.wizard input:focus,.wizard textarea:focus,.form-section input:focus,.form-section textarea:focus{outline:none;border-color:var(--primary-dark);background-color:var(--input-bg-focus);box-shadow:var(--input-shadow-focus);transform:translateY(-2px)}.stack-form select:focus,.wizard select:focus,.form-section select:focus{outline:none;border-color:var(--primary-dark);background-color:var(--input-bg-focus);background-image:linear-gradient(45deg,transparent 50%,var(--primary-dark) 50%),linear-gradient(135deg,var(--primary-dark) 50%,transparent 50%);background-position:calc(100% - 22px) calc(50% + 2px),calc(100% - 16px) calc(50% + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;box-shadow:var(--input-shadow-focus);transform:translateY(-2px)}.stack-form input:disabled,.stack-form textarea:disabled,.stack-form select:disabled,.wizard input:disabled,.wizard textarea:disabled,.wizard select:disabled,.form-section input:disabled,.form-section textarea:disabled,.form-section select:disabled{opacity:.65;cursor:not-allowed;transform:none;box-shadow:none}.stack-form input:read-only,.wizard input:read-only,.form-section input:read-only{background-color:#bfddf047;border-style:dashed;cursor:default}.stack-form input[type=date],.wizard input[type=date],.form-section input[type=date]{min-height:52px}.field-with-icon{display:flex;align-items:center;gap:10px;width:100%}.field-with-icon .field-icon{position:static;transform:none;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:1.5px solid var(--input-border);border-radius:16px;background-color:var(--input-bg);box-shadow:var(--input-shadow);color:var(--primary-dark);pointer-events:none}.field-with-icon .field-icon svg{width:1.15rem;height:1.15rem}.stack-form .field-with-icon input,.wizard .field-with-icon input,.form-section .field-with-icon input{flex:1;width:auto;min-width:0}.field-with-icon:focus-within .field-icon{border-color:var(--primary-dark);background-color:var(--input-bg-focus);box-shadow:var(--input-shadow-focus)}.stack-form .field-with-icon input:focus,.wizard .field-with-icon input:focus,.form-section .field-with-icon input:focus{transform:none}.feedback{min-height:24px;margin-top:16px;color:var(--success);font-weight:700}.panel-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card{border:1px solid var(--border);border-radius:18px;padding:16px;background:linear-gradient(135deg,#bfddf0d9,#fff9d2e6);transition:transform .18s ease,box-shadow .18s ease}.stat-card span{display:block;color:var(--muted);font-size:.92rem}.stat-card-head{display:flex;align-items:center;gap:8px}.stat-card-head span{margin:0}.metric-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.1rem;height:1.1rem;color:var(--primary-dark)}.metric-icon-stat{width:1.25rem;height:1.25rem}.metric-icon svg{width:100%;height:100%}.list-meta-item{display:inline-flex;align-items:center;gap:6px}.stat-card strong{display:block;margin-top:6px;font-size:1.8rem}.list-stack{display:grid;gap:12px}.list-item{border:1px solid var(--border);border-radius:18px;padding:16px;background:#fffdf1d1}.list-item h4{margin:0 0 6px}.list-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.95rem}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.detail-label,.label{display:block;color:var(--muted);font-size:.85rem;margin-bottom:4px}.api-indicator strong{display:block;margin:4px 0}.invitation-card{overflow:hidden}.invitation-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ffffff1a,#fff0);pointer-events:none}.responsive-demo{align-items:start}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@media (max-width: 900px){.nav:has(.nav-actions>*) .nav-toggle{display:inline-flex}.nav-actions{display:none;position:absolute;top:calc(100% + 10px);right:0;left:0;z-index:30;flex-direction:column;align-items:stretch;gap:12px;padding:16px;border-radius:18px;border:1px solid var(--border);background:#fff9d2f5;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav.is-open .nav-actions{display:flex}.nav-actions .nav-links{flex-direction:column;gap:10px;width:100%}.nav-actions .btn{width:100%;justify-content:center}.nav-actions .session-chip{width:100%;text-align:center;justify-content:center}}@media (max-width: 800px){.hero-content,.grid.three,.grid.two,.stats-grid,.detail-grid,.footer-grid{grid-template-columns:1fr}.footer-inner{padding:28px 22px}.section-header,.panel-header{flex-direction:column;align-items:flex-start}}.gallery-section{margin-top:24px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.gallery-grid img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:16px;border:1px solid var(--border);background:#fffdf1d1}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.demo-note{max-width:760px}.rules-box{border:1px solid var(--border);border-radius:18px;padding:16px;background:#fffdf1d1}.rules-box strong{display:block;margin-bottom:10px}.rules-box ul{margin:0;padding-left:18px}.invitation-status-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.status-pill{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#8cc0eb33;border:1px solid var(--border);color:var(--text);font-size:.9rem;font-weight:700}.session-chip{font-size:.8rem;color:var(--text);opacity:.8;white-space:nowrap}.page-narrow{max-width:560px;margin:0 auto}.page-narrow-wide{max-width:720px;margin:0 auto}.feedback.is-error{color:#9b3b3b}.wizard{display:grid;gap:16px}.wizard-header{display:grid;gap:8px;position:relative;z-index:2}.wizard-progress{display:flex;gap:8px}.wizard-dot{flex:1;height:4px;border-radius:999px;background:#8cc0eb40;transition:background-color .22s ease,transform .22s ease}.wizard-dot.is-active{background:linear-gradient(135deg,var(--primary),var(--accent))}.wizard-dot.is-current{transform:scaleY(1.35)}.wizard-step-label{margin:0;color:var(--muted);font-size:.92rem}.wizard-shell{position:relative;border-radius:18px}.wizard-steps{position:relative}.wizard-step{display:grid;gap:12px;padding:2px 1px;opacity:0;visibility:hidden;pointer-events:none;position:absolute;inset:0 auto auto 0;width:100%;transform:translateY(8px);transition:opacity .26s ease,transform .26s ease,visibility .26s ease}.wizard-step.is-active{opacity:1;visibility:visible;pointer-events:auto;position:relative;inset:auto;transform:translateY(0)}.wizard-step-intro{display:grid;gap:6px}.wizard-step-fields{display:grid;gap:10px}.wizard-step-title{gap:14px}.wizard-step-title .wizard-step-fields{gap:8px}.wizard-step-title label{margin:0;gap:6px}.wizard-step-title .wizard-suggestions{gap:8px;margin-top:2px}.wizard-step label{margin:0}.wizard-step h4{margin:0;font-size:1.2rem;line-height:1.35}.wizard-hint{margin:0;font-size:.92rem;line-height:1.45}.wizard-suggestions{display:grid;gap:10px}.wizard-suggestions-label{margin:0;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.wizard-suggestion-list{display:flex;flex-wrap:wrap;gap:6px}.wizard-suggestion{border:1px solid var(--border);background:#fff9d2e0;color:var(--text);border-radius:999px;padding:6px 12px;cursor:pointer;font-size:.88rem;font-weight:600;line-height:1.3;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.wizard-suggestion:hover:not(:disabled),.wizard-suggestion.is-selected{background:linear-gradient(135deg,#bfddf0f2,#fff9d2f2);border-color:var(--input-border-hover);box-shadow:0 6px 16px #6aaedc2e}.wizard-suggestion.is-selected{outline:2px solid rgba(106,174,220,.35);outline-offset:1px}.wizard-suggestion:disabled{opacity:.6;cursor:not-allowed}.wizard-summary{border:1px solid var(--border);border-radius:18px;padding:16px 18px;background:#fffdf1d1;display:grid;gap:12px}.wizard-summary-title{margin:0;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary-dark)}.wizard-summary-list{margin:0;display:grid;gap:12px}.wizard-summary-item{display:grid;gap:4px}.wizard-summary-item dt{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:.82rem;font-weight:700;color:var(--muted)}.wizard-summary-item dd{margin:0;padding-left:1.9rem;color:var(--text);font-weight:600;line-height:1.45}.wizard-summary-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88rem;font-weight:600;color:var(--primary-dark);word-break:break-all}.wizard-warnings{display:grid;gap:8px}.wizard-warnings .feedback{margin:0}.wizard-checkbox-notice{display:flex;align-items:flex-start;gap:10px;margin:0;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#fffdf1b8;font-weight:500;cursor:pointer}.wizard label.wizard-checkbox-notice>span{text-transform:none;letter-spacing:normal;font-size:.92rem;line-height:1.5;color:var(--muted);font-weight:500}.wizard-checkbox-notice input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:2px 0 0;flex-shrink:0;accent-color:var(--primary-dark);cursor:pointer}.wizard-slug-preview{margin:0;font-size:.9rem}.wizard-nav{display:flex;gap:12px;flex-wrap:wrap}.compact-rules{padding:12px 14px}.compact-rules ul{margin:0;padding-left:18px}.edit-sections{gap:22px}.form-section{border:1px solid var(--border);border-radius:18px;padding:18px;margin:0;background:#fffdf18c;display:grid;gap:14px}.form-section legend{padding:0 6px;font-weight:700;color:var(--text)}.form-section-copy{margin:0;font-size:.92rem}.checkbox-label{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;font-weight:600;text-transform:none;letter-spacing:normal}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-dark)}.itinerary-editor{display:grid;gap:12px;width:100%}.itinerary-row{display:grid;gap:10px;grid-template-columns:1fr;padding:12px;border:1px dashed var(--border);border-radius:12px}@media (min-width: 560px){.itinerary-row{grid-template-columns:100px 1fr auto;align-items:end}}.gift-registry-editor{display:grid;gap:12px;width:100%}.gift-registry-editor-copy{margin:0}.gift-registry-row{display:grid;gap:10px;grid-template-columns:1fr;padding:12px;border:1px dashed var(--border);border-radius:12px}@media (min-width: 560px){.gift-registry-row{grid-template-columns:1fr 1.4fr auto;align-items:end}}.map-link{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:var(--primary-dark);font-weight:700;text-decoration:underline;text-underline-offset:3px}.registration-success{display:grid;gap:20px;justify-items:center;text-align:center;padding:32px 16px;animation:fadeSlideUp .42s ease}.registration-success-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#8cc0eb59,#bfddf0a6);border:2px solid var(--primary-dark);color:var(--success);font-size:2.2rem;font-weight:700;line-height:1}.registration-success-message{margin:0;font-size:clamp(1.35rem,3.5vw,1.85rem);font-weight:700;line-height:1.35;color:var(--text);max-width:28ch}.registration-success-hint{margin:0;font-size:.9rem}.code-sent-success{display:grid;gap:16px;justify-items:center;text-align:center;padding:28px 22px;margin-bottom:22px;border:2px solid var(--primary-dark);border-radius:22px;background:linear-gradient(160deg,#8cc0eb47,#fff9d2f2);box-shadow:0 14px 36px #6aaedc3d;animation:fadeSlideUp .42s ease}.code-sent-success-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#8cc0eb73,#bfddf0bf);border:2px solid var(--primary-dark);color:var(--primary-dark)}.code-sent-success-icon-svg{width:1.75rem;height:1.75rem}.code-sent-success-message{margin:0;font-size:clamp(1.2rem,3.2vw,1.55rem);font-weight:700;line-height:1.45;color:var(--text);max-width:32ch}.status-pill-group{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.status-pill--type{background:#8cc0eb40;color:var(--primary-dark)}.share-block{margin-top:12px}.share-block-label{margin:0 0 8px;font-size:.85rem}.share-menu{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.share-feedback{font-size:.85rem}.share-hint{margin:0;font-size:.9rem}.edit-live-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,42%);gap:24px;align-items:start}.edit-live-layout.is-mobile{grid-template-columns:1fr}.edit-form-pane{min-width:0;padding-bottom:88px}.edit-preview-pane{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow:hidden;display:flex;flex-direction:column}.edit-preview-label{margin:0 0 12px}.edit-preview-frame{flex:1;min-height:480px;overflow:auto;border-radius:12px;border:1px solid rgba(61,50,41,.12);background:#f9f7f2}.edit-mobile-preview-bar{margin-bottom:16px}.edit-workspace{padding-bottom:12px}.edit-action-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 16px;padding:14px 18px;border-radius:14px;border:1px solid rgba(61,50,41,.12);background:#fdfcf8f5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 -4px 24px #3d322914}.edit-action-bar--dock{position:fixed;right:24px;bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:30;width:min(560px,calc(100vw - 48px));margin:0}.edit-action-feedback{margin:0;flex:1 1 100%;text-align:right}.edit-action-bar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.edit-danger-zone{display:grid;gap:12px;justify-items:start;max-width:420px;margin-top:28px;margin-bottom:96px;padding:16px 18px;border-radius:14px;border:1px solid rgba(176,74,74,.22);background:#b04a4a0d}.edit-danger-zone-copy{width:100%}.edit-danger-zone-title{margin:0 0 4px;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9a3434}.edit-danger-zone-copy .muted{margin:0;font-size:.9rem;line-height:1.45}@media (max-width: 767px){.edit-action-bar--dock{left:16px;right:16px;width:auto;bottom:max(12px,env(safe-area-inset-bottom,0px))}.edit-action-bar{justify-content:flex-start}.edit-action-bar-actions,.edit-action-feedback{justify-content:flex-start;text-align:left}.edit-danger-zone{max-width:none;margin-bottom:112px}}.list-meta-item--warn{color:#9a4b2e}.host-event-danger-row{display:grid;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(176,74,74,.18)}.host-event-danger-label{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9a3434}.host-event-danger-copy{margin:0;font-size:.88rem;line-height:1.45}.host-event-terminal-note{margin:8px 0 0;font-size:.9rem}.list-item-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.event-options-menu{position:relative}.event-options-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:30;min-width:180px;padding:6px;border-radius:12px;border:1px solid var(--border);background:#fffdf1fa;box-shadow:0 14px 32px #3d322924}.event-options-item{display:block;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;text-align:left;font:inherit;font-weight:600;cursor:pointer}.event-options-item:hover{background:#8cc0eb24}.event-options-item--danger{color:#9a3434}.event-options-item--danger:hover{background:#b04a4a1a}.host-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:24px;background:#26445a6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.host-modal{width:min(100%,460px);padding:22px 24px;margin:0}.host-modal-eyebrow{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9a3434}.host-modal h3{margin:0 0 12px}.host-modal-copy{display:grid;gap:8px;margin-bottom:18px}.host-modal-copy p{margin:0;line-height:1.5}.host-modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.host-modal--form{width:min(100%,520px)}.host-modal-intro{margin:0 0 16px;line-height:1.5}.host-create-form{margin-top:4px}.host-dashboard-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.host-event-limit-note{margin:-12px 0 20px;line-height:1.5}.form-subsection{display:grid;gap:12px;margin-top:8px}.form-subsection h4{margin:0;font-size:.95rem}.palette-editor,.font-family-editor,.envelope-style-editor{display:grid;gap:14px}.palette-editor-copy,.font-family-editor-copy,.envelope-style-editor-copy{margin:0}.palette-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.palette-preset-card{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:14px;background:#ffffff8c;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.palette-preset-card.is-selected{border-color:var(--primary-dark);box-shadow:0 0 0 3px #8cc0eb38}.palette-preset-swatches{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.palette-preset-swatch{display:block;height:18px;border-radius:999px;border:1px solid rgba(38,68,90,.08)}.palette-preset-label{font-size:.82rem;font-weight:700;color:var(--text)}.envelope-style-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}.envelope-style-card{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:14px;background:#ffffff8c;cursor:pointer;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.envelope-style-card:hover:not(:disabled){transform:translateY(-1px)}.envelope-style-card.is-selected{border-color:var(--primary-dark);box-shadow:0 0 0 3px #8cc0eb38}.envelope-style-card:disabled{opacity:.65;cursor:not-allowed}.envelope-style-thumb{display:block;aspect-ratio:3 / 4;overflow:hidden;border-radius:10px;border:1px solid rgba(38,68,90,.08);background:#f8f4ee}.envelope-style-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.envelope-style-thumb .envelope-style-preview{border-radius:0}.envelope-style-label{font-size:.78rem;font-weight:700;line-height:1.25;color:var(--text)}.palette-custom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}.palette-color-field{display:grid;gap:6px}.palette-color-input-row{display:grid;grid-template-columns:44px 1fr;gap:8px;align-items:center}.palette-color-input-row input[type=color]{width:44px;height:36px;padding:2px;border:1px solid var(--border);border-radius:10px;background:#fff;cursor:pointer}.palette-image-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.palette-custom-badge{font-size:.78rem;font-weight:700;color:var(--primary-dark)}.palette-image-feedback{margin:0}.font-role-grid{display:grid;gap:12px}.font-role-field{display:grid;gap:6px}.font-role-preview{font-size:1.05rem;color:var(--muted);line-height:1.35}@media (max-width: 720px){.palette-preset-grid,.palette-custom-grid{grid-template-columns:1fr}}.cookie-notice{position:fixed;right:16px;bottom:16px;left:16px;z-index:240;display:flex;justify-content:center;pointer-events:none}.cookie-notice-panel{width:min(100%,560px);margin:0;padding:18px 20px;pointer-events:auto;box-shadow:0 18px 42px #26445a2e}.cookie-notice-eyebrow{margin:0 0 6px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.cookie-notice-title{margin:0 0 10px;font-size:1.15rem}.cookie-notice-copy{margin:0 0 8px;line-height:1.5}.cookie-notice-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:14px}@media (max-width: 767px){.cookie-notice{right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px}.cookie-notice-actions{justify-content:stretch}.cookie-notice-actions .btn{flex:1 1 140px}}
