:root{--bg-page: #F6EFE6;--bg-paper: #FFFDF9;--bg-envelope: #F8F3EA;--bg-envelope-light: #FFFDF8;--text-main: #24160E;--text-secondary: #5C3A24;--text-muted: #875E43;--bronze: #A6633E;--bronze-dark: #6E381A;--bronze-light: #C88258;--bronze-soft: rgba(166, 99, 62, .12);--gold-accent: #C89B6D;--satin-ribbon: #C89B6D;--seal-bronze: #BA6E44;--border-subtle: #E2CEB9;--border-card: #E5D5C2;--shadow-paper: 0 18px 42px -8px rgba(68, 48, 32, .12), 0 0 0 1px rgba(196, 150, 105, .35);--font-serif: "Noto Serif Hebrew", serif;--font-sans: "Rubik", sans-serif;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-pill: 9999px;--transition-smooth: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background-color:var(--bg-page);color:var(--text-main);font-family:var(--font-sans);direction:rtl;text-align:right;line-height:1.6;overflow-x:hidden;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:absolute;top:-100px;right:16px;background:var(--bronze-dark);color:#fff;padding:10px 18px;border-radius:var(--radius-sm);z-index:9999;text-decoration:none;font-size:.875rem;transition:top .2s}.skip-link:focus{top:16px}#app{width:100%;max-width:100vw;display:flex;flex-direction:column;align-items:center}#scene-section{width:100%;position:relative;display:flex;justify-content:center;align-items:center;background:radial-gradient(ellipse at 50% 40%,#fff9f2,#f6ece0 42%,#eadbca 80%,#dfcdbc);padding:16px 0}#scene-container{width:100%;max-width:820px;height:82vh;min-height:520px;max-height:660px;position:relative;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}#scene-container:active{cursor:grabbing}#scene-canvas{width:100%;height:100%;display:block;outline:none}#scene-action-btn{position:absolute;inset:0;width:100%;height:100%;background:transparent;border:none;cursor:pointer;z-index:10;outline:none}#scene-action-btn:focus-visible{outline:2px solid var(--bronze);outline-offset:-4px;border-radius:var(--radius-md)}.scene-controls{position:absolute;bottom:14px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;z-index:15;padding:0 16px}.scene-hint{display:flex;justify-content:center}.hint-text{font-family:var(--font-serif);font-size:.9375rem;font-weight:500;color:var(--bronze-dark);background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding:8px 22px;border-radius:var(--radius-pill);border:1px solid rgba(220,209,191,.9);box-shadow:0 6px 18px #3a332d14;letter-spacing:.02em;animation:hintPulse 2.8s ease-in-out infinite}.hint-flip-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-serif);font-size:.8125rem;font-weight:500;color:var(--bronze);background:#ffffffe0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:4px 14px;border-radius:var(--radius-pill);border:1px solid rgba(220,209,191,.7);box-shadow:0 2px 8px #3a332d0d;pointer-events:auto;cursor:pointer}.hint-flip-pill svg{animation:spinSlow 10s linear infinite}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-scroll-rsvp{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-sans);font-size:.9375rem;font-weight:500;color:#5a3a22;background:linear-gradient(135deg,#fffffff5,#faf7f2f0);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:10px 22px 10px 16px;border-radius:var(--radius-pill);border:1.5px solid rgba(156,101,66,.35);box-shadow:0 10px 28px -6px #3a332d29,0 0 0 1px #fff9 inset;cursor:pointer;pointer-events:auto;user-select:none;-webkit-user-select:none;transition:transform .25s var(--transition-smooth),box-shadow .25s var(--transition-smooth),border-color .25s ease;animation:rsvpButtonGlow 3.2s ease-in-out infinite}.btn-scroll-rsvp.hidden{opacity:0;pointer-events:none;transform:translateY(12px) scale(.95);visibility:hidden}.btn-scroll-rsvp.visible{opacity:1;pointer-events:auto;transform:translateY(0) scale(1);visibility:visible;transition:opacity .6s var(--transition-smooth),transform .6s var(--transition-smooth),visibility .6s}.btn-scroll-rsvp:hover,.btn-scroll-rsvp:focus-visible{transform:translateY(-2px) scale(1.02);border-color:var(--bronze);box-shadow:0 14px 34px -4px #3a332d3d,0 0 0 1px #fffc inset;outline:none}.btn-scroll-rsvp:active{transform:translateY(1px) scale(.98)}.btn-scroll-rsvp-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#9c65421f;color:var(--bronze);animation:arrowBounce 2s ease-in-out infinite}@keyframes arrowBounce{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@keyframes rsvpButtonGlow{0%,to{box-shadow:0 10px 28px -6px #3a332d29,0 0 0 1px #fff9 inset}50%{box-shadow:0 12px 32px -4px #9c654247,0 0 0 2px #9c65424d inset}}@keyframes hintPulse{0%,to{opacity:.9;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.part-2-container{width:100%;max-width:580px;padding:20px 16px 80px;display:flex;flex-direction:column;gap:32px;opacity:0;pointer-events:none;transform:translateY(30px);transition:opacity .9s var(--transition-smooth),transform .9s var(--transition-smooth)}.part-2-container.is-revealed{opacity:1;pointer-events:auto;transform:translateY(0)}.reveal-block{opacity:0;transform:translateY(24px);transition:opacity .7s var(--transition-smooth),transform .7s var(--transition-smooth)}.reveal-block.is-visible{opacity:1;transform:translateY(0)}.story-block{width:100%}.opening-quote{font-family:var(--font-serif);font-weight:400;font-size:1.1875rem;color:var(--text-main);text-align:center;line-height:1.75;padding:10px 16px;letter-spacing:.01em}.countdown-card{background:var(--bg-paper);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:26px 20px;box-shadow:var(--shadow-paper);text-align:center}.countdown-header{font-family:var(--font-serif);font-size:1.125rem;font-weight:600;color:var(--bronze-dark);margin-bottom:18px;letter-spacing:.02em}.countdown-bar{display:flex;justify-content:center;align-items:center;gap:8px;direction:ltr}.time-segment{background:var(--bronze);color:#fff;border-radius:var(--radius-sm);padding:10px 12px;min-width:62px;display:flex;flex-direction:column;align-items:center;box-shadow:0 4px 12px #9c654240;position:relative;overflow:hidden}.time-digit{font-family:var(--font-serif);font-size:1.625rem;font-weight:700;line-height:1.1;display:inline-block;transition:transform .25s var(--transition-smooth)}.time-digit.flip{transform:scaleY(.1)}.time-label{font-family:var(--font-sans);font-size:.6875rem;opacity:.92;margin-top:3px;letter-spacing:.02em}.time-sep{font-family:var(--font-serif);font-size:1.5rem;color:var(--bronze);font-weight:600;padding-bottom:12px}.details-card{background:var(--bg-paper);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:30px 24px;box-shadow:var(--shadow-paper);text-align:center}.dates-header{margin-bottom:24px}.hebrew-date{font-family:var(--font-serif);font-size:1.3125rem;font-weight:700;color:var(--text-main);margin-bottom:4px}.gregorian-date{font-size:.9375rem;color:var(--text-secondary)}.schedule-row{display:flex;justify-content:center;align-items:center;gap:20px;padding:18px 0;margin:18px 0 24px;background:#fcfaf6;border-radius:var(--radius-md);border:1px solid rgba(220,209,191,.6)}.schedule-col{flex:1;display:flex;flex-direction:column;align-items:center}.sched-label{font-size:.8125rem;color:var(--text-secondary);margin-bottom:4px}.sched-time{font-family:var(--font-serif);font-size:1.625rem;font-weight:700;color:var(--text-main)}.schedule-divider{display:flex;flex-direction:column;align-items:center;justify-content:center;width:14px}.sched-divider-line{width:1.5px;height:20px;background:var(--bronze-light);transform:scaleY(0);transition:transform .8s var(--transition-smooth)}.schedule-row.animated .sched-divider-line{transform:scaleY(1)}.sched-divider-diamond{width:7px;height:7px;background:var(--bronze);transform:rotate(45deg);margin:3px 0}.location-box{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 16px;margin-bottom:24px;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.location-icon{color:var(--bronze);display:flex;align-items:center}.venue-name{font-family:var(--font-serif);font-size:1.125rem;font-weight:700;color:var(--text-main)}.venue-address{font-size:.875rem;color:var(--text-secondary)}.action-buttons-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .25s ease;outline:none;border:1px solid transparent}.btn:focus-visible{outline:2px solid var(--bronze);outline-offset:2px}.btn-bronze{background:var(--bronze);color:#fff;box-shadow:0 4px 14px #9c65424d}.btn-bronze:hover{background:var(--bronze-dark);transform:translateY(-1px)}.btn-bronze:active{transform:translateY(0)}.btn-outline{background:transparent;color:var(--text-main);border-color:var(--border-subtle)}.btn-outline:hover{background:#faf7f0;border-color:var(--bronze-light)}.btn-large{padding:15px 22px;font-size:1rem}.btn-full{width:100%}.family-card{background:var(--bg-paper);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:28px 20px;box-shadow:var(--shadow-paper);text-align:center}.family-title{font-family:var(--font-serif);font-size:1.1875rem;font-weight:600;color:var(--bronze-dark);margin-bottom:22px}.family-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}.family-branch{display:flex;flex-direction:column;gap:4px}.family-role{font-size:.75rem;color:var(--bronze);text-transform:uppercase;letter-spacing:.04em;margin-bottom:3px}.parents-names{font-family:var(--font-serif);font-size:1.0625rem;font-weight:700;color:var(--text-main)}.grandparents-group{margin-top:6px;font-size:.8125rem;color:var(--text-secondary);line-height:1.55}.grandparents-group .memory{color:var(--text-muted)}.closing-blessing{font-family:var(--font-serif);font-style:italic;font-size:.9375rem;color:var(--text-main);border-top:1px solid var(--border-subtle);padding-top:16px}.olive-svg-container{display:flex;justify-content:center;align-items:center;padding:8px 0}.self-drawing-branch{width:220px;height:48px;overflow:visible}.draw-path{stroke-dasharray:400;stroke-dashoffset:400;transition:stroke-dashoffset 2.2s var(--transition-smooth)}.olive-svg-container.is-visible .draw-path{stroke-dashoffset:0}#rsvp-section{scroll-margin-top:36px}.rsvp-card{background:var(--bg-paper);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:32px 24px;box-shadow:var(--shadow-paper);position:relative}.rsvp-header{text-align:center;margin-bottom:26px}.rsvp-badge{display:inline-block;font-size:.75rem;color:var(--bronze-dark);background:var(--bronze-soft);padding:4px 14px;border-radius:var(--radius-pill);font-weight:600;margin-bottom:8px;letter-spacing:.02em}.rsvp-title{font-family:var(--font-serif);font-size:1.75rem;font-weight:700;color:var(--text-main);margin-bottom:4px}.rsvp-subtitle{font-size:.875rem;color:var(--text-secondary)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:.875rem;font-weight:500;color:var(--text-main);margin-bottom:6px}.required{color:var(--bronze)}.optional-tag{font-size:.75rem;color:var(--text-muted);font-weight:400}.form-input,.form-textarea{width:100%;padding:13px 15px;font-family:var(--font-sans);font-size:.9375rem;color:var(--text-main);background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-md);outline:none;transition:border-color .2s,box-shadow .2s}.form-input.ltr-input{direction:ltr;text-align:right}.form-input:focus,.form-textarea:focus{border-color:var(--bronze);box-shadow:0 0 0 3px #9c654226}.form-textarea{resize:vertical}.field-error{color:#b93826;font-size:.75rem;margin-top:5px;display:none}.field-error.active{display:block;animation:fadeIn .2s ease-out}.choice-buttons-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 12px;background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-main);font-family:var(--font-sans);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none}.choice-btn:hover{background:#faf7f0;border-color:var(--bronze-light)}.choice-btn:focus-visible{outline:2px solid var(--bronze);outline-offset:2px}.choice-btn.selected{background:#faf3eb;border-color:var(--bronze);color:var(--bronze-dark);box-shadow:0 2px 8px #9c654226}.choice-btn .choice-icon{display:flex;align-items:center;opacity:.5;transition:opacity .2s}.choice-btn.selected .choice-icon{opacity:1;color:var(--bronze)}.guests-panel{background:#faf7f0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;margin-bottom:20px;transition:all .3s var(--transition-smooth)}.guests-panel.hidden{display:none}.guests-panel-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid rgba(220,209,191,.6)}.guests-panel-title{font-size:.875rem;font-weight:600;color:var(--text-main)}.total-badge{font-family:var(--font-serif);font-size:.8125rem;font-weight:600;color:var(--bronze-dark);background:var(--bg-paper);padding:3px 12px;border-radius:var(--radius-pill);border:1px solid var(--border-subtle)}.stepper-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.stepper-row+.stepper-row{border-top:1px solid rgba(220,209,191,.4)}.stepper-title{display:block;font-size:.875rem;font-weight:500;color:var(--text-main)}.stepper-hint{display:block;font-size:.6875rem;color:var(--text-secondary)}.stepper-controls{display:flex;align-items:center;gap:8px}.stepper-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-subtle);background:#fff;color:var(--text-main);font-size:1.125rem;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;outline:none}.stepper-btn:hover{background:var(--bronze-soft);border-color:var(--bronze-light)}.stepper-btn:active{transform:scale(.92)}.stepper-num{font-family:var(--font-serif);font-size:1.1875rem;font-weight:700;width:28px;text-align:center;display:inline-block;transition:transform .2s var(--transition-smooth)}.stepper-num.bump{transform:scale(1.35);color:var(--bronze)}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.spinner.hidden{display:none}@keyframes spin{to{transform:rotate(360deg)}}.thankyou-panel{text-align:center;padding:16px 8px;animation:fadeIn .4s ease-out}.thankyou-panel.hidden{display:none}.thankyou-seal-wrapper{display:flex;justify-content:center;margin-bottom:16px}.thankyou-seal{width:76px;height:76px;filter:drop-shadow(0 6px 14px rgba(110,74,46,.3))}.thankyou-seal.stamp-anim{animation:sealStamp .65s var(--transition-smooth) forwards}@keyframes sealStamp{0%{transform:scale(1.8) rotate(-20deg);opacity:0}60%{transform:scale(.95) rotate(4deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.thankyou-header{font-family:var(--font-serif);font-size:1.625rem;font-weight:700;color:var(--text-main);margin-bottom:6px}.thankyou-desc{font-size:.9375rem;color:var(--text-secondary);margin-bottom:18px;max-width:380px;margin-left:auto;margin-right:auto}.summary-box{background:#faf7f0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px 16px;font-size:.8125rem;color:var(--text-main);margin-bottom:16px}.btn-text-link{background:none;border:none;color:var(--bronze);font-size:.8125rem;font-weight:500;text-decoration:underline;cursor:pointer}.btn-text-link:hover{color:var(--bronze-dark)}.page-footer{text-align:center;padding:24px 0;border-top:1px solid var(--border-subtle);margin-top:16px}.footer-names{font-family:var(--font-serif);font-size:1.0625rem;font-weight:700;color:var(--text-main)}.footer-date{font-size:.8125rem;color:var(--text-secondary);margin-top:2px}#petal-fx-container{position:fixed;inset:0;pointer-events:none;z-index:9999;overflow:hidden}.dom-petal{position:absolute;width:14px;height:10px;border-radius:50% 50% 50% 0;pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.part-2-container{opacity:1!important;pointer-events:auto!important;transform:none!important}.reveal-block{opacity:1!important;transform:none!important}}
