:root{--primary-color: #121212;--secondary-color: #ffffff;--accent-color: #9a8866;--text-color: #333333;--light-gray: #f5f5f5;--border-color: #e0e0e0;--spacing-unit: 2rem;--transition-speed: .3s;--font-primary: "Helvetica Neue", Arial, sans-serif;--font-secondary: "Georgia", "Times New Roman", serif;--contrast-ratio: 4.5;--focus-outline: 3px solid #4A90E2}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-primary);color:var(--text-color);line-height:1.6;overflow-x:hidden;background-color:var(--secondary-color)}h1,h2,h3,h4,h5,h6{font-family:var(--font-secondary);font-weight:400;color:var(--primary-color)}.social-icons{display:flex;justify-content:center;align-items:center;gap:1rem}p{margin-bottom:1rem}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-speed)}a:hover{color:var(--accent-color)}a:focus,button:focus{outline:var(--focus-outline);outline-offset:2px}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-unit)}.section{width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem;box-sizing:border-box}.section-title{font-size:2rem;margin-bottom:2.5rem;margin-left:1.5rem;position:relative;font-weight:400;display:flex;align-items:center}.section-title:after{content:"";flex-grow:1;height:1px;background-color:var(--border-color);margin-left:2rem}.section-subtitle{max-width:700px;margin:0 0 2.5rem;text-align:left}.header{padding:.5rem 30px .5rem 0;background-color:var(--secondary-color);position:relative;border-bottom:1px solid #f0f0f0}.main-nav{display:flex;justify-content:space-between;align-items:center;width:100%}.nav-logo{font-family:var(--font-secondary);font-size:1.8rem;font-weight:700;color:var(--primary-color);text-transform:uppercase;letter-spacing:1px;width:auto;height:auto;display:block;max-width:100px;padding:.7rem}.nav-links{display:flex;list-style:none;gap:2.5rem}.nav-links a{font-size:1.1rem;color:var(--primary-color);text-transform:none;position:relative;padding:.5rem 0}.nav-links a.active{color:var(--primary-color);font-weight:600;position:relative}.nav-links a.active:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background-color:var(--primary-color);transform:scaleX(1)}.nav-links a:hover:after,.nav-links a.active:after{content:"";position:absolute;width:100%;height:1px;bottom:0;left:0;background-color:var(--primary-color)}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:10px;z-index:1001}.hamburger{display:block;position:relative;width:24px;height:2px;background-color:var(--primary-color);transition:transform .3s,background-color .3s}.hamburger:before,.hamburger:after{content:"";position:absolute;left:0;width:24px;height:2px;background-color:var(--primary-color);transition:transform .3s}.hamburger:before{top:-8px}.hamburger:after{bottom:-8px}.menu-open .hamburger{background-color:transparent}.menu-open .hamburger:before{transform:translateY(8px) rotate(45deg)}.menu-open .hamburger:after{transform:translateY(-8px) rotate(-45deg)}.announcement{background-color:var(--primary-color);color:var(--secondary-color);text-align:center;padding:.9rem 1.5rem;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;font-weight:400;position:relative;z-index:1000}.announcement:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:#ffffff1a}.announcement p{margin:0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem}.announcement a{color:var(--accent-color);text-decoration:none;transition:all .3s ease;font-weight:500;padding:.2rem .5rem;border-radius:2px}.announcement a:hover{background-color:#ffffff1a;color:#fff}.announcement i,.announcement .icon{margin-right:.3rem;font-size:.9rem}.hero{position:relative;min-height:60vh;overflow:hidden;background-color:#f8f8f8}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000005;z-index:1}.hero-split-container{display:flex;flex-direction:column;align-items:center;position:relative;z-index:2;height:100%;padding:1rem;max-width:1600px;margin:0 auto}.hero-content{width:100%;max-width:600px;text-align:center;margin-bottom:3rem}.hero-title{font-size:3.5rem;font-weight:700;margin-bottom:1rem;color:#121212;letter-spacing:-.5px;line-height:1.1}.hero-subtitle{font-size:1.8rem;font-weight:300;margin-bottom:1.5rem;color:#333;font-style:italic}.hero-description{font-size:1.1rem;line-height:1.6;margin-bottom:2rem;color:#444}.hero-buttons{display:flex;flex-direction:column;gap:1rem;justify-content:center;align-items:center;margin-top:2rem}.btn{padding:1rem 2rem;font-size:1rem;font-weight:500;text-align:center;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;max-width:260px;border-radius:4px}.btn-primary{background-color:#121212;color:#fff;border:none;box-shadow:0 4px 12px #0000001a}.btn-primary:hover{background-color:#000;transform:translateY(-3px);box-shadow:0 6px 16px #00000026}.btn-outline{background-color:transparent;color:#121212;border:1px solid #121212}.btn-outline:hover{background-color:#0000000d;transform:translateY(-3px)}.hero-image-container{position:relative;width:100%;max-width:600px;height:400px;padding:1rem}.hero-image{width:100%;height:100%;border-radius:6px;overflow:hidden;box-shadow:0 20px 40px #0003;position:relative}.hero-image img{width:100%;height:100%;object-fit:cover;transition:transform 5s ease}.hero-image:hover img{transform:scale(1.05)}.hero-accent{position:absolute;bottom:-20px;right:-20px;background-color:#121212;color:#fff;padding:1.5rem 2rem;z-index:3;box-shadow:0 6px 15px #0003}.accent-text{display:flex;flex-direction:column}.accent-large{font-size:1.5rem;font-weight:600;margin-bottom:.3rem}.accent-small{font-size:.9rem;text-transform:uppercase;letter-spacing:2px}@media(min-width:1024px){.hero-split-container{flex-direction:row;justify-content:space-between;align-items:center;padding:0 4rem;height:100vh}.hero-content{text-align:left;padding-right:4rem;margin-bottom:0}.hero-buttons{flex-direction:row;justify-content:flex-start}.hero-image-container{height:500px;width:50%}}@media(min-width:768px)and (max-width:1023px){.hero-content{max-width:80%}.hero-buttons{flex-direction:row}.hero-image-container{width:80%}}@media(max-width:767px){.hero{min-height:auto;padding:4rem 0}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.4rem}.hero-image-container{height:300px}.hero-accent{bottom:-15px;right:-15px;padding:1rem 1.5rem}.accent-large{font-size:1.2rem}}.footer{background-color:var(--secondary-color);color:var(--primary-color);padding:5rem 5% 3rem;border-top:1px solid #f0f0f0}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:3rem}.footer-section h3{font-size:1.2rem;margin-bottom:1.5rem;font-weight:600}.footer-section p{margin-bottom:.5rem}.footer-bottom{margin-top:3rem;padding-top:1.5rem;text-align:center;font-size:.9rem;color:#999;border-top:1px solid #f0f0f0}.cookie-consent{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);width:90%;max-width:400px;background-color:var(--primary-color);color:var(--secondary-color);padding:1.5rem;border-radius:0;box-shadow:0 5px 15px #0000001a;z-index:9999;display:none}.cookie-consent.visible{display:block}.cookie-content{text-align:center}.cookie-content p{margin-bottom:1.5rem;font-size:.9rem}.cookie-buttons{display:flex;justify-content:center;gap:1rem}.cookie-button{padding:.6rem 1.2rem;font-size:.85rem;background:transparent;border:1px solid var(--secondary-color);color:var(--secondary-color);cursor:pointer;transition:all var(--transition-speed)}.cookie-button.accept{background-color:var(--secondary-color);color:var(--primary-color);border:none}.cookie-button:hover{opacity:.9}.skip-to-main{position:absolute;left:-9999px;z-index:999;padding:1em;background-color:#fff;color:#000;text-decoration:none}.skip-to-main:focus{left:50%;transform:translate(-50%)}@media(max-width:768px){.header{padding:.5rem 15px}.menu-toggle{display:block}.nav-logo{max-width:80px}.nav-links{display:none;position:absolute;top:100%;right:0;width:100%;background-color:var(--secondary-color);flex-direction:column;padding:1rem 0;box-shadow:0 5px 10px #0000001a;z-index:1002}.nav-links.active{display:flex!important;flex-direction:column}.nav-links li{width:100%;text-align:right;padding-right:20px}.nav-links a{padding:.8rem 20px .8rem 0;width:100%;text-align:right}.hero h1{font-size:2.5rem}.cta-buttons{flex-direction:column;width:100%}.cta-primary,.cta-secondary{width:100%;text-align:center}.section-title{font-size:2rem}.announcement{padding:.7rem 1rem;font-size:.75rem}.announcement br{display:none}.announcement p{gap:.3rem}input,select,textarea{font-size:16px}}@media(max-width:480px){.hero{height:auto;min-height:70vh;padding:4rem 5% 5rem}.hero h1{font-size:2rem}.hero p{font-size:1rem}.section{padding:3rem 5%}.footer{padding:3rem 5% 2rem}.footer-content{gap:2rem}}@media screen and (max-width:428px){.nav-links.active{display:flex!important;position:absolute;top:100%;right:0;width:100%;background-color:#fff;padding:1rem 0;box-shadow:0 5px 10px #0000001a;z-index:9998!important}.nav-logo{max-width:70px!important}}.specialties{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem;margin:3rem 0}.specialty-item{position:relative;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 5px 15px #00000014;transition:transform .3s ease,box-shadow .3s ease;height:100%;display:flex;flex-direction:column}.specialty-item:hover{transform:translateY(-5px);box-shadow:0 10px 25px #00000026}.specialty-img-container{position:relative;overflow:hidden;height:240px}.specialty-img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.specialty-item:hover .specialty-img{transform:scale(1.05)}.specialty-badge{position:absolute;top:1rem;right:1rem;background-color:var(--primary-color);color:#fff;padding:.4rem .8rem;font-size:.8rem;font-weight:500;border-radius:20px;z-index:1}.specialty-content{padding:1rem;display:flex;flex-direction:column;flex-grow:1}.specialty-title{font-size:1.4rem;margin-bottom:.7rem;font-weight:500;color:var(--primary-color)}.specialty-description{font-size:.95rem;color:#555;line-height:1.6;margin-bottom:1rem;flex-grow:1}.specialty-price{font-weight:600;color:var(--primary-color);font-size:1.1rem;display:inline-block;margin-top:auto;align-self:flex-start;background-color:#fafafacc;padding:.3rem .6rem;border-radius:4px}.menu-cta{text-align:center;margin-top:3rem}.menu-cta .cta-button{display:inline-block;padding:.9rem 2rem;background-color:var(--primary-color);color:#fff;font-size:.95rem;transition:background-color .3s,transform .2s;border:none;cursor:pointer}.menu-cta .cta-button:hover{background-color:#000;transform:translateY(-2px)}@media(min-width:768px){.specialties{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.specialties{grid-template-columns:repeat(3,1fr)}.specialty-item{max-width:100%}}.weekly-menu-section{padding:4rem 5%;text-align:center;max-width:800px;margin:0 auto}.weekly-menu-content{text-align:center}.weekly-headline{font-size:1.4rem;margin-bottom:1.5rem;color:var(--primary-color)}.weekly-description{margin-bottom:2rem;color:#555;line-height:1.6}.weekly-menu-section .social-icons{justify-content:center;gap:2rem;margin-top:2rem}.weekly-menu-section .social-icons a{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem}.weekly-menu-section .social-name{margin-left:.5rem}.about{padding:4rem 5%;text-align:center;max-width:800px;margin:0 auto}.about h2{font-size:2rem;margin-bottom:2rem;color:var(--primary-color)}.about p{margin-bottom:1.5rem;color:#555;line-height:1.6;padding:0 1rem}@media screen and (max-width:428px){.about,.weekly-menu-section{padding:2rem 1rem;margin:0 1rem}.about h2,.weekly-menu-section h2{font-size:1.8rem;margin-bottom:1.5rem}.about p,.weekly-description{font-size:.95rem;padding:0 .5rem}.weekly-headline{font-size:1.2rem;padding:0 .5rem}.social-icons{flex-wrap:wrap;gap:1rem}}.reservation-section{max-width:600px;margin:.5rem auto;background:#fff;border-radius:8px;box-shadow:0 4px 24px #00000012;padding:3rem 2rem}.reservation-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.reservation-form input,.reservation-form select,.reservation-form textarea{padding:.8rem 1rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;font-family:var(--font-primary);background:#fafafa;transition:border .2s}.reservation-form input:focus,.reservation-form select:focus,.reservation-form textarea:focus{border:1.5px solid var(--primary-color);outline:none}.reservation-form button[type=submit]{margin-top:1rem}.reservation-success{color:#1a7f37;background:#e6f9ed;border:1px solid #b6e7c9;border-radius:4px;padding:1rem;margin-top:1rem;text-align:center;font-weight:500}.reservation-info{margin-top:2rem;color:#555;font-size:.98rem;background:#f9f9f9;border-radius:4px;padding:1.2rem 1rem}@media(max-width:600px){.reservation-section{padding:.5rem}}.menu-chasse{background-color:var(--light-gray);width:100%}.menu-chasse-container{max-width:1200px;width:90%;margin:0 auto;padding:2rem}.menu-chasse-header{text-align:center;margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto}.chasse-preview{display:flex;justify-content:center;align-items:center;width:100%}.chasse-card{background-color:var(--secondary-color);border-radius:8px;padding:3rem;box-shadow:0 4px 6px #0000001a;width:100%;max-width:1000px;margin:0 auto}.chasse-content{text-align:center}.chasse-content h3{color:var(--primary-color);font-size:1.8rem;margin-bottom:1.5rem}.chasse-content p{color:var(--text-color);margin-bottom:1.5rem;line-height:1.6}.chasse-dates{color:var(--accent-color);font-size:1.1rem;margin:1.5rem 0}.chasse-cta{margin-top:2rem}.chasse-cta .btn{padding:1rem 2rem;font-size:1.1rem;transition:transform .3s ease}.chasse-cta .btn:hover{transform:translateY(-2px)}@media(max-width:768px){.menu-chasse{padding:2rem 1rem}.chasse-card{padding:1.5rem}.menu-chasse-header h2{font-size:2rem}.chasse-content h3{font-size:1.5rem}}@media screen and (min-width:1921px){.section,.menu-chasse-container{max-width:1600px;padding:4rem}}@media screen and (max-width:1200px){.menu-chasse-container{width:95%;padding:1.5rem}.chasse-card{padding:2rem}}@media screen and (max-width:768px){.section,.menu-chasse-container{padding:1rem;width:100%}.chasse-card{padding:1.5rem}.menu-chasse-header{margin-bottom:2rem}}.section>*:last-child{margin-bottom:0}.section>*:first-child{margin-top:0}
