@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";:root{--color-bg: #121212;--color-surface: #1a1a1a;--color-primary: #d4af37;--color-text: #e8e8e8;--color-text-muted: #a0a0a0;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--spacing-section: 5rem}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.7;-webkit-font-smoothing:antialiased;letter-spacing:.2px}.app,.restaurant-page{overflow:visible}.restaurant-page{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);margin-bottom:1rem;letter-spacing:.5px}a{text-decoration:none;color:inherit;transition:color .3s ease}a:hover{color:var(--color-primary)}button{cursor:pointer;border:none;font-family:var(--font-body)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.section{padding:var(--spacing-section) 0}.text-center{text-align:center}.text-gold{color:var(--color-primary)}.flex{display:flex}.grid{display:grid}.justify-between{justify-content:space-between}.items-center{align-items:center}.gap-4{gap:1rem}.gap-8{gap:2rem}.btn{padding:14px 28px;border:1px solid var(--color-primary);background:transparent;color:var(--color-primary);text-transform:uppercase;letter-spacing:1.5px;font-weight:500;border-radius:4px;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-block}.btn:hover{background:var(--color-primary);color:var(--color-bg);transform:translateY(-2px);box-shadow:0 4px 15px #d4af3740}.btn-primary{background:var(--color-primary);color:#121212}.btn-primary:hover{background:#fdf5d3;color:#121212;border-color:#fdf5d3;box-shadow:0 6px 20px #d4af3759}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:background .3s ease,padding .3s ease;padding:20px 0}.navbar.scrolled{background:#121212bf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 4px 30px #0006;border-bottom:1px solid rgba(255,255,255,.05);padding:12px 0}.nav-container{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:10px;font-family:var(--font-heading);font-size:1.5rem;font-weight:700;color:#fff}.logo-icon{color:var(--color-primary)}.nav-menu.desktop{display:flex;list-style:none;gap:30px}.nav-menu.desktop a{font-size:.9rem;letter-spacing:1px;text-transform:uppercase}.menu-toggle{display:none;color:#fff;cursor:pointer}.mobile-menu{position:absolute;top:100%;left:0;width:100%;background:var(--color-surface);padding:20px;transform:translateY(-150%);transition:transform .3s ease;z-index:-1;text-align:center}.mobile-menu.active{transform:translateY(0);box-shadow:0 5px 15px #00000080}.mobile-menu ul{list-style:none;display:flex;flex-direction:column;gap:20px}@media(max-width:768px){.nav-menu.desktop{display:none}.menu-toggle{display:block}}.hero{height:100vh;width:100%;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;justify-content:center;text-align:center}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000073}.hero-content{position:relative;z-index:10;color:#fff;animation:fadeInUp 1s ease-out}.hero-content h1{font-size:3.5rem;margin-bottom:20px;line-height:1.2;position:relative;top:-190px}.hero-content p{font-size:1.2rem;margin-bottom:40px;color:#ddd;position:relative;top:-190px}.hero-content .btn{position:relative;top:85px}@media(max-width:768px){.hero-content h1{font-size:2.5rem;top:0}.hero-content p,.hero-content .btn{top:0}}.bg-surface{background-color:var(--color-surface)}.divider{width:60px;height:3px;background-color:var(--color-primary);margin:20px auto}.about-text{max-width:800px;margin:0 auto;font-size:1.2rem;color:var(--color-text-muted)}.brands-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:40px}.brand-card{background:var(--color-surface);border-radius:8px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.brand-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000004d}.brand-image{height:200px;position:relative;overflow:hidden}.brand-img-element{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.brand-card:hover .brand-img-element{transform:scale(1.05)}.brand-card.theme-salinas .brand-img-element{object-position:center 25%}.brand-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.brand-card:hover .brand-overlay{opacity:1}.brand-info{padding:20px}.brand-info h3{margin-bottom:10px;font-size:1.5rem}.brand-info p{font-size:.95rem;color:var(--color-text-muted)}.btn-outline{display:flex;align-items:center;padding:10px 20px;border:1px solid white;color:#fff;text-transform:uppercase;font-weight:600;border-radius:4px}.btn-outline:hover{background:#fff;color:#000}.opportunities-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}@media(max-width:768px){.opportunities-grid{grid-template-columns:1fr;gap:40px}}.opportunity-col{text-align:center;padding:40px;border:1px solid rgba(255,255,255,.05);border-radius:8px;background:#ffffff05;transition:background .3s ease}.opportunity-col:hover{background:#ffffff0d}.icon-wrapper{color:var(--color-primary);margin-bottom:20px}.intro-text{margin-bottom:20px;color:var(--color-text-muted)}.job-list{list-style:none;margin-bottom:30px}.job-list li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.1)}.contact-box{margin-top:20px}.contact-box strong{display:block;margin:5px 0;color:#fff}.contact-box a{color:var(--color-primary)}.footer{background-color:#0a0a0a;padding:60px 0 20px;color:#888}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:40px;margin-bottom:40px}.footer-col h3{color:#fff;margin-bottom:20px;font-size:1.2rem}.social-links{display:flex;gap:15px;margin-top:20px}.social-links a{color:#fff;transition:color .3s ease}.social-links a:hover{color:var(--color-primary)}.contact-list{list-style:none}.contact-list li{display:flex;gap:10px;margin-bottom:15px;align-items:flex-start}.legal-links{list-style:none}.legal-links li{margin-bottom:10px}.footer-bottom{text-align:center;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);font-size:.9rem}.restaurant-hero{height:50vh;min-height:400px;background-size:cover;background-position:center;position:relative;display:flex;align-items:center;color:#fff;margin-top:-80px}.theme-salinas .restaurant-hero{background-position:center 25%}.restaurant-hero .overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009}.restaurant-hero .content{position:relative;z-index:1}.restaurant-hero h1{font-size:3.5rem;margin-bottom:.5rem;font-weight:700;color:var(--color-primary)}.restaurant-hero .lead{font-size:1.25rem;opacity:.95;max-width:600px;color:var(--color-text)}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#ffffffe6;text-decoration:none;margin-bottom:1.5rem;font-weight:500;font-size:.9rem;transition:transform .2s,color .2s}.back-link:hover{transform:translate(-3px);color:var(--color-primary)}.restaurant-nav{background:var(--color-surface);border-bottom:1px solid rgba(255,255,255,.05);box-shadow:0 4px 6px -1px #0003;position:relative;z-index:90;width:100%}.restaurant-nav.fixed-nav{position:fixed;top:80px;left:0;z-index:95;animation:slideDown .2s ease-out forwards}@keyframes slideDown{0%{transform:translateY(-10px);opacity:.9}to{transform:translateY(0);opacity:1}}.nav-tabs{display:flex;gap:2rem;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;scrollbar-width:none}.nav-tabs::-webkit-scrollbar{display:none}.nav-tab{background:none;border:none;padding:1.5rem 0;font-size:1rem;font-weight:500;color:var(--color-text-muted);cursor:pointer;position:relative;transition:color .3s;white-space:nowrap}.nav-tab:hover{color:var(--color-primary)}.nav-tab.active{color:var(--color-primary);font-weight:600}.nav-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--color-primary)}.restaurant-grid{display:grid;grid-template-columns:2fr 1fr;gap:4rem;align-items:start}.main-content{min-height:max(100vh,800px);animation:fadeInUp .6s ease-out forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.main-content .lead-text{font-size:1.2rem;line-height:1.6;color:var(--color-text);margin-bottom:1.5rem}.main-content p{color:var(--color-text-muted)}.info-card{background:var(--color-surface);padding:2rem;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0003;border:1px solid rgba(255,255,255,.05)}.sidebar{position:-webkit-sticky;position:sticky;top:150px;align-self:start;max-height:calc(100vh - 150px);overflow-y:auto}.info-card h3{margin-bottom:1.5rem;font-size:1.25rem;color:var(--color-primary)}.info-list{list-style:none;padding:0;margin:0 0 2rem}.info-list li{display:flex;gap:1rem;margin-bottom:1.25rem;color:var(--color-text-muted);font-size:.95rem}.info-list li svg{color:var(--color-primary);flex-shrink:0}.full-width{width:100%}.menu-section{display:grid;gap:3rem;margin-bottom:3rem}.menu-category{background:var(--color-surface);padding:2.5rem;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.05);margin-bottom:3rem;box-shadow:0 10px 30px #0003}.menu-category h3{font-size:1.8rem;margin-bottom:2.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(255,255,255,.05);color:var(--color-primary);text-align:center;letter-spacing:2px;text-transform:uppercase}.menu-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.menu-item{background:#ffffff05;padding:1.5rem;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.03);border-left:3px solid transparent;transition:all .3s ease;display:flex;flex-direction:column;justify-content:center}.menu-item:hover{transform:translateY(-4px);background:#ffffff0d;border-left-color:var(--color-primary);border-color:#ffffff1a;box-shadow:0 8px 24px #00000026}.menu-item-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.75rem;gap:1rem}.menu-item h4{font-size:1.15rem;color:var(--color-text);margin:0;font-weight:600}.menu-item .price{font-weight:700;color:var(--color-primary);font-size:1.1rem;white-space:nowrap}.menu-item p{color:var(--color-text-muted);font-size:.95rem;margin:0;line-height:1.6}.menu-banner-grid{display:flex;flex-direction:column;gap:3rem;max-width:900px;margin:0 auto}.menu-banner-card{position:relative;height:300px;border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 10px 30px #0006;transition:transform .4s ease,box-shadow .4s ease}.menu-banner-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0009}.menu-banner-image{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;transition:transform .6s ease}.menu-banner-card:hover .menu-banner-image{transform:scale(1.05)}.menu-banner-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to right,#000c,#0006,#000c);z-index:1}.menu-banner-content{position:relative;z-index:2;text-align:center;color:#fff;padding:2rem;border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-md);background:#0000004d;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .3s ease,border-color .3s ease}.menu-banner-card:hover .menu-banner-content{background:#00000080;border-color:var(--color-primary)}.menu-banner-content h3{font-size:2rem;margin:0 0 .5rem;letter-spacing:2px;text-transform:uppercase}.menu-banner-content .open-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-primary);font-weight:500;font-size:1.1rem;margin-top:1rem}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}.news-card{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal);display:flex;flex-direction:column}.news-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.news-card.clickable{cursor:pointer}.news-card.clickable:hover .news-image{transform:scale(1.05)}.news-image{height:280px;background-size:cover;background-position:center 30%;transition:transform var(--transition-normal)}.news-content-preview{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.news-snippet{color:var(--color-text-muted);font-size:.95rem;line-height:1.5;margin-top:.5rem}.news-modal{max-width:1200px}.news-modal .product-modal-image{width:60%;min-height:50vh;height:auto;background-size:contain;background-position:center;background-repeat:no-repeat}.news-modal .product-modal-details{width:40%;padding:3rem 2.5rem 2rem;overflow-y:auto;justify-content:flex-start}.news-header{display:flex;align-items:center;gap:.5rem;color:var(--color-primary);font-size:.875rem;font-weight:500;margin-bottom:1rem}.news-card h3{margin-bottom:.75rem;font-size:1.25rem;color:var(--color-text)}.news-card p{color:var(--color-text-muted);line-height:1.6}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.gallery-item{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4/3;box-shadow:0 4px 6px -1px #0003;cursor:pointer;transition:transform .3s}.gallery-item:hover{transform:scale(1.02)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.1)}.lightbox-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000e6;z-index:2000;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;animation:fadeInModal .3s ease forwards}.lightbox-image{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 10px 40px #00000080;-webkit-user-select:none;user-select:none}.lightbox-close{position:absolute;top:30px;right:40px;background:transparent;border:none;color:#fff;cursor:pointer;transition:transform .2s,color .2s;z-index:2010}.lightbox-close:hover{color:var(--color-primary);transform:scale(1.1)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;width:60px;height:60px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background .2s,transform .2s;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2010}.lightbox-nav:hover{background:#fff3;transform:translateY(-50%) scale(1.1);color:var(--color-primary)}.lightbox-nav.prev{left:40px}.lightbox-nav.next{right:40px}.lightbox-counter{position:absolute;bottom:30px;left:50%;transform:translate(-50%);color:#fff;font-size:1.1rem;font-weight:500;background:#00000080;padding:8px 16px;border-radius:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media(max-width:768px){.lightbox-nav{width:40px;height:40px}.lightbox-nav.prev{left:10px}.lightbox-nav.next{right:10px}.lightbox-image{max-width:100vw}}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem}.shop-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 4px 6px -1px #0003;border:1px solid rgba(255,255,255,.05);transition:transform .2s}.shop-card:hover{transform:translateY(-5px);box-shadow:0 8px 12px -1px #0000004d;border-color:var(--color-primary)}.shop-image{height:200px;background-size:cover;background-position:center}.shop-info{padding:1.5rem}.shop-info h3{font-size:1.1rem;margin-bottom:1rem;color:var(--color-text)}.shop-footer{display:flex;justify-content:space-between;align-items:center}.shop-footer .price{font-weight:700;color:var(--color-primary);font-size:1.1rem}@media(max-width:768px){.restaurant-grid{grid-template-columns:1fr;gap:2rem}.restaurant-hero h1{font-size:clamp(2rem,10vw,3rem);padding-top:clamp(3rem,15vh,7rem)}.nav-tabs{gap:1.5rem}.sidebar{position:static}.mobile-reservation-btn{display:block!important}.desktop-reservation-btn{display:none!important}.menu-category{padding:1.5rem 1rem;margin-bottom:2rem}.menu-items{grid-template-columns:1fr;gap:1rem}.menu-category h3{font-size:1.5rem;margin-bottom:1.5rem}.menu-banner-grid{gap:1.5rem}.menu-banner-card{height:220px}.menu-banner-content{padding:1rem}.menu-banner-content h3{font-size:1.4rem}.news-grid{grid-template-columns:1fr;gap:1.25rem}.news-image{height:190px}.news-card h3{font-size:1.05rem}.news-modal .product-modal-image,.news-modal .product-modal-details{width:100%!important;min-height:unset!important}.stellplatz-main-heading{font-size:clamp(1.4rem,5vw,2.5rem)!important}.stellplatz-section-heading{font-size:clamp(1.2rem,4.5vw,2rem)!important}.stellplatz-feature-grid{grid-template-columns:1fr 1fr!important;gap:1rem!important}.stellplatz-price-row{flex-direction:column!important;align-items:flex-start!important;gap:.25rem!important}.info-card{padding:1.5rem!important}.stellplatz-cta-group{flex-direction:column!important}.stellplatz-booking-form{flex-direction:column!important;align-items:stretch!important;gap:12px!important}.stellplatz-booking-form button{width:100%!important;height:48px!important;margin-top:5px}.stellplatz-checkout-form-container{margin-top:1rem!important}.stellplatz-checkout-form-container button[type=submit]{margin-bottom:2.5rem!important}}.stellplatz-booking-form{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-bottom:2rem}.stellplatz-booking-form input[type=date],.stellplatz-checkout-form-container input{width:100%;padding:12px 14px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#e8e8e8;font-size:.95rem;outline:none;font-family:inherit;transition:border-color .2s,background-color .2s;box-sizing:border-box}.stellplatz-booking-form input[type=date]:focus,.stellplatz-checkout-form-container input:focus{border-color:var(--color-primary, #d4af37);background:#ffffff14}.theme-salinas .stellplatz-booking-form input[type=date],.theme-salinas .stellplatz-checkout-form-container input{background:#fff;border:1px solid rgba(0,0,0,.15);color:#1a1a1a}.theme-salinas .stellplatz-booking-form input[type=date]:focus,.theme-salinas .stellplatz-checkout-form-container input:focus{border-color:var(--color-primary, #dc2626);background:#fff}.theme-salinas{--color-primary: #dc2626;--color-bg: #ebd9c3;--color-surface: #ebd9c3;--color-text: #1a1a1a;--color-text-muted: #4a4a4a}.theme-salinas .restaurant-hero .lead{color:var(--color-bg);opacity:1}.theme-salinas .btn-primary{box-shadow:0 6px 16px #0000001f!important}.theme-salinas .btn-primary:hover{box-shadow:0 8px 20px #0000002e!important}.cart-floating-btn{position:fixed;bottom:30px;right:30px;background:var(--color-primary);color:var(--color-bg);width:60px;height:60px;border-radius:50%;display:flex;justify-content:center;align-items:center;box-shadow:0 4px 12px #0000004d;z-index:1000;cursor:pointer;transition:transform .3s;border:none}.cart-floating-btn:hover{transform:scale(1.05)}.cart-badge{position:absolute;top:5px;right:5px;background:#e74c3c;color:#fff;font-size:.75rem;font-weight:700;border-radius:50%;width:20px;height:20px;display:flex;justify-content:center;align-items:center}.cart-sidebar{position:fixed;top:0;right:-400px;width:400px;max-width:100vw;height:100vh;background:#1a1a1ad9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid rgba(255,255,255,.08);box-shadow:-10px 0 35px #00000080;z-index:1002;transition:right .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}.theme-salinas .cart-sidebar{background:#ebd9c3d9;border-left:1px solid rgba(0,0,0,.08)}.cart-sidebar.open{right:0}.cart-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.cart-sidebar-header h3{margin:0}.close-cart{background:none;border:none;color:var(--color-text);cursor:pointer;transition:color .3s}.close-cart:hover{color:var(--color-primary)}.cart-items{flex-grow:1;overflow-y:auto;padding:20px}.empty-cart{text-align:center;color:var(--color-text-muted);margin-top:50px}.cart-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.05)}.cart-item-info h4{margin:0 0 5px;font-size:1rem}.cart-item-price{color:var(--color-primary);font-weight:700}.cart-item-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.quantity-controls{display:flex;align-items:center;gap:10px;background:#ffffff0d;border-radius:4px;padding:5px}.quantity-controls button{background:none;border:none;color:var(--color-text);cursor:pointer;display:flex;align-items:center;justify-content:center}.quantity-controls button:hover{color:var(--color-primary)}.remove-item{background:none;border:none;color:#e74c3c;cursor:pointer;transition:opacity .3s}.remove-item:hover{opacity:.8}.cart-footer{padding:20px;border-top:1px solid rgba(255,255,255,.1);background:transparent}.cart-total{display:flex;justify-content:space-between;font-size:1.25rem;font-weight:700;margin-bottom:20px}.cart-total span:last-child{color:var(--color-primary)}.cart-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0006;z-index:1001;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:backdrop-filter .3s ease,background-color .3s ease}.product-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:1003;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;justify-content:center;align-items:center;opacity:0;animation:fadeInModal .3s cubic-bezier(.16,1,.3,1) forwards}.product-modal-overlay.closing{animation:fadeOutModal .3s ease forwards}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}@keyframes fadeOutModal{0%{opacity:1}to{opacity:0}}.product-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#1a1a1acc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);width:90%;max-width:900px;border-radius:var(--radius-lg);box-shadow:0 20px 50px #0009;border:1px solid rgba(255,255,255,.08);z-index:1004;display:flex;flex-direction:row;max-height:90vh;opacity:0;transform:translate(-50%,-45%) scale(.95);animation:slideUpModal .4s cubic-bezier(.16,1,.3,1) forwards}.theme-salinas .product-modal{background:#ebd9c3d9;border:1px solid rgba(0,0,0,.08)}.product-modal.closing{animation:slideDownModal .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUpModal{to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes slideDownModal{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-45%) scale(.95)}}.product-modal-image{width:50%;min-height:400px;background-size:cover;background-position:center 20%;border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.product-modal-details{width:50%;padding:40px;display:flex;flex-direction:column;justify-content:center;overflow-y:auto}.product-modal h2{font-size:2rem;margin-bottom:15px;color:var(--color-text)}.product-modal-description{font-size:1rem;color:var(--color-text-muted);line-height:1.6;margin-bottom:20px}.product-variants{margin-bottom:30px}.product-variants h4{margin-bottom:10px;font-size:1rem;color:var(--color-text)}.variant-buttons{display:flex;gap:10px;flex-wrap:wrap}.variant-btn{padding:8px 16px;background:transparent;border:1px solid rgba(255,255,255,.2);color:var(--color-text);border-radius:4px;cursor:pointer;transition:all .2s}.variant-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.variant-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg);font-weight:700}.product-modal-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;margin-top:auto;border-top:1px solid rgba(255,255,255,.1)}.product-modal-price{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.close-modal{position:absolute;top:15px;right:15px;background:#00000080;color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background .3s;z-index:10}.close-modal:hover{background:var(--color-primary)}@media(max-width:768px){.product-modal{flex-direction:column;max-width:500px}.product-modal-image{width:100%;min-height:250px;height:250px}.product-modal-details{width:100%;padding:25px}}.reservation-modal{background-color:var(--color-bg);border:2px solid var(--color-primary);box-shadow:0 25px 50px -12px #000000b3;border-radius:var(--radius-lg);margin-top:15px}.reservation-modal .close-modal{background:var(--color-primary);color:var(--color-bg);top:-15px;right:-15px;box-shadow:0 4px 12px #00000080;border:3px solid var(--color-bg);z-index:20}.reservation-modal .close-modal:hover{transform:scale(1.1);background:var(--color-text);color:var(--color-bg)}.reservation-modal h2{font-size:1.5rem;margin:0;text-align:center;color:var(--color-primary)}.reservation-modal .product-modal-details{border-radius:var(--radius-lg);overflow:hidden}.reservation-modal .product-modal-details>div:first-child{background:var(--color-surface);display:flex;justify-content:center;align-items:center;box-shadow:0 4px 6px -1px #0000001a;z-index:1;border-bottom:2px solid var(--color-primary)}.reservation-modal .product-modal-details>div:last-child{background-color:#fff;border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}@media(max-width:768px){.reservation-modal{width:100%!important;height:100vh!important;height:100dvh!important;max-width:100%!important;margin:0!important;border-radius:0!important;border:none!important}.reservation-modal .product-modal-details{border-radius:0!important}.reservation-modal .product-modal-details>div:last-child{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.reservation-modal .close-modal{top:15px;right:15px;transform:scale(.9)}}.mobile-reservation-btn{display:none}.desktop-reservation-btn{display:block}.bf-page{min-height:100vh;display:flex;flex-direction:column;font-family:Arial,sans-serif;background:var(--bf-bg);color:var(--bf-text);transition:background-color .3s,color .3s}.bf-page.theme-salinas{--bf-primary: #dc2626;--bf-bg: #ebd9c3;--bf-surface: #f5e8d9;--bf-text: #1a1a1a;--bf-text-muted: #4a4a4a;--bf-border: rgba(0, 0, 0, .08);--bf-hero-overlay: rgba(0, 0, 0, .4)}.bf-page.theme-brauwerk{--bf-primary: #d4af37;--bf-bg: #0d0b08;--bf-surface: rgba(255, 255, 255, .03);--bf-text: #f0e8d5;--bf-text-muted: rgba(240, 232, 213, .7);--bf-border: rgba(212, 175, 55, .15);--bf-hero-overlay: rgba(13, 11, 8, .7)}.bf-hero{height:70vh;min-height:500px;position:relative;display:flex;align-items:center;justify-content:center;margin-top:60px;background-color:var(--color-bg)}.bf-hero-background{position:absolute;inset:0;display:grid;grid-template-columns:2fr 1.5fr;grid-template-rows:1fr 1fr;gap:0;z-index:0}.bf-hero-img-pane{background-size:cover;background-position:center;transition:transform .5s ease}.bf-hero-img-pane.pane-0{grid-row:span 2}.bf-hero-overlay{position:absolute;inset:0;background:var(--bf-hero-overlay);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:1}.bf-hero-content{position:relative;z-index:2;text-align:center;padding:3rem 2rem;max-width:800px}.bf-back-link{display:inline-flex;align-items:center;gap:8px;color:#ffffffd9;text-decoration:none;font-size:.85rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:2rem;transition:color .3s}.bf-back-link:hover{color:var(--bf-primary)}.bf-hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:300;line-height:1.15;letter-spacing:2px;margin:0 0 1rem;font-family:Georgia,serif;color:var(--bf-primary);text-shadow:0 2px 10px rgba(0,0,0,.5)}.bf-hero-sub{font-size:1.1rem;color:#fffffff2;line-height:1.6;max-width:600px;margin:0 auto}.bf-body{flex:1;padding:5rem 0}.bf-container{max-width:1100px;margin:0 auto;padding:0 2rem}.bf-section-heading{text-align:center;margin-bottom:3.5rem}.bf-section-heading h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:300;color:var(--bf-text);margin:0;font-family:Georgia,serif}.bf-section-heading .sun-rule{display:flex;align-items:center;justify-content:center;gap:12px;margin:1rem auto}.bf-section-heading .sun-rule span{display:block;height:1px;width:60px;background:linear-gradient(90deg,transparent,var(--bf-primary),transparent)}.bf-section-heading .sun-rule svg{color:var(--bf-primary);flex-shrink:0}.bf-highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:5rem}.bf-highlight-card{background:var(--bf-surface);border:1px solid var(--bf-border);border-radius:16px;padding:1.5rem 1.8rem;display:flex;align-items:center;gap:1rem;box-shadow:0 4px 15px #00000005;transition:transform .3s,box-shadow .3s,border-color .3s}.bf-highlight-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #0000001a;border-color:var(--bf-primary)}.bf-highlight-card .icon{font-size:1.6rem;flex-shrink:0}.bf-highlight-card p{color:var(--bf-text);font-size:1rem;line-height:1.5;margin:0}.bf-info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:5rem}.bf-info-card{background:var(--bf-surface);border:1px solid var(--bf-border);border-radius:16px;padding:2.5rem 1.5rem;text-align:center;transition:border-color .3s}.bf-info-card:hover{border-color:var(--bf-primary)}.bf-info-card svg{color:var(--bf-primary);margin-bottom:1.2rem}.bf-info-card h4{font-size:.8rem;letter-spacing:3px;text-transform:uppercase;color:var(--bf-primary);margin:0 0 1rem}.bf-info-card p{color:var(--bf-text-muted);font-size:1rem;line-height:1.6;margin:0}.bf-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;gap:1rem;margin-bottom:5rem;border-radius:20px;overflow:hidden;box-shadow:0 20px 40px #0000001a}.bf-gallery-item{overflow:hidden;position:relative;background:var(--bf-surface)}.bf-gallery-item:first-child{grid-row:1 / 3}.bf-gallery-item img{width:100%;height:100%;object-fit:cover;display:block;min-height:250px;transition:transform .6s ease}.bf-gallery-item:hover img{transform:scale(1.05)}.bf-cta{text-align:center;padding:4rem 2rem;background:var(--bf-surface);border:1px solid var(--bf-primary);border-radius:24px;box-shadow:0 10px 30px #0000000a}.bf-cta h2{font-size:2rem;font-weight:300;color:var(--bf-text);margin:0 0 1rem;font-family:Georgia,serif}.bf-cta-btn{display:inline-flex;align-items:center;gap:10px;background:var(--bf-primary);color:#fff;border:none;padding:1.1rem 3rem;border-radius:50px;font-size:1rem;font-weight:700;cursor:pointer;letter-spacing:1px;text-transform:uppercase;transition:transform .3s,box-shadow .3s,filter .3s;margin-top:1.5rem}.theme-brauwerk .bf-cta-btn{color:#1a1208;background:linear-gradient(135deg,#d4af37,#b8922a)}.bf-cta-btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px #00000026;filter:brightness(1.1)}.bf-modal-overlay{position:fixed;inset:0;background:#000000bf;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.bf-modal{background:var(--bf-bg);border:1px solid var(--bf-border);border-radius:20px;width:95%;max-width:1000px;height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 40px 80px #0006}.bf-modal-header{padding:1.5rem 2rem;border-bottom:1px solid var(--bf-border);display:flex;align-items:center;justify-content:space-between}.bf-modal-header h2{font-size:1.2rem;font-weight:400;color:var(--bf-primary);margin:0}.bf-modal-close{background:var(--bf-surface);border:1px solid var(--bf-border);color:var(--bf-text);width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.bf-modal-close:hover{background:var(--bf-primary);color:#fff}.bf-modal-iframe{flex:1;width:100%;border:none;display:block}@media(max-width:900px){.bf-info-row{grid-template-columns:1fr 1fr}.bf-gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto}.bf-gallery-item:first-child{grid-column:1 / -1}}@media(max-width:768px){.bf-modal{width:100%!important;height:100vh!important;height:100dvh!important;max-width:100%!important;border-radius:0!important;border:none!important;margin:0!important}.bf-modal-overlay{padding:0!important}.bf-modal-header{padding:1rem!important}}@media(max-width:600px){.bf-info-row{grid-template-columns:1fr}}.dft-page{min-height:100vh;display:flex;flex-direction:column;background:#0d0b08;color:#f0e8d5;font-family:Georgia,serif}.dft-hero{height:75vh;min-height:480px;background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;justify-content:center;margin-top:60px;overflow:hidden}.dft-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,#0d0b0833,#0d0b0866,#0d0b08f2);z-index:1}.dft-hero-content{position:relative;z-index:2;text-align:center;padding:3rem 2rem 4rem;max-width:750px}.dft-back-link{display:inline-flex;align-items:center;gap:8px;color:#d4af37cc;text-decoration:none;font-size:.85rem;letter-spacing:2px;text-transform:uppercase;font-family:Arial,sans-serif;margin-bottom:1.5rem;transition:color .3s}.dft-back-link:hover{color:#d4af37}.dft-hero-eyebrow{font-family:Arial,sans-serif;font-size:.75rem;letter-spacing:4px;text-transform:uppercase;color:#d4af37;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;gap:12px}.dft-hero-eyebrow:before,.dft-hero-eyebrow:after{content:"";display:block;width:40px;height:1px;background:#d4af37}.dft-hero-title{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:300;color:#fff;line-height:1.15;letter-spacing:2px;margin:0 0 1rem;text-shadow:0 4px 20px rgba(0,0,0,.5)}.dft-hero-sub{font-size:1.05rem;color:#f0e8d5d9;line-height:1.8;font-style:italic;max-width:580px;margin:0 auto}.dft-petal{position:absolute;z-index:1;opacity:0;font-size:1.2rem;animation:petal-fall 8s ease-in infinite;pointer-events:none}@keyframes petal-fall{0%{opacity:0;transform:translateY(-20px) rotate(0)}10%{opacity:.6}90%{opacity:.3}to{opacity:0;transform:translateY(80vh) rotate(360deg)}}.dft-body{background:#0d0b08;flex:1;padding:5rem 0}.dft-container{max-width:1100px;margin:0 auto;padding:0 2rem}.dft-section-heading{text-align:center;margin-bottom:3.5rem}.dft-section-heading h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:300;color:#fff;letter-spacing:2px;margin:0}.dft-section-heading .gold-rule{display:flex;align-items:center;justify-content:center;gap:12px;margin:1rem auto}.dft-section-heading .gold-rule span{display:block;height:1px;width:80px;background:linear-gradient(90deg,transparent,#d4af37,transparent)}.dft-section-heading .gold-rule svg{color:#d4af37;flex-shrink:0}.dft-highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:5rem}.dft-highlight-card{background:linear-gradient(135deg,#d4af370f,#d4af3705);border:1px solid rgba(212,175,55,.2);border-radius:16px;padding:2rem 1.5rem;text-align:center;transition:transform .3s,border-color .3s,box-shadow .3s;position:relative;overflow:hidden}.dft-highlight-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#d4af37,transparent)}.dft-highlight-card:hover{transform:translateY(-4px);border-color:#d4af3780;box-shadow:0 20px 50px #d4af3714}.dft-highlight-card .icon{font-size:2.2rem;margin-bottom:1rem;display:block}.dft-highlight-card p{color:#f0e8d5d9;font-size:1rem;line-height:1.6;margin:0}.dft-menu-section{margin-bottom:5rem}.dft-menu-tabs{display:flex;justify-content:center;gap:1rem;margin-bottom:2.5rem;flex-wrap:wrap}.dft-menu-tab{padding:.7rem 2rem;border:1px solid rgba(212,175,55,.4);background:transparent;color:#f0e8d5b3;border-radius:50px;cursor:pointer;font-size:.9rem;letter-spacing:1px;transition:all .3s;font-family:Arial,sans-serif}.dft-menu-tab.active,.dft-menu-tab:hover{background:#d4af37;border-color:#d4af37;color:#1a1208;font-weight:700}.dft-menu-card{background:#ffffff08;border:1px solid rgba(212,175,55,.15);border-radius:20px;overflow:hidden}.dft-menu-header{background:linear-gradient(135deg,#d4af3726,#d4af370d);padding:2rem 2.5rem;border-bottom:1px solid rgba(212,175,55,.15);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.dft-menu-header h3{font-size:1.3rem;font-weight:400;color:#d4af37;margin:0;letter-spacing:2px;text-transform:uppercase}.dft-menu-badge{background:#d4af37;color:#1a1208;font-family:Arial,sans-serif;font-size:.85rem;font-weight:700;padding:.4rem 1.2rem;border-radius:50px}.dft-menu-body{padding:2rem 2.5rem}.dft-course{display:flex;align-items:flex-start;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.dft-course:last-child{border-bottom:none}.dft-course-num{width:36px;height:36px;border-radius:50%;border:1px solid rgba(212,175,55,.4);color:#d4af37;font-size:.8rem;font-family:Arial,sans-serif;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:3px}.dft-course-text h4{font-size:1.1rem;color:#fff;margin:0 0 .4rem;font-weight:400}.dft-course-text p{font-size:.9rem;color:#f0e8d58c;margin:0;font-style:italic;line-height:1.6}.dft-info-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:5rem}.dft-info-card{background:#ffffff08;border:1px solid rgba(212,175,55,.15);border-radius:16px;padding:2rem;text-align:center;transition:border-color .3s}.dft-info-card:hover{border-color:#d4af3766}.dft-info-card svg{color:#d4af37;margin-bottom:1rem}.dft-info-card h4{font-family:Arial,sans-serif;font-size:.7rem;letter-spacing:3px;text-transform:uppercase;color:#d4af37;margin:0 0 .7rem}.dft-info-card p{color:#f0e8d5b3;font-size:.95rem;line-height:1.7;margin:0}.dft-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:auto auto;gap:1rem;margin-bottom:5rem;border-radius:20px;overflow:hidden}.dft-gallery-item{overflow:hidden;position:relative}.dft-gallery-item:first-child{grid-row:1 / 3}.dft-gallery-item img{width:100%;height:100%;object-fit:cover;display:block;min-height:200px;transition:transform .6s ease}.dft-gallery-item:hover img{transform:scale(1.05)}.dft-cta{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#d4af3714,#d4af3705);border:1px solid rgba(212,175,55,.2);border-radius:24px;position:relative;overflow:hidden}.dft-cta:before{content:"♥";position:absolute;font-size:20rem;color:#d4af3708;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;line-height:1}.dft-cta h2{font-size:2.2rem;font-weight:300;color:#fff;margin:0 0 1rem;letter-spacing:1px}.dft-cta p{color:#f0e8d5b3;font-style:italic;margin:0 0 2.5rem;font-size:1.05rem}.dft-cta-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#d4af37,#b8922a);color:#1a1208;border:none;padding:1.1rem 3rem;border-radius:50px;font-size:1rem;font-weight:700;cursor:pointer;font-family:Arial,sans-serif;letter-spacing:1px;text-transform:uppercase;transition:transform .3s,box-shadow .3s;box-shadow:0 8px 30px #d4af3740}.dft-cta-btn:hover{transform:translateY(-3px);box-shadow:0 16px 40px #d4af3759}.dft-cta-note{display:block;margin-top:1.2rem;font-size:.82rem;color:#f0e8d573;font-family:Arial,sans-serif;letter-spacing:.5px}.dft-modal-overlay{position:fixed;inset:0;background:#000000d9;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem}.dft-modal{background:#1a1208;border:1px solid rgba(212,175,55,.3);border-radius:20px;width:95%;max-width:1000px;height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 40px 80px #0009}.dft-modal-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(212,175,55,.15);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.dft-modal-header h2{font-size:1.2rem;font-weight:400;color:#d4af37;margin:0;letter-spacing:1px}.dft-modal-close{background:#ffffff12;border:1px solid rgba(255,255,255,.15);color:#fff;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}.dft-modal-close:hover{background:#ffffff26}.dft-modal-iframe{flex:1;width:100%;border:none;display:block}@media(max-width:900px){.dft-info-row{grid-template-columns:1fr 1fr}.dft-gallery{grid-template-columns:1fr 1fr;grid-template-rows:auto}.dft-gallery-item:first-child{grid-row:auto;grid-column:1 / -1}}@media(max-width:768px){.dft-modal{width:100%!important;height:100vh!important;height:100dvh!important;max-width:100%!important;border-radius:0!important;border:none!important;margin:0!important}.dft-modal-overlay{padding:0!important}.dft-modal-header{padding:1rem!important}}@media(max-width:600px){.dft-info-row,.dft-highlights-grid,.dft-gallery{grid-template-columns:1fr}.dft-menu-header{flex-direction:column;align-items:flex-start}.dft-menu-body{padding:1.5rem}.dft-cta{padding:3rem 1.5rem}}.promo-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000026;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .4s ease-out}.promo-popup-content{background:#1a1a1a;border:1px solid rgba(255,255,255,.2);border-radius:24px;width:90%;max-width:300px;overflow:hidden;position:relative;box-shadow:0 25px 50px -12px #00000080;animation:slideUp .5s cubic-bezier(.16,1,.3,1);color:#fff;text-align:center}.promo-popup-close{position:absolute;top:15px;right:15px;background:#fff3;border:none;font-size:24px;color:#fff;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;justify-content:center;align-items:center;transition:all .2s;z-index:2}.promo-popup-close:hover{background:#fff6;transform:scale(1.1)}.promo-popup-image-container{width:100%;height:150px;overflow:hidden}.promo-popup-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.promo-popup-content:hover .promo-popup-image{transform:scale(1.05)}.promo-popup-text-container{padding:15px}.promo-popup-text-container h2{font-family:Outfit,sans-serif;font-size:18px;margin-bottom:8px;background:linear-gradient(135deg,#fff,#d4af37);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.promo-popup-text-container p{font-size:11px;line-height:1.5;margin-bottom:15px;color:#fffc}.promo-popup-button{background:linear-gradient(135deg,#d4af37,#aa8a2e);color:#1a1208;border:none;padding:10px 20px;font-size:11px;font-weight:700;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 15px #d4af374d;text-transform:uppercase;letter-spacing:1px}.promo-popup-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #d4af3766;filter:brightness(1.1)}.promo-popup-button:active{transform:translateY(0)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:480px){.promo-popup-content{width:95%}.promo-popup-text-container h2{font-size:16px}.promo-popup-image-container{height:120px}}
