:root{--color-bg:#FAF9FC;--color-text:#1A1A1A;--color-accent:#E53935;--color-accent-dark:#C62828;--color-secondary:#5E35B1;--color-neutral:#EDE7F6;--color-border:#DDD8E8;--color-muted:#6B6B6B;--color-white:#FFFFFF;--color-success:#2D7D46;--color-error:#C0392B;--font-heading:'Playfair Display',Georgia,serif;--font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--container-max:1200px;--container-padding:1.5rem;--section-padding:5rem;--radius:8px;--radius-lg:12px;--shadow:0 2px 8px rgba(0,0,0,0.08);--shadow-lg:0 8px 30px rgba(0,0,0,0.12);--transition:0.3s ease}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition)}a:hover{color:var(--color-accent-dark)}ul{list-style:none}button{cursor:pointer;border:none;background:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:1rem}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:600;line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.5rem)}h2{font-size:clamp(1.8rem,4vw,2.5rem)}h3{font-size:1.25rem}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{margin-bottom:0.5rem}.section-header p{color:var(--color-muted);max-width:600px;margin:0 auto}.section{padding:var(--section-padding) 0}.section--alt{background:var(--color-neutral)}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--color-white,#FFFFFF);border-bottom:1px solid var(--color-border);transition:box-shadow var(--transition)}.site-header.scrolled{box-shadow:var(--shadow)}.nav{display:flex;align-items:center;justify-content:space-between;height:70px}.nav__logo-img{max-height:45px;width:auto;display:block}.nav__logo-text{font-family:var(--font-heading);font-size:1.6rem;font-weight:700;color:var(--color-text)}.nav__menu{display:flex;align-items:center;gap:0.1rem;flex-wrap:nowrap}.nav__link{padding:0.5rem 0.75rem;color:var(--color-text);font-size:0.85rem;font-weight:500;border-radius:var(--radius);transition:all var(--transition);white-space:nowrap}.nav__link:hover,.nav__link.active{color:var(--color-accent);background:rgba(212,66,30,0.06)}.nav__link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.nav__link--cta{background:var(--color-accent);color:var(--color-white) !important;padding:0.4rem 1rem;white-space:nowrap}.nav__link--cta:hover{background:var(--color-accent-dark)}.nav__dropdown{position:relative}.nav__dropdown-toggle{cursor:pointer}.nav__dropdown-arrow{font-size:0.65em;margin-left:0.15rem;display:inline-block;transition:transform var(--transition)}.nav__dropdown:hover .nav__dropdown-arrow,.nav__dropdown.open .nav__dropdown-arrow{transform:rotate(180deg)}.nav__dropdown-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:180px;background:var(--color-white);border-radius:var(--radius);box-shadow:0 8px 24px rgba(0,0,0,0.12);padding:0.4rem 0;z-index:1001;list-style:none}.nav__dropdown:hover .nav__dropdown-menu,.nav__dropdown.open .nav__dropdown-menu{display:block}.nav__dropdown-menu .nav__link{display:block;padding:0.5rem 1rem;white-space:nowrap;font-size:0.84rem;border-radius:0;color:var(--color-text)}.nav__dropdown-menu .nav__link:hover,.nav__dropdown-menu .nav__link.active{background:rgba(212,66,30,0.06);color:var(--color-accent)}.nav__toggle{display:none;flex-direction:column;gap:5px;padding:10px;min-width:44px;min-height:44px;align-items:center;justify-content:center;cursor:pointer}.nav__toggle span{display:block;width:24px;height:2px;background:var(--color-text);transition:all var(--transition)}.hero{position:relative;min-height:85vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;margin-top:70px}.hero__bg{position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--color-secondary) 60%,black) 0%,color-mix(in srgb,var(--color-accent) 40%,black) 100%),url('/assets/img/hero-bg.jpg') center/cover no-repeat;z-index:0}.hero__content{position:relative;z-index:1;color:var(--color-white);padding:2rem}.hero__title{font-size:clamp(2.5rem,7vw,4.5rem);font-weight:700;margin-bottom:1rem;letter-spacing:-0.02em}.hero__subtitle{font-size:clamp(0.95rem,3vw,1.4rem);opacity:0.9;margin-bottom:2rem;font-weight:400}.hero__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.75rem;min-height:44px;font-size:0.95rem;font-weight:600;border-radius:var(--radius);transition:all var(--transition);border:2px solid transparent}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn--primary{background:var(--color-accent);color:var(--color-white)}.btn--primary:hover{background:var(--color-accent-dark);color:var(--color-white)}.btn--outline{border-color:var(--color-white);color:var(--color-white)}.btn--outline:hover{background:var(--color-white);color:var(--color-text)}.btn--outline-dark{border-color:var(--color-text);color:var(--color-text)}.btn--outline-dark:hover{background:var(--color-text);color:var(--color-white)}.btn--small{padding:0.5rem 1rem;font-size:0.85rem;min-height:36px}.btn--danger{background:var(--color-error);color:var(--color-white)}.btn--danger:hover{background:#a93226;color:var(--color-white)}.btn--success{background:var(--color-success);color:var(--color-white)}.info-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;padding:3rem 0}.info-card{text-align:center;padding:2rem;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.info-card__icon{font-size:2rem;margin-bottom:0.75rem;color:var(--color-accent)}.info-card__title{font-family:var(--font-heading);font-size:1.1rem;margin-bottom:0.5rem}.info-card__text{color:var(--color-muted);font-size:0.95rem}.menu-controls{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2.5rem;flex-wrap:wrap}.menu-tabs{display:flex;flex-wrap:wrap;gap:0.5rem;flex:1}.menu-search{position:relative;flex-shrink:0}.menu-search input{padding:0.6rem 1rem 0.6rem 2.5rem;font-size:0.9rem;border-radius:50px;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text);width:220px;transition:border-color var(--transition),box-shadow var(--transition);font-family:inherit}.menu-search input:focus{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(94,53,177,0.15)}.menu-search input::placeholder{color:#aaa}.menu-search__icon{position:absolute;left:0.75rem;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#aaa;pointer-events:none}.menu-tab{padding:0.6rem 1.2rem;font-size:0.9rem;font-weight:500;border-radius:50px;background:var(--color-white);border:1px solid var(--color-border);color:var(--color-text);transition:all var(--transition)}.menu-tab:hover,.menu-tab.active{background:var(--color-accent);color:var(--color-white);border-color:var(--color-accent)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:0}.menu-card{display:flex;justify-content:space-between;align-items:baseline;padding:1rem 0.5rem;background:transparent;border-radius:0;border:none;border-bottom:1px dotted var(--color-border);transition:background var(--transition);position:relative}.menu-card:hover{background:rgba(0,0,0,0.015);box-shadow:none}.menu-card__info{flex:1;padding-right:0.5rem}.menu-card__name{font-family:var(--font-heading);font-size:1.1rem;font-weight:600;margin-bottom:0.15rem;display:inline}.menu-tag{display:inline-block;font-size:.55rem;font-weight:700;padding:1px 5px;border-radius:3px;color:#fff;text-transform:uppercase;letter-spacing:0.3px;vertical-align:middle;margin-left:3px;white-space:nowrap;line-height:1.4}.menu-card__desc{font-size:0.82rem;color:var(--color-muted);margin-bottom:0.25rem;font-style:italic}.menu-card__allergens{font-size:0.75rem;color:var(--color-accent);font-weight:500}.allergen-icons{display:flex;flex-wrap:wrap;gap:0.3rem;margin-top:0.35rem}.allergen-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:0.7rem;font-weight:700;color:#fff;text-transform:uppercase;line-height:1;border-radius:50%;cursor:help;transition:transform 0.15s ease,opacity 0.15s ease}.allergen-icon:hover{transform:scale(1.25);opacity:0.85}.allergen-icon--emoji{width:auto;height:auto;background:none !important;font-size:1.15rem;line-height:1;border-radius:0}.allergen-icon--badge{width:auto;height:auto;background:var(--color-neutral,#F0EDE8) !important;color:var(--color-text,#333);font-size:0.68rem;font-weight:600;padding:0.15rem 0.5rem;border-radius:4px;white-space:nowrap}@font-face{font-family:'erudus';src:url('../fonts/erudus/erudus.eot');src:url('../fonts/erudus/erudus.eot#iefix') format('embedded-opentype'),url('../fonts/erudus/erudus.woff') format('woff'),url('../fonts/erudus/erudus.ttf') format('truetype');font-weight:normal;font-style:normal;font-display:swap}.allergen-icon--erudus{font-family:'erudus' !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:28px;height:28px;font-size:28px;line-height:1;background:none !important;color:var(--color-accent,#D4421E);border-radius:0}.allergen-btn__icon{display:inline-flex;width:18px;height:18px;flex-shrink:0;margin-right:0.15rem}.allergen-btn__icon svg{width:100%;height:100%}.menu-card__actions{display:flex;align-items:center;gap:0.5rem;flex-shrink:0}.menu-card__price{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--color-accent);white-space:nowrap;flex-shrink:0}.menu-fav-btn{position:absolute;top:0.5rem;right:0.5rem;background:none;border:none;cursor:pointer;font-size:1.2rem;line-height:1;color:var(--color-muted);padding:0.3rem;transition:all 0.2s;opacity:0.5;z-index:1}.menu-fav-btn:hover{opacity:1;transform:scale(1.2)}.menu-fav-btn--active{color:var(--color-accent);opacity:1}.menu-card[data-anim]{opacity:0;transition:opacity 0.6s ease,transform 0.6s ease;will-change:opacity,transform}.menu-card[data-anim].anim-visible{opacity:1;transform:none !important}.menu-card[data-anim="fade-up"]{transform:translateY(30px)}.menu-card[data-anim="slide-left"]{transform:translateX(-40px)}.menu-card[data-anim="slide-right"]{transform:translateX(40px)}.menu-card[data-anim="scale"]{transform:scale(0.85)}.menu-card[data-anim="flip"]{transform:perspective(800px) rotateY(25deg);transition:opacity 0.7s ease,transform 0.7s ease}.menu-card[data-anim="stagger"]{transform:translateY(20px)}.site-header[data-nav-anim="slide-down"]{animation:navSlideDown 0.5s ease-out}.site-header[data-nav-anim="fade"]{animation:navFade 0.6s ease-out}.site-header[data-nav-anim="blur-in"]{animation:navBlurIn 0.5s ease-out}@keyframes navSlideDown{from{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes navFade{from{opacity:0}to{opacity:1}}@keyframes navBlurIn{from{opacity:0;filter:blur(8px)}to{opacity:1;filter:blur(0)}}.site-header[data-nav-anim] .nav__link,.site-header[data-nav-anim] .nav__lang{opacity:0;animation:navLinkAppear 0.4s ease forwards}@keyframes navLinkAppear{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.rich-content p{margin-bottom:1rem}.rich-content ul,.rich-content ol{margin:0.75rem 0;padding-left:1.5rem}.rich-content li{margin-bottom:0.25rem}.rich-content a{color:var(--color-accent);text-decoration:underline}.rich-content strong{font-weight:600}.rich-content blockquote{border-left:3px solid var(--color-accent);padding:0.5rem 1rem;margin:1rem 0;color:var(--color-muted);font-style:italic}.rich-content h3{font-size:1.3rem;margin:1.5rem 0 0.5rem}.rich-content h4{font-size:1.1rem;margin:1.25rem 0 0.5rem}.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2rem}.team-card{text-align:center;padding:2rem 1.5rem;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:transform var(--transition),box-shadow var(--transition)}.team-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.team-card__photo{width:120px;height:120px;border-radius:50%;object-fit:cover;margin:0 auto 1rem;background:var(--color-neutral)}.team-card__name{font-family:var(--font-heading);font-size:1.2rem;margin-bottom:0.25rem}.team-card__role{color:var(--color-accent);font-size:0.9rem;font-weight:500;margin-bottom:0.5rem}.team-card__desc{font-size:0.85rem;color:var(--color-muted)}.events-list{display:grid;gap:2rem}.event-card{display:grid;grid-template-columns:200px 1fr;gap:2rem;padding:2rem;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden}.event-card__image{width:100%;height:160px;object-fit:cover;border-radius:var(--radius);background:var(--color-neutral)}.event-card__date{display:inline-block;padding:0.3rem 0.75rem;background:var(--color-accent);color:var(--color-white);border-radius:50px;font-size:0.8rem;font-weight:600;margin-bottom:0.75rem}.event-card__title{font-family:var(--font-heading);font-size:1.3rem;margin-bottom:0.5rem}.event-card__desc{color:var(--color-muted);font-size:0.95rem}.events-empty{text-align:center;padding:4rem 2rem;color:var(--color-muted)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.gallery-item{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;cursor:pointer}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition)}.gallery-item:hover img{transform:scale(1.05)}.gallery-item__overlay{position:absolute;inset:0;background:rgba(0,0,0,0.3);opacity:0;transition:opacity var(--transition);display:flex;align-items:center;justify-content:center;color:var(--color-white);font-size:2rem}.gallery-item:hover .gallery-item__overlay{opacity:1}.gallery-item__caption{position:absolute;bottom:0;left:0;right:0;padding:0.75rem 1rem;background:linear-gradient(to top,rgba(0,0,0,0.75) 0%,transparent 100%);color:var(--color-white);transform:translateY(100%);transition:transform 0.25s ease}.gallery-item:hover .gallery-item__caption{transform:translateY(0)}.gallery-item__caption-title{font-size:0.9rem;font-weight:600;margin-bottom:0.15rem;line-height:1.3}.gallery-item__caption-desc{font-size:0.78rem;opacity:0.85;line-height:1.4}.gallery-item__zoom{position:absolute;top:0.6rem;right:0.6rem;font-size:1.2rem;opacity:0;transition:opacity 0.2s}.gallery-item:hover .gallery-item__zoom{opacity:1}.lightbox{display:none;position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,0.92);align-items:center;justify-content:center}.lightbox.active{display:flex}.lightbox__close{position:absolute;top:1.5rem;right:1.5rem;color:var(--color-white);font-size:2rem;z-index:10;padding:0.5rem}.lightbox__inner{display:flex;flex-direction:column;align-items:center;max-width:90vw;max-height:90vh}.lightbox__img{max-width:100%;max-height:75vh;object-fit:contain;border-radius:var(--radius);display:block}.lightbox__caption{margin-top:1rem;text-align:center;color:var(--color-white);max-width:600px;padding:0 1rem}.lightbox__caption-title{font-size:1.1rem;font-weight:600;margin-bottom:0.35rem}.lightbox__caption-desc{font-size:0.9rem;opacity:0.8;line-height:1.5}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);color:var(--color-white);font-size:2.5rem;padding:1rem;z-index:10}.lightbox__nav--prev{left:1rem}.lightbox__nav--next{right:1rem}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.review-card{padding:1.5rem;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.review-card__stars{color:#F59E0B;font-size:1.1rem;margin-bottom:0.75rem}.review-card__text{font-size:0.95rem;color:var(--color-text);margin-bottom:1rem;line-height:1.6}.review-card__author{font-weight:600;font-size:0.9rem}.review-card__date{font-size:0.8rem;color:var(--color-muted)}.form{max-width:600px;margin:0 auto}.form__group{margin-bottom:1.25rem}.form__label{display:block;font-weight:500;margin-bottom:0.4rem;font-size:0.9rem}.form__input,.form__textarea,.form__select{width:100%;padding:0.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-white);font-size:1rem;transition:border-color var(--transition)}.form__input:focus,.form__textarea:focus,.form__select:focus{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent)}.form__textarea{min-height:120px;resize:vertical}.form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cf-turnstile{margin:0.5rem 0;transform:scale(0.78);transform-origin:left center}.newsletter-form .cf-turnstile{margin:0.5rem 0 0.25rem;transform:scale(0.72)}.cf-turnstile iframe{max-width:100%}.star-rating{display:flex;gap:0.25rem;flex-direction:row-reverse;justify-content:flex-end}.star-rating input{display:none}.star-rating label{font-size:1.5rem;color:var(--color-border);cursor:pointer;transition:color var(--transition)}.star-rating input:checked~label,.star-rating label:hover,.star-rating label:hover~label{color:#F59E0B}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.contact-info{display:flex;flex-direction:column;gap:1.5rem}.contact-item{display:flex;gap:1rem;align-items:flex-start}.contact-item__icon{width:40px;height:40px;background:var(--color-neutral);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-accent)}.contact-map{margin-top:3rem;border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16/9}.contact-map iframe{width:100%;height:100%;border:0}.flash{padding:1rem 0;margin-top:70px;font-weight:500;font-size:0.95rem}.flash--success{background:#d4edda;color:#155724}.flash--error{background:#f8d7da;color:#721c24}.page-404{text-align:center;padding:8rem 2rem;margin-top:70px}.page-404 h1{font-size:6rem;color:var(--color-accent)}.footer{background:var(--color-text);color:var(--color-white);padding:4rem 0 2rem}.footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:3rem}.footer__title{font-family:var(--font-heading);font-size:1.1rem;margin-bottom:1rem}.footer__text{color:rgba(255,255,255,0.7);font-size:0.9rem;margin-bottom:0.4rem}.footer__text a{color:rgba(255,255,255,0.7)}.footer__text a:hover{color:var(--color-white)}.footer__social{display:flex;gap:0.75rem}.footer__social-link{color:rgba(255,255,255,0.7);transition:color var(--transition);display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:var(--radius)}.footer__social-link:hover{color:var(--color-white)}.footer__social-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.share-buttons{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.share-buttons__label{width:100%;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.06em;color:var(--color-muted);margin-bottom:0.25rem}.share-btn{display:inline-flex;align-items:center;gap:0.4rem;padding:0.5rem 1rem;border-radius:2rem;font-size:0.82rem;font-weight:600;text-decoration:none;color:#fff;border:none;cursor:pointer;min-height:44px;transition:opacity var(--transition),transform 0.15s ease}.share-btn:hover{opacity:0.85;transform:translateY(-1px)}.share-btn:active{transform:translateY(0)}.share-btn svg{width:18px;height:18px;flex-shrink:0}.share-btn--whatsapp{background:#25D366}.share-btn--facebook{background:#1877F2}.share-btn--x{background:#000}.share-btn--copy{background:var(--color-text)}.share-btn--copy.copied{background:#16a34a}.footer__newsletter{border-top:1px solid rgba(255,255,255,0.1);padding:1.5rem 0;margin-top:1rem}.newsletter-form__fields{display:flex;flex-wrap:wrap;gap:0.5rem;max-width:500px;width:100%}.newsletter-form__input{flex:1 1 140px;min-width:0;padding:0.6rem 0.85rem;border:1px solid rgba(255,255,255,0.2);border-radius:var(--radius);background:rgba(255,255,255,0.08);color:var(--color-white);font-size:0.85rem}.newsletter-form__input::placeholder{color:rgba(255,255,255,0.4)}.newsletter-form__input:focus{outline:2px solid var(--color-accent);outline-offset:1px;border-color:var(--color-accent);background:rgba(255,255,255,0.12)}.newsletter-form__btn{white-space:nowrap;padding:0.6rem 1.2rem;font-size:0.82rem}.newsletter-form__gdpr{display:flex;align-items:center;gap:0.4rem;margin-top:0.5rem;font-size:0.75rem;color:rgba(255,255,255,0.5);cursor:pointer}.newsletter-form__gdpr a{color:rgba(255,255,255,0.7);text-decoration:underline}@media (max-width:600px){.newsletter-form__fields{flex-direction:column}.newsletter-form__input{flex:1 1 100%}.newsletter-form__btn{width:100%}}.promo-banner{padding:0.65rem 0;font-size:0.88rem;z-index:90;transition:all 0.3s ease}.promo-banner--top{position:fixed;top:0;left:0;right:0;z-index:1001}.promo-banner--bottom{position:fixed;bottom:0;left:0;right:0;z-index:999;box-shadow:0 -2px 10px rgba(0,0,0,0.15)}.promo-banner__inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem}.promo-banner__text{text-align:center}.promo-banner__cta{display:inline-block;padding:0.25rem 0.85rem;border:1.5px solid;border-radius:50px;font-size:0.78rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:opacity 0.2s}.promo-banner__cta:hover{opacity:0.8}.promo-banner__close{background:none;border:none;color:inherit;font-size:1.4rem;cursor:pointer;opacity:0.7;padding:0 0.3rem;line-height:1;flex-shrink:0}.promo-banner__close:hover{opacity:1}.promo-popup__overlay{position:fixed;inset:0;background:rgba(0,0,0,0.7);z-index:1100;animation:promoFadeIn 0.3s ease}.promo-popup__modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1101;padding:3rem 2.5rem;border-radius:var(--radius-lg,12px);text-align:center;max-width:480px;width:90%;box-shadow:0 25px 80px rgba(0,0,0,0.5);animation:promoSlideUp 0.4s cubic-bezier(0.22,1,0.36,1);backdrop-filter:none;isolation:isolate}.promo-popup__close{position:absolute;top:0.75rem;right:0.75rem;background:none;border:none;color:inherit;font-size:1.6rem;cursor:pointer;opacity:0.7;line-height:1}.promo-popup__close:hover{opacity:1}.promo-popup__title{font-family:var(--font-heading,'Playfair Display',serif);font-size:1.5rem;font-weight:700;margin-bottom:0.75rem}.promo-popup__body{font-size:0.95rem;opacity:0.9;margin-bottom:1.25rem;line-height:1.5}.promo-popup__cta{display:inline-block;padding:0.7rem 2rem;border:none;border-radius:50px;font-weight:700;text-decoration:none;font-size:0.9rem;background:rgba(255,255,255,0.95);color:#1a1a1a !important;transition:transform 0.2s,box-shadow 0.2s;box-shadow:0 2px 10px rgba(0,0,0,0.15)}.promo-popup__cta:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,0.25)}@keyframes promoFadeIn{from{opacity:0}to{opacity:1}}@keyframes promoSlideUp{from{opacity:0;transform:translate(-50%,-40%)}to{opacity:1;transform:translate(-50%,-50%)}}@media (max-width:768px){.promo-banner__inner{flex-wrap:wrap;font-size:0.82rem;gap:0.5rem}.promo-popup__modal{padding:2rem 1.5rem}}.footer__bottom{border-top:1px solid rgba(255,255,255,0.1);padding-top:1.5rem;text-align:center;color:rgba(255,255,255,0.5);font-size:0.85rem}.footer__legal{margin-top:0.5rem;font-size:0.8rem}.footer__legal a,.footer__cookie-btn{color:rgba(255,255,255,0.5);background:none;border:none;padding:0;cursor:pointer;font-size:inherit;font-family:inherit;text-decoration:underline;transition:color var(--transition)}.footer__legal a:hover,.footer__cookie-btn:hover{color:rgba(255,255,255,0.85)}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:1050;background:var(--color-text);color:var(--color-white);box-shadow:0 -4px 24px rgba(0,0,0,0.18);padding:1.25rem 1.5rem;transition:transform 0.3s ease,opacity 0.3s ease}.cookie-banner--hidden{transform:translateY(110%);opacity:0;pointer-events:none}.cookie-banner__inner{max-width:900px;margin:0 auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.cookie-banner__text{flex:1;font-size:0.88rem;color:rgba(255,255,255,0.85);margin:0;min-width:220px}.cookie-banner__link{color:rgba(255,255,255,0.7);text-decoration:underline}.cookie-banner__link:hover{color:var(--color-white)}.cookie-banner__actions{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap}.cookie-banner__customize{background:none;border:none;color:rgba(255,255,255,0.6);font-size:0.82rem;cursor:pointer;padding:0;text-decoration:underline;font-family:inherit}.cookie-banner__customize:hover{color:var(--color-white)}.cookie-panel{max-width:900px;margin:1.25rem auto 0;border-top:1px solid rgba(255,255,255,0.12);padding-top:1.25rem}.cookie-panel__title{font-size:0.95rem;font-weight:600;color:var(--color-white);margin-bottom:1rem}.cookie-panel__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.75rem}.cookie-panel__item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:0.75rem;background:rgba(255,255,255,0.06);border-radius:var(--radius)}.cookie-panel__info{flex:1}.cookie-panel__info strong{font-size:0.88rem;color:var(--color-white);display:block;margin-bottom:0.2rem}.cookie-panel__info p{font-size:0.78rem;color:rgba(255,255,255,0.6);margin:0}.cookie-panel__badge{font-size:0.72rem;color:rgba(255,255,255,0.5);white-space:nowrap;align-self:center;font-style:italic}.cookie-toggle{display:inline-flex;align-items:center;cursor:pointer;flex-shrink:0;align-self:center}.cookie-toggle input{position:absolute;opacity:0;width:0;height:0}.cookie-toggle__track{width:40px;height:22px;background:rgba(255,255,255,0.2);border-radius:11px;position:relative;transition:background 0.2s}.cookie-toggle__track::after{content:'';position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--color-white);border-radius:50%;transition:transform 0.2s}.cookie-toggle input:checked+.cookie-toggle__track{background:var(--color-accent)}.cookie-toggle input:checked+.cookie-toggle__track::after{transform:translateX(18px)}.privacy-content{max-width:800px;margin:0 auto;padding:3rem 1.5rem 5rem}.privacy-content h2{font-family:var(--font-heading);font-size:1.35rem;color:var(--color-text);margin:2.5rem 0 0.75rem;padding-bottom:0.4rem;border-bottom:1px solid var(--color-border)}.privacy-content p,.privacy-content li{font-size:0.95rem;color:var(--color-muted);line-height:1.75}.privacy-content ul{padding-left:1.5rem;margin:0.5rem 0 1rem}.privacy-content ul li{margin-bottom:0.35rem}.privacy-content address{font-style:normal;background:var(--color-neutral);border-left:3px solid var(--color-accent);padding:1rem 1.25rem;border-radius:0 var(--radius) var(--radius) 0;margin:1rem 0;font-size:0.9rem;line-height:1.8}.privacy-content a{color:var(--color-accent)}.privacy-content a:hover{text-decoration:underline}.privacy-updated{font-size:0.82rem;color:var(--color-muted);margin-bottom:0.5rem;font-style:italic}.privacy-table{width:100%;border-collapse:collapse;font-size:0.85rem;margin:1rem 0 1.5rem}.privacy-table th,.privacy-table td{border:1px solid var(--color-border);padding:0.6rem 0.75rem;text-align:left;vertical-align:top;line-height:1.5}.privacy-table th{background:var(--color-neutral);font-weight:600;font-size:0.8rem;color:var(--color-text)}.privacy-table td{color:var(--color-muted)}.privacy-table code{background:var(--color-neutral);border-radius:3px;padding:0.1em 0.4em;font-size:0.82em;color:var(--color-text)}@media (max-width:768px){.cookie-banner__inner{flex-direction:column;align-items:flex-start}.privacy-table{font-size:0.78rem}.privacy-table th,.privacy-table td{padding:0.4rem 0.5rem}}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.highlight-card{padding:1.5rem;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center;transition:transform var(--transition)}.highlight-card:hover{transform:translateY(-3px)}.highlight-card__title{font-family:var(--font-heading);font-size:1.15rem;margin-bottom:0.25rem}.highlight-card__desc{font-size:0.85rem;color:var(--color-muted);margin-bottom:0.5rem}.highlight-card__price{font-weight:700;color:var(--color-accent)}.section-label{display:inline-block;font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--color-accent);margin-bottom:0.75rem}.section--tight{padding:0}.btn--lg{padding:1rem 2.25rem;font-size:1rem}.hero__scroll-arrow{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);color:rgba(255,255,255,0.7);z-index:1;animation:bounce 2s infinite;transition:color var(--transition)}.hero__scroll-arrow:hover{color:#fff}.hero__badge{display:inline-block;padding:0.35rem 1rem;border:1px solid rgba(255,255,255,0.4);border-radius:50px;font-size:0.8rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:rgba(255,255,255,0.9);margin-bottom:1.25rem;backdrop-filter:blur(4px)}@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.story-text h2{margin:0.5rem 0 1.25rem;line-height:1.15}.story-text p{color:var(--color-muted);margin-bottom:1rem;line-height:1.7}.story-visual{position:relative;height:360px}.story-bg-shape{position:absolute;inset:0;background:var(--color-neutral);border-radius:var(--radius-lg);z-index:0}.story-card{position:absolute;z-index:1;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:1.5rem 2rem;text-align:center;display:flex;flex-direction:column}.story-card--1{top:10%;left:8%}.story-card--2{top:38%;right:6%}.story-card--3{bottom:8%;left:18%}.story-card__number{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--color-accent);line-height:1}.story-card__label{font-size:0.75rem;color:var(--color-muted);font-weight:500;margin-top:0.25rem;text-transform:uppercase;letter-spacing:0.05em}.usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.usp-card{background:var(--color-white);border-radius:var(--radius-lg);padding:2rem 1.5rem;box-shadow:var(--shadow);transition:transform var(--transition),box-shadow var(--transition)}.usp-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.usp-card__icon{width:56px;height:56px;background:rgba(212,66,30,0.08);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--color-accent);margin-bottom:1.25rem}.usp-card h3{font-size:1.05rem;margin-bottom:0.5rem}.usp-card p{font-size:0.875rem;color:var(--color-muted);line-height:1.6}.highlight-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition);text-align:left}.highlight-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.highlight-card__img-wrap{aspect-ratio:16/10;overflow:hidden}.highlight-card__img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition)}.highlight-card:hover .highlight-card__img{transform:scale(1.04)}.highlight-card__img-placeholder{aspect-ratio:16/10;background:var(--color-neutral);display:flex;align-items:center;justify-content:center;color:var(--color-muted)}.highlight-card__body{padding:1.25rem}.highlight-card__title{font-family:var(--font-heading);font-size:1.1rem;font-weight:600;margin-bottom:0.3rem}.highlight-card__desc{font-size:0.85rem;color:var(--color-muted);margin-bottom:0.75rem}.highlight-card__price{font-weight:700;color:var(--color-accent);font-size:1.1rem}.gallery-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,200px);gap:0.75rem}.gallery-preview-grid .gallery-preview-item:first-child{grid-row:span 2}.gallery-preview-item{position:relative;border-radius:var(--radius);overflow:hidden;display:block}.gallery-preview-item img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition)}.gallery-preview-item:hover img{transform:scale(1.05)}.gallery-preview-item__overlay{position:absolute;inset:0;background:rgba(0,0,0,0.35);opacity:0;transition:opacity var(--transition);display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff}.gallery-preview-item:hover .gallery-preview-item__overlay{opacity:1}.reviews-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.review-strip-card{background:var(--color-white);border-radius:var(--radius-lg);padding:2rem 1.75rem;box-shadow:var(--shadow);border-top:3px solid var(--color-accent);display:flex;flex-direction:column;gap:0.75rem}.review-strip-card__stars{color:#F59E0B;font-size:1rem;letter-spacing:0.1em}.review-strip-card__text{font-size:0.95rem;color:var(--color-text);line-height:1.65;font-style:italic;flex:1}.review-strip-card__author{font-size:0.85rem;font-weight:600;color:var(--color-muted)}.events-preview{display:grid;gap:1.25rem}.carousel-wrap .events-preview,.blog-preview{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;padding-bottom:0.5rem;scrollbar-width:thin;scrollbar-color:var(--color-accent) transparent}.carousel-wrap .events-preview::-webkit-scrollbar,.blog-preview::-webkit-scrollbar{height:4px}.carousel-wrap .events-preview::-webkit-scrollbar-thumb,.blog-preview::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:2px}.carousel-wrap .events-preview::-webkit-scrollbar-track,.blog-preview::-webkit-scrollbar-track{background:transparent}.carousel-wrap{position:relative}.carousel-wrap .carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:var(--color-white);border:1px solid var(--color-border);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;font-size:1rem;color:var(--color-text);transition:background .15s,box-shadow .15s}.carousel-wrap .carousel-arrow:hover{background:var(--color-accent);color:#fff;box-shadow:var(--shadow-lg)}.carousel-arrow--left{left:-18px}.carousel-arrow--right{right:-18px}@media (max-width:768px){.carousel-arrow--left{left:-8px}.carousel-arrow--right{right:-8px}}.event-preview-card{display:flex;gap:1.75rem;align-items:center;background:var(--color-white);border-radius:var(--radius-lg);padding:1.75rem 2rem;box-shadow:var(--shadow);transition:box-shadow var(--transition),transform 0.15s ease;text-decoration:none;color:inherit;cursor:pointer}.carousel-wrap .event-preview-card,.blog-preview .event-preview-card{min-width:320px;max-width:400px;flex-shrink:0;scroll-snap-align:start}.event-preview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.event-preview-card__date{display:flex;flex-direction:column;align-items:center;background:var(--color-accent);color:#fff;border-radius:var(--radius);padding:0.75rem 1.1rem;min-width:60px;flex-shrink:0}.event-preview-card__day{font-family:var(--font-heading);font-size:1.8rem;font-weight:700;line-height:1}.event-preview-card__month{font-size:0.7rem;font-weight:700;letter-spacing:0.1em;margin-top:0.2rem}.event-preview-card__info h3{font-size:1.1rem;margin-bottom:0.35rem}.event-preview-card__info p{font-size:0.875rem;color:var(--color-muted)}.event-preview-card__time{display:inline-block;margin-top:0.5rem;font-size:0.8rem;color:var(--color-accent);font-weight:500}.cta-banner{background:linear-gradient(135deg,var(--color-text) 0%,#2d2d2d 100%);padding:5rem 0;text-align:center}.cta-banner__content h2{font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,2.8rem);color:var(--color-white);margin-bottom:1rem}.cta-banner__content p{color:rgba(255,255,255,0.7);font-size:1.1rem;margin-bottom:2.5rem;max-width:500px;margin-left:auto;margin-right:auto}.cta-banner__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.faq-item{border:1px solid var(--color-border);border-radius:var(--radius);margin-bottom:0.6rem;background:var(--color-white);overflow:hidden;transition:box-shadow 0.2s}.faq-item:hover{box-shadow:var(--shadow)}.faq-item[open]{border-color:var(--color-accent)}.faq-item__question{padding:1rem 1.25rem;font-weight:600;font-size:1rem;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--color-text);transition:color 0.2s}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question::after{content:'+';font-size:1.4rem;font-weight:300;color:var(--color-accent);flex-shrink:0;transition:transform 0.2s}.faq-item[open] .faq-item__question::after{content:'−'}.faq-item[open] .faq-item__question{color:var(--color-accent);border-bottom:1px solid var(--color-border)}.faq-item__answer{padding:1rem 1.25rem;font-size:0.95rem;line-height:1.7;color:var(--color-muted)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-neutral)}.login-card{background:var(--color-white);padding:2.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:400px}.login-card h1{font-size:1.8rem;text-align:center;margin-bottom:2rem}.login-error{background:#f8d7da;color:#721c24;padding:0.75rem 1rem;border-radius:var(--radius);margin-bottom:1rem;font-size:0.9rem}.allergen-legend{margin-top:3rem;padding:1.5rem;background:var(--color-white);border-radius:var(--radius);border:1px solid var(--color-border)}.allergen-legend__header{display:flex;align-items:baseline;flex-wrap:wrap;gap:0.5rem 1.5rem;margin-bottom:1rem}.allergen-legend__header h3{font-size:1rem;margin:0}.allergen-legend__hint{font-size:0.8rem;color:var(--color-muted);flex:1}.allergen-reset{font-size:0.8rem;color:var(--color-accent);font-weight:600;text-decoration:underline;cursor:pointer;padding:0;background:none;border:none}.allergen-legend__list{display:flex;flex-wrap:wrap;gap:0.5rem;font-size:0.8rem;color:var(--color-muted)}.allergen-btn{display:inline-flex;align-items:center;gap:0.25rem;padding:0.35rem 0.75rem;border-radius:50px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-muted);font-size:0.8rem;cursor:pointer;transition:all var(--transition);white-space:nowrap}.allergen-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.allergen-btn.active{background:var(--color-error);border-color:var(--color-error);color:var(--color-white);font-weight:600}@media (max-width:1024px){.contact-grid{grid-template-columns:1fr}.event-card{grid-template-columns:1fr}.usp-grid{grid-template-columns:repeat(2,1fr)}.story-grid{gap:3rem}}@media (max-width:1280px) and (min-width:1025px){.nav__link{font-size:0.78rem;padding:0.4rem 0.5rem}.nav__link--cta{padding:0.35rem 0.75rem}.nav__logo-text{font-size:1.3rem}}@media (max-width:1024px){:root{--section-padding:3rem;--container-padding:1rem}.nav__toggle{display:flex}.nav__menu{display:none;position:absolute;top:70px;left:0;right:0;background:var(--mobile-menu-bg,var(--color-white));color:var(--mobile-menu-text,var(--color-text));flex-direction:column;padding:1rem;border-bottom:1px solid var(--color-border);box-shadow:var(--shadow);overflow-y:auto;max-height:calc(100vh - 70px);list-style:none}.nav__menu.open{display:flex}.nav__menu>li{width:100%;text-align:center}.nav__menu .nav__link{width:100%;text-align:center;padding:0.6rem 0.75rem;font-size:0.95rem;font-weight:500;letter-spacing:0.03em;color:var(--mobile-menu-text,var(--color-text))}.nav__menu .nav__link:hover,.nav__menu .nav__link.active{color:var(--color-accent)}.nav__menu .nav__link--cta{color:var(--color-white) !important}.nav__menu .nav__lang a{color:var(--mobile-menu-text,var(--color-muted));border-color:var(--mobile-menu-text,var(--color-border))}.nav__dropdown{position:static}.nav__dropdown-toggle{display:none}.nav__dropdown-menu,.nav__dropdown-menu.nav__dropdown-menu{display:block !important;position:static;transform:none;background:transparent !important;box-shadow:none !important;padding:0;min-width:auto;border-radius:0}.nav__dropdown-menu .nav__link,.nav__dropdown-menu .nav__link.nav__link{color:var(--mobile-menu-text,var(--color-text)) !important;width:100%;text-align:center;padding:0.6rem 0.75rem;font-size:0.95rem !important;font-weight:500;letter-spacing:0.03em}.nav__dropdown-menu .nav__link:hover,.nav__dropdown-menu .nav__link.active{color:var(--color-accent) !important;background:transparent !important}.menu-grid{grid-template-columns:1fr}.form__row{grid-template-columns:1fr}.hero{min-height:70vh}.reviews-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.team-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.story-grid{grid-template-columns:1fr}.story-visual{display:none}.usp-grid{grid-template-columns:1fr 1fr}.reviews-strip{grid-template-columns:1fr}.gallery-preview-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.gallery-preview-grid .gallery-preview-item:first-child{grid-row:span 1}.gallery-preview-item{height:160px}}@media (max-width:480px){.hero__actions{flex-direction:column;align-items:center}.menu-controls{flex-direction:column}.menu-tabs{gap:0.35rem}.menu-tab{font-size:0.8rem;padding:0.5rem 0.9rem}.menu-search input{width:100%}.usp-grid{grid-template-columns:1fr}.cta-banner__actions{flex-direction:column;align-items:center}.event-preview-card{flex-direction:column;align-items:flex-start;gap:1rem}}.nav__lang{margin-left:0.5rem;padding-left:0.75rem;border-left:1px solid var(--color-border)}.nav__lang a{display:inline-flex;align-items:center;gap:0.3rem;padding:0.35rem 0.6rem;font-size:0.8rem;font-weight:600;color:var(--color-muted);border:1px solid var(--color-border);border-radius:var(--radius);transition:all var(--transition);text-decoration:none;letter-spacing:0.03em;white-space:nowrap}.nav__lang a:hover{color:var(--color-text);border-color:var(--color-text);background:var(--color-neutral)}@media (max-width:1024px){.nav__lang{margin-left:0;padding-left:0;border-left:none}.nav__lang a{width:auto;display:inline-flex;justify-content:center}}.nav__theme-switcher{position:relative;margin-left:0.4rem}.nav__theme-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;color:var(--color-muted);font-size:1.1rem;transition:all var(--transition)}.nav__theme-btn:hover{color:var(--color-text);border-color:var(--color-text)}.nav__theme-dropdown{display:none;position:absolute;top:100%;right:0;min-width:160px;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 8px 24px rgba(0,0,0,0.12);padding:0.3rem 0;z-index:1001;list-style:none;margin-top:0.4rem}.nav__theme-switcher.open .nav__theme-dropdown{display:block}.nav__theme-option{display:block;width:100%;text-align:left;padding:0.5rem 1rem;background:none;border:none;cursor:pointer;font-size:0.82rem;color:var(--color-text);font-family:inherit}.nav__theme-option:hover{background:var(--color-neutral);color:var(--color-accent)}.nav__theme-option--active{font-weight:600;color:var(--color-accent)}@media (max-width:1024px){.nav__theme-switcher{margin-left:0}.nav__theme-dropdown{right:auto;left:50%;transform:translateX(-50%)}}.page-hero{background:linear-gradient(135deg,var(--color-secondary) 0%,color-mix(in srgb,var(--color-secondary) 70%,black) 100%);color:var(--color-white);padding:4rem 0 3rem;text-align:center;margin-top:70px}.page-hero h1{color:var(--color-white);margin-bottom:0.75rem}.page-hero p{color:rgba(255,255,255,0.85);max-width:560px;margin:0 auto 0.5rem}.page-hero a{color:var(--color-white);font-weight:600}.page-hero .section-label{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.3)}.page-hero--reservation{}.reservation-section{padding:var(--section-padding) 0;background:var(--color-bg)}.container--narrow{max-width:780px}.reservation-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:calc(var(--radius) * 2);box-shadow:0 4px 24px rgba(0,0,0,0.07);overflow:hidden;margin-bottom:2rem}.form-section{padding:2rem;border-bottom:1px solid var(--color-border)}.form-section:last-child{border-bottom:none}.form-section__title{display:flex;align-items:center;gap:0.75rem;font-size:1.1rem;font-weight:600;margin-bottom:1.5rem;color:var(--color-text)}.form-section__num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-secondary);color:var(--color-white);font-size:0.85rem;font-weight:700;flex-shrink:0}.form-grid{display:grid;gap:1.25rem}.form-grid--2{grid-template-columns:1fr 1fr}.form-grid--3{grid-template-columns:1fr 1fr 1fr}.form-grid--full{grid-column:1 / -1}.form-group{display:flex;flex-direction:column;gap:0.4rem}.form-group label{font-size:0.875rem;font-weight:500;color:var(--color-text)}.form-group input,.form-group select,.form-group textarea{padding:0.65rem 0.9rem;border:1.5px solid var(--color-border);border-radius:var(--radius);font-family:var(--font-body);font-size:0.95rem;background:var(--color-bg);color:var(--color-text);transition:border-color 0.2s,box-shadow 0.2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px rgba(94,53,177,0.12)}.form-group textarea{resize:vertical;min-height:110px}.form-hint{font-size:0.8rem;color:var(--color-muted);margin-top:0.2rem}.required{color:var(--color-accent)}.reservation-form__footer{padding:1.5rem 2rem;background:var(--color-neutral);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.reservation-notice{display:flex;align-items:center;gap:0.5rem;font-size:0.875rem;color:var(--color-muted);max-width:380px}.reservation-info{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:0.5rem}.reservation-info__item{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius)}.reservation-info__item svg{color:var(--color-secondary);flex-shrink:0;margin-top:2px}.reservation-info__item div{display:flex;flex-direction:column;gap:0.2rem;font-size:0.9rem}.reservation-info__item strong{font-weight:600}.reservation-info__item a{color:var(--color-accent);text-decoration:none;font-weight:500}.reservation-info__item span{color:var(--color-muted)}.alert{display:flex;align-items:center;gap:0.75rem;padding:1rem 1.25rem;border-radius:var(--radius);margin-bottom:1.5rem;font-size:0.95rem}.alert--success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.alert--error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}@media (max-width:768px){.form-grid--2,.form-grid--3{grid-template-columns:1fr}.form-grid--full{grid-column:1}.reservation-form__footer{flex-direction:column;align-items:stretch;text-align:center}.reservation-notice{max-width:100%;justify-content:center}.reservation-info{grid-template-columns:1fr}}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 0.7s cubic-bezier(0.16,1,0.3,1),transform 0.7s cubic-bezier(0.16,1,0.3,1)}[data-reveal="left"]{transform:translateX(-40px)}[data-reveal="right"]{transform:translateX(40px)}[data-reveal="scale"]{transform:scale(0.92)}[data-reveal="fade"]{transform:none}[data-reveal].revealed{opacity:1;transform:translateY(0) translateX(0) scale(1)}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}}.hero__content{animation:classico-fadeUp 1s cubic-bezier(0.16,1,0.3,1) 0.2s both}@keyframes classico-fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.btn--primary{position:relative;overflow:hidden}.btn--primary::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.15),transparent);transition:left 0.5s ease}.btn--primary:hover::after{left:100%}.info-card,.usp-card,.menu-card,.team-card,.event-card,.highlight-card,.review-card,.news-card{transition:transform 0.35s cubic-bezier(0.16,1,0.3,1),box-shadow 0.35s cubic-bezier(0.16,1,0.3,1)}.section-header::after{content:'';display:block;width:50px;height:2px;background:var(--color-accent);margin:1rem auto 0;border-radius:1px}.hero{overflow:hidden;position:relative}.hero__bg{will-change:transform}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;box-shadow:0 0 0 4px rgba(229,57,53,0.2)}.footer__text,.footer__text a,.footer__social-link{color:rgba(255,255,255,0.85)}.footer__legal a,.footer__cookie-btn{color:rgba(255,255,255,0.7)}.cookie-banner__link{color:rgba(255,255,255,0.85)}.cookie-banner__customize{color:rgba(255,255,255,0.8)}.cookie-panel__info p{color:rgba(255,255,255,0.75)}.cookie-panel__badge{color:rgba(255,255,255,0.7)}.newsletter-form__input::placeholder{color:rgba(255,255,255,0.6)}.newsletter-form__input{background:rgba(255,255,255,0.15)}.page-hero .section-label{color:rgba(255,255,255,0.85)}.form__input:focus,.form__select:focus,.form__textarea:focus{outline:2px solid var(--color-accent);outline-offset:-1px;border-color:var(--color-accent)}.review-card__text{color:rgba(26,26,26,0.8)}@media (max-width:1024px){.nav__menu.open{z-index:999;max-height:calc(100vh - 70px);overflow-y:auto}.menu-tab{min-height:44px;display:inline-flex;align-items:center}.allergen-btn{min-height:44px}}@media (max-width:480px){.hero__actions .btn{max-width:280px;width:100%}.form__row{grid-template-columns:1fr;gap:0.75rem}.cookie-banner{padding:0.75rem 1rem}.cookie-banner__inner{flex-direction:column;gap:0.75rem}.footer__legal,.footer__credits{word-break:break-word;overflow-wrap:break-word}.newsletter-form__input{min-height:44px}.promo-banner__text{font-size:0.78rem}}@media (prefers-contrast:more){:root{--color-muted:#444;--color-border:#999;--shadow:0 0 0 1px #999}.btn--outline{border-width:3px}.menu-card{border-width:2px}}