:root{--black:#0a0a0a;--white:#fff;--accent:#b5452a;--accent-light:#d4654a;--gray-100:#f5f5f4;--gray-200:#e7e5e4;--gray-400:#a8a29e;--gray-600:#57534e;--gray-800:#292524;--font-display:"Bebas Neue",sans-serif;--font-serif:"Cormorant Garamond",serif;--font-body:"Montserrat",sans-serif;--max-width:1280px;--section-py:clamp(5rem,9vw,8.5rem);--section-py-sm:clamp(4rem,6.5vw,6.5rem);--section-px:3rem}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes lineExpand{0%{width:0}to{width:60px}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes scrollHint{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.5;transform:translateY(8px)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{width:0;height:0;display:none}body::-webkit-scrollbar{width:0;height:0;display:none}html{scroll-behavior:smooth;height:100%}body{font-family:var(--font-body);background:var(--white);color:var(--black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;height:auto}.about-container,.chateau-container,.menu-container,.events-container,.contact-container{opacity:0;transition:opacity .9s cubic-bezier(.25,.46,.45,.94),transform .9s cubic-bezier(.25,.46,.45,.94);transform:translateY(40px)}.revealed{opacity:1!important;transform:translateY(0)!important}.section-label{font-family:var(--font-body);letter-spacing:4px;color:var(--accent);text-transform:uppercase;margin-bottom:1rem;font-size:.7rem;font-weight:600;display:inline-block}.section-title{font-family:var(--font-serif);color:var(--black);margin-bottom:2rem;font-size:clamp(2rem,4vw,3.2rem);font-weight:400;line-height:1.15}.section-title-large{font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;color:var(--black);margin-bottom:1rem;font-size:clamp(3rem,7vw,6rem);font-weight:400;line-height:1}.btn-primary{background:var(--black);color:var(--white);font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;border:2px solid var(--black);padding:.9rem 2.5rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary:hover{color:var(--black);background:0 0}.image-placeholder{background:var(--gray-200);color:var(--gray-400);font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;justify-content:center;align-items:center;font-size:.75rem;font-weight:500;display:flex}.image-placeholder.tall{aspect-ratio:3/4;width:100%}.image-placeholder.wide{width:100%;height:100%;position:absolute;inset:0}.site-navbar{z-index:1000;background:linear-gradient(#0a0a0a99 0%,#0a0a0a40 55%,#0000 100%);padding:1.35rem 3rem;transition:background .4s,padding .4s;position:fixed;top:0;left:0;right:0}.site-navbar.scrolled{-webkit-backdrop-filter:blur(20px);background:#0a0a0af2;padding:.85rem 3rem}.navbar-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.navbar-logo{cursor:pointer;z-index:1001;flex-shrink:0;transition:opacity .3s}.navbar-logo:hover{opacity:.8}.navbar-logo img{width:auto;height:62px;display:block}.navbar-links{align-items:center;gap:2rem;display:flex}.nav-link{color:var(--white);letter-spacing:2px;text-transform:uppercase;background:0 0;border:none;padding:.5rem 0;font-size:.72rem;font-weight:500;transition:opacity .3s;position:relative}.nav-link:after{content:"";background:var(--white);width:0;height:1px;transition:width .3s;position:absolute;bottom:0;left:0}.nav-link:hover:after{width:100%}.nav-link:hover{opacity:.8}.navbar-right{z-index:1001;align-items:center;gap:1.5rem;display:flex}.lang-switcher{gap:.15rem;display:flex}.lang-btn{color:#ffffff73;font-family:var(--font-body);letter-spacing:1px;background:0 0;border:none;padding:.3rem .4rem;font-size:.6rem;font-weight:600;transition:color .3s}.lang-btn:hover,.lang-btn.active{color:var(--white)}.nav-reserve{background:var(--accent);color:var(--white);letter-spacing:2px;text-transform:uppercase;border:none;padding:.6rem 1.5rem;font-size:.65rem;font-weight:600;transition:background .3s}.nav-reserve:hover{background:var(--accent-light)}.mobile-toggle{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;gap:5px;padding:5px;display:none}.mobile-toggle span{background:var(--white);width:24px;height:2px;transition:all .3s;display:block}.mobile-toggle.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.mobile-toggle.open span:nth-child(2){opacity:0}.mobile-toggle.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-nav-extras{display:none}.hero-section{justify-content:center;align-items:center;height:100vh;min-height:600px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:-1;width:100vw;height:100vh;position:fixed;top:0;left:0}.hero-bg .hero-placeholder{background:linear-gradient(135deg,var(--gray-800),var(--black));width:100%;height:100%;color:var(--gray-600);letter-spacing:3px;text-transform:uppercase;justify-content:center;align-items:center;font-size:.8rem;font-weight:500;display:flex}.hero-bg .hero-video{object-fit:cover;background:linear-gradient(135deg,var(--gray-800),var(--black));width:100%;height:100%;display:block}.hero-overlay{background:linear-gradient(#0a0a0a8c 0%,#0a0a0a59 35%,#0a0a0a8c 70%,#0a0a0acc 100%);position:absolute;inset:0}.hero-content{z-index:1;text-align:center;opacity:0;padding:2rem;transition:opacity 1s .3s,transform 1s .3s;position:relative;transform:translateY(30px)}.hero-content.loaded{opacity:1;transform:translateY(0)}.hero-title{flex-direction:column;align-items:center;margin-bottom:1.5rem;display:flex}.hero-line{font-family:var(--font-display);text-transform:uppercase;color:var(--white);font-weight:400;line-height:.95}.hero-line-1{letter-spacing:6px;font-size:clamp(3.5rem,10vw,8rem)}.hero-line-2{letter-spacing:6px;color:var(--accent);font-size:clamp(3.5rem,10vw,8rem)}.hero-subtitle{font-family:var(--font-serif);color:#fffc;letter-spacing:1px;font-size:clamp(1rem,2vw,1.4rem);font-style:italic;font-weight:400}.hero-reviews{color:#fff;font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid #ffffff59;align-items:center;gap:.65rem;margin-top:1.75rem;padding-bottom:.4rem;font-size:.66rem;font-weight:600;transition:border-color .3s;display:inline-flex}.hero-reviews:hover{border-color:#fff}.hero-reviews-stars{color:#e6b45a;letter-spacing:1px;font-size:.78rem}.hero-scroll-hint{color:#fff6;margin-top:3rem;animation:2s ease-in-out infinite scrollHint}.about-section{padding:var(--section-py)var(--section-px);background:var(--white)}.about-container{max-width:var(--max-width);grid-template-columns:5fr 6fr;align-items:center;gap:5rem;margin:0 auto;display:grid}.about-image-col{overflow:hidden}.about-photo{aspect-ratio:3/4;object-fit:cover;width:100%;transition:transform .9s cubic-bezier(.22,1,.36,1);display:block}.about-image-col:hover .about-photo{transform:scale(1.04)}@media (prefers-reduced-motion:reduce){.about-photo{transition:none}.about-image-col:hover .about-photo{transform:none}}.about-text-col p{color:var(--gray-600);margin-bottom:1rem;font-size:.95rem;line-height:1.9}.bigtext-section{background:linear-gradient(160deg,#1c1611,#0a0a0a);justify-content:center;align-items:center;height:80vh;min-height:500px;display:flex;position:relative;overflow:hidden}.bigtext-bg{position:absolute;inset:0}.bigtext-overlay{background:#0a0a0a66;position:absolute;inset:0}.bigtext-content{z-index:1;flex-direction:column;align-items:center;gap:0;display:flex;position:relative}.bigtext-word{font-family:var(--font-display);letter-spacing:8px;color:var(--white);text-transform:uppercase;white-space:nowrap;font-size:clamp(5rem,14vw,12rem);line-height:.9}.bigtext-outline{-webkit-text-stroke:2px var(--white);color:#0000}.bigtext-band{z-index:0;pointer-events:none;flex-direction:column;justify-content:center;gap:clamp(.2rem,1.2vh,1.2rem);display:flex;position:absolute;inset:0;overflow:hidden}.bigtext-band-row{--dir:1;transform:translate3d(calc((var(--scroll,.5) - .5)*16vw*var(--dir)),0,0);will-change:transform}.bigtext-band-row:nth-child(2n){--dir:-1}.bigtext-band-track{width:max-content;animation:220s linear infinite bigtext-band-scroll;display:flex}.bigtext-band-row:nth-child(2n) .bigtext-band-track{animation-direction:reverse}.bigtext-band-row:first-child .bigtext-band-track{animation-duration:240s}.bigtext-band-row:nth-child(2) .bigtext-band-track{animation-duration:200s}.bigtext-band-row:nth-child(3) .bigtext-band-track{animation-duration:270s}.bigtext-band-row:nth-child(4) .bigtext-band-track{animation-duration:190s}.bigtext-band-row:nth-child(5) .bigtext-band-track{animation-duration:230s}.bigtext-band-track span{font-family:var(--font-display);letter-spacing:6px;text-transform:uppercase;white-space:nowrap;color:#0000;-webkit-text-stroke:1.5px #ffffff2e;padding-right:.25em;font-size:clamp(3.25rem,9vw,9rem);line-height:1.08;display:block}@keyframes bigtext-band-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.bigtext-band-track{animation:none}.bigtext-band-row{transform:none}}.marquee-section{background:var(--black);border-top:1px solid var(--gray-800);border-bottom:1px solid var(--gray-800);padding:.9rem 0;overflow:hidden}.marquee-track{width:max-content;animation:40s linear infinite marquee;display:flex}.marquee-content{font-family:var(--font-body);letter-spacing:4px;color:var(--gray-400);white-space:nowrap;text-transform:uppercase;font-size:.7rem;font-weight:500}.chateau-section{padding:var(--section-py)var(--section-px);background:var(--gray-100)}.chateau-container{max-width:var(--max-width);grid-template-columns:6fr 5fr;align-items:center;gap:5rem;margin:0 auto;display:grid}.chateau-text-col p{color:var(--gray-600);margin-bottom:1rem;font-size:.95rem;line-height:1.9}.chateau-image-col{overflow:hidden}.chateau-photo,.chateau-video{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.menu-section{padding:var(--section-py)var(--section-px);background:var(--white)}.menu-container{max-width:900px;margin:0 auto}.menu-header{text-align:center;margin-bottom:3rem}.menu-tabs{border-bottom:1px solid var(--gray-200);flex-wrap:wrap;justify-content:center;gap:.35rem .5rem;margin-bottom:3rem;padding-bottom:1.25rem;display:flex}.menu-tab{font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.5rem 1rem;font-size:.7rem;font-weight:600;transition:color .3s cubic-bezier(.22,1,.36,1),background .3s cubic-bezier(.22,1,.36,1),transform .3s cubic-bezier(.22,1,.36,1);position:relative}.menu-tab:hover{color:var(--black)}.menu-tab:active{transform:scale(.95)}.menu-tab.active{color:var(--accent);background:var(--gray-100)}.menu-category-subtitle{font-family:var(--font-serif);color:var(--gray-400);text-align:center;margin-bottom:2.5rem;font-size:.95rem;font-style:italic}.menu-group{margin-bottom:3.5rem}.menu-group:last-child{margin-bottom:0}.menu-group-title{font-family:var(--font-body);letter-spacing:2px;text-transform:uppercase;color:var(--accent);text-align:left;align-items:center;gap:1.25rem;margin-bottom:1.75rem;font-size:.7rem;font-weight:600;display:flex}.menu-group-title:after{content:"";background:var(--gray-200);flex:1;height:1px}.menu-group-note{font-family:var(--font-serif);color:var(--gray-400);text-align:left;margin-bottom:0;font-size:.95rem;font-style:italic}.menu-group-note+.menu-items{margin-top:1.5rem}.menu-items{grid-template-columns:repeat(2,1fr);gap:0 3.5rem;display:grid}.menu-item{border-bottom:1px solid var(--gray-200);padding:1.1rem 0}.menu-item:last-child,.menu-item:nth-last-child(2):nth-child(odd){border-bottom:none}.menu-item-top{align-items:baseline;gap:.5rem;margin-bottom:.35rem;display:flex}.menu-item-name{font-family:var(--font-serif);color:var(--black);flex-shrink:0;font-size:1.2rem;font-weight:500}.menu-item-dots{border-bottom:1px dotted var(--gray-200);flex:1;min-width:20px;margin-bottom:4px}.menu-item-price{font-family:var(--font-body);color:var(--gray-600);flex-shrink:0;font-size:.85rem;font-weight:500}.menu-item-desc{color:var(--gray-400);font-size:.8rem;line-height:1.6}.menu-category-subtitle,.menu-group-title,.menu-group-note,.menu-item{animation:.55s cubic-bezier(.22,1,.36,1) both menu-stagger-in;animation-delay:calc(var(--si,0)*32ms)}@keyframes menu-stagger-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.menu-category-subtitle,.menu-group-title,.menu-group-note,.menu-item{animation:none}}.events-section{padding:var(--section-py-sm)var(--section-px);background:var(--gray-100)}.events-container{max-width:var(--max-width);grid-template-columns:5fr 6fr;align-items:center;gap:5rem;margin:0 auto;display:grid}.events-text-col p{color:var(--gray-600);margin-bottom:1rem;font-size:.95rem;line-height:1.9}.events-text-col .btn-primary{margin-top:1rem}.events-image-col{overflow:hidden}.events-photo{aspect-ratio:3/4;object-fit:cover;width:100%;transition:transform .9s cubic-bezier(.22,1,.36,1);display:block}.events-image-col:hover .events-photo{transform:scale(1.04)}@media (prefers-reduced-motion:reduce){.events-photo{transition:none}.events-image-col:hover .events-photo{transform:none}}.contact-section{padding:var(--section-py-sm)var(--section-px);background:var(--white)}.contact-container{max-width:var(--max-width);grid-template-columns:1fr 1fr;align-items:start;gap:4rem;margin:0 auto;display:grid}.contact-details{flex-direction:column;gap:1.75rem;margin:2rem 0;display:flex}.contact-detail{align-items:flex-start;gap:1rem;display:flex}.contact-detail svg{color:var(--accent);flex-shrink:0;margin-top:3px}.contact-detail div{flex-direction:column;gap:.2rem;display:flex}.contact-detail strong{color:var(--black);font-size:.95rem;font-weight:500}.contact-detail span,.contact-detail a{color:var(--gray-600);font-size:.85rem;transition:color .3s}.contact-detail a:hover{color:var(--accent)}.contact-info-col .btn-primary{margin-top:.5rem}.contact-map-col{background:var(--gray-200);height:450px;overflow:hidden}.contact-map-col iframe{width:100%;height:100%}.site-footer{background:var(--black);color:var(--white)}.footer-inner{max-width:var(--max-width);grid-template-columns:2fr 2fr 2fr 1fr;gap:3rem;margin:0 auto;padding:4rem 3rem;display:grid}.footer-brand-col img{margin-bottom:1.5rem}.footer-social{gap:.75rem;display:flex}.social-icon{color:#fff9;border:1px solid #ffffff26;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.social-icon:hover{background:var(--accent);border-color:var(--accent);color:var(--white)}.footer-col h4{font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;color:var(--white);margin-bottom:1.25rem;font-size:1rem}.footer-col p{color:#ffffff80;font-size:.8rem;line-height:1.9}.footer-col a{color:#ffffff80;transition:color .3s}.footer-col a:hover{color:var(--accent)}.footer-lang-col{justify-content:flex-end;align-items:flex-start;display:flex}.footer-lang-switcher{gap:.2rem;display:flex}.footer-lang-switcher .lang-btn{color:#fff6}.footer-lang-switcher .lang-btn:hover{color:var(--white)}.footer-lang-switcher .lang-btn.active{color:var(--accent)}.footer-bottom{max-width:var(--max-width);border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;margin:0 auto;padding:1.5rem 3rem;display:flex}.footer-bottom p{color:#ffffff4d;font-size:.7rem}.footer-credit a{color:var(--accent);transition:opacity .3s}.footer-credit a:hover{opacity:.7}.footer-credit{flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.footer-weblio{align-items:center;line-height:0;text-decoration:none;transition:opacity .2s;display:inline-flex}.footer-weblio:hover{opacity:.8}.footer-weblio svg,.footer-weblio img{vertical-align:-.15em;width:auto;height:1em;display:inline-block}.footer-sep{color:#fff3;margin:0 .15rem}.footer-admin-link{letter-spacing:.05em;text-decoration:none;color:#ffffff4d!important}.footer-admin-link:hover{color:var(--accent)!important;opacity:1!important}.full-site{overflow-x:hidden}.coming-soon-page{background:url(/pizzeria-optimized.jpg) 100%/cover no-repeat;width:100vw;height:100vh;position:relative;overflow:hidden}.coming-soon-page:before{content:"";background:inherit;background-size:inherit;z-index:0;animation:1.5s ease-out forwards scaleIn;position:absolute;inset:0}.coming-soon-page .hero-overlay{z-index:1;background:linear-gradient(90deg,#0a0a0afa 0%,#0a0a0af2 30%,#0a0a0ab3 50%,#0a0a0a33 70%,#0000 100%);animation:1s ease-out forwards fadeIn;position:absolute;inset:0}.animate-item{opacity:0;transform:translateY(30px)}.coming-soon-page.loaded .animate-item{animation:.8s ease-out forwards fadeInUp}.coming-soon-page.loaded .animate-item.delay-1{animation-delay:.2s}.coming-soon-page.loaded .animate-item.delay-2{animation-delay:.4s}.coming-soon-page.loaded .animate-item.delay-3{animation-delay:.6s}.coming-soon-page.loaded .animate-item.delay-4{animation-delay:.8s}.cs-jobs{border-top:1px solid #ffffff1f;flex-direction:column;align-items:center;gap:.85rem;margin-top:2.5rem;padding-top:2rem;display:flex}.cs-jobs-label{font-family:var(--font-display);letter-spacing:.35em;text-transform:uppercase;color:var(--accent-light);font-size:.75rem}.cs-jobs-link{font-family:var(--font-body);letter-spacing:.05em;color:#ffffffeb;border:1px solid #ffffff4d;align-items:center;gap:.6rem;padding:.75rem 1.5rem;font-size:.9rem;text-decoration:none;transition:all .25s;display:inline-flex}.cs-jobs-link:hover{background:var(--accent);border-color:var(--accent);color:var(--white);transform:translateY(-1px)}.cs-jobs-link svg{transition:transform .25s}.cs-jobs-link:hover svg{transform:translate(3px)}.coming-soon-page .content-wrapper{z-index:2;align-items:center;width:50%;height:100vh;padding:0 5% 0 8%;display:flex;position:relative}.content-inner{width:100%;max-width:500px}.logo-section{margin-bottom:3rem}.logo-section img{max-width:100%;height:auto}.main-content{margin-bottom:2.5rem}.coming-soon-label{letter-spacing:4px;color:#c9a227;margin-bottom:1rem;font-size:.75rem;font-weight:500;display:inline-block;position:relative}.coming-soon-label:after{content:"";background:#c9a227;width:0;height:1px;position:absolute;top:50%;left:calc(100% + 15px)}.coming-soon-page.loaded .coming-soon-label:after{animation:.6s ease-out .6s forwards lineExpand}.main-headline{color:#fff;margin-bottom:1rem;font-family:Cormorant Garamond,serif;font-size:clamp(2.5rem,4vw,3.5rem);font-weight:400;line-height:1.2}.sub-headline{color:#fff9;letter-spacing:.5px;font-size:1rem;font-weight:300}.coming-soon-page .opening-box{background:#c9a22714;border-left:3px solid #c9a227;align-items:center;gap:1rem;margin-bottom:2rem;padding:1.25rem 1.5rem;transition:all .3s;display:flex}.coming-soon-page .opening-box:hover{background:#c9a2271f;transform:translate(5px)}.opening-icon{flex-shrink:0}.opening-icon svg{color:#c9a227;width:28px;height:28px;animation:2s ease-in-out infinite pulse}.opening-text{flex-direction:column;gap:.2rem;display:flex}.coming-soon-page .opening-label{letter-spacing:2px;text-transform:uppercase;color:#ffffff80;font-size:.7rem;font-weight:500}.coming-soon-page .opening-date{color:#fff;letter-spacing:1px;font-family:Cormorant Garamond,serif;font-size:1.4rem;font-weight:500}.coming-soon-page .location-info{color:#ffffff80;letter-spacing:.5px;align-items:center;gap:.75rem;margin-bottom:2rem;font-size:.85rem;transition:color .3s;display:flex}.coming-soon-page .location-info:hover{color:#fffc}.coming-soon-page .location-info svg{flex-shrink:0;width:18px;height:18px;transition:color .3s}.coming-soon-page .location-info:hover svg{color:#c9a227}.admin-access{z-index:100;position:fixed;bottom:24px;right:24px}.lock-button{color:#ffffff4d;cursor:pointer;background:#0a0a0ae6;border:1px solid #ffffff1a;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.lock-button:hover{color:#c9a227;border-color:#c9a227}.admin-form{background:#0a0a0af2;border:1px solid #ffffff1a;align-items:center;display:flex}.admin-input{color:#fff;letter-spacing:1px;background:0 0;border:none;width:140px;padding:12px 14px;font-family:Montserrat,sans-serif;font-size:.8rem}.admin-input::placeholder{color:#ffffff4d}.admin-input:focus{outline:none}.admin-submit{color:#c9a227;cursor:pointer;background:0 0;border:none;border-left:1px solid #ffffff1a;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.admin-submit:hover{color:#0a0a0a;background:#c9a227}.admin-close{color:#fff6;cursor:pointer;background:0 0;border:none;border-left:1px solid #ffffff1a;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.admin-close:hover{color:#fff}.admin-error{color:#c9a227;font-size:.7rem;position:absolute;bottom:-22px;left:0}@media (max-width:1024px){.coming-soon-page .content-wrapper{width:60%}}@media (max-width:768px){.coming-soon-page{background:url(/pizzeria-optimized.jpg) 50%/cover no-repeat;min-height:100dvh}.coming-soon-page:before{display:none}.coming-soon-page .hero-overlay{background:linear-gradient(#000000bf 0%,#0009 40%,#00000080 100%)}.coming-soon-page .content-wrapper{width:100%;min-height:100dvh;padding:2rem;padding-top:calc(2rem + env(safe-area-inset-top,0));padding-bottom:calc(2rem + env(safe-area-inset-bottom,0));justify-content:center;align-items:center;display:flex}.coming-soon-page .content-inner{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:340px;display:flex}.coming-soon-page .logo-section{margin-bottom:2.5rem}.coming-soon-page .logo-section img{filter:drop-shadow(0 4px 20px #00000080);max-width:180px;height:auto}.coming-soon-page .main-content{margin-bottom:2rem}.coming-soon-page .coming-soon-label{letter-spacing:3px;text-shadow:0 2px 10px #00000080;margin-bottom:.75rem;font-size:.7rem}.coming-soon-page .coming-soon-label:after{display:none}.coming-soon-page .main-headline{text-shadow:0 2px 20px #0009;margin-bottom:.75rem;font-size:1.75rem;line-height:1.3}.coming-soon-page .sub-headline{color:#ffffffd9;text-shadow:0 1px 10px #00000080;font-size:.85rem}.coming-soon-page .opening-box{-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #ffffff26;border-left:3px solid #c9a227;border-radius:12px;width:100%;max-width:260px;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.coming-soon-page .opening-box:hover{background:#ffffff1a;transform:none}.coming-soon-page .opening-icon svg{width:24px;height:24px}.coming-soon-page .opening-text{text-align:left;align-items:flex-start}.coming-soon-page .opening-label{letter-spacing:1.5px;color:#ffffffb3;font-size:.6rem}.coming-soon-page .opening-date{font-size:1.2rem}.coming-soon-page .location-info{color:#ffffffb3;text-shadow:0 1px 5px #00000080;justify-content:center;gap:.5rem;margin-bottom:0;font-size:.75rem}.coming-soon-page .location-info svg{color:#c9a227;width:14px;height:14px}.admin-access{bottom:calc(16px + env(safe-area-inset-bottom,0));right:16px}.lock-button{-webkit-backdrop-filter:blur(10px);background:#00000080;border-color:#ffffff1a;border-radius:50%;width:36px;height:36px}.admin-form{-webkit-backdrop-filter:blur(10px);background:#000000b3;border-radius:20px;overflow:hidden}.admin-input{width:120px;padding:10px 14px;font-size:.75rem}.admin-submit,.admin-close{width:36px;height:36px}}@media (max-width:380px){.coming-soon-page .content-wrapper{padding:1.5rem}.coming-soon-page .content-inner{max-width:300px}.coming-soon-page .logo-section{margin-bottom:2rem}.coming-soon-page .logo-section img{max-width:150px}.coming-soon-page .main-headline{font-size:1.5rem}.coming-soon-page .sub-headline{font-size:.8rem}.coming-soon-page .opening-box{max-width:240px;padding:1rem 1.25rem}.coming-soon-page .opening-icon svg{width:20px;height:20px}.coming-soon-page .opening-date{font-size:1.1rem}.coming-soon-page .location-info{font-size:.7rem}}@media (max-height:500px) and (orientation:landscape){.coming-soon-page .content-wrapper{padding:1rem 2rem}.coming-soon-page .content-inner{flex-flow:wrap;justify-content:center;align-items:center;gap:1.5rem;max-width:100%}.coming-soon-page .logo-section{margin-bottom:0}.coming-soon-page .logo-section img{max-width:100px}.coming-soon-page .main-content{text-align:left;flex:1;min-width:200px;margin-bottom:0}.coming-soon-page .main-headline{margin-bottom:.3rem;font-size:1.2rem}.coming-soon-page .sub-headline{font-size:.7rem}.coming-soon-page .opening-box{width:auto;max-width:none;margin-bottom:0;padding:.75rem 1rem}.coming-soon-page .opening-date{font-size:1rem}.coming-soon-page .location-info{width:100%;margin-top:.5rem}}@media (max-width:1024px){.site-navbar{padding:1rem 2rem}.site-navbar.scrolled{padding:.75rem 2rem}.about-container,.chateau-container,.events-container{gap:3rem}.footer-inner{grid-template-columns:1fr 1fr;gap:2rem}}@media (max-width:768px){.site-navbar{-webkit-backdrop-filter:blur(20px);background:#0a0a0af2;padding:.75rem 1.5rem}.navbar-logo img{width:auto;height:52px}.navbar-links{z-index:999;background:#0a0a0afa;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;display:none;position:fixed;inset:0}.navbar-links.open{display:flex}.nav-link{letter-spacing:3px;font-size:1rem}.mobile-nav-extras{border-top:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:1.5rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.mobile-lang{gap:.25rem;display:flex}.nav-reserve-mobile{background:var(--accent);color:var(--white);letter-spacing:2px;text-transform:uppercase;border:none;padding:.8rem 2rem;font-size:.75rem;font-weight:600}.mobile-toggle{z-index:1001;display:flex}.navbar-right .lang-switcher,.navbar-right .nav-reserve{display:none}.hero-section{min-height:100dvh}.hero-line-1,.hero-line-2{font-size:clamp(2.5rem,12vw,4rem)}.hero-subtitle{font-size:.9rem}.about-section{padding:5rem 1.5rem}.about-container{grid-template-columns:1fr;gap:2.5rem}.bigtext-section{height:50vh;min-height:350px}.bigtext-word{letter-spacing:4px;font-size:clamp(3rem,15vw,6rem)}.chateau-section{padding:5rem 1.5rem}.chateau-container{grid-template-columns:1fr;gap:2.5rem}.menu-section{padding:5rem 1.5rem}.menu-tabs{gap:.3rem}.menu-tab{padding:.4rem .75rem;font-size:.6rem}.menu-items{grid-template-columns:1fr;column-gap:0}.menu-item:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--gray-200)}.menu-item:last-child{border-bottom:none}.section-title-large{font-size:clamp(2.5rem,10vw,4rem)}.events-section{padding:5rem 1.5rem}.events-container{grid-template-columns:1fr;gap:2.5rem}.contact-section{padding:5rem 1.5rem}.contact-container{grid-template-columns:1fr;gap:2rem}.contact-map-col{height:300px}.footer-inner{grid-template-columns:1fr;gap:2rem;padding:3rem 1.5rem}.footer-lang-col{justify-content:flex-start}.footer-bottom{text-align:center;flex-direction:column;gap:.5rem;padding:1.5rem}}@media (max-width:480px){.hero-line-1,.hero-line-2{font-size:clamp(2rem,12vw,3rem)}.menu-tab{padding:.3rem .4rem;font-size:.55rem}}.creations-section{background:linear-gradient(#faf8f5 0%,#f4eee5 100%);padding:8rem 2rem 9rem;position:relative;overflow:hidden}.creations-decor{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.creations-decor-text{font-family:var(--font-display);color:#b5452a0d;letter-spacing:.05em;-webkit-user-select:none;user-select:none;white-space:nowrap;font-size:clamp(10rem,25vw,22rem);line-height:1}.creations-container{z-index:1;max-width:var(--max-width);margin:0 auto;position:relative}.creations-header{text-align:center;max-width:680px;margin:0 auto 5rem}.creations-eyebrow{font-family:var(--font-display);letter-spacing:.35em;color:var(--accent);border:1px solid var(--accent);text-transform:uppercase;margin-bottom:1.75rem;padding:.5rem 1rem;font-size:.8rem;display:inline-block}.creations-title{font-family:var(--font-serif);color:var(--black);letter-spacing:-.01em;margin-bottom:1.5rem;font-size:clamp(2.5rem,5vw,4rem);font-weight:500;line-height:1.05}.creations-intro{font-family:var(--font-serif);color:var(--gray-600);font-size:1.2rem;font-style:italic;line-height:1.6}.creation-feature{background:var(--white);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0;margin-bottom:5rem;display:grid;position:relative;box-shadow:0 30px 80px #00000014}.creation-feature:before{content:"";pointer-events:none;z-index:-1;border:1px solid #b5452a26;position:absolute;inset:-1rem}.creation-feature-visual{background:radial-gradient(circle at 30% 30%,#d4654af2,#b5452a 70%),var(--accent);flex-direction:column;justify-content:space-between;min-height:480px;padding:3rem;display:flex;position:relative;overflow:hidden}.creation-feature-visual:after{content:"";pointer-events:none;border:1px solid #ffffff14;border-radius:50%;width:600px;height:600px;position:absolute;bottom:-250px;right:-250px}.creation-feature-mark{color:var(--white);font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;z-index:1;align-items:center;gap:1rem;font-size:.85rem;display:flex;position:relative}.creation-feature-divider{background:#ffffff80;width:30px;height:1px}.creation-feature-stamp{text-align:center;width:130px;height:130px;font-family:var(--font-display);color:#ffffffe6;letter-spacing:.2em;z-index:1;border:2px solid #fff6;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;font-size:1.1rem;line-height:1.2;display:flex;position:relative;transform:rotate(-12deg)}.creation-feature-text{flex-direction:column;padding:3.5rem 3rem;display:flex}.creation-feature-title{font-family:var(--font-serif);color:var(--black);letter-spacing:-.01em;margin-bottom:.75rem;font-size:clamp(2rem,3.5vw,3rem);font-weight:500;line-height:1.05}.creation-feature-subtitle{font-family:var(--font-serif);color:var(--accent);margin-bottom:1.75rem;font-size:1.15rem;font-style:italic}.creation-feature-desc{font-family:var(--font-body);color:var(--gray-800);margin-bottom:2rem;font-size:1.02rem;line-height:1.7}.creation-feature-info{border-top:1px solid var(--gray-200);flex-direction:column;gap:.85rem;margin-bottom:2.5rem;padding-top:1.75rem;display:flex}.creation-feature-info>div{grid-template-columns:130px 1fr;align-items:baseline;gap:1rem;display:grid}.creation-feature-info dt{font-family:var(--font-display);letter-spacing:.2em;color:var(--gray-600);text-transform:uppercase;font-size:.7rem}.creation-feature-info dd{font-family:var(--font-body);color:var(--black);font-size:.93rem;line-height:1.5}.creation-feature-footer{border-top:1px solid var(--gray-200);justify-content:space-between;align-items:center;gap:1.5rem;margin-top:auto;padding-top:1.5rem;display:flex}.creation-feature-price{flex-direction:column;gap:.25rem;display:flex}.creation-feature-price-label{font-family:var(--font-display);letter-spacing:.25em;color:var(--gray-600);text-transform:uppercase;font-size:.65rem}.creation-feature-price-amount{font-family:var(--font-serif);color:var(--accent);font-size:2.25rem;font-weight:500;line-height:1}.creation-feature-cta{flex-shrink:0}.creation-others-title{font-family:var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--gray-600);border-bottom:1px solid var(--gray-200);margin-bottom:1.75rem;padding-bottom:.75rem;font-size:.85rem}.creation-others-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0;list-style:none;display:grid}.creation-mini{border-bottom:1px solid var(--gray-200);grid-template-columns:80px 1fr auto;align-items:start;gap:1.5rem;padding:1.75rem 0;display:grid}.creation-mini-month{font-family:var(--font-display);letter-spacing:.25em;color:var(--accent);padding-top:.4rem;font-size:.75rem}.creation-mini-title{font-family:var(--font-serif);color:var(--black);margin-bottom:.25rem;font-size:1.35rem;font-weight:500}.creation-mini-subtitle{font-family:var(--font-serif);color:var(--gray-600);margin-bottom:.6rem;font-size:.95rem;font-style:italic}.creation-mini-desc{font-family:var(--font-body);color:var(--gray-800);font-size:.9rem;line-height:1.55}.creation-mini-ingredients{font-family:var(--font-body);color:var(--gray-600);margin-top:.65rem;font-size:.78rem;line-height:1.5}.creation-mini-ingredients span{font-family:var(--font-display);letter-spacing:.15em;color:var(--accent);margin-right:.4rem;font-size:.7rem}.creation-mini-price{font-family:var(--font-serif);color:var(--accent);padding-top:.2rem;font-size:1.4rem}.jobs-page{background:var(--gray-100);min-height:100vh}.jobs-pagebar{background:var(--black);color:var(--white);z-index:40;justify-content:space-between;align-items:center;gap:2rem;padding:1rem 2rem;display:flex;position:sticky;top:0}.jobs-pagebar-brand{display:inline-flex}.jobs-pagebar-brand img{width:auto;height:40px}.jobs-pagebar-nav{gap:1.5rem;display:flex}.jobs-pagebar-nav a{color:#ffffffb3;font-family:var(--font-body);letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;text-decoration:none;transition:color .2s}.jobs-pagebar-nav a:hover{color:var(--accent-light)}@media (max-width:640px){.jobs-pagebar{padding:.75rem 1rem}.jobs-pagebar-nav{gap:1rem;font-size:.7rem}.jobs-pagebar-brand img{height:32px}}.careers-hero-section{background:var(--black);justify-content:center;align-items:center;height:75vh;min-height:520px;display:flex;position:relative;overflow:hidden}.careers-hero-bg{z-index:0;position:absolute;inset:0}.careers-hero-bg img{object-fit:cover;width:100%;height:100%;display:block}.careers-hero-overlay{background:linear-gradient(#0a0a0a4d 0%,#0a0a0aa6 100%),#0a0a0a40;position:absolute;inset:0}.careers-hero-content{z-index:1;text-align:center;opacity:0;max-width:1100px;padding:2rem;transition:opacity .9s .2s,transform .9s .2s;position:relative;transform:translateY(30px)}.careers-hero-content.loaded{opacity:1;transform:translateY(0)}.careers-hero-eyebrow{font-family:var(--font-display);letter-spacing:.35em;color:var(--accent-light);text-transform:uppercase;margin-bottom:1.5rem;font-size:.85rem;display:inline-block}.careers-hero-title{flex-direction:column;align-items:center;margin-bottom:1.75rem;display:flex}.careers-hero-subtitle{font-family:var(--font-serif);color:#ffffffd9;letter-spacing:.04em;margin-bottom:2.5rem;font-size:clamp(1rem,2vw,1.4rem);font-style:italic}.careers-hero-cta{background:var(--accent);color:var(--white);font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;border:none;align-items:center;gap:.65rem;padding:1rem 2rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .25s,transform .25s;display:inline-flex}.careers-hero-cta:hover{background:var(--accent-light);transform:translateY(-1px)}.careers-hero-cta svg{transition:transform .25s}.careers-hero-cta:hover svg{transform:translateY(2px)}.careers-intro{background:var(--white);padding:6rem 2rem}.careers-intro-inner{text-align:center;max-width:820px;margin:0 auto}.careers-intro-title{font-family:var(--font-serif);color:var(--black);letter-spacing:-.01em;margin:1rem 0 1.5rem;font-size:clamp(1.75rem,4vw,2.75rem);font-weight:500;line-height:1.15}.careers-intro-text{font-family:var(--font-body);color:var(--gray-800);font-size:1rem;line-height:1.75}.careers-empty{text-align:center;max-width:640px;margin:0 auto;padding:3rem 0}.careers-empty h3{font-family:var(--font-serif);color:var(--black);margin:1rem 0;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:500}.careers-empty p{font-family:var(--font-body);color:var(--gray-800);font-size:.95rem;line-height:1.65}.careers-empty a{color:var(--accent)}.careers-board{background:var(--gray-100);padding:5rem 2rem 7rem}.careers-board-header{text-align:center;max-width:820px;margin:0 auto 3rem}.careers-board-title{font-family:var(--font-serif);color:var(--black);margin-top:.75rem;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:500}.careers-filters{max-width:var(--max-width);flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 auto 3rem;display:flex}.careers-filter{background:var(--white);border:1px solid var(--gray-200);color:var(--gray-800);font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;align-items:center;gap:.5rem;padding:.7rem 1.25rem;font-size:.75rem;font-weight:600;transition:all .2s;display:inline-flex}.careers-filter:hover{border-color:var(--accent);color:var(--accent)}.careers-filter.active{background:var(--black);border-color:var(--black);color:var(--white)}.careers-filter-count{background:#00000014;border-radius:999px;padding:.05rem .45rem;font-size:.7rem}.careers-filter.active .careers-filter-count{background:#ffffff2e}.careers-list{max-width:var(--max-width);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin:0 auto;padding:0;list-style:none;display:grid}.career-card{background:var(--white);border:1px solid var(--gray-200);flex-direction:column;gap:.85rem;padding:1.75rem;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative}.career-card:before{content:"";background:var(--accent);width:4px;height:0;transition:height .3s;position:absolute;top:0;left:0}.career-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 16px 40px #00000014}.career-card:hover:before{height:100%}.career-card-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.career-card-type{background:var(--accent);color:var(--white);font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;padding:.35rem .7rem;font-size:.65rem;font-weight:700}.career-card-hours{font-family:var(--font-body);letter-spacing:.15em;text-transform:uppercase;color:var(--gray-600);font-size:.7rem;font-weight:600}.career-card-title{font-family:var(--font-serif);color:var(--black);font-size:1.55rem;font-weight:500;line-height:1.15}.career-card-meta{font-family:var(--font-body);color:var(--gray-600);flex-wrap:wrap;gap:.4rem .85rem;font-size:.8rem;display:flex}.career-card-meta span:not(:last-child):after{content:"·";color:var(--gray-400);margin-left:.85rem}.career-card-summary{font-family:var(--font-body);color:var(--gray-800);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:.88rem;line-height:1.6;display:-webkit-box;overflow:hidden}.career-card-actions{border-top:1px solid var(--gray-200);margin-top:auto;padding-top:1rem}.career-card-cta{letter-spacing:.2em;padding:.75rem 1.4rem;font-size:.72rem;display:inline-block}@media (max-width:768px){.careers-hero-section{height:65vh;min-height:420px}.careers-intro{padding:4rem 1.25rem}.careers-board{padding:3rem 1rem 5rem}}.job-detail-loading,.job-detail-empty{text-align:center;max-width:720px;font-family:var(--font-body);color:var(--gray-600);margin:4rem auto;padding:2rem 1.5rem}.job-detail-empty h2{font-family:var(--font-serif);color:var(--black);margin-bottom:1rem;font-size:2rem}.job-detail-empty .btn-primary{margin-top:1.5rem;display:inline-block}.job-detail{background:var(--white);max-width:920px;font-family:var(--font-body);margin:0 auto;padding:0 1.5rem 4rem}.job-detail-back{padding:1.5rem 0 .5rem}.job-detail-back a{color:var(--accent);letter-spacing:.02em;align-items:center;gap:.4rem;font-size:.9rem;text-decoration:none;display:inline-flex}.job-detail-back a:hover{text-decoration:underline}.job-detail-hero{margin:1rem -1.5rem 2.5rem}.job-detail-hero img{aspect-ratio:16/8;object-fit:cover;width:100%;height:auto;display:block}.job-detail-main{color:var(--gray-800)}.job-detail-title{font-family:var(--font-serif);color:var(--accent);letter-spacing:-.01em;margin-bottom:1.5rem;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500;line-height:1.15}.job-detail-title span{color:var(--accent);font-weight:400}.job-detail-meta{grid-template-columns:max-content 1fr;gap:.45rem 1rem;margin-bottom:2rem;font-size:.92rem;display:grid}.job-detail-meta dt{color:var(--black);font-weight:700}.job-detail-meta dd{color:var(--gray-800)}.job-detail-intro{margin-bottom:2rem}.job-detail-intro p{color:var(--gray-800);margin-bottom:.75rem;font-size:.98rem;line-height:1.65}.job-detail-section{margin-bottom:2rem}.job-detail-section h2{font-family:var(--font-body);color:var(--black);letter-spacing:0;margin-bottom:.85rem;font-size:1.15rem;font-weight:700}.job-detail-section ul{margin:0;padding-left:1.5rem;list-style:outside}.job-detail-section li{color:var(--gray-800);margin-bottom:.35rem;font-size:.95rem;line-height:1.55}.job-detail-section p{color:var(--gray-800);font-size:.98rem;line-height:1.65}.job-detail-signature{margin:2.5rem 0 1.5rem}.job-detail-signature h2{font-family:var(--font-body);color:var(--black);margin-bottom:.5rem;font-size:1.15rem;font-weight:700}.job-detail-signature p{color:var(--gray-800);font-size:.95rem}.job-detail-about{border-top:1px solid var(--gray-200);margin:2rem 0 2.5rem;padding-top:1.5rem}.job-detail-about h3{font-family:var(--font-body);color:var(--black);margin-bottom:.6rem;font-size:1rem;font-weight:700}.job-detail-about p{color:var(--gray-800);font-size:.92rem;line-height:1.6}.job-detail-apply{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2.5rem;padding-top:1rem;display:flex}.apply-btn{font-family:var(--font-body);letter-spacing:.02em;cursor:pointer;text-align:center;border:1px solid #0000;justify-content:center;align-items:center;min-width:200px;padding:.85rem 1.6rem;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.apply-btn-primary{background:var(--accent);color:var(--white)}.apply-btn-primary:hover{background:var(--accent-light)}.apply-btn-secondary{background:var(--accent);color:var(--white)}.apply-btn-secondary:hover{background:var(--accent-light)}.apply-btn-ghost{color:var(--gray-800);border-color:var(--gray-200);background:0 0}.apply-btn-ghost:hover{background:var(--gray-100);border-color:var(--gray-400)}@media (max-width:640px){.job-detail{padding:0 1rem 3rem}.job-detail-hero{margin:.5rem -1rem 2rem}.job-detail-hero img{aspect-ratio:4/3}.job-detail-meta{font-size:.85rem}.apply-btn{width:100%;min-width:0}}@media (max-width:900px){.creations-section{padding:5rem 1.25rem 6rem}.creation-feature{grid-template-columns:1fr}.creation-feature-visual{min-height:280px;padding:2rem}.creation-feature-stamp{width:100px;height:100px;font-size:.9rem}.creation-feature-text{padding:2rem 1.5rem}.creation-feature-info>div{grid-template-columns:1fr;gap:.15rem}.creation-feature-footer{flex-direction:column;align-items:stretch;gap:1.25rem}.creation-mini{grid-template-columns:1fr;gap:.4rem}.creation-mini-price{font-size:1.2rem}.careers-hero{padding:5rem 1.25rem 3rem}.careers-stats{gap:2rem;margin-top:2rem;padding-top:2rem}.careers-stat-num{font-size:2rem}.careers-board{padding:3rem 1.25rem 5rem}.job-modal-overlay{padding:0}.job-modal{min-height:100vh}.job-modal-header{padding:4rem 1.5rem 2rem}.job-modal-body{grid-template-columns:1fr}.job-modal-meta{border-right:none;border-bottom:1px solid var(--gray-200);padding:1.75rem 1.5rem}.job-modal-content{padding:1.75rem 1.5rem 2rem}}.admin-shell{background:var(--gray-100);min-height:100vh;font-family:var(--font-body);color:var(--black)}.admin-banner{font-family:var(--font-body);border-left:4px solid;justify-content:space-between;align-items:center;gap:1rem;margin:0 0 1.25rem;padding:.85rem 1.25rem;font-size:.9rem;animation:.25s fadeIn;display:flex}.admin-banner-success{color:#065f46;background:#ecfdf5;border-color:#10b981}.admin-banner-error{color:#991b1b;background:#fef2f2;border-color:#ef4444}.admin-banner-close{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;padding:0 .25rem;font-size:1.5rem;line-height:1}.admin-banner-close:hover{opacity:1}.admin-loading{height:100vh;color:var(--gray-600);letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.85rem;display:flex}.admin-login-shell{background:var(--black);justify-content:center;align-items:center;padding:2rem;display:flex}.admin-login-card{background:var(--white);flex-direction:column;gap:1rem;width:100%;max-width:380px;padding:3rem 2.5rem;display:flex;box-shadow:0 20px 60px #0006}.admin-login-title{font-family:var(--font-display);letter-spacing:.25em;text-align:center;text-transform:uppercase;font-size:1.5rem}.admin-login-sub{font-family:var(--font-serif);text-align:center;color:var(--gray-600);margin-bottom:1rem;font-size:.95rem;font-style:italic}.admin-login-error{color:var(--accent);text-align:center;letter-spacing:.05em;font-size:.8rem}.admin-topbar{background:var(--black);color:var(--white);z-index:50;align-items:center;gap:2rem;padding:1rem 2rem;display:flex;position:sticky;top:0}.admin-brand{align-items:center;gap:.75rem;display:flex}.admin-brand-mark{font-family:var(--font-display);letter-spacing:.2em;background:var(--accent);color:var(--white);padding:.35rem .7rem;font-size:1.1rem}.admin-brand-text{font-family:var(--font-display);letter-spacing:.25em;text-transform:uppercase;font-size:.95rem}.admin-tabs{gap:.25rem;margin-left:1rem;display:flex}.admin-tab{color:var(--gray-400);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:.6rem 1rem;font-size:.8rem;transition:color .2s,border-color .2s}.admin-tab:hover{color:var(--white)}.admin-tab.active{color:var(--white);border-bottom-color:var(--accent)}.admin-logout{color:var(--white);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #fff3;margin-left:auto;padding:.5rem 1rem;font-size:.75rem;transition:border-color .2s,background .2s}.admin-logout:hover{border-color:var(--accent);background:var(--accent)}.admin-main{max-width:1400px;margin:0 auto;padding:2.5rem 2rem}.admin-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;gap:1.5rem;display:grid}.admin-card{background:var(--white);border:1px solid var(--gray-200);padding:2rem}.admin-card-title{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:.75rem;margin-bottom:.5rem;font-size:1rem;display:flex}.admin-card-hint{font-family:var(--font-body);color:var(--gray-600);margin-bottom:1.5rem;font-size:.85rem;line-height:1.5}.admin-card-action{margin-left:auto;padding:.35rem .7rem!important;font-size:.7rem!important}.admin-item-active{background:#b5452a0a;border-color:var(--accent)!important}.admin-count{background:var(--gray-200);color:var(--gray-800);letter-spacing:.05em;padding:.15rem .55rem;font-size:.75rem}.admin-form-stack{flex-direction:column;gap:1rem;display:flex}.admin-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.admin-label{letter-spacing:.15em;text-transform:uppercase;color:var(--gray-600);flex-direction:column;gap:.4rem;font-size:.7rem;font-weight:600;display:flex}.admin-field{font-family:var(--font-body);border:1px solid var(--gray-200);background:var(--white);color:var(--black);border-radius:0;width:100%;padding:.7rem .9rem;font-size:.95rem;transition:border-color .2s}.admin-field:focus{border-color:var(--accent);outline:none}.admin-textarea{resize:vertical;min-height:130px;font-family:var(--font-body);line-height:1.5}.admin-checkbox{font-family:var(--font-body);color:var(--gray-800);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.6rem;font-size:.85rem;display:flex}.admin-template-picker{border-left:3px solid var(--accent);background:linear-gradient(#fff5f0 0%,#fff 100%);margin-bottom:.5rem;padding:.85rem 1rem}.admin-template-picker select.admin-field{background:var(--white)}.admin-template-picker:after{content:"Le modèle pré-remplit tous les champs ci-dessous. Vous pouvez ensuite éditer librement.";font-family:var(--font-body);color:var(--gray-600);letter-spacing:0;text-transform:none;margin-top:.5rem;font-size:.78rem;font-style:italic;font-weight:400;display:block}.admin-checkbox input{width:18px;height:18px;accent-color:var(--accent)}.admin-btn{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border:none;justify-content:center;align-items:center;padding:.85rem 1.4rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-primary{background:var(--black);color:var(--white)}.admin-btn-primary:hover:not(:disabled){background:var(--accent)}.admin-btn-secondary{background:var(--accent);color:var(--white);padding:.5rem .9rem}.admin-btn-secondary:hover{background:var(--accent-light)}.admin-btn-ghost{color:var(--gray-600);border:1px solid var(--gray-200);background:0 0;padding:.5rem .9rem}.admin-btn-ghost:hover{color:var(--white);background:var(--accent);border-color:var(--accent)}.admin-btn-danger{background:#c0392b}.admin-btn-danger:hover:not(:disabled){background:#a93022}.admin-confirm-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0a0a0a8c;justify-content:center;align-items:center;padding:1.5rem;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.admin-confirm{background:var(--white);border-left:4px solid var(--accent);width:100%;max-width:460px;padding:2rem;animation:.2s scaleIn;box-shadow:0 30px 80px #00000040}.admin-confirm-title{font-family:var(--font-serif);color:var(--black);margin-bottom:.6rem;font-size:1.4rem;font-weight:500}.admin-confirm-message{font-family:var(--font-body);color:var(--gray-800);margin-bottom:1.5rem;font-size:.92rem;line-height:1.55}.admin-confirm-actions{justify-content:flex-end;gap:.75rem;display:flex}.admin-confirm-actions .admin-btn{padding:.7rem 1.2rem}.admin-empty{color:var(--gray-400);font-style:italic;font-family:var(--font-serif);font-size:1rem}.admin-list{flex-direction:column;gap:.75rem;list-style:none;display:flex}.admin-item{border:1px solid var(--gray-200);padding:1.25rem 1.5rem;transition:border-color .2s}.admin-item:hover{border-color:var(--accent)}.admin-item-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.admin-item-actions{flex-shrink:0;gap:.5rem;display:flex}.admin-item-title{font-family:var(--font-serif);flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.4rem;font-size:1.25rem;font-weight:500;display:flex}.admin-pill{background:var(--accent);color:var(--white);font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;padding:.2rem .5rem;font-size:.6rem;font-weight:700}.admin-item-meta{letter-spacing:.1em;text-transform:uppercase;color:var(--gray-600);flex-wrap:wrap;gap:.5rem;font-size:.7rem;display:flex}.admin-item-meta span{background:var(--gray-100);padding:.25rem .55rem}.admin-item-sub{font-family:var(--font-serif);color:var(--accent);margin-bottom:.5rem;font-size:.95rem;font-style:italic}.admin-item-body{font-family:var(--font-body);color:var(--gray-800);white-space:pre-wrap;font-size:.9rem;line-height:1.6}@media (max-width:900px){.admin-grid{grid-template-columns:1fr}.admin-topbar{flex-wrap:wrap;gap:.75rem;padding:1rem}.admin-tabs{order:3;width:100%;margin-left:0}.admin-logout{margin-left:auto}.admin-main{padding:1.5rem 1rem}.admin-row{grid-template-columns:1fr}}.resa-root{flex-direction:column;gap:1.25rem;display:flex}.resa-subtabs{border-bottom:1px solid var(--gray-200);flex-wrap:wrap;gap:.4rem;display:flex}.resa-subtab{cursor:pointer;font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--gray-600);background:0 0;border:none;border-bottom:3px solid #0000;padding:.7rem 1.1rem;font-size:.78rem;transition:color .2s,border-color .2s}.resa-subtab:hover{color:var(--black)}.resa-subtab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.resa-toolbar{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:1rem;display:flex}.resa-toolbar .admin-field{width:auto;min-width:140px}.resa-inline{letter-spacing:.12em;text-transform:uppercase;color:var(--gray-600);flex-direction:column;gap:.3rem;font-size:.68rem;font-weight:600;display:flex}.resa-legend{color:var(--gray-600);flex-wrap:wrap;align-items:center;gap:.4rem;margin-left:auto;font-size:.72rem;display:flex}.resa-dot{border-radius:50%;width:12px;height:12px;margin-left:.6rem;display:inline-block}.resa-dot-free{background:#16a34a}.resa-dot-reserved{background:#f59e0b}.resa-dot-occupied{background:#dc2626}.resa-zonetabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.resa-zonetab{background:var(--white);border:1px solid var(--gray-200);cursor:pointer;font-family:var(--font-body);letter-spacing:.08em;color:var(--gray-800);padding:.55rem 1.1rem;font-size:.8rem;transition:background .15s,color .15s,border-color .15s}.resa-zonetab:hover{border-color:var(--accent)}.resa-zonetab.active{background:var(--black);color:var(--white);border-color:var(--black)}.resa-plan-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:1.25rem;display:grid}.resa-floor{border:1px solid var(--gray-200);touch-action:pan-x pan-y;background-color:#fafaf9;background-image:linear-gradient(#0000000a 1px,#0000 1px),linear-gradient(90deg,#0000000a 1px,#0000 1px);background-size:40px 40px;width:100%;min-height:560px;position:relative;overflow:auto}.resa-floor-drop{outline:2px dashed var(--accent);outline-offset:-2px}.resa-save-pulse{box-shadow:0 0 0 3px #b5452a40}.resa-floor-empty{color:var(--gray-400);font-family:var(--font-serif);text-align:center;justify-content:center;align-items:center;padding:2rem;font-style:italic;display:flex;position:absolute;inset:0}.resa-table{box-sizing:border-box;border:2px solid var(--gray-400);background:var(--white);font-family:var(--font-body);-webkit-user-select:none;user-select:none;touch-action:none;flex-direction:column;justify-content:center;align-items:center;transition:box-shadow .15s,border-color .15s,background .15s;display:flex;position:absolute;box-shadow:0 1px 3px #00000014}.resa-table-round{border-radius:50%}.resa-table-rect{border-radius:6px}.resa-table-edit{cursor:grab}.resa-table-edit:active{cursor:grabbing}.resa-table-label{color:var(--black);font-size:.85rem;font-weight:700}.resa-table-seats{color:var(--gray-600);font-size:.65rem}.resa-table-free{background:#f0fdf4;border-color:#16a34a}.resa-table-reserved{background:#fde68a;border-width:3px;border-color:#d97706;box-shadow:0 1px 3px #00000014,0 0 0 1px #d9770626}.resa-table-occupied{background:#fca5a5;border-width:3px;border-color:#dc2626;box-shadow:0 1px 3px #00000014,0 0 0 1px #dc262633}.resa-table-selected{box-shadow:0 0 0 3px var(--accent);border-color:var(--accent)}.resa-table-off{opacity:.4;border-style:dashed}.resa-decor{box-sizing:border-box;border:2px dashed var(--gray-400);color:var(--gray-600);-webkit-user-select:none;user-select:none;touch-action:none;font-family:var(--font-body);text-align:center;background:#78716c14;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;padding:.2rem;display:flex;position:absolute;overflow:hidden}.resa-decor-icon{font-size:1.35rem;line-height:1}.resa-decor-label{letter-spacing:.05em;text-transform:uppercase;color:var(--gray-600);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.62rem;font-weight:600;overflow:hidden}.resa-decor-selected{box-shadow:0 0 0 3px var(--accent);border-color:var(--accent)}.resa-decor-bar{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem;display:flex}.resa-decor-bar-label{letter-spacing:.1em;text-transform:uppercase;color:var(--gray-600);margin-right:.2rem;font-size:.7rem;font-weight:600}.resa-side{position:sticky;top:90px}.resa-card{background:var(--white);border:1px solid var(--gray-200);flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.resa-card-head{justify-content:space-between;align-items:center;display:flex}.resa-card-head h3{font-family:var(--font-serif);font-size:1.25rem;font-weight:500}.resa-card-title{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;font-size:.95rem}.resa-x{cursor:pointer;color:var(--gray-400);background:0 0;border:none;padding:0 .3rem;font-size:1.4rem;line-height:1}.resa-x:hover{color:var(--accent)}.resa-muted{color:var(--gray-600);font-size:.82rem;line-height:1.5}.resa-hint{color:var(--gray-400);text-transform:none;letter-spacing:0;font-size:.68rem;font-weight:400}.resa-mini-list{flex-direction:column;gap:.6rem;list-style:none;display:flex}.resa-mini-list li{border:1px solid var(--gray-200);justify-content:space-between;align-items:center;gap:.6rem;padding:.6rem .75rem;font-size:.85rem;display:flex}.resa-mini-actions{flex-wrap:wrap;gap:.4rem;display:flex}.resa-mini-actions .admin-btn{padding:.4rem .7rem;font-size:.65rem}.resa-chip-list{flex-direction:column;gap:.5rem;list-style:none;display:flex}.resa-chip{border:1px solid var(--gray-200);background:var(--white);cursor:grab;touch-action:none;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .75rem;font-size:.85rem;display:flex}.resa-chip:active{cursor:grabbing;border-color:var(--accent)}.resa-chip-static{cursor:default;touch-action:auto}.resa-chip-info{flex-direction:column;gap:.25rem;min-width:0;display:flex}.resa-covers{color:var(--gray-800);background:var(--gray-100);border-left:3px solid var(--accent);margin-bottom:.6rem;padding:.4rem .6rem;font-size:.85rem}a.resa-note-chip{cursor:pointer;text-decoration:none}a.resa-note-chip:hover{border-color:var(--accent);color:var(--accent)}.resa-chip-note{flex-wrap:wrap;gap:.3rem;margin-top:.15rem;display:flex}.resa-note-chip{color:var(--gray-800);background:var(--gray-100);border:1px solid var(--gray-200);text-overflow:ellipsis;white-space:nowrap;border-radius:3px;max-width:100%;padding:.1rem .45rem;font-size:.72rem;overflow:hidden}.resa-chip-sub{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.resa-btn-danger{color:#b91c1c}.resa-btn-danger:hover{color:#b91c1c;background:#fef2f2;border-color:#b91c1c}.resa-chip-meta{background:var(--gray-100);color:var(--gray-600);margin-left:.5rem;padding:.1rem .45rem;font-size:.7rem}.resa-chip .admin-btn{padding:.35rem .65rem;font-size:.62rem}.resa-drag-ghost{z-index:300;pointer-events:none;background:var(--black);color:var(--white);font-size:.8rem;font-family:var(--font-body);border-radius:4px;padding:.4rem .7rem;position:fixed;box-shadow:0 8px 24px #0000004d}.resa-place-hint{border-left:3px solid var(--accent);background:#fff5f0;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.7rem 1rem;font-size:.85rem;display:flex}.resa-place-hint .admin-btn{margin-left:auto;padding:.35rem .7rem;font-size:.65rem}.resa-seats-short{color:#b91c1c}.resa-status{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;vertical-align:middle;margin-left:.5rem;padding:.15rem .5rem;font-size:.6rem;font-weight:700;display:inline-block}.resa-status-pending{color:#854d0e;background:#fef9c3}.resa-status-confirmed{color:#166534;background:#dcfce7}.resa-status-seated{color:#1e40af;background:#dbeafe}.resa-status-finished{background:var(--gray-200);color:var(--gray-600)}.resa-status-no_show{color:#991b1b;background:#fee2e2}.resa-status-cancelled{color:#a8a29e;background:#f5f5f4;text-decoration:line-through}.resa-times{flex-wrap:wrap;gap:.4rem;display:flex}.resa-time-chip{border:1px solid var(--gray-200);background:var(--white);cursor:pointer;font-size:.8rem;font-family:var(--font-body);padding:.4rem .7rem}.resa-time-chip:hover{border-color:var(--accent)}.resa-time-chip.active{background:var(--accent);color:var(--white);border-color:var(--accent)}.resa-row-actions{flex-wrap:wrap;gap:.4rem;margin-top:.6rem;display:flex}.resa-tiny{background:var(--white);border:1px solid var(--gray-200);cursor:pointer;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-800);font-size:.68rem;font-family:var(--font-body);padding:.35rem .7rem}.resa-tiny:hover{border-color:var(--accent);color:var(--accent)}.resa-tiny-danger:hover{color:#c0392b;border-color:#c0392b}.resa-item-dim{opacity:.55}.resa-salle{flex-direction:column;display:flex}.resa-stack{flex-direction:column;gap:1.5rem;display:flex}.resa-hours{flex-direction:column;gap:.6rem;display:flex}.resa-hours-day{border-bottom:1px dashed var(--gray-200);grid-template-columns:120px 1fr;align-items:start;gap:.75rem;padding-bottom:.6rem;display:grid}.resa-hours-name{letter-spacing:.1em;text-transform:uppercase;color:var(--gray-800);padding-top:.5rem;font-size:.75rem;font-weight:600}.resa-hours-windows{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.resa-takeaway-row{border-top:1px dashed var(--gray-200);flex-wrap:wrap;flex-basis:100%;align-items:center;gap:.5rem;margin-top:.4rem;padding-top:.5rem;display:flex}.resa-takeaway-label{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-size:.68rem;font-weight:700}.resa-window{align-items:center;gap:.4rem;display:flex}.resa-window .admin-field{width:auto;padding:.4rem .5rem}@media (max-width:820px){.resa-plan-grid{grid-template-columns:1fr}.resa-side{position:static}}@media (max-width:640px){.resa-hours-day{grid-template-columns:1fr}.resa-legend{width:100%;margin-left:0}}@media (min-width:821px){.resa-app{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.resa-app .admin-topbar{flex:none;padding:.45rem 1rem}.resa-app .admin-main{flex:auto;width:100%;max-width:100%;min-height:0;margin:0;padding:.55rem .85rem;display:flex}.resa-app .resa-root{flex:auto;gap:.55rem;width:100%;min-height:0}.resa-app .resa-subtabs{flex:none;margin-bottom:0}.resa-app .resa-view{flex:auto;min-height:0;overflow:auto}.resa-app .admin-field{padding:.5rem .6rem;font-size:.9rem}.resa-app .admin-btn{padding:.55rem .95rem}.resa-app .resa-subtab{padding:.5rem .9rem}.resa-app .resa-toolbar{gap:.5rem;margin-bottom:.5rem}.resa-app .resa-zonetabs{margin-bottom:.5rem}.resa-app .resa-card{padding:.9rem}.resa-app .admin-card{padding:1rem}.resa-app .admin-card-title{margin-bottom:.4rem;font-size:.9rem}.resa-app .admin-card-hint{margin-bottom:.8rem}.resa-app .resa-plan,.resa-app .resa-salle{flex-direction:column;height:100%;min-height:0;display:flex}.resa-app .resa-plan-grid{flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 300px;gap:.85rem;min-height:0}.resa-app .resa-plan-canvas{flex-direction:column;height:100%;min-height:0;display:flex}.resa-app .resa-floor{height:100%;min-height:0}.resa-app .resa-plan-canvas .resa-floor{flex:auto;height:auto}.resa-app .resa-side{max-height:100%;position:static;overflow-y:auto}.resa-app .admin-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;gap:.85rem;height:100%;min-height:0}.resa-app .admin-grid>.admin-card{max-height:100%;overflow-y:auto}}.resv-wrap{background:var(--gray-100);justify-content:center;min-height:72vh;padding:3.5rem 1.25rem;display:flex}.resv-card{background:var(--white);border-top:4px solid var(--accent);width:100%;max-width:560px;padding:2.75rem 2.5rem;position:relative;box-shadow:0 20px 60px #00000014}.resv-eyebrow{font-family:var(--font-body);letter-spacing:.28em;text-transform:uppercase;color:var(--accent);margin-bottom:.4rem;font-size:.7rem}.resv-title{font-family:var(--font-serif);color:var(--black);margin:0 0 .6rem;font-size:2rem;font-weight:500}.resv-lead{color:var(--gray-600);margin-bottom:1.75rem;font-size:.95rem;line-height:1.6}.resv-form{flex-direction:column;gap:1rem;display:flex}.resv-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.resv-label{letter-spacing:.12em;text-transform:uppercase;color:var(--gray-600);flex-direction:column;gap:.4rem;font-size:.7rem;font-weight:600;display:flex}.resv-field{font-family:var(--font-body);border:1px solid var(--gray-200);background:var(--white);width:100%;color:var(--black);padding:.8rem .9rem;font-size:1rem}.resv-field:focus{border-color:var(--accent);outline:none}.resv-textarea{resize:vertical;min-height:90px;line-height:1.5}.resv-field-label{font-family:var(--font-body);color:var(--gray-800);margin-top:.5rem;font-size:.82rem;font-weight:600}.resv-times-block{flex-direction:column;gap:.6rem;display:flex}.resv-times{flex-wrap:wrap;gap:.5rem;display:flex}.resv-time{border:1px solid var(--gray-200);background:var(--white);cursor:pointer;font-size:.95rem;font-family:var(--font-body);color:var(--black);padding:.65rem 1rem;transition:border-color .15s,background .15s}.resv-time:hover{border-color:var(--accent)}.resv-time.active{background:var(--accent);color:var(--white);border-color:var(--accent)}.resv-custom-time{border-top:1px dashed var(--gray-200);margin-top:.75rem;padding-top:.85rem}.resv-custom-hint{color:var(--gray-600);font-size:.82rem;font-style:italic}.resv-avail-msg{color:var(--gray-600);font-style:italic;font-family:var(--font-serif);font-size:1rem}.resv-contact{border-top:1px solid var(--gray-200);flex-direction:column;gap:1rem;margin-top:.5rem;padding-top:1.25rem;display:flex}.resv-btn{background:var(--black);color:var(--white);cursor:pointer;letter-spacing:.18em;text-transform:uppercase;font-size:.78rem;font-weight:600;font-family:var(--font-body);text-align:center;border:none;padding:.95rem 1.5rem;text-decoration:none;transition:background .2s,color .2s}.resv-btn:hover:not(:disabled){background:var(--accent)}.resv-btn:disabled{opacity:.5;cursor:not-allowed}.resv-btn-outline{color:var(--black);border:1px solid var(--black);background:0 0}.resv-btn-outline:hover:not(:disabled){background:var(--black);color:var(--white)}.resv-btn-ghost{color:var(--gray-600);border:1px solid var(--gray-200);background:0 0;margin-top:1rem;display:inline-block}.resv-btn-ghost:hover{background:var(--accent);color:var(--white);border-color:var(--accent)}.resv-honeypot{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute!important;left:-9999px!important}.resv-error{color:#c0392b;margin:0;font-size:.88rem}.resv-help{color:var(--gray-600);margin-top:1.75rem;font-size:.85rem;line-height:1.5}.resv-help a{color:var(--accent)}.resv-success{text-align:center}.resv-check{color:#166534;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.25rem;font-size:2rem;display:flex}.resv-summary{text-align:left;flex-direction:column;gap:.6rem;margin:1.75rem 0;display:flex}.resv-summary div{border-bottom:1px dashed var(--gray-200);justify-content:space-between;align-items:baseline;padding-bottom:.5rem;display:flex}.resv-summary dt{letter-spacing:.12em;text-transform:uppercase;color:var(--gray-600);font-size:.7rem}.resv-summary dd{font-weight:600;font-family:var(--font-serif);margin:0;font-size:1.1rem}.resv-note{color:var(--gray-600);font-size:.9rem;line-height:1.6}a.nav-reserve,a.nav-reserve-mobile{text-decoration:none}@media (max-width:560px){.resv-card{padding:1.75rem 1.35rem}.resv-row{grid-template-columns:1fr}.resv-title{font-size:1.6rem}}.resv-wrap-closed{align-items:center}.resv-card-closed{text-align:center;flex-direction:column;align-self:center;align-items:center;max-width:480px;padding:3rem 2.5rem 2.75rem;display:flex}.resv-closed-icon{width:60px;height:60px;color:var(--accent);background:#f6e9e5;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.25rem;display:inline-flex}.resv-card-closed .resv-lead{max-width:38ch;margin-bottom:2rem}.resv-call{width:100%;color:var(--white);background:var(--accent);flex-direction:column;align-items:center;gap:.15rem;padding:1.1rem 1.5rem;text-decoration:none;transition:background .2s,transform .15s;display:flex}.resv-call:hover{background:var(--black);transform:translateY(-1px)}.resv-call-label{letter-spacing:.22em;text-transform:uppercase;opacity:.85;font-size:.66rem;font-weight:600}.resv-call-number{font-family:var(--font-serif);letter-spacing:.02em;font-size:1.5rem;font-weight:500;line-height:1.2}.resv-closed-hint{color:var(--gray-600);max-width:40ch;margin:1.5rem 0 0;font-size:.82rem;line-height:1.6}.resv-closed-back{letter-spacing:.14em;text-transform:uppercase;color:var(--gray-600);margin-top:1.75rem;font-size:.72rem;font-weight:600;text-decoration:none;transition:color .15s}.resv-closed-back:hover{color:var(--accent)}.resa-master{border-left:4px solid #166534;grid-column:1/-1}.resa-master-closed{background:#fdf5f4;border-left-color:#c0392b}.resa-master-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.resa-master-text{flex:240px;min-width:0}.resa-master-text .admin-card-hint{margin-bottom:0}.resa-master-control{flex:none;align-items:center;gap:.85rem;display:flex}.resa-master-badge{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:.3rem .65rem;font-size:.66rem;font-weight:700}.resa-master-badge.is-open{color:#166534;background:#dcfce7}.resa-master-badge.is-closed{color:#c0392b;background:#fde2df}.resa-switch{background:var(--gray-400);cursor:pointer;border:none;border-radius:999px;flex:none;width:56px;height:30px;padding:0;transition:background .2s;position:relative}.resa-switch.is-on{background:#166534}.resa-switch:disabled{opacity:.55;cursor:not-allowed}.resa-switch-knob{background:var(--white);border-radius:50%;width:24px;height:24px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.resa-switch.is-on .resa-switch-knob{transform:translate(26px)}.admin-main-wide{flex-direction:column;max-width:1900px;height:calc(100vh - 64px);padding-bottom:1rem;display:flex}.carte-toolbar{background:var(--white);border:1px solid var(--gray-200);flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:1rem 1.5rem;margin-bottom:.75rem;padding:1rem 1.15rem;display:flex}.carte-toolbar-status{flex-direction:column;gap:.3rem;min-width:0;display:flex}.carte-toolbar-status strong{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;font-size:.95rem}.carte-status-meta{font-family:var(--font-body);color:var(--gray-600);font-size:.8rem}.carte-status-flags{flex-wrap:wrap;gap:.4rem;display:flex}.carte-flag{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;padding:.22rem .55rem;font-size:.68rem;font-weight:600}.carte-flag-ok{color:#166534;background:#ecfdf5;border-color:#bbf7d0}.carte-flag-info{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.carte-flag-warn{color:#92400e;background:#fef3c7;border-color:#fde68a}.carte-toolbar-actions{flex-wrap:wrap;gap:.5rem;display:flex}.carte-toolbar-actions .admin-btn{padding:.6rem 1rem;font-size:.72rem}.carte-actionbar{background:var(--white);border:1px solid var(--gray-200);border-bottom:2px solid var(--accent);flex-wrap:wrap;flex:none;align-items:center;gap:.6rem 1rem;min-height:62px;margin-bottom:0;padding:.7rem .9rem;display:flex}.carte-actionbar-hint{font-family:var(--font-body);color:var(--gray-600);flex:auto;margin:0;font-size:.85rem;line-height:1.5}.carte-crumbs{flex-wrap:wrap;flex:0 auto;align-items:center;gap:.15rem;display:flex}.carte-crumb{font-family:var(--font-body);color:var(--gray-600);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;max-width:210px;padding:.3rem .4rem;font-size:.78rem;overflow:hidden}.carte-crumb:hover{color:var(--accent)}.carte-crumb.is-current{color:var(--black);font-weight:700}.carte-crumb-sep{color:var(--gray-400);margin-right:.35rem}.carte-actions{flex-wrap:wrap;flex:auto;gap:.35rem;display:flex}.carte-tool{font-family:var(--font-body);letter-spacing:.04em;border:1px solid var(--gray-200);background:var(--white);min-width:40px;color:var(--gray-800);cursor:pointer;border-radius:0;padding:.5rem .75rem;font-size:.74rem;font-weight:600;transition:border-color .15s,background .15s,color .15s}.carte-tool:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.carte-tool:disabled{opacity:.35;cursor:not-allowed}.carte-tool-primary{background:var(--black);color:var(--white);border-color:var(--black)}.carte-tool-primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--white)}.carte-tool-danger:hover:not(:disabled){color:#b91c1c;background:#fef2f2;border-color:#b91c1c}.carte-zoom{flex:none;align-items:center;gap:.3rem;margin-left:auto;display:flex}.carte-zoom-value{font-family:var(--font-body);color:var(--gray-600);text-align:center;min-width:48px;font-size:.72rem}.carte-stage{border:1px solid var(--gray-200);background:#5c5b56;border-top:none;flex:auto;min-height:320px;overflow:auto}.carte-stage-inner{margin:0 auto;position:relative}.carte-stage-frame{transform-origin:0 0;background:#5c5b56;border:0;display:block}.carte-history{background:var(--white);border:1px solid var(--gray-200);width:min(640px,92vw);max-height:85vh;padding:1.75rem;overflow:auto}.carte-history .admin-list{margin-top:.5rem}@media (max-width:900px){.admin-main-wide{height:auto}.carte-stage{height:70vh}.carte-crumb{max-width:130px}}@media (hover:none) and (pointer:coarse){.carte-tool{min-width:46px;padding:.7rem .9rem;font-size:.8rem}.carte-toolbar-actions .admin-btn{padding:.75rem 1.1rem}}.carte-loader{color:#faf7f0;min-height:100vh;font-family:var(--font-body),system-ui,sans-serif;background:#5c5b56;place-items:center;margin:0;font-size:.95rem;display:grid}
