:root{--color-primary: #800020;--color-primary-dark: #4a0012;--color-primary-light: #a33b55;--color-secondary: #1a1a1a;--color-accent: #c0a062;--color-background: #ffffff;--color-background-off: #f8fafc;--color-text: #1e293b;--color-text-light: #64748b;--font-main: "Montserrat", sans-serif;--font-heading: "Montserrat", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 8rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 24px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1)}*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden;width:100%}body{font-family:var(--font-main);background-color:var(--color-background);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-secondary);line-height:1.2;margin-bottom:var(--spacing-sm);font-weight:700;letter-spacing:-.02em}a{text-decoration:none;color:inherit;transition:all .3s ease}button{font-family:inherit;cursor:pointer}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;border-radius:50px;font-weight:600;text-transform:uppercase;font-size:.875rem;letter-spacing:.05em;border:none;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-md)}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary))}.btn-outline{border:2px solid var(--color-primary);color:var(--color-primary);background:transparent;box-shadow:none}.btn-outline:hover{background-color:var(--color-primary);color:#fff;transform:translateY(-2px)}.page-title{font-weight:800;text-transform:uppercase;letter-spacing:-1px}.header{position:fixed;top:0;width:100%;z-index:1000;background-color:transparent;transition:all .4s ease}.header.scrolled{background-color:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #0000000d;padding:0}.header.transparent{padding:1rem 0}.logo{font-family:var(--font-heading);font-size:1.75rem;font-weight:800;color:#fff;letter-spacing:-1px;text-transform:uppercase;text-decoration:none;transition:color .3s}.header.scrolled .logo{color:var(--color-secondary);background:linear-gradient(45deg,var(--color-primary),var(--color-primary-light));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.main-nav{padding:0}.nav-container{display:flex;justify-content:space-between;align-items:center;height:80px;transition:height .3s}.header.scrolled .nav-container{height:70px}.desktop-menu{display:none}.nav-link{font-weight:700;text-transform:uppercase;font-size:.72rem;letter-spacing:.5px;color:#ffffffe6;position:relative;padding:.5rem 0;text-decoration:none;transition:color .3s}.header.scrolled .nav-link{color:var(--color-secondary)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:#fff;transition:width .3s ease}.header.scrolled .nav-link:after{background-color:var(--color-primary)}.nav-link:hover{color:#fff}.header.scrolled .nav-link:hover{color:var(--color-primary)}.nav-link:hover:after{width:100%}.mobile-menu-btn{background:none;border:none;color:#fff;padding:.5rem;cursor:pointer}.header.scrolled .mobile-menu-btn{color:var(--color-secondary)}.side-drawer-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:transparent;z-index:1050;opacity:0;visibility:hidden;transition:all .3s ease}.side-drawer-overlay.open{opacity:1;visibility:visible}.side-drawer{position:fixed;top:0;right:0;width:380px;height:100vh;background:#fff;z-index:1200;box-shadow:-5px 0 30px #00000026;transform:translate(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);padding:3rem;display:flex;flex-direction:column}@media(max-width:900px){.desktop-only-drawer{display:none!important}}@media(min-width:900px){.mobile-menu{display:none!important}}.side-drawer.open{transform:translate(0)}.side-drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #f0f0f0}.drawer-title{font-size:1.2rem;font-weight:800;text-transform:uppercase;color:#1a1a1a;letter-spacing:1px;display:block}.drawer-close{background:none;border:none;color:#1a1a1a;cursor:pointer;padding:8px;border-radius:50%;transition:background .2s;display:flex;align-items:center;justify-content:center}.drawer-close:hover{background:#f0f0f0;transform:none}.drawer-nav{display:flex;flex-direction:column;gap:1.5rem}.drawer-link{text-decoration:none;color:#333;font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s;padding-left:10px;border-left:2px solid transparent;display:block}.drawer-link:hover{color:var(--color-primary);padding-left:10px}.drawer-link.active{color:var(--color-primary);padding-left:15px;border-left-color:var(--color-primary)}.drawer-footer{margin-top:auto;padding-top:2rem;border-top:1px solid #f0f0f0}.drawer-auth-group{display:flex;flex-direction:column;gap:1rem}.drawer-auth-btn{display:flex;align-items:center;justify-content:center;text-decoration:none;padding:12px;border-radius:8px;font-weight:700;text-transform:uppercase;font-size:.9rem;transition:all .2s}.drawer-auth-btn.login{border:1px solid #1a1a1a;color:#1a1a1a}.drawer-auth-btn.login:hover{background:#1a1a1a;color:#fff}.drawer-auth-btn.register{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}.drawer-auth-btn.register:hover{background:#a00020;border-color:#a00020}.menu-toggle-btn{background:none;border:none;color:#fff;padding:.5rem;cursor:pointer;margin-left:0;display:block}.header.scrolled .menu-toggle-btn{color:var(--color-secondary)}.mobile-menu{background-color:#fff;padding:6rem 2rem 2rem;display:none;flex-direction:column;gap:1.5rem;position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1050;overflow-y:auto;border-top:none;box-shadow:none;align-items:center}.mobile-menu.open{display:flex;animation:fadeIn .3s ease}.mobile-link{font-size:1.2rem;font-weight:600;text-transform:uppercase;color:#333;width:100%;text-align:center;padding:10px;transition:color .3s;text-decoration:none}.mobile-link.active{color:var(--color-primary);font-weight:800}.mobile-link:last-child{border-bottom:none}@media(min-width:900px){.desktop-menu{display:flex;gap:.8rem;align-items:center}.mobile-menu-btn{display:block}.desktop-only{display:flex}.mobile-only{display:none}}.btn-cart-icon{position:relative;color:#fff;display:flex;align-items:center;justify-content:center;padding:.5rem;transition:color .2s}.cart-dropdown-wrapper{position:relative;padding-bottom:10px;margin-bottom:-10px}.minicart-dropdown{position:absolute;top:100%;right:0;width:300px;background:#fff;border-radius:8px;border-radius:var(--radius-md);box-shadow:0 10px 40px #00000026;padding:1rem;color:var(--color-text);opacity:0;visibility:hidden;transform:translateY(10px);transition:all .3s ease;z-index:1100}.cart-dropdown-wrapper:hover .minicart-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.minicart-items{display:flex;flex-direction:column;gap:1rem;max-height:300px;overflow-y:auto;margin-bottom:1rem}.minicart-item{display:flex;gap:.8rem;align-items:center}.minicart-item img{width:50px;height:50px;border-radius:4px;object-fit:cover}.minicart-item-info{flex:1}.minicart-item-info .name{font-size:.9rem;font-weight:600;margin-bottom:.2rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.minicart-item-info .price{font-size:.85rem;color:var(--color-primary)}.minicart-more{font-size:.85rem;text-align:center;color:var(--color-text-light);font-style:italic;margin-top:.5rem}.minicart-delete{background:transparent;border:none;color:#9ca3af;cursor:pointer;padding:6px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.minicart-delete:hover{color:#ef4444;background-color:#fee2e2}.minicart-section-title{font-size:.75rem;text-transform:uppercase;color:#64748b;font-weight:700;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid #f1f5f9}.minicart-divider{height:1px;background-color:#f1f5f9;margin:1rem 0}.minicart-footer{border-top:1px solid #eee;padding-top:1rem}.minicart-total{display:flex;justify-content:space-between;margin-bottom:1rem;font-size:1rem}.minicart-empty{text-align:center;padding:2rem 0;color:var(--color-text-light)}.btn-cart-icon:hover{color:var(--color-accent)}.header.scrolled .btn-cart-icon{color:var(--color-secondary)}.header.scrolled .btn-cart-icon:hover{color:var(--color-primary)}.cart-badge{position:absolute;top:0;right:-5px;background-color:var(--color-primary);color:#fff;font-size:.75rem;font-weight:700;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #222}.header-actions{display:flex;align-items:center;gap:1.5rem}.auth-buttons{display:flex;gap:1.5rem;align-items:center;margin-left:0}@media(min-width:900px){.auth-buttons{display:flex}}.btn-auth{font-size:.75rem;font-weight:700;text-transform:uppercase;text-decoration:none;padding:.5rem 1rem;border-radius:50px;transition:all .3s;letter-spacing:.5px;white-space:nowrap}.btn-login{color:#fff;border:1px solid rgba(255,255,255,.5);background:transparent}.header.scrolled .btn-login{color:var(--color-secondary);border-color:#ddd}.btn-login:hover{background:#ffffff1a;color:#fff;border-color:#fff}.header.scrolled .btn-login:hover{background:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}.btn-register{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}.btn-register:hover{background:#a00020;color:#fff;border-color:#a00020}.header.scrolled .btn-register{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}.header.scrolled .btn-register:hover{background:#a00020;color:#fff;border-color:#a00020}.btn-account{display:flex;align-items:center;gap:.4rem;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7);padding:.4rem .8rem;border-radius:30px}.header.scrolled .btn-account{border-color:#ccc;color:var(--color-secondary)}.btn-account:hover{background:#fff;color:var(--color-primary);border-color:#fff}.header.scrolled .btn-account:hover{background:var(--color-secondary);color:#fff;border-color:var(--color-secondary)}.mobile-auth{border-top:1px solid #eee;margin-top:1rem;padding-top:2rem;display:flex;flex-direction:column;gap:1rem;width:100%;align-items:center}.mobile-btn{display:flex;align-items:center;justify-content:center;padding:.8rem 2rem;border-radius:50px;font-weight:700;text-transform:uppercase;text-decoration:none;width:80%;max-width:300px;transition:all .3s;font-size:.9rem;border:1px solid transparent}.mobile-login{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.mobile-register{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.mobile-account{background:var(--color-primary);color:#fff}@media(max-width:900px){.minicart-dropdown,.header .btn-auth,.header .btn-account,.header .cart-dropdown-wrapper{display:none!important}.mobile-menu-btn{display:block!important;position:absolute!important;right:1.5rem!important;top:50%!important;transform:translateY(-50%)!important;color:#8b0000!important;z-index:999999!important;background:transparent!important;border:none!important;padding:.5rem!important;opacity:1!important;visibility:visible!important}.auth-buttons,.desktop-only{display:none!important}.side-drawer{width:100vw}.menu-toggle-btn{margin-left:auto}}.footer{background-color:#111;color:#999;padding:6rem 0 4rem;font-family:Montserrat,sans-serif;font-size:.95rem;letter-spacing:.5px}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:4rem}.footer-logo{color:#fff;margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.logo-text h2{font-size:1.4rem;margin:0;color:#fff;letter-spacing:2px}.logo-text span{font-size:.6rem;text-transform:uppercase;letter-spacing:3px;display:block;opacity:.8}.brand-desc{margin-bottom:2rem;line-height:1.6;max-width:300px}.payment-methods p{margin-bottom:.5rem;color:#888}.payment-logos{display:flex;gap:.5rem}.footer-col h3{color:#fff;font-size:1rem;text-transform:uppercase;margin-bottom:1.5rem;letter-spacing:1px}.footer-links{list-style:none}.footer-links li{margin-bottom:1rem;border-bottom:1px solid #333;padding-bottom:1rem}.footer-links li:last-child{border-bottom:none}.footer-links a{color:#b0b0b0;text-decoration:none;transition:color .3s;display:flex;justify-content:space-between}.footer-links a:hover{color:#fff}.count{color:#666}@media(min-width:1024px){.footer-grid{grid-template-columns:1.5fr 1fr 1.2fr}}.footer-bottom{border-top:1px solid #222;margin-top:4rem;padding-top:2rem;text-align:center;font-size:.85rem;color:#666}.footer-bottom a{color:#999;text-decoration:none;transition:color .3s}.footer-bottom a:hover{color:#fff}@media(max-width:768px){.footer{text-align:center}.footer-logo{justify-content:center}.brand-desc{margin-left:auto;margin-right:auto}.payment-logos,.footer-links a{justify-content:center}.footer-links li{border-color:#333}}.breadcrumb-nav{background-color:var(--color-background-off);padding:1rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.breadcrumb-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;font-size:.9rem;font-weight:500}.breadcrumb-item{display:flex;align-items:center;color:var(--color-text-light)}.breadcrumb-item a{color:var(--color-text-light);text-decoration:none;transition:color .2s;display:flex;align-items:center}.breadcrumb-item a:hover{color:var(--color-primary)}.breadcrumb-item.active{color:var(--color-secondary);font-weight:600}.breadcrumb-separator{margin:0 .5rem;color:#ccc}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.app-layout{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1}.page-animate-enter{animation:fadeInPage .5s cubic-bezier(.2,.8,.2,1) forwards}@keyframes fadeInPage{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.animated-site button,.animated-site .btn{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease,background-color .2s ease}.animated-site button:hover,.animated-site .btn:hover{transform:translateY(-2px) scale(1.02)}.animated-site button:active,.animated-site .btn:active{transform:translateY(1px) scale(.98)}.animated-site .product-card,.animated-site .card,.animated-site .menu-item,.animated-site .blog-card,.animated-site .feature-card{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}.animated-site .product-card:hover,.animated-site .card:hover,.animated-site .menu-item:hover,.animated-site .blog-card:hover,.animated-site .feature-card:hover{transform:translateY(-6px);box-shadow:0 15px 30px #00000014}.animated-site a:not(.btn):not(.product-card):not(.card-link){position:relative;text-decoration:none}.animated-site a{transition:opacity .2s ease,color .2s ease}.animated-site a:hover{opacity:.8}.animated-site input:not([type=checkbox]):not([type=radio]),.animated-site textarea,.animated-site select{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.animated-site input:focus,.animated-site textarea:focus,.animated-site select:focus{transform:scale(1.005)}.animated-site img{transition:transform .5s ease}.animated-site .img-wrapper img:hover{transform:scale(1.05)}.hero{height:85vh;position:relative;background:linear-gradient(to right,#000c,#0006),url(https://images.unsplash.com/photo-1514362545857-3bc16c4c7d1b?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80) no-repeat center center/cover;background-attachment:fixed;display:flex;align-items:center;color:#fff}.hero-content{max-width:800px;animation:fadeIn Up 1s ease-out}.hero-title{font-size:4rem;color:#fff;margin-bottom:1.5rem;font-weight:800;line-height:1.1;text-shadow:0 4px 6px rgba(0,0,0,.3)}@media(max-width:768px){.venues-header-hero{padding:5rem 0 3rem;margin-bottom:2rem}.page-title{font-size:2rem}.page-subtitle{font-size:1rem}}.hero-subtitle{font-size:1.25rem;margin-bottom:3rem;font-weight:400;opacity:.9;max-width:600px;line-height:1.8}.hero-actions{display:flex;gap:1.5rem}.hero-actions .btn-outline{border-color:#fffc;color:#fff}.hero-actions .btn-outline:hover{background-color:#fff;color:var(--color-primary);border-color:#fff}.section{padding:6rem 0}.section-title{text-align:center;font-size:2.5rem;margin-bottom:4rem;position:relative;font-weight:700;color:var(--color-secondary)}.section-title:after{content:"";display:block;width:80px;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));margin:1.5rem auto 0;border-radius:2px}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem}.service-card{background:#fff;padding:3rem 2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all .4s cubic-bezier(.175,.885,.32,1.275);text-align:center;border:1px solid rgba(0,0,0,.03);position:relative;overflow:hidden}.service-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:5px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));opacity:0;transition:opacity .3s ease}.service-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-xl)}.service-card:hover:before{opacity:1}.service-card h3{margin-bottom:1rem;font-size:1.5rem;color:var(--color-secondary)}.service-card p{color:var(--color-text-light);margin-bottom:2rem;font-size:1rem}.text-link{color:var(--color-primary);font-weight:700;text-decoration:none;text-transform:uppercase;font-size:.85rem;letter-spacing:1px;transition:color .3s ease}.text-link:hover{color:var(--color-primary-dark)}@media(max-width:768px){.hero-title{font-size:2.5rem}.hero-actions{flex-direction:column}.section{padding:4rem 0}}.events-features{background-color:var(--color-background);padding-bottom:8rem}.events.page-header{background-color:var(--color-background-off);padding:4rem 0;text-align:center;margin-bottom:3rem}.events-header{text-align:center;margin-bottom:4rem;max-width:900px;margin-left:auto;margin-right:auto}.events-header h2{font-size:2.5rem;color:var(--color-secondary);margin-bottom:1.5rem;line-height:1.2}.events-header p{font-size:1.1rem;color:var(--color-text);opacity:.8}.events-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:5rem}.gallery-item{border-radius:var(--radius-md);overflow:hidden;height:300px;box-shadow:var(--shadow-md);transition:transform .3s ease}.gallery-item:hover{transform:translateY(-5px)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.05)}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.feature-column{padding:1rem}.feature-column h3{font-size:1.75rem;color:var(--color-secondary);margin-bottom:1.5rem;font-family:var(--font-heading);position:relative;padding-bottom:1rem}.feature-column h3:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:3px;background-color:var(--color-accent)}.feature-column p{color:var(--color-text);line-height:1.7;font-size:.95rem;text-align:justify}@media(max-width:900px){.events-gallery{grid-template-columns:repeat(2,1fr)}.features-grid{grid-template-columns:1fr;gap:2rem}}@media(max-width:600px){.events-gallery{grid-template-columns:1fr}.events-header h2{font-size:1.75rem}}.hero{height:100vh;position:relative;background:url(https://images.unsplash.com/photo-1514362545857-3bc16c4c7d1b?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80) no-repeat center center/cover;background-attachment:fixed;display:flex;align-items:center;justify-content:center;overflow:hidden}@media(max-width:768px){.hero{padding-top:80px}}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#000c,#0006)}.hero-content{position:relative;z-index:2;text-align:center;max-width:900px;animation:fadeUp 1s ease-out;display:flex;flex-direction:column;align-items:center}.hero-badge{display:inline-block;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem 1.5rem;border-radius:50px;color:var(--color-accent);text-transform:uppercase;font-size:.85rem;letter-spacing:2px;margin-bottom:2rem;border:1px solid rgba(192,160,98,.3)}.hero-title{font-size:4.5rem;color:#fff;margin-bottom:1.5rem;font-weight:800;line-height:1.1;text-transform:uppercase}@media(max-width:768px){.contact-header{padding:6rem 0 2rem;margin-bottom:2rem}.contact-header .page-title{font-size:2rem}.contact-header .page-subtitle{font-size:1rem}}.hero-subtitle{font-size:1.25rem;color:#ffffffe6;margin-bottom:3rem;font-weight:300;max-width:700px}.hero-actions{display:flex;gap:1.5rem;justify-content:center}.btn-red{background-color:#a30000;color:#fff;padding:1rem 2rem;border-radius:50px;font-weight:700;text-transform:uppercase;font-size:.9rem;letter-spacing:1px;border:none;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-red:hover{background-color:maroon;transform:translateY(-2px);box-shadow:0 5px 15px #0000004d;color:#fff}.btn-ghost{display:inline-block;padding:.75rem 1.5rem;border:1px solid var(--color-primary);color:var(--color-primary);border-radius:50px;font-weight:600;text-transform:uppercase;font-size:.8rem;letter-spacing:1px;text-decoration:none;transition:all .3s ease;background:transparent}.btn-ghost:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #a33b5533}.pulse-anim{animation:pulse-shadow 2s infinite}@keyframes pulse-shadow{0%{box-shadow:0 0 #c0a06266}70%{box-shadow:0 0 0 10px #c0a06200}to{box-shadow:0 0 #c0a06200}}.events-header-modern{text-align:center;margin-bottom:5rem;max-width:1000px;margin-left:auto;margin-right:auto}.events-header-modern h2{font-size:2.8rem;color:var(--color-secondary);font-weight:800;line-height:1.2}.highlight{color:var(--color-primary);position:relative;display:inline-block}.divider-center{width:100px;height:4px;background:var(--color-accent);margin:1.5rem auto;border-radius:2px}.cta-dual-section{position:relative;background:url(https://images.unsplash.com/photo-1519167758481-83f550bb49b3?ixlib=rb-1.2.1&auto=format&fit=crop&w=1950&q=80) center/cover fixed;padding:10rem 0;color:#fff;text-align:center}.cta-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009}.cta-content{position:relative;z-index:2;display:flex;justify-content:center;align-items:center;gap:4rem}.cta-block{flex:1;max-width:600px}.cta-block h2{font-size:2.5rem;margin-bottom:1.5rem;font-weight:800;color:#fff;text-transform:capitalize}.cta-block p{font-size:1.1rem;margin-bottom:2.5rem;opacity:1;color:#ffffffe6}.cta-divider{width:1px;height:200px;background:#fff3}.testimonials-section{background:#f9f9f9;padding:8rem 0;overflow:hidden}.marquee-container{width:100%;overflow:hidden;position:relative;margin-top:3rem;mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent)}.marquee-track{display:flex;gap:2rem;width:max-content;animation:scroll-left 40s linear infinite;padding:2rem 0}.marquee-item{width:350px;height:450px;flex-shrink:0}.testimonial-card-light{background:#fff;padding:3rem 2rem;border-radius:12px;color:#333;text-align:center;transition:transform .3s ease,box-shadow .3s ease;border-bottom:4px solid var(--color-accent);display:flex;flex-direction:column;justify-content:space-between;height:100%;box-shadow:0 5px 20px #0000000d}.testimonial-card-light:hover{transform:translateY(-10px);box-shadow:0 15px 30px #0000001a}@keyframes scroll-left{0%{transform:translate(0)}to{transform:translate(-50%)}}.stars{margin-bottom:1.5rem}.testimonial-text{font-size:1.05rem;line-height:1.6;font-style:italic;margin-bottom:2rem;color:#555;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.testimonial-author h4{font-size:1.1rem;color:#222;margin-bottom:.2rem;font-weight:700}.testimonial-author span{font-size:.8rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:1px}.map-info-section{display:flex;height:auto;min-height:550px;position:relative;overflow:hidden}.info-panel{width:35%;background:#900;color:#fff;padding:3rem 2rem;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;z-index:2}.map-container{width:65%;position:relative;min-height:100%;display:flex}.info-panel h3{font-size:2rem;margin-bottom:1.5rem;color:#fff;font-weight:700}.info-item{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;align-items:center}.info-icon{color:#fff;flex-shrink:0;width:28px;height:28px;opacity:1;margin-bottom:.2rem}.info-item p{font-size:1.1rem;line-height:1.4;color:#fffffff2;max-width:300px}.separator-line{margin:1.5rem 0;height:2px;width:80px;background:#ffffff4d}@media(max-width:900px){.hero-title{font-size:3rem}.cta-content{flex-direction:column;gap:3rem}.cta-divider{width:100px;height:1px}.map-info-section{flex-direction:column;height:auto}.info-panel,.map-container{width:100%}.map-container{height:400px}.info-panel{padding:3rem}}.page-header{background-color:var(--color-background-off);padding:4rem 0;text-align:center;margin-bottom:3rem}.page-title{font-size:3rem;margin-bottom:1rem}@media(max-width:768px){.page-header{padding:6rem 0 2rem;margin-bottom:2rem}.page-title{font-size:2rem}}.content-wrapper{display:grid;grid-template-columns:1fr;gap:2rem;padding-bottom:4rem}.categories-sidebar{background:#fff;padding:1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);height:fit-content}.categories-sidebar h3{font-size:1.2rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #eee}.categories-sidebar ul{list-style:none}.category-btn{display:block;width:100%;text-align:left;background:none;border:none;padding:.75rem .5rem;font-size:.95rem;color:var(--color-text);cursor:pointer;transition:all .2s;border-radius:var(--radius-sm)}.category-btn:hover,.category-btn.active{background-color:var(--color-background-off);color:var(--color-primary);font-weight:600;padding-left:1rem}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem}.product-card{background:#fff;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .3s ease,box-shadow .3s ease;border:1px solid #f0f0f0}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.product-image{height:200px;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.product-card:hover .product-image img{transform:scale(1.05)}.product-info{padding:1.5rem}.product-name{font-size:1.1rem;margin-bottom:.5rem;font-family:var(--font-heading)}.product-desc{font-size:.9rem;color:var(--color-text-light);margin-bottom:1.5rem;line-height:1.4}.product-footer{display:flex;justify-content:space-between;align-items:center}.product-price{font-weight:700;color:var(--color-primary);font-size:1.1rem}.btn-sm{padding:.5rem 1rem;font-size:.85rem}@media(min-width:900px){.content-wrapper{grid-template-columns:250px 1fr;gap:3rem}}.schedule-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.schedule-popup{background:#fff;padding:2rem;border-radius:var(--radius-md);max-width:500px;width:90%;text-align:center;box-shadow:0 20px 50px #0003;position:relative;animation:popupSlideIn .3s ease-out}@keyframes popupSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.schedule-popup h2{color:var(--color-primary);margin-bottom:1rem;font-family:var(--font-heading)}.schedule-popup p{margin-bottom:1.5rem;color:var(--color-text);line-height:1.6}.schedule-popup .btn-close-popup{background-color:var(--color-text);color:#fff;border:none;padding:.8rem 2rem;border-radius:50px;cursor:pointer;font-weight:700;text-transform:uppercase;transition:background .2s}.schedule-popup .btn-close-popup:hover{background-color:#000}.btn:disabled,.btn.disabled{background-color:#ccc!important;cursor:not-allowed;border-color:#ccc!important;color:#666!important;opacity:.7}.product-card.unavailable{opacity:.8;position:relative;pointer-events:none;filter:grayscale(100%)}.product-card.unavailable:after{content:"INDISPONIBIL";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#800020e6;color:#fff;padding:.8rem 1.5rem;border-radius:8px;font-weight:800;font-size:1.2rem;z-index:10;letter-spacing:1px;box-shadow:0 4px 12px #0003}.product-card.unavailable button{display:none}.catering-header{background-color:var(--color-background-off);padding:4rem 0;text-align:center;margin-bottom:4rem}@media(max-width:768px){.catering-header{padding:6rem 0 2rem;margin-bottom:3rem}}.sections-wrapper{display:flex;flex-direction:column;gap:6rem;padding-bottom:6rem}.catering-section{display:flex;align-items:center;gap:4rem}.catering-section.reverse{flex-direction:row-reverse}.section-content{flex:1}.section-content h2{font-size:2rem;margin-bottom:1.5rem;color:var(--color-primary)}.section-content p{font-size:1.1rem;color:var(--color-text-light);margin-bottom:2rem;line-height:1.8}.section-image{flex:1;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-lg);height:400px}.section-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.section-image:hover img{transform:scale(1.05)}@media(max-width:768px){.catering-section{flex-direction:column;gap:2rem}.catering-section.reverse{flex-direction:column}.section-image{width:100%;height:300px}}.configurator-page{background-color:#f8f9fa;min-height:100vh;padding-bottom:4rem}.configurator-header-hero{background-color:var(--color-primary-dark);color:#fff;padding:6rem 0 4rem;text-align:center;margin-bottom:3rem;background:linear-gradient(#000000b3,#000000b3),url(https://images.unsplash.com/photo-1555244162-803834f70033?ixlib=rb-1.2.1&auto=format&fit=crop&w=1920&q=80);background-size:cover;background-position:center}.configurator-header-hero h1{font-size:3rem;color:#fff;margin-bottom:1rem;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:1px}.configurator-header-hero p{font-size:1.2rem;color:#ffffffe6}.configurator-container{display:grid;grid-template-columns:300px 1fr;gap:3rem;align-items:start}.config-sidebar{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 6px #0000000d;position:sticky;top:100px}.steps-list{list-style:none;padding:0;margin:0}.step-item{display:flex;align-items:center;padding:1rem;cursor:pointer;border-radius:8px;margin-bottom:.5rem;transition:all .2s;color:#666}.step-item:hover{background-color:#f0f0f0}.step-item.active{background-color:#8000200d;color:var(--color-primary);font-weight:600}.step-item.completed .step-indicator{background-color:#4caf50;border-color:#4caf50;color:#fff}.step-indicator{width:32px;height:32px;border-radius:50%;border:2px solid #ddd;display:flex;align-items:center;justify-content:center;margin-right:1rem;font-weight:700;font-size:.9rem;transition:all .3s}.step-item.active .step-indicator{border-color:var(--color-primary);background-color:var(--color-primary);color:#fff}.config-main{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 4px 15px #0000000d;min-height:600px;display:flex;flex-direction:column}.step-content{flex:1}.step-header-group{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-accent)}.step-header-group h3{font-size:2rem;color:var(--color-primary);font-family:var(--font-heading);margin-bottom:0}.quantity-control{display:flex;align-items:center;gap:1rem;background:#f8f9fa;padding:.5rem 1rem;border-radius:8px;border:1px solid #eee}.quantity-control label{font-weight:600;color:#444}.qty-input{width:100px;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;text-align:center}.qty-input:focus{border-color:var(--color-primary);outline:none}.step-desc{color:#666;margin-bottom:2rem;margin-top:1rem}.products-grid-config{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem;margin-bottom:3rem}.config-product-card{border:1px solid #eee;border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s;position:relative;display:flex;flex-direction:column}.config-product-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000001a}.config-product-card.selected{border-color:var(--color-primary);background-color:#80002005;box-shadow:0 0 0 1px var(--color-primary)}.card-chk{position:absolute;top:10px;right:10px;color:#ccc;z-index:5;background:#fffc;border-radius:50%}.config-product-card.selected .card-chk{color:var(--color-primary)}.card-img-container{width:100%;height:180px;margin-bottom:1rem;border-radius:6px;overflow:hidden}.card-img-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.config-product-card:hover .card-img-container img{transform:scale(1.05)}.config-product-card h4{font-size:1rem;margin-bottom:.5rem;color:#333}.config-product-card p{font-size:.8rem;color:#666;margin-bottom:auto}.btn-see-more{margin-top:1rem;background:transparent;border:1px solid var(--color-primary);color:var(--color-primary);padding:.5rem 1rem;border-radius:20px;font-size:.85rem;cursor:pointer;transition:all .2s;font-weight:600;align-self:center;width:100%}.btn-see-more:hover{background:var(--color-primary);color:#fff}.config-footer-nav{display:flex;justify-content:space-between;padding-top:2rem;border-top:1px solid #eee;margin-top:auto}.nav-btn{display:flex;align-items:center;gap:.5rem}.pdf-preview-section{text-align:center;padding:3rem 0;max-width:800px;margin:0 auto}.pdf-actions{margin-top:5rem;padding-top:2rem;border-top:1px dashed #eee}.pdf-actions p{margin-bottom:2rem;color:#666}.placeholder-report{background:#fdfdfd;border:1px dashed #ccc;padding:2rem;margin:2rem auto;max-width:600px}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s}.product-modal{background:#fff;width:90%;max-width:900px;max-height:90vh;border-radius:12px;overflow-y:auto;position:relative;display:grid;grid-template-columns:1fr 1fr;box-shadow:0 20px 40px #0003;animation:slideUp .3s}.modal-close{position:absolute;top:15px;right:20px;background:#fff;border:none;font-size:2rem;line-height:1;cursor:pointer;color:#333;z-index:10;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #0000001a}.modal-image{height:100%;min-height:400px}.modal-image img{width:100%;height:100%;object-fit:cover}.modal-content{padding:3rem;display:flex;flex-direction:column}.modal-content h3{font-size:2rem;color:var(--color-primary);margin-bottom:1.5rem;font-family:var(--font-heading);border-bottom:2px solid var(--color-accent);padding-bottom:1rem;display:inline-block}.modal-desc{font-size:1.1rem;line-height:1.8;color:#555;margin-bottom:2rem;flex-grow:1}.modal-actions{margin-top:auto;text-align:right}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:900px){.configurator-container{grid-template-columns:1fr}.config-sidebar{display:none}.product-modal{grid-template-columns:1fr;max-width:100%;height:100vh;max-height:100vh;border-radius:0}.modal-image{height:300px;min-height:auto}.modal-content{padding:2rem}.step-header-group{flex-direction:column;align-items:flex-start;gap:1rem}.quantity-control{width:100%;justify-content:space-between}.configurator-header-hero h1{font-size:2.2rem;padding:0 .5rem;line-height:1.2}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.venues-page{background-color:#fff}.venues-header-hero{background:linear-gradient(#0009,#0009),url(https://images.unsplash.com/photo-1519167758481-83f550bb49b3?ixlib=rb-1.2.1&auto=format&fit=crop&w=1920&q=80);background-size:cover;background-position:center;padding:8rem 0 6rem;text-align:center;color:#fff;margin-bottom:4rem}.venues-header-hero .page-title{color:#fff}.page-title{font-size:3.5rem;margin-bottom:1rem;font-family:var(--font-heading)}.page-subtitle{font-size:1.2rem;font-weight:300;letter-spacing:1px}@media(max-width:768px){.venues-header-hero{padding:6rem 0 3rem;margin-bottom:2rem}.page-title{font-size:2.2rem}.page-subtitle{font-size:1rem}}.venues-intro{max-width:800px;margin:0 auto 5rem;text-align:center;font-size:1.15rem;line-height:1.8;color:#555;font-style:italic}.venue-section{padding:2rem 0;margin-bottom:2rem}.venue-content-wrapper{display:grid;grid-template-columns:1.1fr .9fr;gap:4rem;align-items:start}.venue-title{font-size:2.5rem;margin-bottom:1.5rem;color:var(--color-primary);font-family:var(--font-heading);position:relative;padding-bottom:1rem}.venue-title:after{content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background-color:var(--color-accent)}.venue-desc{font-size:1.05rem;line-height:1.8;color:#444;margin-bottom:2rem}.venue-details-grid{display:grid;gap:1.5rem;margin-bottom:2rem;background:#fdfdfd;padding:1.5rem;border-left:3px solid var(--color-accent);border-radius:0 8px 8px 0}.detail-item strong{display:block;color:#222;margin-bottom:.3rem}.detail-item span{color:#555;font-size:.95rem}.venue-specs{list-style:none;display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:2rem}.venue-specs li{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#333;background:#f5f5f5;padding:.5rem 1rem;border-radius:30px;font-size:.9rem}.venue-specs li svg{color:var(--color-primary)}.venue-media-side{display:flex;flex-direction:column;gap:1.5rem}.venue-video-wrapper{width:100%;height:300px;border-radius:12px;overflow:hidden;box-shadow:0 5px 15px #0000001a;background-color:#000}.venue-video-placeholder{width:100%;aspect-ratio:16/9;background-color:#eee;display:flex;align-items:center;justify-content:center;border-radius:12px;position:relative;overflow:hidden;cursor:pointer;transition:all .3s;box-shadow:0 5px 15px #0000001a}.venue-video-placeholder:before{content:"▶";font-size:2rem;color:#fff;background:#00000080;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform .3s}.venue-video-placeholder:hover:before{background:var(--color-primary);transform:scale(1.1)}.venue-main-img{width:100%;height:300px;object-fit:cover;border-radius:12px;box-shadow:0 5px 15px #0000001a}.separator{height:1px;background:linear-gradient(to right,transparent,#ddd,transparent);margin:5rem 0}.venue-section.reversed .venue-content-wrapper{grid-template-columns:.9fr 1.1fr;direction:rtl}.venue-section.reversed .venue-content-wrapper>*{direction:ltr}.venue-section.reversed .venue-title:after{left:auto;right:0}.cta-section{text-align:center;margin-top:3rem;padding:4rem;background-color:#f9f9f9;border-radius:20px}.cta-section h3{font-size:1.8rem;margin-bottom:2rem;color:var(--color-primary)}@media(max-width:1024px){.venue-content-wrapper,.venue-section.reversed .venue-content-wrapper{grid-template-columns:1fr;direction:ltr;gap:2rem}.venue-specs{justify-content:flex-start}}.venue-carousel{position:relative;width:100%;height:300px;border-radius:12px;overflow:hidden;box-shadow:0 5px 15px #0000001a;background-color:#eee}.carousel-slide{width:100%;height:100%;background-size:cover;background-position:center;transition:background-image .5s ease}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#0000004d;color:#fff;border:none;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10}.carousel-btn:hover{background:#000000b3;transform:translateY(-50%) scale(1.1)}.carousel-btn.prev{left:10px}.carousel-btn.next{right:10px}.carousel-dots{position:absolute;bottom:15px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:10}.dot{width:8px;height:8px;border-radius:50%;background:#ffffff80;border:none;padding:0;cursor:pointer;transition:all .3s}.dot.active{background:#fff;transform:scale(1.2)}.availability-section{margin-top:5rem;padding:4rem 0;background-color:#fafafa;border-top:1px solid #eaeaea}.availability-header{text-align:center;margin-bottom:3rem}.availability-header h3{font-size:2rem;color:var(--color-primary);margin-bottom:.5rem}.availability-grid{display:flex;flex-direction:column;gap:4rem;align-items:center;max-width:900px;margin:0 auto}.availability-left{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 20px #0000000d;width:100%;max-width:600px}.venue-selector-compact{margin-bottom:1.5rem;text-align:center}.venue-selector-compact label{display:block;font-size:.9rem;color:#000;margin-bottom:.8rem;font-weight:700}.venue-selector-buttons{display:flex;gap:.5rem;justify-content:center}.venue-btn-sm{padding:.5rem 1rem;font-size:.85rem;border:1px solid #ddd;background:#f9f9f9;color:#444;border-radius:20px;cursor:pointer;transition:all .2s}.venue-btn-sm:hover,.venue-btn-sm.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.terms-link{color:var(--color-primary);text-decoration:none;font-weight:600;transition:text-decoration .2s}.react-calendar{width:100%;border:none;font-family:inherit;background:#fff}.react-calendar__tile{height:40px;border-radius:6px;margin-bottom:2px;font-size:.9rem}.unavailable-date{background:#ffebeb!important;color:#d32f2f!important;position:relative}.unavailable-date abbr{text-decoration:line-through;opacity:.7}.react-calendar__tile--now{background:#f0f0f0;color:#000}.react-calendar__tile--active{background:var(--color-accent)!important;color:#fff!important}.calendar-legend{display:flex;justify-content:center;gap:1rem;margin-top:1rem;font-size:.8rem;color:#555;padding-top:.8rem;border-top:1px solid #eee}.legend-item{display:flex;align-items:center}.legend-item .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px}.legend-item .dot.available{background:#fff;border:1px solid #ccc}.legend-item .dot.unavailable{background:#ffebeb;border:1px solid #d32f2f}.availability-right{background:#fff;padding:2.5rem;border-radius:12px;box-shadow:0 5px 20px #0000000d;width:100%}.form-section h3{color:var(--color-primary);border-bottom:2px solid #eee;padding-bottom:.5rem;margin-bottom:1.5rem;font-size:1.3rem;font-family:var(--font-heading)}.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-family:inherit;resize:vertical}.reservation-form{display:flex;flex-direction:column;gap:1.2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-row.three-cols{grid-template-columns:1fr 1fr 1fr}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:600;color:#333;margin-bottom:.2rem}.required{color:red}.form-control{padding:.8rem 1rem;border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:.95rem;transition:border-color .3s}.form-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8000201a}.form-checkbox-group{margin-top:.5rem}.checkbox-label{display:block;font-size:.9rem;font-weight:600;color:#333;margin-bottom:.5rem}.checkbox-item{display:flex;align-items:flex-start;gap:.8rem}.checkbox-item input[type=checkbox]{margin-top:.3rem;accent-color:var(--color-primary)}.checkbox-item label{font-size:.85rem;line-height:1.5;color:#555;cursor:pointer}.btn-submit-verify{margin-top:1rem;padding:1.2rem;background-color:var(--color-primary);color:#fff;border:none;border-radius:50px;font-weight:800;font-size:1rem;text-transform:uppercase;cursor:pointer;transition:all .3s;width:100%;box-shadow:var(--shadow-md);letter-spacing:.5px}.btn-submit-verify:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.configurator-cta{margin-top:0;padding:2rem;text-align:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;max-width:600px;margin-left:auto;margin-right:auto}.configurator-cta p{font-size:1.1rem;margin-bottom:1.5rem;color:#444}@media(max-width:1024px){.availability-grid,.form-row,.form-row.three-cols{grid-template-columns:1fr}}.react-calendar__month-view__days__day--weekend{color:#64748b!important}.react-calendar__tile--now.react-calendar__month-view__days__day--weekend{color:#000!important}@media(max-width:768px){.availability-section{padding:2rem 0}.availability-left,.availability-right{padding:1rem;width:100%;box-sizing:border-box}.calendar-wrapper-simple{width:100%;overflow-x:hidden}.react-calendar{width:100%!important;max-width:100%;font-size:.8rem;line-height:1.1em}.react-calendar__navigation button{min-width:30px;font-size:1rem;padding:0}.venue-selector-compact{display:flex;flex-direction:column;align-items:center;width:100%}.venue-selector-buttons{display:flex;flex-wrap:wrap;width:100%;gap:5px;justify-content:center}.venue-btn-sm{flex:1 1 auto;min-width:70px;font-size:.75rem;padding:6px}.react-calendar__tile{padding:6px 0;height:auto;min-height:36px}}.wizard-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease}.wizard-modal{background:#fff;width:95%;max-width:800px;max-height:90vh;overflow-y:auto;border-radius:16px;padding:2.5rem;position:relative;box-shadow:0 25px 50px #00000040;animation:slideUp .3s ease}.wizard-modal::-webkit-scrollbar{width:8px}.wizard-modal::-webkit-scrollbar-track{background:#f1f1f1;border-radius:8px}.wizard-modal::-webkit-scrollbar-thumb{background:#ccc;border-radius:8px}.wizard-modal::-webkit-scrollbar-thumb:hover{background:#999}.wizard-close{position:absolute;top:1.5rem;right:1.5rem;background:#fff;border:1px solid #eee;cursor:pointer;color:#999;padding:.5rem;border-radius:50%;transition:all .2s;z-index:10}.wizard-close:hover{background:#f0f0f0;color:#333;border-color:#ddd}.wizard-step h2{text-align:center;color:#800020;margin-bottom:.5rem;font-size:1.8rem}.step-subtitle{text-align:center;color:#666;margin-bottom:2rem}.choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:600px){.choice-cards{grid-template-columns:1fr}}.choice-card{border:2px solid #eee;border-radius:12px;padding:2rem 1.5rem;text-align:center;cursor:pointer;transition:all .2s}.choice-card:hover{border-color:#800020;background:#fff8f8;transform:translateY(-2px)}.choice-icon{font-size:3rem;margin-bottom:1rem}.choice-card h3{font-size:1.3rem;margin-bottom:.5rem;color:#333}.choice-card p{font-size:.95rem;color:#666;line-height:1.5}.local-redirect-msg{text-align:center;padding:2rem}.local-redirect-msg p{font-size:1.1rem;margin-bottom:2rem;color:#444}.complex-form{background:#fafafa;padding:2rem;border-radius:12px}.form-section{margin-bottom:2.5rem;background:#fff;padding:1.5rem;border-radius:8px;border:1px solid #e0e0e0}.form-section h3{color:#800020;border-bottom:2px solid #eee;padding-bottom:.5rem;margin-bottom:1rem;font-size:1.2rem;display:flex;align-items:center;gap:.5rem}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:700px){.form-row-2{grid-template-columns:1fr}}.form-group label{display:block;margin-bottom:.4rem;font-weight:600;font-size:.9rem;color:#555}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:1px solid #ccc;border-radius:6px;font-size:.95rem}.form-group textarea{min-height:100px;resize:vertical}.checkbox-group{display:flex;flex-direction:column;gap:.5rem}.checkbox-label{display:flex;align-items:flex-start;gap:.5rem;cursor:pointer;font-size:.95rem;line-height:1.4}.checkbox-label input[type=checkbox]{margin-top:3px;width:16px;height:16px;accent-color:#800020}.section-note{font-size:.85rem;color:#777;margin-top:2rem;font-style:italic}.btn-block{width:100%;padding:14px;margin-top:1rem;font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:1px}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.events-page{font-family:Outfit,sans-serif;color:#333;overflow-x:hidden}.events-hero-section{position:relative;height:60vh;min-height:400px;background-image:url(/assets/hero_wedding-mdwIG8Y0.png);background-size:cover;background-position:center;background-attachment:fixed;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080}.hero-content{position:relative;z-index:2;padding:0 1rem;animation:fadeInUp 1s ease-out}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:1rem;letter-spacing:2px;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.hero-subtitle{font-size:1.5rem;margin-bottom:2rem;font-weight:300;opacity:.9}.btn-hero{background:#800020;color:#fff;padding:1rem 2rem;border:none;border-radius:50px;font-size:1.1rem;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all .3s ease}.btn-hero:hover{background:#a00028;transform:translateY(-3px);box-shadow:0 10px 20px #0003}.events-container{padding-top:4rem;padding-bottom:4rem}.event-section{display:flex;align-items:center;justify-content:space-between;gap:4rem;margin-bottom:6rem}.event-section.reverse{flex-direction:row-reverse}.event-image-wrapper{flex:1;position:relative;border-radius:12px;overflow:hidden;box-shadow:0 15px 30px #0000001a}.event-img{width:100%;height:auto;display:block;border-radius:12px;transition:transform .5s ease}.event-image-wrapper:hover .event-img{transform:scale(1.05)}.event-text-wrapper{flex:1}.event-text-wrapper h2{font-size:2.2rem;color:#800020;margin-bottom:1.5rem;position:relative;padding-bottom:1rem}.event-text-wrapper h2:after{content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background:#800020}.event-text-wrapper p{font-size:1.1rem;line-height:1.8;color:#555;margin-bottom:1.5rem;text-align:justify}.event-final-info{text-align:center}.event-final-info h3{font-size:2rem;margin-bottom:1.5rem;color:#333}.event-final-info p{max-width:700px;margin:0 auto 3rem;font-size:1.2rem;color:#666}.cta-section-cards{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.cta-card{background:#fff;padding:3rem 2rem;border-radius:16px;box-shadow:0 10px 30px #00000014;flex:1;min-width:300px;max-width:450px;transition:transform .3s ease,box-shadow .3s ease;border:1px solid #f0f0f0;display:flex;flex-direction:column;align-items:center;text-align:center;height:100%}.cta-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #80002026;border-color:#ffe6e6}.cta-card h3{color:#800020;margin-bottom:1.5rem;font-size:1.8rem;font-weight:700}.cta-card p{margin-bottom:2.5rem;font-size:1.05rem;color:#666;line-height:1.6;flex-grow:1}.cta-action-btn{width:100%;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.event-section,.event-section.reverse{flex-direction:column;gap:2rem;margin-bottom:4rem}.hero-title{font-size:2.5rem}.event-text-wrapper h2{font-size:1.8rem}}.blog-page{padding:4rem 0;background-color:#f9f9f9;min-height:80vh}.blog-header{text-align:center;margin-bottom:3rem}.blog-header h1{font-size:2.5rem;color:#222;margin-bottom:.5rem}.blog-header p{color:#666;font-size:1.1rem}.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.blog-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000014;transition:transform .3s ease;display:flex;flex-direction:column}.blog-card:hover{transform:translateY(-5px)}.blog-image{height:200px;overflow:hidden}.blog-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.blog-card:hover .blog-image img{transform:scale(1.05)}.blog-content{padding:1.5rem;display:flex;flex-direction:column;flex:1}.blog-content h3{font-size:1.3rem;margin-bottom:.75rem;color:#222;line-height:1.4}.blog-content p{color:#555;margin-bottom:1.5rem;line-height:1.6;flex:1}.read-more-btn{display:inline-flex;align-items:center;gap:.5rem;color:#8b0000;font-weight:600;text-decoration:none;transition:gap .2s}.read-more-btn:hover{gap:.8rem;text-decoration:underline}.blog-post-page{background-color:#fff;padding-bottom:4rem}.post-hero{height:400px;background-size:cover;background-position:center;position:relative;margin-bottom:3rem}.post-hero-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;text-align:center}.post-hero h1{color:#fff;font-size:3rem;max-width:800px;margin:0 auto;text-shadow:0 2px 4px rgba(0,0,0,.3)}.post-container{max-width:800px;margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#666;text-decoration:none;margin-bottom:2rem;font-weight:500}.back-link:hover{color:#8b0000}.post-body{font-size:1.15rem;line-height:1.8;color:#333}.post-body p{margin-bottom:1.5rem}.post-body h3{font-size:1.8rem;margin-top:2.5rem;margin-bottom:1rem;color:#222}.post-body ul{margin-bottom:1.5rem;padding-left:1.5rem}.post-body li{margin-bottom:.5rem}@media(max-width:768px){.post-hero{height:250px}.post-hero h1{font-size:2rem;padding:0 1rem}}.contact-header{background-color:var(--color-background-off);padding:5rem 0 3rem;text-align:center;margin-bottom:2rem;background-image:linear-gradient(#0009,#0009),url(https://images.unsplash.com/photo-1520607162513-77705c0f0d4a?ixlib=rb-1.2.1&auto=format&fit=crop&w=1920&q=80);background-size:cover;background-position:center;color:#fff}.contact-header .page-title{color:#fff;font-size:3.5rem;margin-bottom:1rem}.contact-header .page-subtitle{font-size:1.2rem;opacity:.9}@media(max-width:768px){.contact-header{padding:6rem 0 2rem}.contact-header .page-title{font-size:2rem}}.contact-content-vertical{display:flex;flex-direction:column;gap:4rem;padding-bottom:5rem}.info-top-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:-3rem;position:relative;z-index:10}.info-card{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 10px 30px #00000014;text-align:center;transition:transform .3s;border-bottom:3px solid var(--color-primary)}.info-card:hover{transform:translateY(-5px)}.info-icon{color:var(--color-primary);margin-bottom:1rem}.info-card h3{font-size:1.2rem;margin-bottom:.5rem;color:#333}.info-card p{color:#666;font-size:.95rem}.form-section-container{max-width:900px;margin:0 auto;width:100%}.form-heading{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:#222;font-family:var(--font-heading)}.complex-contact-form{background:#fff}.form-row{display:flex;gap:2rem;margin-bottom:1.5rem}.three-cols{display:grid;grid-template-columns:repeat(3,1fr)}.two-cols{display:grid;grid-template-columns:1fr 1fr}@media(max-width:768px){.three-cols,.two-cols{grid-template-columns:1fr;gap:1rem}.form-row{flex-direction:column}}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333;font-size:.95rem}.req{color:red}.form-group input[type=text],.form-group input[type=tel],.form-group input[type=email],.form-group input[type=number],.form-group input[type=date],.form-group textarea{width:100%;padding:.8rem;border:1px solid #e0e0e0;border-radius:4px;font-size:1rem;color:#555;background:#fcfcfc;transition:border-color .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#aaa}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);background:#fff}.group-label{display:block;margin-bottom:1rem;font-weight:500;font-size:1rem;color:#333}.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.checkbox-grid.horizontal{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.cb-item{display:flex;align-items:flex-start;gap:.5rem;font-weight:400!important;cursor:pointer;font-size:.95rem;color:#444}.cb-item input[type=checkbox]{margin-top:3px;width:16px;height:16px;border-color:#ccc}.full-width{grid-column:1 / -1}.agreement-text{font-size:.9rem;line-height:1.4;color:#333}.agreement-item{gap:1.5rem;align-items:baseline}.form-actions{margin-top:2rem}.btn-submit-offer{background-color:var(--color-primary);color:#fff;width:100%;padding:1rem;font-size:1.1rem;font-weight:700;border:none;border-radius:50px;text-transform:uppercase;cursor:pointer;transition:background-color .3s,transform .2s}.btn-submit-offer:hover{background-color:#8b0000;transform:translateY(-2px)}.terms-link{color:var(--color-primary);text-decoration:none;font-weight:700}.terms-link:hover{text-decoration:underline}.auth-page{min-height:80vh;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5;padding:2rem}.auth-card{background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 4px 20px #00000014;width:100%;max-width:450px;text-align:center}.auth-card h2{font-size:1.8rem;margin-bottom:2rem;color:#1a1a1a;font-weight:700}.form-group{margin-bottom:1.25rem;text-align:left}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#4a4a4a;font-size:.95rem}.form-group input{width:100%;padding:.75rem 1rem;border:1px solid #e1e1e1;border-radius:8px;font-family:inherit;font-size:1rem;transition:all .2s;background:#fafafa}.form-group input:focus{outline:none;border-color:#8b0000;background:#fff;box-shadow:0 0 0 3px #8b00001a}.auth-btn{width:100%;padding:.85rem;background-color:#8b0000;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;margin-top:1rem}.auth-btn:hover{background-color:#600}.auth-link{margin-top:1.5rem;font-size:.9rem;color:#666}.auth-link a{color:#8b0000;text-decoration:none;font-weight:600}.auth-link a:hover{text-decoration:underline}.account-page{padding:8rem 0 4rem;min-height:80vh;background-color:#f5f5f5}.account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:3rem}.account-header h1{font-size:2.5rem;color:#222}.btn-outline-dark{border:2px solid #333;color:#333;background:transparent;padding:.6rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s}.btn-outline-dark:hover{background:#333;color:#fff}.account-grid{display:grid;grid-template-columns:1fr 2fr;gap:2rem}.account-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 15px #0000000d}.account-card h3{font-size:1.4rem;margin-bottom:1.5rem;border-bottom:2px solid var(--color-accent);padding-bottom:.5rem;display:inline-block}.profile-info p{margin-bottom:1rem;font-size:1.1rem}.empty-state{color:#777;font-style:italic}@media(max-width:768px){.account-grid{grid-template-columns:1fr}.account-header{flex-direction:column;gap:1rem;text-align:center}}.product-details-page{padding-top:2rem;padding-bottom:4rem}.btn-back{background:none;border:none;display:flex;align-items:center;gap:.5rem;color:var(--color-text-light);font-size:1rem;cursor:pointer;margin-bottom:2rem;transition:color .2s}.btn-back:hover{color:var(--color-primary)}.product-details-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:768px){.product-details-grid{grid-template-columns:1fr 1fr;gap:4rem;align-items:start}}.product-image-large{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#fff}.product-gallery-thumbnails{display:flex;gap:10px;margin-top:1rem;overflow-x:auto;padding-bottom:5px}.gallery-thumb{width:70px;height:70px;object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;border:2px solid transparent;transition:all .2s;flex-shrink:0}.gallery-thumb.active{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.gallery-thumb:hover{transform:translateY(-2px)}.product-image-large img{width:100%;height:auto;object-fit:cover}.product-category-badge{display:inline-block;background-color:#f0f0f0;color:#666;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.product-title-large{font-family:var(--font-heading);font-size:2.5rem;margin-bottom:1rem;line-height:1.2}.product-price-large{font-size:2rem;color:var(--color-primary);font-weight:700;margin-bottom:1.5rem}.product-description-full{font-size:1.1rem;line-height:1.6;color:var(--color-text);margin-bottom:2rem}.product-meta{background-color:#fafafa;padding:1.5rem;border-radius:var(--radius-sm);margin-bottom:2rem}.product-meta p{margin-bottom:.5rem}.add-to-cart-section{display:flex;flex-direction:column;gap:1rem}@media(min-width:500px){.add-to-cart-section{flex-direction:row;align-items:center}}.qty-selector{display:flex;align-items:center;border:1px solid #ddd;border-radius:var(--radius-sm);overflow:hidden}.qty-btn{background:none;border:none;padding:.75rem 1rem;cursor:pointer;transition:background .2s}.qty-btn:hover{background-color:#f0f0f0}.qty-value{padding:0 1rem;font-weight:700;min-width:3rem;text-align:center}.btn-add-large{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;font-size:1.1rem}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;z-index:1000;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease-out}@media(max-width:768px){.lightbox-close{top:-40px;right:0}}.cart-page{padding-top:3rem;padding-bottom:5rem}.empty-cart{text-align:center;padding:5rem 0}.empty-cart h2{margin-bottom:1rem}.empty-cart p{margin-bottom:2rem;color:var(--color-text-light)}.page-title-small{font-size:2rem;margin-bottom:2rem;font-family:var(--font-heading)}.cart-grid{display:grid;grid-template-columns:1fr;gap:3rem}@media(min-width:992px){.cart-grid{grid-template-columns:1fr 350px}}.cart-items{display:flex;flex-direction:column;gap:1.5rem}.cart-item{display:flex;gap:1.5rem;padding:1.5rem;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center}.cart-item-image{width:100px;height:100px;flex-shrink:0;border-radius:var(--radius-sm);overflow:hidden}.cart-item-image img{width:100%;height:100%;object-fit:cover}.cart-item-details{flex:1}.cart-item-details h3{font-size:1.1rem;margin-bottom:.5rem}.cart-item-details h3 a{text-decoration:none;color:var(--color-text)}.item-price{color:var(--color-text-light);font-size:.95rem}.cart-item-actions{display:flex;align-items:center;gap:1.5rem}.qty-selector-small{display:flex;align-items:center;border:1px solid #ddd;border-radius:4px}.qty-btn-s{background:none;border:none;padding:.5rem;cursor:pointer;display:flex}.qty-selector-small span{padding:0 .5rem;font-weight:500;font-size:.9rem}.item-total{font-weight:700;color:var(--color-primary);min-width:80px;text-align:right}.btn-remove{background:none;border:none;color:#c00;cursor:pointer;opacity:.7;transition:opacity .2s}.btn-remove:hover{opacity:1}.cart-summary{background:#fff;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);height:fit-content}.cart-summary h3{margin-bottom:1.5rem;font-family:var(--font-heading)}.summary-row{display:flex;justify-content:space-between;margin-bottom:1rem;color:var(--color-text-secondary)}.summary-divider{height:1px;background:#eee;margin:1rem 0}.summary-row.total{font-weight:700;font-size:1.2rem;color:var(--color-text);margin-top:1rem;margin-bottom:2rem}.btn-checkout{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;margin-bottom:1rem}.continue-shopping{display:block;text-align:center;font-size:.9rem;color:var(--color-text-light);text-decoration:underline}@media(max-width:768px){.cart-item{flex-direction:column;align-items:flex-start}.cart-item-actions{width:100%;justify-content:space-between;margin-top:1rem}}.checkout-page{padding-top:3rem;padding-bottom:5rem}.checkout-grid{display:grid;grid-template-columns:1fr;gap:3rem}@media(min-width:992px){.checkout-grid{grid-template-columns:1fr 400px}}.checkout-form-section h2{margin-bottom:1.5rem;font-family:var(--font-heading);font-size:1.5rem}.form-row{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}@media(min-width:600px){.form-row.two-cols{flex-direction:row}.form-row.two-cols .form-group{flex:1}}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.8rem;border:1px solid #ccc;border-radius:4px;font-size:1rem}.mt-4{margin-top:2rem}.payment-options{display:flex;flex-direction:column;gap:1rem}.radio-option{padding:1rem;border:1px solid #ddd;border-radius:4px;display:flex;align-items:center;gap:.8rem;cursor:pointer;transition:all .2s}.radio-option:hover{border-color:var(--color-primary)}.radio-option.disabled{opacity:.6;cursor:not-allowed;background-color:#f9f9f9}.order-summary-card{background:#fafafa;padding:2rem;border-radius:var(--radius-md);border:1px solid #eee}.order-items-list{margin-bottom:1.5rem}.order-item-row{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:.5rem;color:#555;border-bottom:1px dashed #e0e0e0;padding-bottom:.5rem}.order-item-row:last-child{border-bottom:none}.btn-lg{padding:1.2rem;font-size:1.1rem}.mt-2{margin-top:1rem}.section-label{display:block;margin-bottom:.8rem;font-weight:600;font-size:1.1rem;color:var(--color-text)}.delivery-method-options{display:flex;gap:1rem;flex-wrap:wrap}.radio-card{flex:1;min-width:200px;border:2px solid #ddd;border-radius:var(--radius-md);padding:1.5rem 1rem;cursor:pointer;background:#fff;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;text-align:center}.radio-card:hover{border-color:var(--color-primary-light);background:snow;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.radio-card.active{border-color:var(--color-primary);background:#fff5f5;color:var(--color-primary);font-weight:700;box-shadow:0 4px 15px #8b000026;transform:translateY(-2px)}.radio-card input{margin:0;accent-color:var(--color-primary);transform:scale(1.2);margin-bottom:.2rem}.address-section{background:#fdfdfd;padding:1.5rem;border:1px solid #eee;border-radius:var(--radius-md);margin-bottom:1.5rem;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.section-subtitle{font-size:1.1rem;margin-bottom:1rem;color:#444;border-bottom:1px solid #eee;padding-bottom:.5rem}.disabled-input{background-color:#f0f0f0;color:#666;cursor:not-allowed;border-color:#ddd}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.company-details{background:#fdfdfd;padding:1.5rem;border:1px solid #eee;border-radius:var(--radius-md);margin-bottom:1rem;animation:slideDown .3s ease-out}.admin-login-page{min-height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;background-color:#f8fafc;position:fixed;top:0;left:0;z-index:1000}.admin-login-card{background:#fff;padding:3rem;border-radius:12px;box-shadow:0 10px 25px #0000000d;width:100%;max-width:420px;text-align:center;border:1px solid #e2e8f0}.admin-icon{background-color:var(--color-background-off);width:80px;height:80px;border-radius:50%;display:flex;justify-content:center;align-items:center;margin:0 auto 1.5rem;color:var(--color-primary)}.admin-login-card h2{margin-bottom:2rem;font-family:var(--font-heading)}.admin-dashboard{padding:3rem 0}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:1px solid #eee;padding-bottom:1rem}.admin-tabs{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.tab-btn{padding:.8rem 1.5rem;border:none;background:#fff;box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);cursor:pointer;font-weight:600;transition:all .2s}.tab-btn.active{background:var(--color-primary);color:#fff}.admin-table-wrapper{background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:1rem;text-align:left;border-bottom:1px solid #eee;vertical-align:middle}.admin-table th{background-color:#f9f9f9;font-weight:700}.admin-actions{display:flex;gap:.5rem}.actions-bar{display:flex;justify-content:flex-end;margin-bottom:1.5rem;align-items:center}.actions-bar h3{margin-right:auto;margin-bottom:0}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--color-text)}.form-control{width:100%;padding:.8rem;border:1px solid #ddd;border-radius:var(--radius-sm);font-family:inherit;font-size:1rem;transition:border-color .2s}.form-control:focus{border-color:var(--color-primary);outline:none}.form-row{display:flex;gap:1.5rem}.form-row.two-cols .form-group{flex:1}.venue-selector-compact{display:flex;align-items:center;gap:1rem;background:#fff;padding:1rem;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);margin-bottom:1.5rem}.venue-selector-compact label{margin:0!important;white-space:nowrap}.venue-selector-compact select{flex:1;max-width:300px}.btn-icon{background:none;border:none;cursor:pointer;padding:.6rem;border-radius:4px;transition:background .2s;color:var(--color-text-light)}.btn-icon.edit:hover{background-color:#e3f2fd;color:#1976d2}.btn-icon.delete:hover{background-color:#ffebee;color:#d32f2f}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background:#fff;padding:2.5rem;border-radius:var(--radius-md);width:90%;max-width:700px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:var(--shadow-xl)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:1px solid #eee;padding-bottom:1rem}.modal-header h3{margin:0;color:var(--color-primary)}.close-btn{background:none;border:none;cursor:pointer;font-size:1.5rem;color:var(--color-text-light);transition:color .2s}.close-btn:hover{color:var(--color-primary)}.venue-selector{margin-bottom:2rem}.venue-selector label{display:block;margin-bottom:.5rem;font-weight:700}.venue-selector select{width:100%;max-width:300px;padding:.8rem;border-radius:var(--radius-sm);border:1px solid #ddd}.calendar-admin-wrapper{max-width:450px;margin:0 auto;background:#fff;padding:2rem;border-radius:var(--radius-md);box-shadow:0 10px 30px #0000001a;border:1px solid #eee}.centered-tab{display:flex;justify-content:center}.availability-wrapper{background:#fff;padding:3rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;max-width:600px;width:100%}.react-calendar{width:100%!important;border:none!important;font-family:var(--font-body)!important;background:transparent!important}.react-calendar__tile--active{background:transparent!important;color:#000!important;font-weight:700}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#f0f0f0!important}.calendar-booked{background-color:#fcc!important;color:#c00!important;text-decoration:line-through}.calendar-available{background-color:transparent}.legend{display:flex;gap:1.5rem;justify-content:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #eee}.legend-item{display:flex;align-items:center;font-size:.9rem;color:#666}.dot{width:12px;height:12px;border-radius:50%;margin-right:.5rem;display:inline-block}.dot.available{background-color:#fff;border:1px solid #ccc}.dot.booked{background-color:#fcc;border:1px solid #cc0000}.product-thumb{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.btn-logout{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;background:#fff;border:1px solid #ddd;border-radius:var(--radius-sm);color:var(--color-text);font-size:.9rem;font-weight:600;transition:all .2s;cursor:pointer}.btn-logout:hover{background:#fff0f0;color:#d32f2f;border-color:#d32f2f}.categories-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-top:1rem}.category-item{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:1rem 1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid #eee;font-weight:600;transition:all .2s}.category-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.category-item span{font-size:1.05rem}.switch{position:relative;display:inline-block;width:50px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--color-primary)}input:focus+.slider{box-shadow:0 0 1px var(--color-primary)}input:checked+.slider:before{transform:translate(26px)}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;z-index:9999;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease-out}.lightbox-content{position:relative;max-width:90vw;max-height:90vh}.lightbox-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 0 20px #00000080;animation:zoomIn .3s ease-out}.lightbox-close{position:absolute;top:-40px;right:-40px;background:none;border:none;color:#fff;font-size:3rem;cursor:pointer;line-height:1;padding:0;transition:transform .2s,color .2s}.lightbox-close:hover{color:var(--color-primary);transform:scale(1.1)}.product-thumb{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-sm);box-shadow:0 1px 3px #0000001a;cursor:zoom-in;transition:transform .2s,box-shadow .2s}.product-thumb:hover{transform:scale(1.1);box-shadow:0 4px 6px #00000026}@keyframes zoomIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.admin-kitchen-container{display:flex;flex-direction:column;padding:2rem;height:100%;background-color:#f8fafc}.kitchen-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.header-title{display:flex;align-items:center;gap:1rem}.header-title h1{font-size:1.75rem;font-weight:800;color:#0f172a;margin:0}.date-picker-wrapper{display:flex;align-items:center;gap:.5rem;background:#fff;padding:.5rem 1rem;border-radius:8px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d}.date-input{border:none;font-size:1rem;color:#334155;outline:none;font-family:inherit;cursor:pointer}.loading-state,.empty-state{flex:1;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#64748b;font-weight:500}.kitchen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;overflow-y:auto;padding-bottom:2rem}.kitchen-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .2s,box-shadow .2s;border:1px solid #f1f5f9}.kitchen-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.card-image{position:relative;height:180px;background-color:#f1f5f9}.card-image img{width:100%;height:100%;object-fit:cover}.stock-badge{position:absolute;top:10px;right:10px;background:#0f172ad9;color:#fff;padding:.25rem .75rem;border-radius:9999px;font-weight:700;font-size:.875rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 2px 4px #0003}.card-content{padding:1.25rem}.card-content h3{margin:0 0 1rem;font-size:1.1rem;font-weight:700;color:#0f172a;line-height:1.4;height:3rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-actions{display:flex;gap:.5rem}.btn-info,.btn-calc{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem;border-radius:8px;border:none;font-weight:600;cursor:pointer;transition:background .2s;font-size:.9rem}.btn-info{background:#e2e8f0;color:#475569}.btn-info:hover{background:#cbd5e1}.btn-calc{background:#eff6ff;color:#2563eb}.btn-calc:hover{background:#dbeafe}.kitchen-modal{max-width:800px;width:90%;max-height:90vh;display:flex;flex-direction:column;padding:0;overflow:hidden;position:relative}.close-btn{position:absolute;top:1rem;right:1rem;background:#0000000d;border:none;cursor:pointer;padding:.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#64748b;transition:all .2s;z-index:10;width:48px;height:48px}.close-btn:hover{background:#dc26261a;color:#dc2626}.modal-header-kitchen{padding:1.5rem 4rem 1.5rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;gap:1.5rem;background:#f8fafc}.modal-prod-img{width:80px;height:80px;border-radius:8px;object-fit:cover;border:1px solid #e2e8f0}.category-tag{display:inline-block;background:#e0f2fe;color:#0284c7;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:.5rem}.modal-body-scroll{padding:1rem;overflow-y:auto;flex:1}.section{margin-bottom:.5rem}.section h3{display:flex;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;color:#334155;margin-bottom:.25rem;border-bottom:2px solid #f1f5f9;padding-bottom:.25rem}.section p{margin:0}.section ul{margin:0;padding-left:1.2rem}.recipe-instructions{background:#f8fafc;padding:.5rem;border-radius:8px;border:1px solid #e2e8f0;font-size:.95rem;line-height:1.4;color:#475569}.recipe-instructions p{margin:0}.internal-gallery{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem}.internal-gallery img{width:150px;height:100px;object-fit:cover;border-radius:8px;cursor:zoom-in;border:1px solid #e2e8f0;transition:transform .2s}.internal-gallery img:hover{transform:scale(1.05)}.calculator-controls{display:flex;gap:1rem;padding:1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:center}.calc-mode-btn{padding:.75rem 1.5rem;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#64748b;font-weight:600;cursor:pointer;transition:all .2s}.calc-mode-btn.active{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 4px 6px -1px #2563eb33}.ingredients-table-wrapper{padding:1.5rem;overflow-y:auto}.ingredients-table{width:100%;border-collapse:collapse}.ingredients-table th{text-align:left;padding:.75rem 1rem;background:#f1f5f9;color:#475569}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-img{max-width:100%;max-height:90vh;object-fit:contain;border-radius:4px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.lightbox-close{position:absolute;top:-3rem;right:-3rem;background:#ffffff1a;border:none;color:#fff;cursor:pointer;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s}.lightbox-close:hover{background:#fff3}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.admin-stock-container{padding:1rem}.stock-card{background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px #0000000d;border:1px solid #e2e8f0}.stock-filters-bar{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap;align-items:center;background:#f8fafc;padding:1rem;border-radius:8px;border:1px solid #f1f5f9}.stock-table-wrapper{overflow-x:auto}.stock-table{width:100%;border-collapse:collapse;font-size:.95rem}.stock-table th{background:#f1f5f9;padding:1rem;text-align:left;font-weight:700;color:#475569;border-bottom:2px solid #e2e8f0}.stock-table td{padding:1rem;border-bottom:1px solid #f1f5f9;color:#334155}.stock-table tr:hover{background-color:#f8fafc}.badge{padding:4px 8px;border-radius:6px;font-size:.85rem;font-weight:600;display:inline-block}.badge-location{background:#eff6ff;color:#2563eb}.badge-batch{background:#fefce8;color:#d97706;border:1px solid #fef08a;font-family:monospace}.expiry-ok{color:#16a34a;font-weight:600}.expiry-warning{color:#d97706;font-weight:700}.expiry-critical{color:#dc2626;font-weight:800;background:#fee2e2;padding:2px 6px;border-radius:4px}.stock-quantity{font-weight:700;font-size:1.1rem}.stock-value{color:#64748b;font-size:.9rem}.admin-reception-container{padding:1rem}.reception-card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px #0000000d;border:1px solid #e2e8f0}.reception-header-title{font-size:1.5rem;font-weight:700;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem;color:var(--color-text-heading, #1e293b)}.invoice-header-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid #f1f5f9}.lines-header{display:grid;grid-template-columns:3fr 1fr 1fr 2fr 2fr 1fr 50px;gap:1rem;margin-bottom:.5rem;font-weight:600;color:#64748b;font-size:.9rem;padding:0 1rem}.line-row{display:grid;grid-template-columns:3fr 1fr 1fr 2fr 2fr 1fr 50px;gap:1rem;align-items:center;background:#f8fafc;padding:1rem;border-radius:8px;margin-bottom:.5rem;border:1px solid transparent;transition:border-color .2s}.line-row:hover{border-color:#cbd5e1}.line-total{text-align:right;font-weight:700;color:#0f172a}.reception-footer{margin-top:2rem;display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;border-top:1px solid #f1f5f9}.total-general{font-size:1.25rem;font-weight:800;color:#0f172a}.btn-add-line{background:#eff6ff;color:#2563eb;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:background .2s}.btn-add-line:hover{background:#dbeafe}.btn-save-reception{background:#16a34a;color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-weight:700;font-size:1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 6px -1px #16a34a33}.btn-save-reception:hover{background:#15803d}.btn-remove-line{color:#ef4444;background:none;border:none;cursor:pointer;padding:4px;border-radius:4px}.btn-remove-line:hover{background:#fef2f2}.text-danger{color:#ef4444}.bg-warn{background-color:#fefce8}.bg-info{background-color:#eff6ff}.terms-container{max-width:900px;margin:0 auto;padding-top:120px;font-family:Open Sans,Helvetica Neue,sans-serif;color:#444;font-size:1.05rem;line-height:1.8}.terms-header-title{font-weight:700;color:#2c3e50;margin-bottom:.5rem;padding-bottom:1rem;border-bottom:1px solid #eee}.terms-update-date{font-style:italic;color:#7f8c8d;font-size:.9rem;margin-bottom:3rem}.terms-toc{background-color:#f8f9fa;border-radius:8px;padding:2rem;margin-bottom:3rem;border-left:5px solid #c0392b;box-shadow:0 2px 15px #0000000d}.terms-toc h4{font-weight:600;color:#333;margin-bottom:1rem}.terms-toc ul{padding-left:1.2rem}.terms-toc li{margin-bottom:.5rem;font-weight:500;color:#555;transition:color .2s}.terms-toc li:hover{color:#c0392b;cursor:pointer}.terms-section{margin-bottom:4rem;padding-bottom:2rem;border-bottom:1px dashed #eee}.terms-section:last-child{border-bottom:none}.terms-section h3{font-size:1.4rem;font-weight:700;color:#2c3e50;margin-bottom:1.5rem;margin-top:2rem;position:relative;padding-left:15px}.terms-section h3:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:4px;background-color:#c0392b;border-radius:2px}.terms-section h4{font-size:1.2rem;font-weight:600;color:#34495e;margin-top:1.5rem;margin-bottom:1rem}.terms-section p{margin-bottom:1.2rem;text-align:justify}.terms-section ul,.terms-section ol{margin-bottom:1.5rem;padding-left:2rem}.terms-section li{margin-bottom:.5rem}.terms-link{color:#c0392b;text-decoration:none;font-weight:500;transition:color .2s}.terms-link:hover{color:#a93226;text-decoration:underline}.alert-info-custom{background-color:#e8f6f3;border-left:4px solid #1abc9c;padding:1rem;border-radius:4px;margin:1.5rem 0;color:#16a085}.highlight-box{background-color:#fff8e1;padding:1rem 1.5rem;border-radius:6px;border:1px solid #ffe0b2;margin:1.5rem 0}
