:root{--primary-color:#284e22;--secondary-color:#c8b9a6;--accent-color:#223436;--bg-color:#c4d0ce;--text-color:#2d2d2d;--font-heading:"Playfair Display", serif;--font-body:"Outfit", sans-serif;--transition-smooth:all .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html,body,#root{overscroll-behavior:none;width:100%;height:100dvh;overflow:hidden}body{font-family:var(--font-body);color:var(--text-color);background-color:var(--bg-color);overscroll-behavior:none;-webkit-text-size-adjust:100%;width:100%;height:100dvh;line-height:1.6;overflow:hidden}h1,h2,h3,h4{text-wrap:balance}p,li{text-wrap:pretty}h2{font-family:var(--font-heading);color:#fff;text-shadow:0 1px 3px #1826288c,0 3px 10px #2234366b,0 8px 22px #22343642;margin-top:0;margin-bottom:1rem;font-size:clamp(1.8rem,4.5vw,2.3rem);font-weight:400}.section{z-index:1;padding:clamp(2.5rem,5vh,4rem) 5% 2rem;position:relative}@media (width<=768px){.section{padding:2rem 1.25rem 1.5rem}}.container{text-align:center;z-index:1;max-width:1000px;margin:0 auto;position:relative}.bg-light{background-color:#fff}.section-lead{margin-bottom:1.25rem}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.25rem;margin-top:1.25rem;display:grid}.card{-webkit-backdrop-filter:blur(10px);transition:var(--transition-smooth);-webkit-user-select:text;user-select:text;background:#22343626;border:1px solid #ffffff26;border-radius:12px;padding:1.75rem 1.5rem;transform:translate(0,0)}@media (width<=768px){.card{padding:1.4rem 1.1rem}}@media (hover:hover){.card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000000d}}.card h3{font-family:var(--font-heading);color:var(--accent-color);margin-bottom:.8rem;font-size:1.4rem}.details-actions{flex-wrap:wrap;justify-content:center;gap:.85rem;margin-top:1.5rem;display:flex}.cta-button,.submit-button,.details-action-btn{border:2px solid var(--accent-color);-webkit-backdrop-filter:blur(10px);min-height:48px;color:var(--text-color);font-family:var(--font-body);cursor:pointer;transition:var(--transition-smooth);touch-action:manipulation;background:#fff6;border-radius:10px;justify-content:center;align-items:center;gap:.45rem;padding:.85rem 1.75rem;font-size:1rem;font-weight:500;line-height:1.4;text-decoration:none;display:inline-flex}.details-action-btn{min-height:44px;padding:.65rem 1.35rem;font-size:.95rem}.hero-cta{min-height:48px}.submit-button{width:100%}.cta-button:disabled,.submit-button:disabled,.details-action-btn:disabled{opacity:.6;cursor:not-allowed}.cta-button:active:not(:disabled),.submit-button:active:not(:disabled),.details-action-btn:active:not(:disabled){transform:scale(.98)}@media (hover:hover){.cta-button:hover:not(:disabled),.submit-button:hover:not(:disabled),.details-action-btn:hover:not(:disabled){border-color:var(--accent-color);color:var(--text-color);background:#2234361f}}.glass-frame{-webkit-backdrop-filter:blur(10px);background:#22343626;border-radius:12px;padding:8px;overflow:hidden;transform:translate(0,0);box-shadow:0 10px 25px #0000001a}.form-group{margin-bottom:1.25rem}label{color:var(--text-color);margin-bottom:.4rem;font-size:.95rem;font-weight:500;display:block}input,select,textarea{border:2px solid var(--accent-color);width:100%;min-height:48px;font-family:var(--font-body);transition:var(--transition-smooth);color:var(--text-color);appearance:none;-webkit-user-select:text;user-select:text;background-color:#fff6;border-radius:10px;padding:.9rem 1.25rem;font-size:16px;line-height:1.4}input::placeholder,textarea::placeholder{color:#2c35318c}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23223436' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:14px;padding-right:2.5rem}@media (hover:hover){input:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus){border-color:var(--accent-color);background-color:#2234361f}}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-color);outline-offset:1px;border-color:var(--accent-color);background-color:#ffffffbf;box-shadow:0 0 0 3px #22343626}:where(a:any-link,button,[role=button]):focus-visible{outline:2px solid var(--primary-color);outline-offset:3px}footer,.site-footer{z-index:10;text-align:center;padding:.65rem 1.25rem;padding-bottom:max(.65rem, calc(.35rem + env(safe-area-inset-bottom)));background-color:var(--primary-color);color:#fff;font-family:var(--font-heading);will-change:transform, opacity;flex-shrink:0;width:100%;font-size:.9rem;font-style:italic;transition:transform .75s cubic-bezier(.22,1,.36,1),opacity .9s cubic-bezier(.25,.8,.25,1);position:relative;-webkit-transform:translateZ(0)}.site-footer.footer-intro-delay{transition-delay:.3s}.site-footer.footer-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.site-footer.footer-hidden{opacity:0;pointer-events:none;transform:translateY(30px)}.footer-initials{font-family:var(--font-heading);color:#fff;letter-spacing:-.5px;margin-bottom:.1rem;font-size:1.15rem;font-style:normal;font-weight:600;line-height:1.2;display:block}footer p{margin:0;line-height:1.25}.visually-hidden:where(:not(:focus-within,:active)){clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.fade-in-up{animation:.8s ease-out fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes counterPop{0%{transform:scale(1)}40%{background:#fffffffa;transform:scale(1.18);box-shadow:0 0 14px #284e2259}to{transform:scale(1)}}@keyframes fadeInSlide{0%{opacity:0;transform:translateY(-4px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@media (forced-colors:active){.gallery-glass-card:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid canvastext}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-container{flex-direction:column;width:100vw;height:100dvh;display:flex;position:relative;overflow:hidden}.content-wrap{flex-direction:column;flex:1;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.panoramic-viewport{background-color:var(--bg-color);-webkit-user-select:none;user-select:none;overscroll-behavior:none;touch-action:pan-y pinch-zoom;flex-direction:column;flex:1;width:100vw;height:100%;display:flex;position:relative;overflow:hidden}.panoramic-track{will-change:transform;flex-direction:row;width:600vw;height:100%;transition:transform .62s cubic-bezier(.22,1,.36,1);display:flex}.panoramic-track.is-multi-jumping{transition:transform .48s cubic-bezier(.22,1,.36,1)}.panoramic-section{-webkit-overflow-scrolling:touch;flex-direction:column;flex-shrink:0;width:100vw;height:100%;transition:opacity .28s;display:flex;position:relative;overflow:hidden auto}.panoramic-section.is-jump-intermediate{opacity:.25}.panoramic-section.is-jump-intermediate .card,.panoramic-section.is-jump-intermediate .gallery-glass-card,.panoramic-section.is-jump-intermediate .glass-frame{-webkit-backdrop-filter:none}.panoramic-nav-btn{z-index:95;-webkit-backdrop-filter:blur(10px);width:46px;height:46px;color:var(--accent-color);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#22343626;border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:400;line-height:1;transition:all .25s cubic-bezier(.25,.8,.25,1);display:flex;position:fixed;top:50%;transform:translateY(-50%);box-shadow:0 6px 20px #2234361a}.panoramic-nav-btn span{justify-content:center;align-items:center;display:flex;transform:translateY(-1px)}.panoramic-nav-btn:hover{color:var(--primary-color);background:#22343640;border-color:#ffffff80;transform:translateY(-50%)scale(1.1);box-shadow:0 8px 24px #2234362e}.panoramic-nav-btn:active{transform:translateY(-50%)scale(.95)}.panoramic-nav-btn.prev{left:20px}.panoramic-nav-btn.next{right:20px}@media (width<=768px){.panoramic-nav-btn{width:44px;height:44px;top:auto;bottom:calc(18px + env(safe-area-inset-bottom,0px));font-size:1.35rem;transform:none}.panoramic-nav-btn:hover{transform:scale(1.06)}.panoramic-nav-btn:active{transform:scale(.92)}.panoramic-nav-btn.prev{left:calc(12px + env(safe-area-inset-left,0px))}.panoramic-nav-btn.next{right:calc(12px + env(safe-area-inset-right,0px))}}.panoramic-dots-indicator{bottom:calc(74px + env(safe-area-inset-bottom,0px));z-index:94;-webkit-backdrop-filter:blur(10px);touch-action:manipulation;background:#ffffffa6;border:1px solid #fffc;border-radius:20px;align-items:center;gap:2px;padding:3px 9px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #22343614}.panoramic-dot{cursor:pointer;touch-action:manipulation;background:0 0;border:none;justify-content:center;align-items:center;min-width:16px;min-height:18px;padding:0 3px;display:inline-flex}.panoramic-dot:before{content:"";background-color:#22343647;border-radius:50%;width:7px;height:7px;transition:all .3s cubic-bezier(.25,.8,.25,1);display:block}.panoramic-dot:hover:before{background-color:var(--primary-color)}.panoramic-dot.active:before{background-color:var(--accent-color);border-radius:5px;width:20px}.page-main{background-color:var(--bg-color);width:100%;position:relative}.page-main-home{flex-direction:column;flex:1 0 auto;justify-content:center;min-height:0;display:flex}.page-main-centered{flex-direction:column;flex:1 0 auto;padding-top:80px;padding-bottom:70px;display:flex}.page-main-centered>.section{width:100%;margin:auto 0}.page-main-scrollable{flex:1 0 auto;padding-top:90px;padding-bottom:60px}@media (width<=768px){.page-main-centered,.page-main-scrollable{padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))}}@media (height<=500px){.page-main-centered{padding-top:64px;padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}.panoramic-dots-indicator{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.panoramic-nav-btn{bottom:calc(8px + env(safe-area-inset-bottom,0px))}}.vine-canvas-layer,.vine-canvas-element{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.navbar{-webkit-backdrop-filter:blur(16px)saturate(180%);z-index:1000;width:100%;transition:opacity .9s cubic-bezier(.25, .8, .25, 1) .3s, transform .9s cubic-bezier(.25, .8, .25, 1) .3s, background var(--transition-smooth), padding var(--transition-smooth), box-shadow var(--transition-smooth);background:#ffffff59;border-bottom:1px solid #ffffff73;justify-content:space-between;align-items:center;padding:1.25rem 5%;display:flex;position:fixed;top:0;box-shadow:0 4px 20px #2234360f}.navbar.navbar-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.navbar.navbar-hidden{opacity:0;pointer-events:none;transform:translateY(-20px)}.navbar.scrolled{-webkit-backdrop-filter:blur(20px)saturate(180%);background:#ffffffad;border-bottom:1px solid #ffffffb3;padding:.9rem 5%;box-shadow:0 6px 24px #2234361a}.logo{font-family:var(--font-heading);color:var(--primary-color);letter-spacing:-.5px;transition:var(--transition-smooth);font-size:1.5rem;font-weight:600;text-decoration:none}.logo:hover{color:var(--accent-color);text-decoration:none}.bloom-counter-container{-webkit-user-select:none;user-select:none;z-index:10;align-items:center;gap:8px;display:flex;position:relative}.bloom-counter-badge{-webkit-backdrop-filter:blur(12px);font-family:var(--font-body);color:var(--primary-color);cursor:pointer;background:#ffffffad;border:1px solid #ffffffd9;border-radius:20px;align-items:center;gap:5px;padding:5px 12px;font-size:.84rem;font-weight:600;transition:all .25s cubic-bezier(.25,.8,.25,1);display:inline-flex;box-shadow:0 2px 10px #2234360f}.bloom-counter-badge:hover{background:#ffffffeb;transform:translateY(-1px);box-shadow:0 4px 12px #2234361a}.bloom-counter-badge.bump{animation:.5s cubic-bezier(.34,1.56,.64,1) counterPop}.bloom-counter-badge.complete{color:var(--primary-color);background:#fdfbf7e0;border-color:#d4af3780;box-shadow:0 2px 12px #d4af372e}.bloom-counter-icon{opacity:.9;font-size:.88rem;line-height:1}.bloom-counter-count{letter-spacing:.3px;font-variant-numeric:tabular-nums}.bloom-hint-popover{color:#fdfbf7;text-align:center;pointer-events:none;z-index:30;background:#223436f0;border-radius:10px;width:max-content;max-width:min(260px,80vw);padding:8px 12px;font-size:.78rem;font-weight:500;line-height:1.35;animation:.25s cubic-bezier(.25,.8,.25,1) fadeInSlide;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 18px #0000002e}.checker-toggle-btn{font-size:.82rem;font-weight:600;font-family:var(--font-body);cursor:pointer;color:var(--text-color);touch-action:manipulation;white-space:nowrap;background:#ffffffd1;border:1px solid #22343638;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;transition:all .25s cubic-bezier(.25,.8,.25,1);animation:.4s cubic-bezier(.25,.8,.25,1) fadeInSlide;display:inline-flex;box-shadow:0 2px 10px #22343614}.checker-toggle-btn:hover{background:#fffffffa;transform:translateY(-1px);box-shadow:0 4px 14px #2234361f}.checker-toggle-btn:active{transform:scale(.95)}.checker-toggle-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);box-shadow:0 3px 12px #284e224d}.checker-toggle-btn.active:hover{background:#1e3c1a}.mobile-menu-bloom-widget{background:#2234360a;border-radius:12px;flex-direction:column;align-items:center;gap:10px;margin-top:1.5rem;margin-bottom:.5rem;padding:12px;display:flex}.nav-links{gap:1.5rem;list-style:none;display:flex}.nav-links a{color:var(--accent-color);transition:var(--transition-smooth);border:1px solid #0000;border-radius:20px;padding:6px 14px;font-size:.95rem;font-weight:500;text-decoration:none}.nav-links a:hover{color:var(--primary-color);background:#ffffff73;border-color:#fff9}.nav-links a.active{color:var(--primary-color);background:#ffffffbf;border-color:#ffffffd9;font-weight:600;box-shadow:0 2px 12px #22343614}.mobile-nav-toggle{-webkit-backdrop-filter:blur(12px);cursor:pointer;z-index:1100;touch-action:manipulation;background:#ffffffbf;border:1px solid #ffffffd9;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;transition:transform .2s,background-color .3s;display:none;box-shadow:0 4px 16px #2234361a}.mobile-nav-toggle:active{transform:scale(.92)}.hamburger-icon{flex-direction:column;justify-content:space-between;width:22px;height:16px;display:flex;position:relative}.hamburger-bar{background-color:var(--accent-color);transform-origin:50%;border-radius:2px;width:100%;height:2px;transition:transform .3s cubic-bezier(.25,.8,.25,1),opacity .25s}.mobile-nav-toggle.open .hamburger-bar:first-child{transform:translateY(7px)rotate(45deg)}.mobile-nav-toggle.open .hamburger-bar:nth-child(2){opacity:0;transform:scaleX(0)}.mobile-nav-toggle.open .hamburger-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-menu-overlay{-webkit-backdrop-filter:blur(8px);z-index:1050;opacity:0;pointer-events:none;background:#2234368c;width:100%;height:100dvh;transition:opacity .35s cubic-bezier(.25,.8,.25,1);position:fixed;top:0;left:0}.mobile-menu-overlay.open{opacity:1;pointer-events:auto}.mobile-menu-drawer{-webkit-backdrop-filter:blur(20px);z-index:1060;width:min(85vw,320px);height:100dvh;padding:max(5rem, calc(4rem + env(safe-area-inset-top))) max(1.75rem, env(safe-area-inset-right)) max(2rem, env(safe-area-inset-bottom)) 1.75rem;background:#fdfbf7f5;border-left:1px solid #fff9;flex-direction:column;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-8px 0 30px #22343633}.mobile-menu-drawer:focus{outline:none}.mobile-menu-overlay.open .mobile-menu-drawer{transform:translate(0)}.mobile-nav-links{flex-direction:column;gap:1.25rem;list-style:none;display:flex}.mobile-nav-links a{color:var(--text-color);font-size:1.15rem;font-weight:500;font-family:var(--font-body);touch-action:manipulation;background:#2234360a;border-radius:10px;align-items:center;padding:.85rem 1rem;text-decoration:none;transition:background-color .2s,color .2s,transform .2s;display:flex}.mobile-nav-links a:active,.mobile-nav-links a.active{background-color:var(--accent-color);color:#fff;transform:translate(4px)}.mobile-menu-footer{text-align:center;font-family:var(--font-heading);color:var(--primary-color);border-top:1px solid #2234361a;margin-top:auto;padding-top:1.5rem;font-size:1.1rem;font-style:italic}.mobile-menu-date{color:var(--accent-color);opacity:.8;font-size:.85rem}@media (width<=768px){.nav-links{display:none}.mobile-nav-toggle,.panoramic-dots-indicator{display:flex}.bloom-counter-container{gap:6px}.bloom-counter-badge{padding:4px 8px;font-size:.76rem}.checker-toggle-btn{padding:4px 9px;font-size:.78rem}.navbar{padding:max(.85rem, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) .85rem max(1.25rem, env(safe-area-inset-left))}.navbar.scrolled{padding:max(.65rem, env(safe-area-inset-top)) max(1.25rem, env(safe-area-inset-right)) .65rem max(1.25rem, env(safe-area-inset-left))}}.hero{z-index:2;text-align:center;width:100%;padding:clamp(3.5rem, 8vh, 4.5rem) max(1.25rem, env(safe-area-inset-right)) 1.5rem max(1.25rem, env(safe-area-inset-left));flex:1;justify-content:center;align-items:center;margin:auto 0;display:flex;position:relative}.hero-content{z-index:2;-webkit-user-select:text;user-select:text;width:100%;max-width:650px;margin:0 auto;position:relative}.hero h1{font-family:var(--font-heading);color:#fff;text-shadow:0 1px 4px #1826288c,0 3px 12px #2234366b,0 8px 24px #22343647;margin:.3rem 0 .5rem;font-size:clamp(2.2rem,6.5vw,4.2rem);font-weight:400;line-height:1.15}.subtitle{text-transform:uppercase;letter-spacing:2.5px;color:var(--accent-color);margin-bottom:.35rem;font-size:clamp(.85rem,2.5vw,1.05rem)}.date{color:#fff;letter-spacing:.5px;text-shadow:0 1px 3px #18262894,0 2px 8px #22343673,0 5px 16px #22343647;margin-bottom:1.4rem;font-size:clamp(.95rem,2.8vw,1.15rem);font-weight:400}.story-section{padding:3rem 2rem 8.5rem}.story-heading{text-align:center;margin-bottom:.8rem}.story-subtitle{text-align:center;color:var(--accent-color);margin-bottom:3.5rem;font-size:1.05rem}.story-timeline-container{width:100%;padding-top:580px;position:relative}.story-intro-desktop{z-index:1;width:100%;height:550px;position:absolute;top:0;left:0}.story-desktop-anchor-pascale{position:absolute;top:200px;left:28%}.story-desktop-card-pascale{text-align:right;width:280px;position:absolute;top:0;right:30px;transform:translateY(-50%)}.story-desktop-anchor-simon{position:absolute;top:360px;left:72%}.story-desktop-card-simon{text-align:left;width:280px;position:absolute;top:0;left:30px;transform:translateY(-50%)}.story-name-pascale{color:var(--accent-color);font-family:var(--font-heading);margin-bottom:5px;font-size:1.5rem}.story-name-simon{color:var(--primary-color);font-family:var(--font-heading);margin-bottom:5px;font-size:1.5rem}.story-portrait-img{object-fit:cover;border-radius:8px;width:100%;height:280px;display:block}.story-intro-mobile{z-index:1;flex-direction:column;align-items:center;gap:2.5rem;margin-bottom:3.5rem;display:none;position:relative}.story-portrait-card{text-align:center;width:100%;max-width:280px}.story-portrait-card h3{font-family:var(--font-heading);margin-bottom:6px;font-size:1.5rem}.story-milestone-year{color:var(--accent-color);margin-bottom:.4rem;font-size:1.35rem}.story-timeline-card{z-index:1;align-items:center;width:100%;margin-bottom:4rem;display:flex;position:relative}.story-timeline-card.is-expanded-card{z-index:30}.story-timeline-card.align-left{justify-content:flex-start}.story-timeline-card.align-right{justify-content:flex-end}.story-card-content{width:calc(50% - 35px);max-width:420px}.story-card-content.align-left{text-align:right;padding:0 20px 0 0}.story-card-content.align-right{text-align:left;padding:0 0 0 20px}@media (width<=768px){.story-section{padding:2rem 1.25rem 7.5rem}.story-subtitle{margin-bottom:2.5rem}.story-timeline-container{padding-top:0}.story-intro-desktop{display:none}.story-intro-mobile{display:flex}.story-portrait-img{height:240px}.story-timeline-card,.story-timeline-card.align-left,.story-timeline-card.align-right{justify-content:center;margin-bottom:4.5rem}.story-card-content,.story-card-content.align-left,.story-card-content.align-right{text-align:center;width:100%;max-width:440px;padding:0}}.gallery-card-slot{width:100%;position:relative}.gallery-card-placeholder{visibility:hidden;pointer-events:none;border:1px solid #0000;border-radius:14px;padding:8px;line-height:0}.gallery-card-aspect-box{aspect-ratio:3/2;border-radius:8px;width:100%;display:block}.gallery-glass-card{-webkit-backdrop-filter:blur(12px);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;z-index:2;background:#22343626;border:1px solid #ffffff47;border-radius:14px;width:100%;padding:8px;transition:background-color .45s cubic-bezier(.25,.8,.25,1),border-color .45s cubic-bezier(.25,.8,.25,1),box-shadow .45s cubic-bezier(.25,.8,.25,1),transform .45s cubic-bezier(.25,.8,.25,1);position:absolute;top:0;left:0;overflow:hidden;transform:translate(0,0);box-shadow:0 10px 25px #2234361a}.gallery-glass-card:focus-visible{outline:3px solid var(--primary-color);outline-offset:2px;box-shadow:0 0 0 3px var(--primary-color), 0 10px 25px #22343626}@media (hover:hover){.gallery-glass-card:hover{background:#22343633;border-color:#ffffff73;transform:translateY(-2px);box-shadow:0 14px 32px #2234362e}}.gallery-glass-card.expanded{-webkit-backdrop-filter:blur(16px);z-index:50;background:#22343652;border-color:#ffffff8c;transform:translateY(-2px);box-shadow:0 20px 45px #22343647}.gallery-image-wrapper{border-radius:8px;line-height:0;position:relative;overflow:hidden}.gallery-tap-hint{-webkit-backdrop-filter:blur(6px);color:#fff;letter-spacing:.2px;pointer-events:none;-webkit-user-select:none;user-select:none;background:#223436b8;border:1px solid #ffffff40;border-radius:12px;padding:3px 9px;font-size:.72rem;font-weight:500;line-height:1.4;transition:opacity .25s,background-color .25s;position:absolute;bottom:8px;right:8px}.gallery-image-wrapper img{aspect-ratio:3/2;object-fit:cover;border-radius:8px;width:100%;transition:transform .5s cubic-bezier(.25,.8,.25,1);display:block}@media (hover:hover){.gallery-glass-card:hover .gallery-image-wrapper img{transform:scale(1.02)}}.gallery-glass-card.expanded .gallery-image-wrapper img{transform:scale(1.02)}.gallery-info-collapse{grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.25,.8,.25,1);display:grid}.gallery-glass-card.expanded .gallery-info-collapse{grid-template-rows:1fr}.gallery-info-content{opacity:0;min-height:0;transition:opacity .35s cubic-bezier(.25,.8,.25,1),transform .35s cubic-bezier(.25,.8,.25,1);overflow:hidden;transform:translateY(-8px)}.gallery-glass-card.expanded .gallery-info-content{opacity:1;transition-delay:.1s;transform:translateY(0)}.gallery-info-body{text-align:center;padding:14px 10px 8px}.gallery-info-title{font-family:var(--font-heading);color:var(--accent-color);margin-bottom:.4rem;font-size:1.25rem;font-weight:600}.gallery-info-desc{color:var(--text-color);margin:0;font-size:.95rem;line-height:1.55}.quiz-wrapper{max-width:700px;margin:0 auto}.quiz-card{text-align:center}.quiz-result-title{color:var(--primary-color);text-shadow:none;margin-bottom:1.25rem;font-size:clamp(1.8rem,5vw,2.3rem)}.quiz-result-desc{margin-bottom:2rem;font-size:1.05rem;line-height:1.7}.quiz-reset-btn{margin-top:.5rem}.quiz-header-row{justify-content:space-between;align-items:center;gap:.5rem;min-height:32px;margin-bottom:.8rem;display:flex}.quiz-back-btn{border:2px solid var(--accent-color);font-family:var(--font-body);color:var(--text-color);cursor:pointer;transition:var(--transition-smooth);touch-action:manipulation;background:#fff6;border-radius:10px;padding:.35rem .85rem;font-size:.85rem;font-weight:500}@media (hover:hover){.quiz-back-btn:hover:not(:disabled){border-color:var(--accent-color);color:var(--text-color);background:#2234361f}}.quiz-back-btn:active:not(:disabled){transform:scale(.98)}.quiz-back-btn:disabled{opacity:.5;cursor:not-allowed}.quiz-back-spacer{width:78px}.quiz-progress{color:var(--accent-color);margin-bottom:0;font-size:.95rem;font-weight:600}.quiz-question-heading{font-family:var(--font-heading);color:var(--accent-color);margin-bottom:2rem;font-size:clamp(1.3rem,4.5vw,1.75rem);line-height:1.35}.quiz-options-list{flex-direction:column;gap:.85rem;display:flex}.quiz-option-btn{border:2px solid var(--accent-color);width:100%;min-height:48px;color:var(--text-color);font-family:var(--font-body);cursor:pointer;transition:var(--transition-smooth);text-align:left;touch-action:manipulation;background:#fff6;border-radius:10px;padding:1rem 1.25rem;font-size:1rem;line-height:1.4}@media (hover:hover){.quiz-option-btn:hover:not(:disabled){border-color:var(--accent-color);background:#2234361f}}.quiz-option-btn:active{transform:scale(.98)}.quiz-option-btn.selected{background-color:var(--accent-color)!important;color:#fff!important;border-color:var(--accent-color)!important}.rsvp-form{text-align:left;width:100%;max-width:520px;margin:2rem auto 0}@media (width<=768px){.rsvp-form{margin:1.25rem auto 0}}.login-page{background:var(--bg-color);justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.login-card{text-align:center;width:100%;max-width:400px}.login-title{font-family:var(--font-heading);color:var(--primary-color);margin-bottom:.8rem;font-size:clamp(1.8rem,5vw,2.2rem)}.login-subtitle{color:var(--text-color);margin-bottom:1.75rem;font-size:.98rem}.login-form-group{margin-bottom:1rem}.login-input.input-error{border:2px solid #e74c3c}.login-error-msg{color:#c0392b;margin-bottom:1rem;font-size:.9rem}.login-submit-btn{cursor:pointer;touch-action:manipulation;justify-content:center;align-items:center;width:100%;min-height:48px;display:flex}.rsvp-success-card{text-align:center}.rsvp-success-icon{margin-bottom:.6rem;font-size:2.2rem}.rsvp-success-title{color:var(--primary-color);margin-bottom:.6rem}.rsvp-success-text{margin-bottom:1.5rem;line-height:1.6}.rsvp-deadline-note{color:var(--text-color);text-align:center;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.rsvp-conditional-section{animation-duration:.4s}.rsvp-nested-box{background:#3b4b3d0d;border-radius:10px;margin-top:2rem;padding:1rem}.rsvp-partner-box{margin-top:0;margin-bottom:2rem;animation-duration:.3s}.rsvp-box-title{color:var(--primary-color);margin-bottom:.35rem}.rsvp-menu-hint{color:var(--accent-color);opacity:.88;margin-bottom:.9rem;font-size:.86rem;line-height:1.4}.rsvp-select-spaced{margin-bottom:1rem}.rsvp-partner-toggle-group{margin-top:2rem}.rsvp-form-group-last{margin-bottom:0}.rsvp-error-alert{color:#c0392b;text-align:center;background:#e74c3c1f;border-radius:8px;margin-top:1rem;padding:.75rem 1rem;font-size:.92rem}.rsvp-submit-btn{margin-top:1rem}.checker-background-container{z-index:0;pointer-events:none;perspective:1200px;background-color:var(--bg-color);width:100vw;height:100dvh;position:fixed;top:0;left:0;overflow:hidden}.checker-tilted-board{transform-style:preserve-3d}.checker-tile{transform-origin:50%;backface-visibility:hidden;background:linear-gradient(145deg,#24491f 0%,#1a3716 100%);box-shadow:inset 0 0 14px #00000024}.checker-tile.is-visible{opacity:1;will-change:auto;transform:rotateX(0)}.checker-tile.flip-in{opacity:0;will-change:transform, opacity;animation:.65s cubic-bezier(.34,1.45,.64,1) forwards checkerFlipReveal;transform:rotateX(90deg)scale(.92)}.checker-tile.flip-out{opacity:1;will-change:transform, opacity;animation:.58s cubic-bezier(.45,0,.55,1) forwards checkerFlipHide;transform:rotateX(0)scale(1)}@keyframes checkerFlipReveal{0%{opacity:0;transform:rotateX(90deg)scale(.88)}65%{opacity:1;transform:rotateX(-10deg)scale(1.02)}85%{opacity:1;transform:rotateX(4deg)scale(1)}to{opacity:1;transform:rotateX(0)scale(1)}}@keyframes checkerFlipHide{0%{opacity:1;transform:rotateX(0)scale(1)}22%{opacity:1;transform:rotateX(-8deg)scale(1.02)}to{opacity:0;transform:rotateX(90deg)scale(.88)}}.app-container.has-checker-bg main,.app-container.has-checker-bg .panoramic-section,.app-container.has-checker-bg .panoramic-viewport,.app-container.has-checker-bg .panoramic-track,.app-container.has-checker-bg .timeline-container,.app-container.has-checker-bg .story-container{background-color:#0000!important}.app-container.has-checker-bg .card,.app-container.has-checker-bg .gallery-glass-card,.app-container.has-checker-bg .glass-frame{-webkit-backdrop-filter:blur(14px);background:#f4f7f6db;border-color:#ffffffb8;box-shadow:0 12px 32px #12221038}.app-container.has-checker-bg .gallery-glass-card.expanded{background:#f8faf9f0;border-color:#ffffffe0}.app-container.has-checker-bg .quiz-option-btn,.app-container.has-checker-bg .quiz-back-btn,.app-container.has-checker-bg .cta-button,.app-container.has-checker-bg .submit-button,.app-container.has-checker-bg .details-action-btn,.app-container.has-checker-bg input,.app-container.has-checker-bg select,.app-container.has-checker-bg textarea{border-color:var(--accent-color);color:var(--text-color);background-color:#ffffffc7}@media (hover:hover){.app-container.has-checker-bg .quiz-option-btn:hover:not(:disabled),.app-container.has-checker-bg .quiz-back-btn:hover:not(:disabled),.app-container.has-checker-bg .cta-button:hover:not(:disabled),.app-container.has-checker-bg .submit-button:hover:not(:disabled),.app-container.has-checker-bg .details-action-btn:hover:not(:disabled),.app-container.has-checker-bg input:hover:not(:disabled):not(:focus),.app-container.has-checker-bg select:hover:not(:disabled):not(:focus),.app-container.has-checker-bg textarea:hover:not(:disabled):not(:focus){border-color:var(--accent-color);color:var(--text-color);background-color:#d8e1e1eb}}.app-container.has-checker-bg input:focus,.app-container.has-checker-bg select:focus,.app-container.has-checker-bg textarea:focus{border-color:var(--accent-color);background-color:#fffffff2}.app-container.has-checker-bg .panoramic-nav-btn{color:var(--accent-color);background:#f4f7f6e0;border-color:#ffffffc7;box-shadow:0 6px 20px #12221038}.app-container.has-checker-bg .subtitle,.app-container.has-checker-bg .story-subtitle,.app-container.has-checker-bg .story-milestone-year,.app-container.has-checker-bg .story-timeline-card>.story-card-content>h3,.app-container.has-checker-bg .story-portrait-card h3,.app-container.has-checker-bg .story-intro-desktop h3{color:#fff;text-shadow:0 2px 8px #122210a6,0 4px 16px #12221073}.app-container.has-checker-bg .section-lead,.app-container.has-checker-bg #geschenke>.container>p,.app-container.has-checker-bg #quiz>.container>p{color:#fff;text-shadow:0 1px 6px #122210a6,0 3px 12px #12221073}
