:root{--bg-0:#0e0b08;--bg-1:#1b140d;--bg-2:#241a10;--ink:#f3e6cf;--ink-dim:#c9b790;--gold:#d9a441;--gold-bright:#f3c869;--bronze:#8a6238;--crimson:#9a3c30;--patina:#4c7a68;--glass:#241a108c;--glass-border:#d9a44159}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 20% 0%, #d9a4411a, transparent 45%), radial-gradient(circle at 80% 10%, #9a3c301a, transparent 40%), linear-gradient(180deg, var(--bg-0), var(--bg-1) 40%, var(--bg-2));color:var(--ink);min-height:100vh;font-family:Inter,sans-serif;position:relative;overflow-x:hidden}#root{min-height:100vh;position:relative}button{font:inherit}.noise{pointer-events:none;z-index:1;opacity:.04;background-image:radial-gradient(#fff 1px,#0000 1px);background-size:3px 3px;position:fixed;inset:0}.eyebrow{letter-spacing:.35em;text-transform:uppercase;color:var(--gold);font-family:Cinzel,serif;font-size:.68rem}.topbar{z-index:60;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:none;justify-content:space-between;align-items:center;gap:.6rem;padding:.8rem 4vw;transition:background .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s,border-color .3s;display:flex;position:sticky;top:0}.topbar.scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--glass-border);background:#0e0b0899}.brand{align-items:center;gap:.7rem;min-width:0;text-decoration:none;display:flex}.brand-logo{object-fit:contain;filter:drop-shadow(0 2px 8px #0009)drop-shadow(0 0 6px #d9a44159);width:54px;min-width:54px;height:54px}.brand-text{letter-spacing:.05em;color:var(--ink);white-space:nowrap;text-shadow:0 2px 10px #000000b3;font-family:Anton,sans-serif;font-size:1.4rem}.brand-text span{color:var(--gold-bright)}.tab-nav{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-width:none;-ms-overflow-style:none;background:#140f0959;border-radius:999px;flex-shrink:0;gap:.4rem;max-width:60vw;padding:.28rem;display:flex;overflow-x:auto}.tab-nav::-webkit-scrollbar{display:none}.tab-btn{color:var(--ink-dim);letter-spacing:.02em;cursor:pointer;text-shadow:0 1px 4px #00000080;white-space:nowrap;background:0 0;border:none;border-radius:999px;padding:.5rem 1rem;font-family:Inter,sans-serif;font-size:.78rem;font-weight:500;transition:color .3s;position:relative}.tab-btn.active{color:var(--bg-0);background:linear-gradient(135deg, var(--gold-bright), var(--gold));text-shadow:none;box-shadow:0 4px 14px #d9a44159}.tab-btn:not(.active):hover{color:var(--ink)}@media (width<=900px) and (width>=641px){.tab-btn{padding:.42rem .75rem;font-size:.72rem}}.burger{border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;z-index:60;background:#140f0966;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:42px;height:42px;display:none}.burger span{background:var(--ink);border-radius:2px;width:18px;height:2px;transition:transform .3s,opacity .3s;display:block}.burger.open span:first-child{transform:translateY(7px)rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobile-menu{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);opacity:0;pointer-events:none;background:#0a0704e0;justify-content:center;align-items:center;transition:opacity .3s;display:none;position:fixed;inset:0}.mobile-menu.open{opacity:1;pointer-events:auto}.mobile-menu-nav{flex-direction:column;gap:.6rem;width:100%;max-width:340px;padding:0 8vw;display:flex}.mobile-tab-btn{border:1px solid var(--glass-border);color:var(--ink-dim);letter-spacing:.02em;text-transform:uppercase;cursor:pointer;background:#ffffff08;border-radius:14px;padding:1rem 1.3rem;font-family:Anton,sans-serif;font-size:1.2rem;font-weight:400;transition:color .25s,background .25s,border-color .25s}.mobile-tab-btn.active{color:var(--bg-0);background:linear-gradient(135deg, var(--gold-bright), var(--gold));border-color:#0000;box-shadow:0 10px 24px #d9a4414d}.mobile-tab-btn:not(.active):active{color:var(--ink)}.ticker-wrap{white-space:nowrap;z-index:5;background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:999px;margin:0 4vw;position:relative;overflow:hidden}.ticker{letter-spacing:.25em;color:var(--gold);text-transform:uppercase;gap:3rem;padding:.5rem 0;font-family:Cinzel,serif;font-size:.72rem;animation:150s linear infinite scroll;display:inline-flex}.ticker span{opacity:.75}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.hero{text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;min-height:92svh;padding:6vh 5vw 4vh;display:flex;position:relative}.hero-plaque{width:min(58vw,420px);animation:1.2s cubic-bezier(.2,.8,.2,1) both riseIn;position:relative}@keyframes riseIn{0%{opacity:0;transform:translateY(40px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.hero-watch{filter:drop-shadow(0 20px 34px #0000008c)drop-shadow(0 0 26px #d9a4412e);width:100%;animation:6s ease-in-out infinite float;position:relative}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.hero-watch img{width:100%;display:block}.hero-title{letter-spacing:.01em;background:linear-gradient(180deg, var(--ink) 20%, var(--gold-bright) 60%, var(--gold) 100%);color:#0000;text-transform:uppercase;-webkit-background-clip:text;background-clip:text;margin-top:1.4rem;font-family:Anton,sans-serif;font-size:clamp(2.8rem,9vw,6rem);font-weight:400;line-height:.92;animation:1.2s cubic-bezier(.2,.8,.2,1) .15s both riseIn}.hero-title small{letter-spacing:.5em;color:var(--ink-dim);-webkit-text-fill-color:var(--ink-dim);margin-bottom:.3rem;font-family:Cinzel,serif;font-size:.28em;display:block}.hero-sub{color:var(--ink-dim);margin-top:.6rem;font-family:Cormorant Garamond,serif;font-size:1.35rem;font-style:italic;animation:1.2s cubic-bezier(.2,.8,.2,1) .3s both riseIn}.scroll-cue{letter-spacing:.28em;text-transform:uppercase;color:var(--gold);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:.35rem;margin-top:3.2rem;font-family:Inter,sans-serif;font-size:.72rem;animation:1.2s cubic-bezier(.2,.8,.2,1) .45s both riseIn;display:flex}.chevron{font-size:1.1rem;animation:1.6s ease-in-out infinite bob}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.ember{background:var(--gold-bright);opacity:0;pointer-events:none;z-index:1;box-shadow:0 0 8px var(--gold-bright);border-radius:50%;position:fixed;bottom:-10px}.panels-wrap{z-index:2;max-width:1000px;margin:0 auto;padding:6vh 6vw 8vh;scroll-margin-top:6rem;position:relative}.panel{opacity:0;transition:opacity .5s,transform .5s;display:none;transform:translateY(16px)}.panel.active{opacity:1;display:block;transform:translateY(0)}.panel-card{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;padding:2.6rem 2.8rem;box-shadow:0 20px 50px #0006}.panel-card .eyebrow{margin-bottom:.6rem;display:block}.panel-card h2{letter-spacing:.01em;color:var(--ink);text-transform:uppercase;font-family:Anton,sans-serif;font-size:2rem;font-weight:400}.panel-card p{color:var(--ink-dim);max-width:60ch;margin-top:.9rem;font-family:Cormorant Garamond,serif;font-size:1.1rem;line-height:1.75}.btn-gold{cursor:pointer;background:linear-gradient(135deg, var(--gold-bright), var(--gold));color:var(--bg-0);letter-spacing:.02em;border:none;border-radius:999px;align-items:center;gap:.55rem;margin-top:1.5rem;padding:.8rem 1.7rem;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 10px 24px #d9a4414d}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 30px #d9a44166}.btn-gold:active{transform:translateY(0)}.btn-arrow{transition:transform .2s}.btn-gold:hover .btn-arrow{transform:translate(3px)}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;pointer-events:none;background:#080604b8;justify-content:center;align-items:center;padding:6vw;transition:opacity .3s;display:flex;position:fixed;inset:0}.modal-overlay.open{opacity:1;pointer-events:auto}.modal-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);background:linear-gradient(#241a10eb,#140e08eb);border-radius:20px;width:100%;max-width:540px;max-height:82vh;padding:2.4rem 2rem 2rem;transition:transform .3s cubic-bezier(.2,.8,.2,1);position:relative;overflow-y:auto;transform:translateY(24px)scale(.96);box-shadow:0 40px 90px #000000a6}.modal-overlay.open .modal-card{transform:translateY(0)scale(1)}.modal-close{border:1px solid var(--glass-border);width:34px;height:34px;color:var(--ink-dim);cursor:pointer;background:#ffffff0a;border-radius:50%;font-size:.9rem;line-height:1;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:var(--ink);background:#ffffff14}.modal-body .eyebrow{margin-bottom:.5rem;display:block}.modal-body h3{letter-spacing:.01em;text-transform:uppercase;color:var(--ink);margin-bottom:.9rem;font-family:Anton,sans-serif;font-size:1.55rem;font-weight:400}.modal-body p{color:var(--ink-dim);font-family:Cormorant Garamond,serif;font-size:1.1rem;line-height:1.7}.theme-list{margin-top:1rem;list-style:none}.theme-row{border-bottom:1px solid var(--glass-border);align-items:baseline;gap:1rem;padding:.85rem 0;display:flex}.theme-row:last-child{border-bottom:none}.theme-year{color:var(--gold-bright);letter-spacing:.02em;min-width:82px;font-family:Anton,sans-serif;font-size:1rem}.theme-year small{letter-spacing:.04em;color:var(--ink-dim);text-transform:none;margin-top:.15rem;font-family:Inter,sans-serif;font-size:.62rem;font-weight:400;display:block}.theme-name{color:var(--ink);flex-direction:column;gap:.2rem;font-family:Cormorant Garamond,serif;font-size:1.12rem;font-style:italic;display:flex}.theme-accroche{letter-spacing:.06em;text-transform:uppercase;color:var(--gold);font-family:Inter,sans-serif;font-size:.72rem;font-style:normal}.theme-list.compact .theme-row{padding:.6rem 0}.modal-tag{border:1px dashed var(--crimson);color:#e6a297;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;margin-top:1.3rem;padding:.35rem .9rem;font-family:Inter,sans-serif;font-size:.68rem;display:inline-block}.modal-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.5rem;display:flex}.btn-doc{letter-spacing:.02em;cursor:pointer;border:none;border-radius:999px;align-items:center;gap:.55rem;padding:.75rem 1.5rem;font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;text-decoration:none;transition:transform .2s;display:inline-flex}.btn-doc.primary{background:linear-gradient(135deg, var(--gold-bright), var(--gold));color:var(--bg-0);border:none;box-shadow:0 10px 24px #d9a44140}.btn-doc.ghost{border:1px solid var(--glass-border);color:var(--ink-dim);background:#ffffff08}.btn-doc:disabled{cursor:not-allowed;opacity:.55}.btn-doc:not(:disabled):hover{transform:translateY(-2px)}.doc-row{border-bottom:1px solid var(--glass-border);flex-wrap:wrap;align-items:center;gap:.9rem;padding:1.1rem 0;display:flex}.doc-row:last-child{border-bottom:none}.doc-list{margin-top:.4rem}.doc-number{background:linear-gradient(135deg, var(--gold-bright), var(--gold));width:28px;height:28px;color:var(--bg-0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Anton,sans-serif;font-size:.9rem;font-weight:400;display:flex}.doc-row-text{flex-direction:column;flex:180px;gap:.25rem;min-width:0;display:flex}.doc-title{color:var(--ink);font-family:Cormorant Garamond,serif;font-size:1.15rem;font-style:italic}.doc-desc{color:var(--ink-dim);font-family:Inter,sans-serif;font-size:.78rem;line-height:1.4}.modal-photo{border:1px solid var(--glass-border);border-radius:12px;margin:1rem 0;overflow:hidden;box-shadow:0 14px 34px #0006}.modal-photo img{object-fit:cover;width:100%;height:auto;display:block}.modal-photo.small{max-height:180px;margin:.8rem 0 0}.modal-photo.small img{object-fit:cover;max-height:180px}.carousel{margin:1rem 0 1.6rem;position:relative}.carousel-track{scroll-snap-type:x mandatory;border:1px solid var(--glass-border);scrollbar-width:none;-ms-overflow-style:none;border-radius:12px;display:flex;overflow-x:auto;box-shadow:0 14px 34px #0006}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{scroll-snap-align:center;aspect-ratio:4/3;flex:0 0 100%}.carousel-slide img{object-fit:cover;width:100%;height:100%;display:block}.carousel-arrow{z-index:2;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:34px;height:34px;color:var(--ink);cursor:pointer;background:#0e0b08a6;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:opacity .2s,background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow:hover{background:#0e0b08d9}.carousel-arrow:disabled{opacity:.25;cursor:default}.carousel-arrow.prev{left:.5rem}.carousel-arrow.next{right:.5rem}.carousel-dots{justify-content:center;gap:.4rem;margin-top:.7rem;display:flex}.carousel-dot{cursor:pointer;background:#d9a4414d;border:none;border-radius:50%;width:7px;height:7px;padding:0;transition:background .2s,transform .2s}.carousel-dot.active{background:var(--gold-bright);transform:scale(1.3)}.carousel-hint{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);opacity:.7;margin-top:.5rem;font-family:Inter,sans-serif;font-size:.68rem;display:block}@media (hover:hover){.carousel-arrow{display:flex}}@media (hover:none){.carousel-arrow{display:none}}.scroll-hint{text-align:center;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-bright);margin-top:.6rem;font-family:Inter,sans-serif;font-size:.72rem;font-weight:600;animation:1.6s ease-in-out infinite scroll-hint-bounce;display:block}@keyframes scroll-hint-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.inscription-box{border:1px solid var(--glass-border);background:#d9a44114;border-radius:14px;margin:1.1rem 0 1.4rem;padding:1.3rem 1.4rem}.inscription-deadline{color:var(--ink);margin-bottom:.9rem;font-family:Inter,sans-serif;font-size:.92rem;line-height:1.5}.inscription-deadline strong{color:var(--gold-bright)}.inscription-list{flex-direction:column;gap:.55rem;list-style:none;display:flex}.inscription-list li{color:var(--ink-dim);padding-left:1.3rem;font-family:Cormorant Garamond,serif;font-size:1.05rem;line-height:1.5;position:relative}.inscription-list li:before{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.inscription-warning{letter-spacing:.02em;color:#e6a297;margin-top:1rem;font-family:Inter,sans-serif;font-size:.78rem}.timeline{flex-direction:column;gap:2rem;margin-top:1.4rem;display:flex}.timeline-day-head{border-bottom:1px solid var(--glass-border);flex-wrap:wrap;align-items:baseline;gap:.7rem;margin-bottom:.9rem;padding-bottom:.6rem;display:flex}.timeline-day-title{letter-spacing:.01em;text-transform:uppercase;color:var(--gold-bright);font-family:Anton,sans-serif;font-size:1.25rem;font-weight:400}.timeline-day-sub{color:var(--ink-dim);font-family:Cormorant Garamond,serif;font-size:.95rem;font-style:italic}.timeline-list{flex-direction:column;gap:.65rem;list-style:none;display:flex}.timeline-item{color:var(--ink-dim);padding-left:1.2rem;font-family:Cormorant Garamond,serif;font-size:1.05rem;line-height:1.55;position:relative}.timeline-item:before{content:"";background:var(--bronze);border-radius:50%;width:5px;height:5px;position:absolute;top:.6em;left:0}.timeline-item.highlight{border:1px solid var(--glass-border);background:#d9a44112;border-radius:12px;margin:.15rem 0;padding:.9rem 1rem .95rem 1.1rem}.timeline-item.highlight:before{display:none}.timeline-item-titre{letter-spacing:.02em;text-transform:uppercase;color:var(--gold);margin-bottom:.35rem;font-family:Anton,sans-serif;font-size:.98rem;font-weight:400;display:block}.timeline-item.highlight p{color:var(--ink-dim);margin:0;font-family:Cormorant Garamond,serif;font-size:1.02rem;line-height:1.6}.soiree-block{border-top:1px solid var(--glass-border);margin-top:1.6rem;padding-top:1.6rem}.soiree-block:first-of-type{border-top:none;margin-top:1.2rem;padding-top:0}.soiree-tag{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:1px solid var(--glass-border);background:#d9a4411a;border-radius:999px;margin-bottom:.6rem;padding:.3rem .8rem;font-family:Inter,sans-serif;font-size:.68rem;display:inline-block}.soiree-block h4{letter-spacing:.01em;text-transform:uppercase;color:var(--ink);margin-bottom:.7rem;font-family:Anton,sans-serif;font-size:1.3rem;font-weight:400}.soiree-note{color:var(--ink-dim);margin-top:.8rem;font-family:Inter,sans-serif;font-size:.85rem;font-style:italic;line-height:1.6}.repas-block{border-top:1px solid var(--glass-border);margin-top:1.8rem;padding-top:1.6rem}.lieu-adresse{font-style:italic;color:var(--gold-bright)!important}.about-atman{text-align:center;z-index:2;padding:6vh 6vw 8vh;position:relative}.about-card{background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);opacity:0;border-radius:20px;max-width:640px;margin:0 auto;padding:2.6rem 2.4rem;transition:opacity .8s,transform .8s;transform:translateY(24px);box-shadow:0 20px 50px #00000059}.about-card.in-view{opacity:1;transform:translateY(0)}.about-atman h2{letter-spacing:.01em;text-transform:uppercase;color:var(--ink);font-family:Anton,sans-serif;font-size:1.9rem;font-weight:400}.about-atman .eyebrow{margin-bottom:.6rem;display:block}.about-atman p{max-width:60ch;color:var(--ink-dim);margin:1rem auto 0;font-family:Cormorant Garamond,serif;font-size:1.15rem;line-height:1.75}.about-photo{max-width:300px;margin:1.6rem auto 0}.about-photo img{border-radius:16px;width:100%;height:auto;display:block;box-shadow:0 16px 40px #00000073}.about-logo{opacity:.9;filter:drop-shadow(0 0 10px #d9a44166)drop-shadow(0 0 1px #0000004d);width:110px;margin:1.8rem auto 0}footer{text-align:center;z-index:2;background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);letter-spacing:.12em;color:var(--ink-dim);border-radius:20px;margin:0 4vw 4vw;padding:1.6rem 6vw;font-family:Inter,sans-serif;font-size:.75rem;position:relative}footer span{color:var(--gold-bright)}.credit{letter-spacing:.08em;color:var(--gold-bright);opacity:.3;margin-top:.5rem;font-size:.6rem;text-decoration:none;transition:opacity .3s;display:block}.credit:hover,.credit:focus-visible{opacity:.75}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (width<=640px){.topbar{padding:.7rem 3vw}.tab-nav{display:none}.burger,.mobile-menu{display:flex}.panel-card{padding:1.8rem 1.4rem}.doc-row{flex-direction:column;align-items:flex-start}.doc-row-text{flex:0 auto}.doc-row .modal-actions{width:100%}.doc-row .btn-doc{text-align:center;flex:1;justify-content:center}.about-card{padding:2rem 1.4rem}.modal-card{padding:2rem 1.4rem 1.6rem}.brand-logo{width:40px;min-width:40px;height:40px}.brand-text{font-size:1.05rem}.hero-plaque{width:70vw}.ticker-wrap{margin:0 3vw}footer{margin:0 3vw 3vw;padding:1.3rem 4vw}}@media (width<=380px){.tab-btn{padding:.42rem .55rem;font-size:.62rem}.brand-text{font-size:.9rem}.brand-logo{width:34px;min-width:34px;height:34px}}
