:root{--modern-accent:#ff0000;--modern-bg:#FFFFFF;--modern-text:#1a1a1a;--modern-font-serif:'Playfair Display',serif;--modern-font-sans:'Inter',sans-serif}body.modern-theme{font-family:var(--modern-font-sans);background-color:var(--bg-secondary,#F9F7F2);color:var(--modern-text);margin:0;position:relative}.skip-link{position:absolute;top:-40px;left:0;background:var(--modern-accent,#1a1a1a);color:#fff;padding:8px 16px;text-decoration:none;z-index:100;font-weight:600;border-radius:0 0 var(--radius-sm,4px)0}.skip-link:focus{top:0;outline:2px solid #fff;outline-offset:2px}.modern-hero{position:relative;height:var(--hero-height-mobile,30vh)!important;display:flex;flex-direction:column;padding-top:var(--safe-area-inset-top,0)}.hero-media{position:absolute;inset:0;z-index:0}.hero-img{width:100%;height:100%;object-fit:cover}.hero-fallback{width:100%;height:100%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.hero-overlay-dark{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0.25)0%,rgba(0,0,0,0.45)50%,rgba(0,0,0,0.75)100%)}.hero-inner{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;padding:var(--padding-lg,clamp(1.5rem,4vw,2rem))var(--padding-md,clamp(1rem,3vw,1.5rem));padding-top:calc(var(--padding-lg,clamp(1.5rem,4vw,2rem))+var(--safe-area-inset-top,0));color:#fff}.modern-nav{display:flex;justify-content:space-between;align-items:center}.nav-logo{height:clamp(48px,6vw,60px);filter:brightness(0)invert(1)}.nav-name{font-size:var(--heading-size-h4,clamp(1.125rem,3vw,1.5rem));font-weight:700;letter-spacing:1px}.hero-body{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;max-width:var(--container-md,min(800px,90vw));margin:0 auto}.hero-logo-container{position:absolute;top:40%;z-index:10;display:flex;align-items:center;justify-content:flex-start;transform:translateY(-50%);filter:drop-shadow(0 2px 8px rgba(0,0,0,0.4))}.hero-logo-container[data-position="TOP_LEFT"]{left:var(--spacing-lg,clamp(1rem,3vw,1.5rem));right:auto}.hero-logo-container[data-position="TOP_CENTER"]{left:50%;right:auto;justify-content:center;transform:translate(-50%,-50%)}.hero-logo-container[data-position="TOP_RIGHT"]{right:var(--spacing-lg,clamp(1rem,3vw,1.5rem));left:auto;justify-content:flex-end}.hero-logo{max-width:100%;height:auto;object-fit:contain}.hero-logo.small{max-width:clamp(80px,15vw,130px);max-height:clamp(60px,12vw,100px)}.hero-logo.medium{max-width:clamp(110px,22vw,180px);max-height:clamp(80px,17vw,140px)}.hero-logo.large{max-width:clamp(140px,28vw,240px);max-height:clamp(100px,22vw,180px)}.hero-main-title{font-family:var(--modern-font-serif);font-size:var(--heading-size-h1,clamp(1.75rem,6vw,3rem));margin:0 0 var(--margin-md,clamp(1rem,3vw,1.5rem))}.hero-sub{position:absolute;bottom:0.5rem;left:50%;transform:translateX(-50%);width:90%;max-width:var(--container-md,min(800px,90vw));font-size:clamp(0.95rem,2.5vw,1.25rem);opacity:0.95;font-weight:300;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,0.6);letter-spacing:0.02em;z-index:2;color:#fff}.modern-button{display:inline-block;padding:var(--padding-md,clamp(1rem,3vw,1.25rem))var(--padding-xl,clamp(2rem,5vw,2.5rem));min-height:var(--height-button-min,clamp(2.5rem,6vw,2.75rem));background:#fff;color:#000;text-decoration:none;font-weight:600;letter-spacing:1px;transition:all 0.3s;border-radius:var(--radius-full,9999px)}.modern-button:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,0.2)}.eatsqr-lang-bar{display:inline-flex;align-items:center;gap:0.5rem;background:var(--color-overlay-white-medium,rgba(255,255,255,0.15));backdrop-filter:blur(10px);border:1px solid var(--color-overlay-white-light,rgba(255,255,255,0.2));border-radius:var(--radius-md,8px);padding:0.5rem 0.75rem;transition:var(--transition-slow,all 0.3s ease)}.eatsqr-lang-bar:hover{background:var(--color-overlay-white-dark,rgba(255,255,255,0.25));border-color:var(--color-overlay-white-dark,rgba(255,255,255,0.3))}.eatsqr-lang-label{display:flex;align-items:center;color:rgba(255,255,255,0.9)}.eatsqr-lang-label svg{width:16px;height:16px}.eatsqr-lang-select{background:transparent;border:none;color:#fff;font-size:0.875rem;font-weight:500;font-family:inherit;cursor:pointer;outline:none;padding:0;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 4L6 8L10 4' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right center;padding-right:1.5rem;min-width:90px}.eatsqr-lang-select option{background:var(--bg-primary,#1a1a1a);color:var(--text-primary,#fff)}.eatsqr-hero-top-bar{position:absolute;top:calc(var(--hero-top-bar-padding,var(--spacing-lg,16px))+var(--safe-area-inset-top,0));left:0;right:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--hero-top-bar-padding,var(--padding-lg,16px));z-index:16;box-sizing:border-box}.eatsqr-hero-top-bar-left{display:flex;align-items:center}.eatsqr-hero-top-bar-right{display:flex;align-items:center;margin-left:auto}.modern-main{padding:3rem 1rem;background-color:var(--bg-secondary,#F9F7F2)}.modern-container{max-width:1200px;margin:0 auto}.section-top{text-align:center;margin-bottom:2rem}.surtitle{text-transform:uppercase;letter-spacing:3px;font-size:0.8rem;color:var(--modern-accent);display:block;margin-bottom:1rem}.section-h2{font-family:var(--modern-font-serif);font-size:2.5rem;font-style:italic;color:var(--color-accent,#8B6F47);margin:0;font-weight:400}.modern-grid{display:flex;flex-direction:column;gap:1.5rem;max-width:900px;margin:0 auto}.modern-card{position:relative;height:var(--height-card-mobile,clamp(150px,30vw,200px));min-height:150px;overflow:hidden;text-decoration:none;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md,12px);transition:transform 0.3s ease,box-shadow 0.3s ease}.modern-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,0.3)}.card-image{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 0.8s cubic-bezier(0.2,1,0.3,1)}.card-image.fallback{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.modern-card:hover .card-image{transform:scale(1.08)}.card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.75),rgba(0,0,0,0.4))}.card-info{position:relative;z-index:1;text-align:center;width:100%;padding:2rem}.card-title{font-family:var(--modern-font-serif);font-size:1.75rem;font-style:italic;font-weight:400;margin:0 0 0.5rem;text-shadow:0 2px 8px rgba(0,0,0,0.5);letter-spacing:1px}.card-desc{font-family:var(--modern-font-sans);font-size:0.85rem;opacity:0.9;margin-top:0.5rem;text-transform:uppercase;letter-spacing:2px;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,0.5)}.card-link-text{font-weight:600;text-transform:uppercase;letter-spacing:1px;font-size:0.9rem}.modern-card.animate-in,.section-top.animate-in,.social-proof-section.animate-in{opacity:1 !important;transform:translateY(0)!important}.homepage-additional-sections{background-color:var(--bg-secondary,#F9F7F2);padding:0}.welcome-section{padding:40px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}.welcome-divider{width:60px;height:2px;background-color:var(--modern-accent);margin-bottom:10px}.welcome-title{font-family:var(--modern-font-serif);font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--modern-accent);font-weight:600;font-style:italic}.cta-button{display:inline-block;margin-top:10px;padding:12px 30px;border:1px solid var(--modern-accent);color:var(--modern-accent);text-decoration:none;text-transform:uppercase;font-size:13px;letter-spacing:2px;font-weight:500;transition:all 0.3s ease;border-radius:var(--radius-md,12px);background:transparent;cursor:pointer}.cta-button:hover{background-color:var(--modern-accent);color:white;transform:translateY(-2px);box-shadow:0 4px 6px rgba(0,0,0,0.1)}.contact-info-bar{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px 20px;gap:30px;border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(0,0,0,0.1);background-color:var(--bg-secondary,#F9F7F2);flex-wrap:wrap}.contact-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;min-width:150px}.contact-icon{color:var(--modern-accent);display:flex;align-items:center;justify-content:center}.contact-icon svg{width:24px;height:24px}.contact-text,.contact-text-multi{font-size:12px;color:var(--modern-text);font-weight:400}.contact-text-multi{display:flex;flex-direction:column;gap:4px}.wifi-pass{font-size:11px;opacity:0.8}.contact-link{text-decoration:none;color:var(--modern-text);transition:color 0.2s ease,opacity 0.2s ease}.contact-link:hover{color:var(--modern-primary);opacity:0.9}.contact-link:focus{outline:2px solid var(--modern-primary);outline-offset:2px;border-radius:var(--radius-sm,4px)}.schedule-section{padding:40px 20px;background-color:var(--bg-secondary,#F9F7F2);border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(0,0,0,0.1)}.schedule-section .modern-container{max-width:900px;margin:0 auto}.schedule-section .section-top{margin-bottom:2rem}.schedule-card{max-width:600px;margin:0 auto;background:white;border-radius:var(--radius-md,12px);padding:30px 25px;box-shadow:0 2px 8px rgba(0,0,0,0.05)}.schedule-title{font-family:var(--modern-font-serif);font-size:2.5rem;font-style:italic;color:var(--color-accent,#8B6F47);margin:0;font-weight:400}.schedule-days{display:flex;flex-direction:column;gap:10px}.schedule-day{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:12px;padding:14px 16px;background:#F9F7F2;border-radius:var(--radius-md,12px);border:1px solid rgba(0,0,0,0.05);transition:all 0.2s ease}.schedule-day-current{background:rgba(var(--color-accent-rgb,212,175,55),0.12);border-color:var(--color-accent,#8B6F47);border-width:2px}.schedule-day-current .schedule-day-name{color:var(--color-accent,#8B6F47);font-weight:600}.schedule-day-name{font-weight:500;color:var(--modern-text);font-size:14px;flex-shrink:0}.schedule-time-slots{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.schedule-time-pill{display:inline-flex;align-items:center;padding:6px 12px;background:white;border:1px solid rgba(0,0,0,0.08);border-radius:var(--radius-full,9999px);font-family:'SF Mono','Monaco','Inconsolata',monospace;font-size:12px;color:var(--modern-text);white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,0.04)}.schedule-day-current .schedule-time-pill{background:white;border-color:var(--color-accent,#8B6F47);color:var(--color-accent,#8B6F47);font-weight:500}.schedule-day-time{color:var(--modern-text);font-family:monospace;font-size:13px;text-align:right}.schedule-day-time.schedule-closed{color:var(--color-gray-500,#6B7280);font-style:italic;font-family:var(--modern-font-sans)}@media(max-width:480px){.schedule-day{grid-template-columns:70px 1fr;gap:8px;padding:10px 12px}.schedule-day-name{font-size:13px}.schedule-time-pill{padding:4px 8px;font-size:11px}}.custom-content-section{padding:40px 20px;background-color:var(--bg-secondary,#F9F7F2);border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(0,0,0,0.1)}.custom-content-section .modern-container{max-width:900px;margin:0 auto}.custom-content-section .section-top{margin-bottom:2rem}.custom-content-card{max-width:800px;margin:0 auto;background:white;border-radius:var(--radius-md,12px);padding:30px 25px;box-shadow:0 2px 8px rgba(0,0,0,0.05)}.custom-content-title{font-family:var(--modern-font-serif);font-size:2.5rem;font-style:italic;color:var(--color-accent,#8B6F47);margin:0;font-weight:400}.custom-content-body{color:var(--modern-text);line-height:1.8;font-size:16px;font-family:var(--modern-font-sans)}.custom-content-body p{margin-bottom:1.25rem;color:var(--modern-text)}.custom-content-body p:last-child{margin-bottom:0}.custom-content-body a{color:var(--color-accent,#8B6F47);text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:all 0.2s ease}.custom-content-body a:hover{color:var(--color-accent,#8B6F47);border-bottom-color:var(--color-accent,#8B6F47)}.custom-content-body a:focus{outline:2px solid var(--color-accent,#8B6F47);outline-offset:2px;border-radius:var(--radius-sm,4px)}.custom-content-body strong,.custom-content-body b{font-weight:600;color:var(--modern-text)}.custom-content-body em,.custom-content-body i{font-style:italic}.custom-content-body ul,.custom-content-body ol{margin:1rem 0;padding-left:1.5rem}.custom-content-body li{margin-bottom:0.5rem}.custom-content-body h1,.custom-content-body h2,.custom-content-body h3,.custom-content-body h4,.custom-content-body h5,.custom-content-body h6{font-family:var(--modern-font-serif);margin-top:1.5rem;margin-bottom:1rem;font-weight:400;color:var(--modern-text)}.custom-content-body h1{font-size:2rem}.custom-content-body h2{font-size:1.75rem}.custom-content-body h3{font-size:1.5rem}.gallery-section{padding:40px 20px;text-align:center;background-color:var(--bg-secondary,#F9F7F2)}.gallery-title{font-family:var(--modern-font-serif);font-size:28px;font-style:italic;color:var(--modern-accent);margin-bottom:10px}.gallery-divider{width:60px;height:2px;background-color:var(--modern-accent);margin:0 auto 30px}.gallery-grid{display:grid;grid-template-columns:1fr;gap:20px;max-width:1000px;margin:0 auto}.gallery-item{aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-md,12px)}.gallery-item img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:transform 0.5s ease,filter 0.5s ease}.gallery-item:hover img{transform:scale(1.05);filter:grayscale(0%)}.restaurant-photos-section{padding:40px 20px;text-align:center;background-color:var(--bg-secondary,#F9F7F2);margin-bottom:3rem}.restaurant-photos-section .section-title{font-family:var(--modern-font-serif);font-size:28px;font-style:italic;color:var(--color-accent,#8B6F47);margin:0 0 1rem}.restaurant-photos-section .section-title::after{content:'';display:block;width:60px;height:2px;background:var(--modern-accent);margin:0 auto 2rem}.photo-categories-grid{display:grid;grid-template-columns:1fr;gap:var(--category-spacing,20px);max-width:var(--max-width,1000px);margin:0 auto}.photo-category-card{position:relative;border-radius:var(--radius-md,12px);overflow:hidden;cursor:pointer;aspect-ratio:16 / 9;transition:transform 0.3s ease,box-shadow 0.3s ease}.photo-category-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.15)}.photo-category-image{position:relative;width:100%;height:100%;overflow:hidden}.photo-category-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(100%);transition:transform 0.5s ease,filter 0.5s ease}.photo-category-card:hover .photo-category-image img{transform:scale(1.05);filter:grayscale(0%)}.photo-category-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,0.75),rgba(0,0,0,0.4));padding:1.5rem;color:white}.photo-category-info{display:flex;flex-direction:column;gap:0.25rem}.photo-category-name{font-family:var(--modern-font-serif);font-size:1.25rem;font-style:italic;font-weight:400;color:rgba(255,255,255,0.95)}.photo-category-count{font-family:var(--modern-font-sans);font-size:0.875rem;opacity:0.9;color:rgba(255,255,255,0.9)}.photo-gallery-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.92);backdrop-filter:blur(8px);z-index:1000;align-items:center;justify-content:center;padding:2rem}.photo-gallery-modal[aria-hidden="false"]{display:flex}.photo-gallery-container{position:relative;max-width:90vw;max-height:90vh;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.photo-gallery-close{position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,0.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);color:white;width:48px;height:48px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1001;transition:background 0.3s ease,border-color 0.3s ease}.photo-gallery-close:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.3)}.photo-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.1);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.2);color:white;width:48px;height:48px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1001;transition:background 0.3s ease,border-color 0.3s ease;flex-shrink:0}.photo-gallery-nav:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.3)}.photo-gallery-prev{left:1rem}.photo-gallery-next{right:1rem}.photo-gallery-content{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;position:relative}.photo-gallery-image-container{flex:1;display:flex;align-items:center;justify-content:center;width:100%;max-height:80vh}.photo-gallery-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius-md,12px)}.photo-gallery-info{color:white;text-align:center;padding:1rem}.photo-gallery-category{font-family:var(--modern-font-serif);font-size:1.25rem;font-style:italic;font-weight:400;margin-bottom:0.5rem;color:rgba(255,255,255,0.95)}.photo-gallery-counter{font-family:var(--modern-font-sans);font-size:0.875rem;opacity:0.8;color:rgba(255,255,255,0.9)}@media(min-width:768px){.contact-info-bar{flex-direction:row;padding:40px 60px;gap:60px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.photo-categories-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.photo-categories-grid{grid-template-columns:repeat(3,1fr)}}.social-proof-section{padding:40px 20px 20px;text-align:center;background:linear-gradient(135deg,var(--modern-text)0%,#1a1a1a 100%);color:rgba(255,255,255,0.9);display:flex;flex-direction:column;align-items:center;gap:30px;margin-top:auto}.review-card-link{text-decoration:none;display:inline-block;transition:transform 0.3s ease,box-shadow 0.3s ease}.review-card-link:hover{transform:translateY(-3px)}.review-card-link:hover .review-card{box-shadow:0 8px 25px rgba(0,0,0,0.3);background:rgba(255,255,255,0.15)}.review-card{background:rgba(255,255,255,0.1);padding:20px 30px;display:inline-flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 5px 20px rgba(0,0,0,0.2);border-radius:var(--radius-md,12px);backdrop-filter:blur(10px);cursor:pointer;transition:all 0.3s ease}.stars-container{display:flex;gap:4px;align-items:center;justify-content:center}.stars{color:var(--color-warning,#FBBF24);font-size:14px;letter-spacing:2px}.review-title{font-family:var(--modern-font-serif);font-size:16px;color:rgba(255,255,255,0.95);margin:0}.review-score{font-size:10px;letter-spacing:1px;color:rgba(255,255,255,0.8);text-transform:uppercase;margin:0}.review-cta{font-size:12px;color:rgba(255,255,255,0.85);margin:5px 0 0 0;font-style:italic}.social-links-container{display:flex;flex-direction:column;align-items:center;gap:15px}.social-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.7)}.social-icons{display:flex;gap:20px}.social-icon{width:40px;height:40px;border:1px solid rgba(255,255,255,0.3);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.8);text-decoration:none;transition:all 0.2s}.social-icon:hover{border-color:rgba(255,255,255,0.8);color:rgba(255,255,255,1);background:rgba(255,255,255,0.1)}.social-icon svg{width:16px;height:16px}.main-footer{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,0.1);width:100%;font-family:var(--modern-font-serif);font-style:italic;font-size:12px;color:rgba(255,255,255,0.8)}.hero-inner{padding:2rem 1rem}.hero-main-title{font-size:clamp(1.5rem,6vw,3rem)}.modern-main{padding:3rem 1rem}.section-top{margin-bottom:2rem}.section-h2{font-size:2rem}.schedule-title{font-size:2rem}.custom-content-title{font-size:2rem}.modern-grid{gap:1.5rem}.modern-card{height:150px}@media(min-width:768px){.modern-hero{height:50vh !important}.hero-inner{padding:2rem 1.5rem}.modern-main{padding:1rem 1.5rem}.section-h2{font-size:3rem}.schedule-title{font-size:3rem}.custom-content-title{font-size:3rem}.modern-card{height:180px}}@media(min-width:1024px){.modern-hero{height:50vh !important}.hero-main-title{font-size:clamp(2.5rem,8vw,5rem)}.modern-card{height:150px}}