:root{--color-neutral-black: #000000;--color-neutral-dark: #2C2C2C;--color-neutral-medium: #6B6B6B;--color-neutral-light: #A8A8A8;--color-neutral-lighter: #E5E5E5;--color-neutral-white: #FFFFFF;--color-red-berry: #8B0000;--color-gold: #FFD700;--color-japanese-green: #008000;--font-heading: "Gilda Display", serif;--font-body: "Merriweather Sans", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-xxl: 4rem;--breakpoint-tablet: 768px;--breakpoint-desktop: 1024px;--breakpoint-large: 1200px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-neutral-dark);background-color:var(--color-neutral-white)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-sm)}@media (min-width: 768px){.container{padding:0 var(--spacing-lg)}}@media (min-width: 1024px){.container{padding:0 var(--spacing-xl)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:1.2;margin-bottom:var(--spacing-sm)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}@media (min-width: 768px){h1{font-size:3.5rem}h2{font-size:2.5rem}h3{font-size:1.75rem}}@media (min-width: 1024px){h1{font-size:4rem}h2{font-size:3rem}}p{margin-bottom:var(--spacing-sm)}.btn{display:inline-block;padding:12px 24px;border:none;border-radius:50px;font-family:var(--font-body);font-size:14px;font-weight:500;text-decoration:none;text-align:center;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-primary{background-color:var(--color-red-berry);color:var(--color-neutral-white)}.btn-primary:hover{background-color:#6b0000;transform:translateY(-2px)}.btn-secondary{background-color:var(--color-neutral-light);color:var(--color-neutral-dark)}.btn-secondary:hover{background-color:var(--color-neutral-medium);color:var(--color-neutral-white)}.btn-outline{background-color:transparent;color:var(--color-neutral-dark);border:2px solid var(--color-neutral-medium)}.btn-outline:hover{background-color:var(--color-neutral-dark);color:var(--color-neutral-white)}.btn-full{width:100%}.navbar{position:fixed;top:0;left:0;right:0;background-color:var(--color-neutral-white);box-shadow:0 2px 10px #0000001a;z-index:1000;padding:var(--spacing-sm) 0}.nav-container{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 var(--spacing-sm)}.nav-logo span{font-family:var(--font-heading);font-size:1.5rem;font-weight:600;color:var(--color-red-berry)}.nav-menu{display:none;list-style:none;gap:var(--spacing-lg)}.nav-link{text-decoration:none;color:var(--color-neutral-dark);font-weight:500;transition:color .3s ease}.nav-link:hover{color:var(--color-red-berry)}.nav-link.concept-link{color:var(--color-red-berry);border:2px solid var(--color-red-berry);padding:6px 12px;border-radius:20px;font-weight:600;transition:all .3s ease}.nav-link.concept-link:hover{background-color:var(--color-red-berry);color:var(--color-neutral-white)}.nav-actions{display:none;gap:var(--spacing-sm)}.hamburger{display:flex;flex-direction:column;cursor:pointer;gap:4px;position:relative}.bar{width:25px;height:3px;background-color:var(--color-neutral-dark);transition:all .3s ease}@media (min-width: 768px){.nav-container{padding:0 var(--spacing-lg)}}@media (min-width: 1024px){.nav-menu,.nav-actions{display:flex}.hamburger{display:none}.nav-container{padding:0 var(--spacing-xl)}}.hero{margin-top:80px;padding:var(--spacing-xxl) 0;background:linear-gradient(135deg,var(--color-neutral-lighter) 0%,var(--color-neutral-white) 100%)}.hero-content{max-width:1200px;margin:0 auto;padding:0 var(--spacing-sm);display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);align-items:center}.hero-title{font-size:2.5rem;margin-bottom:var(--spacing-md);color:var(--color-neutral-dark)}.hero-description{font-size:1.1rem;color:var(--color-neutral-medium);margin-bottom:var(--spacing-lg);max-width:500px}.hero-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.hero-image{display:flex;justify-content:center}.hero-img{width:100%;max-width:400px;height:300px;object-fit:cover;border-radius:12px}@media (min-width: 768px){.hero-content{grid-template-columns:1fr 1fr;padding:0 var(--spacing-lg)}.hero-title{font-size:3.5rem}.hero-img{height:400px}}@media (min-width: 1024px){.hero-content{padding:0 var(--spacing-xl)}.hero-title{font-size:4rem}}section{padding:var(--spacing-xxl) 0}.section-header{text-align:center;margin-bottom:var(--spacing-md)}.section-label{display:inline-block;font-size:.9rem;font-weight:600;color:var(--color-red-berry);text-transform:uppercase;letter-spacing:2px;margin-bottom:var(--spacing-sm)}.section-title{margin-bottom:var(--spacing-md);color:var(--color-neutral-dark)}.section-description{font-size:1.1rem;color:var(--color-neutral-medium);max-width:600px;margin:0 auto}.about{background-color:var(--color-neutral-white)}.features-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.feature-card{text-align:center;padding:var(--spacing-lg);border-radius:12px;background-color:var(--color-neutral-white);box-shadow:0 4px 20px #0000001a;transition:transform .3s ease}.feature-card:hover{transform:translateY(-5px)}.feature-icon{margin-bottom:var(--spacing-md)}.icon-placeholder{width:80px;height:80px;background-color:var(--color-gold);border-radius:50%;margin:0 auto;display:flex;align-items:center;justify-content:center}.feature-title{margin-bottom:var(--spacing-sm);color:var(--color-neutral-dark)}.feature-description{color:var(--color-neutral-medium)}@media (min-width: 768px){.features-grid{grid-template-columns:repeat(3,1fr)}}.menu-highlights{background-color:var(--color-neutral-lighter)}.menu-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-xl);justify-items:center}.menu-card{background-color:var(--color-neutral-white);border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;transition:transform .3s ease;width:100%;max-width:380px;margin:0 auto;display:flex;flex-direction:column;position:relative}.menu-card:hover{transform:translateY(-5px)}.menu-image{position:relative;width:100%;overflow:hidden;border-radius:12px 12px 0 0}.menu-image img{width:100%;height:200px;object-fit:cover;display:block;border-radius:0}.menu-content{padding:var(--spacing-md);flex:1;display:flex;flex-direction:column}.menu-item-title{margin-bottom:var(--spacing-xs);color:var(--color-neutral-dark);font-size:1.25rem}.menu-item-description{color:var(--color-neutral-medium);margin-bottom:var(--spacing-sm);flex:1;line-height:1.4}.menu-item-price{font-size:1.25rem;font-weight:600;color:var(--color-red-berry);margin-top:auto}@media (max-width: 431px){.menu-grid{gap:var(--spacing-sm);padding:0 var(--spacing-xs)}.menu-card{margin-bottom:var(--spacing-sm)}.menu-image img{height:160px}.menu-content{padding:var(--spacing-sm)}.menu-item-title{font-size:1rem}.menu-item-description{font-size:.85rem}}@media (min-width: 432px) and (max-width: 767px){.menu-grid{gap:var(--spacing-md);padding:0 var(--spacing-sm)}.menu-image img{height:180px}.menu-content{padding:var(--spacing-md)}.menu-item-title{font-size:1.1rem}.menu-item-description{font-size:.9rem}}@media (min-width: 768px) and (max-width: 1023px){.menu-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);max-width:800px;margin:var(--spacing-xl) auto 0}.menu-card{max-width:360px}.menu-image img{height:190px}.menu-content{padding:var(--spacing-sm)}.menu-item-title{font-size:1.1rem}.menu-item-description{font-size:.9rem;line-height:1.3}}@media (min-width: 990px){.contact-bg-image{max-width:400px}}@media (min-width: 1024px){.menu-grid{grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);max-width:1200px;margin:var(--spacing-xl) auto 0}.menu-card{max-width:350px}.menu-image img{height:220px}.menu-content{padding:var(--spacing-md)}.menu-item-title{font-size:1.25rem}.menu-item-description{font-size:1rem;line-height:1.4}}.gallery{background-color:var(--color-neutral-white)}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-top:var(--spacing-xl)}.gallery-item img{width:100%;height:200px;border-radius:8px;object-fit:cover;display:block}@media (min-width: 768px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.gallery-item img{height:250px}}@media (min-width: 1024px){.gallery-grid{grid-template-columns:repeat(4,1fr)}}.contact{background-color:var(--color-neutral-lighter)}.contact-content{display:grid;grid-template-columns:1fr;gap:var(--spacing-xl);max-width:1000px;margin:0 auto}.contact-details{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.contact-item h4{color:var(--color-red-berry);margin-bottom:var(--spacing-xs)}.contact-item p{color:var(--color-neutral-medium);margin-bottom:0}.contact-image{margin-top:var(--spacing-lg)}.contact-bg-image{width:100%;height:200px;object-fit:cover;border-radius:12px}.reservation-form{background-color:var(--color-neutral-white);padding:var(--spacing-lg);border-radius:12px;box-shadow:0 4px 20px #0000001a}.reservation-form h3{margin-bottom:var(--spacing-lg);color:var(--color-neutral-dark)}.form-group{margin-bottom:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-neutral-dark)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid var(--color-neutral-lighter);border-radius:8px;font-family:var(--font-body);font-size:14px;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-red-berry)}.form-group textarea{resize:vertical;min-height:100px}@media (min-width: 768px){.contact-content{grid-template-columns:1fr 1fr;gap:var(--spacing-xxl);align-items:stretch}.contact-info{display:flex;flex-direction:column;background-color:var(--color-neutral-lighter);padding:0 0 3rem}}.contact-image{margin-top:var(--spacing-md);flex:1;display:flex;align-items:stretch}.contact-bg-image{width:100%;height:100%;min-height:200px;object-fit:cover;border-radius:12px;flex:1}.section-header,.contact-details{color:inherit;flex-shrink:0}.section-header .section-label{color:var(--color-red-berry)}.section-header .section-title{color:var(--color-neutral-dark)}.section-header .section-description{color:var(--color-neutral-medium)}.contact-item h4{color:var(--color-red-berry)}.contact-item p{color:var(--color-neutral-medium)}.contact-details{grid-template-columns:repeat(1,1fr);gap:var(--spacing-sm);margin-top:var(--spacing-sm);margin-bottom:0}@media screen and (min-width: 550px){.form-row{grid-template-columns:1fr 1fr;gap:var(--spacing-md)}}@media screen and (min-width: 768px){.form-row{grid-template-columns:1fr;gap:0}}@media screen and (min-width: 950px){.form-row{grid-template-columns:1fr 1fr;gap:var(--spacing-md)}}@media (min-width: 1024px){.contact-details{grid-template-columns:repeat(1,1fr);gap:var(--spacing-sm);margin-top:0}.contact-image{margin-top:2.5rem}.section-header{margin-bottom:var(--spacing-lg)}}.footer{background-color:var(--color-neutral-dark);color:var(--color-neutral-white);padding:var(--spacing-xxl) 0 var(--spacing-lg)}.footer-content{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}.footer-section h4{color:var(--color-gold);margin-bottom:var(--spacing-md)}.footer-section p{color:var(--color-neutral-light);margin-bottom:var(--spacing-sm)}.footer-links{list-style:none}.footer-links li{margin-bottom:var(--spacing-xs)}.footer-links a{color:var(--color-neutral-light);text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:var(--color-gold)}.social-links{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-md)}.social-link{color:var(--color-neutral-light);text-decoration:none;transition:color .3s ease}.social-link:hover{color:var(--color-gold)}.footer-bottom{border-top:1px solid var(--color-neutral-medium);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);text-align:center}.footer-bottom p{color:var(--color-neutral-medium);margin:0}@media (min-width: 768px){.footer-content{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.footer-content{grid-template-columns:repeat(4,1fr)}}.nav-menu.active{display:flex;position:absolute;top:100%;left:0;right:0;background-color:var(--color-neutral-white);flex-direction:column;padding:var(--spacing-xl) var(--spacing-lg);box-shadow:0 8px 32px #00000026;z-index:1000;border-radius:0 0 12px 12px;border-top:2px solid var(--color-red-berry);backdrop-filter:blur(20px)}.nav-menu.active .nav-link{padding:var(--spacing-md) 0;border-bottom:1px solid rgba(0,0,0,.1);color:var(--color-neutral-dark);font-size:1.1rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;transition:all .3s ease}.nav-menu.active .nav-link:last-child{border-bottom:none}.nav-menu.active .nav-link:hover{color:var(--color-red-berry);padding-left:var(--spacing-sm)}.nav-menu.active .nav-link.concept-link{color:var(--color-red-berry);border:1px solid var(--color-red-berry);padding:var(--spacing-sm) var(--spacing-md);border-radius:4px;margin-top:var(--spacing-md);text-align:center}.nav-menu.active .nav-link.concept-link:hover{background-color:var(--color-red-berry);color:var(--color-neutral-white);padding-left:var(--spacing-md)}@media (max-width: 1023px){.hamburger{display:flex!important;cursor:pointer}.nav-menu{display:none!important}.nav-menu.active{display:flex!important;position:absolute;top:100%;left:0;right:0;background-color:var(--color-neutral-white);flex-direction:column;padding:var(--spacing-lg);box-shadow:0 4px 20px #0000001a;z-index:1000;border-radius:0 0 12px 12px}.nav-actions{display:none}}.hamburger.active .bar:nth-child(1){transform:rotate(45deg);position:absolute;top:50%;left:0;transform-origin:center}.hamburger.active .bar:nth-child(2){opacity:0}.hamburger.active .bar:nth-child(3){transform:rotate(-45deg);position:absolute;top:50%;left:0;transform-origin:center}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-0{margin-bottom:0!important}.mb-sm{margin-bottom:var(--spacing-sm)!important}.mb-md{margin-bottom:var(--spacing-md)!important}.mb-lg{margin-bottom:var(--spacing-lg)!important}html{scroll-behavior:smooth}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}.btn:focus,input:focus,select:focus,textarea:focus,a:focus{outline:2px solid var(--color-gold);outline-offset:2px}
