*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:"Lato",sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",serif;letter-spacing:1px}a{text-decoration:none;transition:color .3s ease}img{width:100%}.navbar-container{position:fixed;top:0;width:100%;z-index:1000;padding:20px 40px;background:linear-gradient(135deg, color-mix(in srgb, #fffdf8 92%, #2f7a4f 8%) 0%, color-mix(in srgb, #e89b3b 80%, #fffdf8 20%) 60%, color-mix(in srgb, #c03a2b 70%, #fffdf8 30%) 100%);border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.logo-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:"Playfair Display",serif;font-size:18px;font-weight:700;letter-spacing:2px;border-radius:999px;background-color:var(--color-primary);padding:16px 16px 8px 16px}.logo-brand span{margin-top:-12px;color:#fff}.nav-links{display:flex;list-style:none;gap:40px}.nav-links a{color:#000;font-size:14px;text-transform:uppercase;letter-spacing:1px;transition:color .3s ease}.nav-links a:hover{color:var(--accent-teal)}.nav-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;gap:6px}.nav-toggle span{width:25px;height:2px;background-color:var(--light-text);transition:.3s ease}.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translateY(12px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translateY(-12px)}.mobile-nav{display:flex;opacity:0;position:fixed;top:89px;left:0;right:0;background:var(--color-backplate);border-bottom:1px solid var(--glass-border);flex-direction:column;padding:20px;gap:15px;pointer-events:none;z-index:100;transition:all .3s ease-in-out}.mobile-nav a{font-size:14px;text-transform:uppercase;letter-spacing:1px}.cta-button{display:inline-block;padding:15px 40px;background:var(--color-accent);color:var(--color-primary);font-size:14px;text-transform:uppercase;letter-spacing:1px;border:none;cursor:pointer;transition:all .3s ease;font-family:"Lato",sans-serif;margin:10px;border-radius:12px;width:100%;max-width:120px}.cta-button:hover{transform:scale(1.05)}.section{padding:100px 40px;max-width:1200px;margin:0 auto}.card-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:30px;margin-top:60px}.card-grid.reservation-page{grid-template-columns:1fr 1fr 1fr}.content-card{padding:40px;border:1px solid var(--glass-border);transition:all .3s ease;backdrop-filter:blur(10px)}.modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);z-index:2000;align-items:center;justify-content:center;backdrop-filter:blur(5px)}.modal.active{display:flex}.modal-content{width:90%;padding:50px;max-width:500px;border:2px solid var(--color-primary);position:relative;background:#fff;text-align:center;border-radius:12px}.modal-close{position:absolute;top:20px;right:20px;font-size:28px;cursor:pointer;color:var(--color-primary);background:none;border:none}.modal-title{font-size:36px;color:var(--color-accent);margin-bottom:20px;text-align:center}.modal-text{text-align:center;color:var(--muted-text);margin-bottom:30px}.home-container1{width:100%;display:block;min-height:100vh}.home-container2{display:none}.home-container3{display:contents}.home-text52{font-weight:700}.home-iframe{border:0}.home-container5{display:none}.home-container6{display:contents}.home-container7{display:none}.home-container8{display:contents}.home-container9{right:50px;border:1px solid hsla(0,0%,100%,.3607843137);bottom:30px;display:flex;z-index:22;position:fixed;box-shadow:5px 5px 10px 0px rgba(31,31,31,.4);min-height:auto;align-items:center;padding-top:8px;padding-left:12px;border-radius:8px;padding-right:12px;padding-bottom:8px;backdrop-filter:blur(6px);background-color:rgba(41,41,41,.41)}.home-icon59{width:24px;margin-right:4px}.home-text77{color:#fff;font-size:13px;font-style:normal;font-weight:500;line-height:24px}:root{--spacing-lg: 1rem;--spacing-md: 0.75rem;--spacing-sm: 0.5rem;--spacing-xl: 1.5rem;--spacing-xs: 0.25rem;--color-scrim: rgba(0, 0, 0, 0.32);--section-gap: clamp(2rem, 4vw, 5rem);--spacing-2xl: 2rem;--spacing-3xl: 3rem;--spacing-4xl: 4rem;--color-accent: #e89b3b;--color-border: color-mix(in srgb, #8b8b87 60%, #fffdf8 40%);--font-size-lg: 1.25rem;--font-size-sm: 0 ninerem;--font-size-xl: 1.75rem;--color-neutral: #8b8b87;--color-outline: color-mix(in srgb, #2f7a4f 20%, #fffdf8 80%);--color-overlay: rgba(27, 27, 25, 0.6);--color-primary: #2f7a4f;--color-surface: #fffdf8;--font-size-base: 1rem;--font-size-hero: 2.75rem;--shadow-level-1: 0 2px 8px rgba(76, 175, 80, 0.12);--shadow-level-2: 0 8px 24px rgba(76, 175, 80, 0.16);--shadow-level-3: 0 16px 40px rgba(76, 175, 80, 0.2);--color-accent-90: color-mix(in srgb, #e89b3b 90%, black 10%);--color-backplate: color-mix(in srgb, #fffdf8 94%, #2f7a4f 2%);--color-secondary: #c03a2b;--border-radius-lg: 32px;--border-radius-md: 20px;--border-radius-sm: 12px;--border-radius-xl: 48px;--color-neutral-60: color-mix(in srgb, #8b8b87 60%, white 40%);--color-on-primary: #ffffff;--color-on-surface: #1b1b19;--color-primary-70: color-mix(in srgb, #2f7a4f 70%, black 30%);--color-primary-90: color-mix(in srgb, #2f7a4f 90%, black 10%);--font-family-body: "Lora", serif;--font-weight-bold: 700;--line-height-base: 1.5;--line-height-snug: 1.15;--content-max-width: 74rem;--line-height-tight: 1.05;--border-radius-full: 9999px;--border-radius-none: 0px;--color-secondary-90: color-mix(in srgb, #c03a2b 90%, black 10%);--font-weight-medium: 500;--font-family-heading: "Playfair Display", serif;--font-weight-regular: 400;--dl-layout-size-large: 144px;--dl-layout-size-small: 48px;--dl-layout-space-unit: 16px;--letter-spacing-loose: 0.01em;--letter-spacing-tight: -0.01em;--dl-layout-size-medium: 96px;--dl-layout-size-xlarge: 192px;--dl-layout-size-xsmall: 16px;--letter-spacing-normal: 0em;--color-surface-elevated: color-mix(in srgb, #fffdf8 88%, #2f7a4f 4%);--dl-color-theme-accent1: #ffffff;--dl-color-theme-accent2: #f5d1b0;--dl-layout-radius-round: 50%;--dl-layout-size-xxlarge: 288px;--animation-curve-primary: cubic-bezier(0.25, 0.46, 0.45, 0.94);--animation-duration-fast: 150ms;--animation-duration-slow: 400ms;--dl-color-theme-primary1: #bf4408;--dl-color-theme-primary2: #e65103;--dl-layout-size-maxwidth: 1400px;--dl-layout-radius-radius2: 2px;--dl-layout-radius-radius4: 4px;--dl-layout-radius-radius8: 8px;--dl-layout-space-halfunit: 8px;--dl-layout-space-sixunits: 96px;--dl-layout-space-twounits: 32px;--dl-color-theme-secondary1: #ffffff;--dl-color-theme-secondary2: #fbf1eb;--dl-layout-space-fiveunits: 80px;--dl-layout-space-fourunits: 64px;--color-on-surface-secondary: #55564f;--dl-layout-space-threeunits: 48px;--animation-duration-standard: 250ms;--dl-color-theme-neutral-dark: #191818;--dl-layout-radius-cardradius: 8px;--dl-color-theme-neutral-light: #fbfaf9;--dl-layout-radius-imageradius: 8px;--dl-layout-radius-inputradius: 24px;--dl-layout-radius-buttonradius: 24px;--dl-layout-space-oneandhalfunits: 24px;--accent-red: #e63946;--accent-teal: #2a9d8f;--accent-orange: #f4a261;--dark-bg: #0f0f0f;--darker-bg: #0a0a0a;--light-text: #f5f5f5;--muted-text: #b0b0b0;--card-bg: rgba(20, 20, 20, 0.8);--glass-bg: rgba(255, 255, 255, 0.05);--glass-border: rgba(255, 255, 255, 0.1)}button{border:none;background:none}.button{color:var(--dl-color-theme-neutral-dark);display:inline-block;padding:.5rem 1rem;border-color:var(--dl-color-theme-neutral-dark);border-width:1px;border-radius:4px;background-color:var(--dl-color-theme-neutral-light)}.input{color:var(--dl-color-theme-neutral-dark);cursor:auto;padding:.5rem 1rem;border-color:var(--dl-color-theme-neutral-dark);border-width:1px;border-radius:4px;background-color:var(--dl-color-theme-neutral-light)}.textarea{color:var(--dl-color-theme-neutral-dark);cursor:auto;padding:.5rem;border-color:var(--dl-color-theme-neutral-dark);border-width:1px;border-radius:4px;background-color:var(--dl-color-theme-neutral-light)}.list{width:100%;margin:1em 0px 1em 0px;display:block;padding:0px 0px 0px 1.5rem;list-style-type:none;list-style-position:outside}.list-item{display:list-item}.teleport-show{display:flex !important;transform:none !important}.thq-input{color:var(--dl-color-theme-neutral-dark);cursor:auto;outline:none;padding:.5rem 1rem;align-self:stretch;text-align:center;border-color:var(--dl-color-theme-neutral-dark);border-width:1px;border-radius:var(--dl-layout-radius-inputradius);background-color:var(--dl-color-theme-neutral-light)}.thq-input:focus{outline:1px solid var(--dl-color-theme-primary1)}.thq-button-filled{gap:var(--dl-layout-space-halfunit);fill:var(--dl-color-theme-secondary1);color:var(--dl-color-theme-secondary1);cursor:pointer;display:flex;transition:.3s;align-items:center;font-weight:bold;padding-top:var(--dl-layout-space-halfunit);white-space:nowrap;border-color:var(--dl-color-theme-primary1);border-width:1px;padding-left:var(--dl-layout-space-oneandhalfunits);border-radius:var(--dl-layout-radius-buttonradius);padding-right:var(--dl-layout-space-oneandhalfunits);padding-bottom:var(--dl-layout-space-halfunit);justify-content:center;background-color:var(--dl-color-theme-primary1)}.thq-button-filled:hover{fill:var(--dl-color-theme-secondary2);color:var(--dl-color-theme-secondary2);border-color:var(--dl-color-theme-primary2);background-color:var(--dl-color-theme-primary2)}.thq-button-outline{gap:var(--dl-layout-space-halfunit);fill:var(--dl-color-theme-primary1);color:var(--dl-color-theme-primary1);border:1px solid;cursor:pointer;display:flex;transition:.3s;align-items:center;font-weight:bold;padding-top:var(--dl-layout-space-halfunit);white-space:nowrap;border-color:var(--dl-color-theme-primary1);padding-left:var(--dl-layout-space-oneandhalfunits);border-radius:var(--dl-layout-radius-buttonradius);padding-right:var(--dl-layout-space-oneandhalfunits);padding-bottom:var(--dl-layout-space-halfunit);justify-content:center}.thq-button-outline:hover{fill:var(--dl-color-theme-secondary2);color:var(--dl-color-theme-secondary2);border-color:var(--dl-color-theme-primary2);background-color:var(--dl-color-theme-primary2)}.thq-button-flat{gap:var(--dl-layout-space-halfunit);fill:var(--dl-color-theme-primary1);color:var(--dl-color-theme-primary1);cursor:pointer;display:flex;transition:.3s;align-items:center;font-weight:bold;padding-top:var(--dl-layout-space-halfunit);white-space:nowrap;border-color:rgba(0,0,0,0);border-width:1px;padding-left:var(--dl-layout-space-oneandhalfunits);border-radius:var(--dl-layout-radius-buttonradius);padding-right:var(--dl-layout-space-oneandhalfunits);padding-bottom:var(--dl-layout-space-halfunit);justify-content:center}.thq-button-flat:hover{fill:var(--dl-color-theme-secondary1);color:var(--dl-color-theme-secondary1);border-color:var(--dl-color-theme-primary2);background-color:var(--dl-color-theme-primary2)}.thq-heading-1{font-size:48px;font-family:STIX Two Text;font-weight:700;line-height:1.5}.thq-heading-2{font-size:35px;font-family:STIX Two Text;font-weight:600;line-height:1.5}.thq-heading-3{font-size:26px;font-family:STIX Two Text;font-weight:600;line-height:1.5}.thq-body-large{font-size:18px;font-family:Noto Sans;line-height:1.5}.thq-body-small{font-size:16px;font-family:Noto Sans;line-height:1.5}.thq-team-image-round{width:80px;height:80px;object-fit:cover;border-radius:50%}.thq-section-padding{width:100%;display:flex;padding:var(--dl-layout-space-fiveunits);position:relative;align-items:center;flex-direction:column}.thq-section-max-width{width:100%;max-width:var(--dl-layout-size-maxwidth)}.thq-img-ratio-1-1{width:100%;object-fit:cover;aspect-ratio:1/1;border-radius:var(--dl-layout-radius-imageradius)}.thq-img-ratio-16-9{width:100%;object-fit:cover;aspect-ratio:16/9;border-radius:var(--dl-layout-radius-imageradius)}.thq-img-ratio-4-3{width:100%;object-fit:cover;aspect-ratio:4/3;border-radius:var(--dl-layout-radius-imageradius)}.thq-img-ratio-4-6{width:100%;object-fit:cover;aspect-ratio:4/6;border-radius:var(--dl-layout-radius-imageradius)}.thq-img-round{width:100%;border-radius:var(--dl-layout-radius-round)}.thq-flex-column{gap:var(--dl-layout-space-twounits);display:flex;overflow:hidden;position:relative;align-items:center;flex-direction:column}.thq-flex-row{gap:var(--dl-layout-space-twounits);display:flex;overflow:hidden;position:relative;align-items:center}.thq-grid-6{display:grid;grid-gap:var(--dl-layout-space-twounits);grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr}.thq-grid-5{display:grid;grid-gap:var(--dl-layout-space-twounits);grid-template-columns:1fr 1fr 1fr 1fr 1fr}.thq-card{gap:var(--dl-layout-space-oneandhalfunits);display:flex;padding:var(--dl-layout-space-twounits);align-items:stretch;border-radius:var(--dl-layout-radius-cardradius);flex-direction:column}.thq-box-shadow{box-shadow:0px 0px 5px -2px var(--dl-color-theme-neutral-dark)}.thq-grid-3{display:grid;grid-gap:var(--dl-layout-space-twounits);grid-template-columns:1fr 1fr 1fr}.thq-grid-4{display:grid;grid-gap:var(--dl-layout-space-twounits);grid-template-columns:1fr 1fr 1fr 1fr}.thq-grid-2{width:100%;display:grid;grid-gap:var(--dl-layout-space-twounits);grid-template-columns:1fr 1fr}.thq-checkbox{width:var(--dl-layout-size-xsmall);height:var(--dl-layout-size-xsmall)}.thq-select{cursor:pointer;appearance:none;padding-top:var(--dl-layout-space-halfunit);padding-left:var(--dl-layout-space-unit);border-radius:var(--dl-layout-radius-inputradius);padding-right:var(--dl-layout-space-twounits);padding-bottom:var(--dl-layout-space-halfunit);background-color:var(--dl-color-theme-neutral-light);background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg width%3D%2220%22 height%3D%2220%22 xmlns%3D%22http%3A//www.w3.org/2000/svg%22 viewBox%3D%220 0 20 20%22 fill%3D%22%23000%22%3E%3Cpath d%3D%22M4.293 7.293a1 1 0 011.414 0L10 11.586l4.293-4.293a1 1 0 111.414 1.414l-5 5a1 1 0 01-1.414 0l-5-5a1 1 0 010-1.414z%22/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.thq-divider-horizontal{width:100%;height:1px;background-color:var(--dl-color-theme-neutral-dark)}.thq-icon-small{width:24px;height:24px}.thq-button-icon{fill:var(--dl-color-theme-secondary1);padding:3px;transition:.3s;border-radius:var(--dl-layout-radius-round)}.thq-button-icon:hover{fill:var(--dl-color-theme-secondary2)}.thq-icon-medium{width:var(--dl-layout-size-small);height:var(--dl-layout-size-small)}.thq-icon-x-small{width:var(--dl-layout-size-xsmall);height:var(--dl-layout-size-xsmall)}.thq-link{cursor:pointer;display:inline-block;overflow:hidden;background:linear-gradient(to right, var(--dl-color-theme-primary1) 50%, var(--dl-color-theme-neutral-dark) 50%);transition:background-position 300ms ease;font-weight:600;background-clip:text;background-size:200% 100%;background-position:100%;-webkit-text-fill-color:rgba(0,0,0,0)}.thq-link:hover{background-position:0 100%}.thq-grid-auto-300{display:grid;grid-gap:var(--dl-layout-space-oneandhalfunits);grid-template-columns:repeat(auto-fit, minmax(300px, 1fr))}.thq-animated-group-vertical-reverse{gap:var(--dl-layout-space-unit);width:100%;display:flex;animation:scroll-y 20s linear infinite;align-items:flex-start;flex-direction:column;justify-content:space-around;animation-direction:reverse}.thq-animated-group-horizontal-reverse{gap:var(--dl-layout-space-unit);display:flex;animation:scroll-x 20s linear infinite;min-width:100%;align-items:center;flex-shrink:0;justify-content:space-around;animation-direction:reverse}.thq-animated-group-vertical{gap:var(--dl-layout-space-unit);width:100%;display:flex;animation:scroll-y 20s linear infinite;align-items:flex-start;flex-direction:column;justify-content:space-around}.thq-animated-group-horizontal{gap:var(--dl-layout-space-unit);display:flex;animation:scroll-x 20s linear infinite;min-width:100%;align-items:center;flex-shrink:0;justify-content:space-around}.thq-animated-group-container-vertical{gap:var(--dl-layout-space-unit);display:flex;overflow:hidden;flex-direction:column}.thq-animated-group-container-horizontal{gap:var(--dl-layout-space-unit);display:flex;overflow:hidden}.thq-mask-image-vertical{mask-image:linear-gradient(to bottom, transparent, black 1%, black 99%, transparent)}.thq-mask-image-horizontal{mask-image:linear-gradient(to right, transparent, black 1%, black 99%, transparent)}.thq-img-scale{transition:.3s}.thq-img-scale:hover{scale:1.05}.thq-animated-card-bg-1{width:100%;height:100%;transition:transform .3s;border-radius:var(--dl-layout-radius-cardradius);background-color:var(--dl-color-theme-accent1)}.thq-animated-card-bg-2{transition:transform .3s;border-radius:var(--dl-layout-radius-cardradius);background-color:var(--dl-color-theme-accent2)}.thq-button-animated{outline:none;z-index:1;overflow:hidden;position:relative;border-width:2px}.thq-input::placeholder{text-align:center;vertical-align:middle}.thq-animated-group-container-vertical:hover div{animation-play-state:paused}.thq-animated-group-container-horizontal:hover div{animation-play-state:paused}.thq-animated-card-bg-2:has([data-animated=true]:hover){transform:translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(3deg) skew(0deg, 0deg)}.thq-animated-card-bg-1:has([data-animated=true]:hover){transform:translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(-6deg) skew(0deg, 0deg)}.thq-button-animated:before{top:0;left:-20%;color:var(--dl-color-theme-neutral-light);width:200%;height:101%;content:"";z-index:1;position:absolute;transform:scaleX(0);transition:transform .5s;border-radius:var(--dl-layout-radius-buttonradius);background-color:var(--dl-color-theme-neutral-dark);transform-origin:0 0;transition-timing-function:cubic-bezier(0.5, 1.6, 0.4, 0.7)}.thq-button-animated:hover::before{color:var(--dl-color-theme-neutral-light);z-index:-1;transform:scaleX(1)}.btn{gap:var(--spacing-xs);color:var(--color-on-surface);border:1px solid rgba(0,0,0,0);cursor:pointer;display:inline-flex;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base);background:var(--color-surface);box-shadow:var(--shadow-level-1);transition:background var(--animation-duration-fast) var(--animation-curve-primary),border-color var(--animation-duration-fast) var(--animation-curve-primary),color var(--animation-duration-fast) var(--animation-curve-primary),box-shadow var(--animation-duration-fast) var(--animation-curve-primary);align-items:center;font-family:var(--font-family-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-base);user-select:none;white-space:nowrap;border-radius:var(--border-radius-md);letter-spacing:var(--letter-spacing-normal);justify-content:center;text-decoration:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}.btn-primary{color:var(--color-on-primary);border-color:var(--color-primary);background-color:var(--color-primary)}.btn-secondary{color:var(--color-on-surface);border-color:var(--color-neutral);background-color:var(--color-surface-elevated)}.btn-accent{color:color-mix(in srgb, var(--color-on-primary) 90%, black 10%);border-color:var(--color-accent);background-color:var(--color-accent)}.btn-outline{color:var(--color-primary);border:1px solid var(--color-primary);background-color:rgba(0,0,0,0)}.btn-link{gap:.25rem;color:var(--color-primary);border:none;padding:0;background:rgba(0,0,0,0)}.btn-sm{padding:var(--spacing-sm) var(--spacing-md)}.btn-lg{padding:var(--spacing-lg) var(--spacing-xl)}.btn-xl{padding:var(--spacing-xl) var(--spacing-2xl)}.section-title{color:var(--color-on-surface);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-xl);font-family:var(--font-family-heading);line-height:var(--line-height-snug);letter-spacing:var(--letter-spacing-tight)}.section-subtitle{color:var(--color-on-surface-secondary);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-lg);font-family:var(--font-family-body);line-height:var(--line-height-base)}.section-content{color:var(--color-on-surface);margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-base);max-width:var(--content-max-width);font-family:var(--font-family-body);line-height:var(--line-height-base)}.hero-title{color:var(--color-on-surface);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-hero);font-family:var(--font-family-heading);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.hero-subtitle{color:var(--color-on-surface-secondary);margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-lg);font-family:var(--font-family-body);line-height:var(--line-height-snug)}.btn:focus-visible{outline:3px solid var(--color-outline);outline-offset:2px}.btn:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;pointer-events:none}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-level-2);border-color:color-mix(in oklab, var(--color-primary) 88%, black 12%);background-color:color-mix(in oklab, var(--color-primary) 88%, black 12%)}.btn-secondary:hover:not(:disabled){box-shadow:var(--shadow-level-1);border-color:color-mix(in oklab, var(--color-neutral) 88%, black 12%);background-color:color-mix(in oklab, var(--color-surface-elevated) 90%, var(--color-neutral) 10%)}.btn-accent:hover:not(:disabled){box-shadow:var(--shadow-level-2);border-color:color-mix(in oklab, var(--color-accent) 88%, black 12%);background-color:color-mix(in oklab, var(--color-accent) 88%, black 12%)}.btn-outline:hover:not(:disabled){color:var(--color-on-primary);box-shadow:var(--shadow-level-1);border-color:var(--color-primary);background-color:var(--color-primary)}.btn-link:hover:not(:disabled){color:color-mix(in oklab, var(--color-primary) 80%, black 20%);text-decoration:underline}.navigation{top:0;left:0;right:0;z-index:1000;position:fixed;background:color-mix(in srgb, var(--color-surface) 95%, transparent);transition:all .4s var(--animation-curve-primary);border-bottom:1px solid color-mix(in srgb, var(--color-border) 40%, transparent);backdrop-filter:blur(12px)}.navigation-container{margin:0 auto;display:flex;padding:var(--spacing-md) var(--spacing-lg);position:relative;max-width:var(--content-max-width);align-items:center;justify-content:space-between}.navigation-organic-accent{left:0;right:0;bottom:-1px;height:1px;opacity:.6;position:absolute;background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--color-primary) 30%, transparent) 50%, transparent 100%);pointer-events:none}.navigation-logo{gap:var(--spacing-sm);display:flex;z-index:3;position:relative;transition:transform .3s var(--animation-curve-primary);align-items:center;text-decoration:none}.navigation-menu{gap:var(--spacing-xl);display:flex;align-items:center}.navigation-toggle{color:var(--color-on-surface);width:44px;border:none;cursor:pointer;height:44px;display:none;padding:0;z-index:3;position:relative;background:rgba(0,0,0,0);transition:all .3s var(--animation-curve-primary);align-items:center;border-radius:var(--border-radius-md);justify-content:center}.navigation-logo-icon{color:var(--color-primary);width:42px;height:42px;display:flex;overflow:hidden;position:relative;background:color-mix(in srgb, var(--color-primary) 8%, transparent);transition:all .4s var(--animation-curve-primary);align-items:center;border-radius:var(--border-radius-xl);justify-content:center}.navigation-logo-text{color:var(--color-on-surface);font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);white-space:nowrap;letter-spacing:var(--letter-spacing-tight)}.navigation-list{gap:var(--spacing-lg);margin:0;display:flex;padding:0;list-style:none;align-items:center}.navigation-cta{display:flex;align-items:center}.navigation-toggle-icon{display:flex;position:absolute;transition:all .3s var(--animation-curve-primary);align-items:center;justify-content:center}.navigation-toggle-icon--close{opacity:0;transform:rotate(90deg)}.navigation-item{position:relative}.navigation-link{color:var(--color-on-surface);display:block;padding:var(--spacing-sm) var(--spacing-md);position:relative;font-size:var(--font-size-base);transition:all .3s var(--animation-curve-primary);font-family:var(--font-family-body);font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:var(--border-radius-md);letter-spacing:var(--letter-spacing-normal);text-decoration:none}.navigation-overlay{top:0;left:0;right:0;bottom:0;opacity:0;z-index:999;position:fixed;background:color-mix(in srgb, var(--color-scrim) 60%, transparent);transition:all .4s var(--animation-curve-primary);visibility:hidden;backdrop-filter:blur(4px)}.navigation-logo:hover{transform:translateY(-2px)}.navigation-logo:hover .navigation-logo-icon::before{opacity:1}.navigation-logo:hover .navigation-logo-icon svg{transform:rotate(8deg) scale(1.05)}.navigation-logo:focus-visible{outline:2px solid var(--color-primary);border-radius:var(--border-radius-sm);outline-offset:3px}.navigation-logo-icon::before{top:-50%;left:-50%;width:200%;height:200%;content:"";opacity:0;position:absolute;background:radial-gradient(circle, color-mix(in srgb, var(--color-primary) 15%, transparent) 0%, transparent 70%);transition:opacity .4s var(--animation-curve-primary)}.navigation-logo-icon svg{z-index:2;position:relative;transition:transform .5s var(--animation-curve-primary)}.navigation-link::before{left:50%;width:60%;bottom:6px;height:2px;content:"";position:absolute;transform:translateX(-50%) scaleX(0);background:var(--color-primary);transition:transform .4s var(--animation-curve-primary);border-radius:var(--border-radius-full);transform-origin:center}.navigation-link:hover{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 5%, transparent)}.navigation-link:hover::before{transform:translateX(-50%) scaleX(1)}.navigation-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}.navigation-toggle:hover{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, transparent)}.navigation-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.navigation-toggle[aria-expanded=true] .navigation-toggle-icon--menu{opacity:0;transform:rotate(-90deg)}.navigation-toggle[aria-expanded=true] .navigation-toggle-icon--close{opacity:1;transform:rotate(0deg)}.navigation.navigation--scrolled{background:var(--color-surface);box-shadow:var(--shadow-level-1)}.navigation-overlay.navigation-overlay--active{opacity:1;visibility:visible}.footer-container{color:var(--color-on-surface);overflow:hidden;position:relative}.footer-texture-overlay{top:0;left:0;right:0;bottom:0;z-index:1;position:absolute;pointer-events:none;background-image:radial-gradient(circle at 20% 30%, color-mix(in srgb, var(--color-primary) 3%, transparent) 0%, transparent 50%),radial-gradient(circle at 80% 70%, color-mix(in srgb, var(--color-secondary) 4%, transparent) 0%, transparent 50%)}.footer-content-wrapper{margin:0 auto;padding:clamp(3rem,6vw,5rem) var(--spacing-xl) 0;z-index:2;position:relative;max-width:var(--content-max-width)}.footer-main-grid{gap:var(--spacing-2xl);display:grid;margin-bottom:clamp(2.5rem,5vw,4rem);grid-template-columns:repeat(4, 1fr)}.footer-bottom-section{padding:var(--spacing-xl) 0;position:relative;border-top:1px solid var(--color-border)}.footer-brand-column{position:relative;grid-column:span 1}.footer-contact-column{grid-column:span 1}.footer-hours-column{grid-column:span 1}.footer-links-column{grid-column:span 1}.footer-bottom-content{gap:var(--spacing-md);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}.footer-wave-decoration{top:-40px;left:0;right:0;height:40px;opacity:.5;position:absolute;background:radial-gradient(ellipse 150px 40px at 25% 0%, color-mix(in srgb, var(--color-primary) 6%, transparent), transparent),radial-gradient(ellipse 150px 40px at 75% 0%, color-mix(in srgb, var(--color-secondary) 6%, transparent), transparent);pointer-events:none}.footer-logo-section{margin-bottom:var(--spacing-lg)}.footer-brand-description{color:var(--color-on-surface-secondary);margin:0 0 var(--spacing-lg);font-size:var(--font-size-base);line-height:var(--line-height-base)}.footer-decorative-leaf{display:flex;align-items:center;justify-content:center;width:48px;height:48px;opacity:.6;background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 15%, transparent), color-mix(in srgb, var(--color-secondary) 10%, transparent));border-radius:var(--border-radius-full)}.footer-column-title{color:var(--color-on-surface);margin:0 0 var(--spacing-lg);font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight)}.footer-contact-list{gap:var(--spacing-lg);margin:0;display:flex;padding:0;list-style:none;flex-direction:column}.footer-hours-content{position:relative}.footer-organic-badge{border:1px solid color-mix(in srgb, var(--color-accent) 20%, transparent);display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:color-mix(in srgb, var(--color-accent) 10%, transparent);border-radius:var(--border-radius-lg)}.footer-copyright{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-sm);line-height:var(--line-height-base)}.footer-bottom-links{gap:var(--spacing-md);display:flex;align-items:center}.footer-brand-name{color:var(--color-on-surface);margin:0 0 var(--spacing-xs);font-size:clamp(1.5rem,3vw,2rem);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}.footer-brand-tagline{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-sm);font-style:italic;letter-spacing:var(--letter-spacing-normal)}.footer-contact-item{gap:var(--spacing-md);display:flex;align-items:flex-start}.footer-icon-wrapper{color:var(--color-primary);width:40px;height:40px;display:flex;background:color-mix(in srgb, var(--color-primary) 8%, transparent);transition:all .3s var(--animation-curve-primary);align-items:center;flex-shrink:0;border-radius:var(--border-radius-lg);justify-content:center}.footer-hours-icon{margin-bottom:var(--spacing-md)}.footer-hours-list{gap:var(--spacing-md);margin:0;display:flex;padding:0;list-style:none;flex-direction:column}.footer-nav-list{gap:var(--spacing-sm);margin:0 0 var(--spacing-xl);display:flex;padding:0;list-style:none;flex-direction:column}.footer-badge-text{color:var(--color-on-surface);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-normal)}.footer-bottom-link{color:var(--color-on-surface-secondary);font-size:var(--font-size-sm);transition:color .3s var(--animation-curve-primary);text-decoration:none}.footer-separator{color:var(--color-on-surface-secondary);opacity:.5}.footer-contact-content{gap:var(--spacing-xs);display:flex;flex-direction:column}.footer-hours-item{gap:var(--spacing-xs);display:flex;padding:var(--spacing-sm) 0;border-bottom:1px solid color-mix(in srgb, var(--color-border) 30%, transparent);flex-direction:column}.footer-nav-item{margin:0}.footer-contact-label{color:var(--color-on-surface-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-loose);text-transform:uppercase}.footer-contact-value{color:var(--color-on-surface);font-size:var(--font-size-base);line-height:var(--line-height-snug)}.footer-contact-link{color:var(--color-on-surface);position:relative;font-size:var(--font-size-base);transition:color .3s var(--animation-curve-primary);line-height:var(--line-height-snug);text-decoration:none}.footer-day{color:var(--color-on-surface);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-normal)}.footer-time{color:var(--color-on-surface-secondary);font-size:var(--font-size-base)}.footer-nav-link{color:var(--color-on-surface-secondary);display:inline-flex;padding:var(--spacing-xs) 0;position:relative;font-size:var(--font-size-base);transition:all .3s var(--animation-curve-primary);align-items:center;text-decoration:none}.footer-contact-item:hover .footer-icon-wrapper{transform:translateY(-2px);background:color-mix(in srgb, var(--color-primary) 15%, transparent)}.footer-contact-link::after{left:0;width:0;bottom:-2px;height:2px;content:"";position:absolute;background:var(--color-primary);transition:width .3s var(--animation-curve-primary)}.footer-contact-link:hover{color:var(--color-primary)}.footer-contact-link:hover::after{width:100%}.footer-hours-item:last-child{border-bottom:none}.footer-nav-link::before{top:50%;left:-12px;width:6px;height:6px;content:"";position:absolute;transform:translateY(-50%) scaleX(0);background:var(--color-primary);transition:transform .3s var(--animation-curve-primary);border-radius:var(--border-radius-full)}.footer-nav-link:hover{color:var(--color-on-surface);padding-left:var(--spacing-md)}.footer-nav-link:hover::before{transform:translateY(-50%) scaleX(1)}.footer-bottom-link:hover{color:var(--color-primary)}.hero{margin:0 auto;display:flex;padding:120px var(--spacing-xl) 32px;overflow:hidden;position:relative;max-width:var(--content-max-width);min-height:400px;align-items:flex-end;border-radius:var(--border-radius-lg)}.brand-story{margin:clamp(2rem,4vw,5rem) auto;padding:var(--spacing-3xl);max-width:var(--content-max-width)}.spotlight{margin:clamp(2rem,4vw,5rem) auto;padding:var(--section-gap);max-width:var(--content-max-width);background:var(--color-surface);border-radius:var(--border-radius-lg)}.menu-preview{margin:clamp(2rem,4vw,5rem) auto;padding:var(--spacing-3xl) var(--spacing-lg);max-width:var(--content-max-width);text-align:center}.seasonal-recipes{margin:clamp(2rem,4vw,5rem) auto;padding:var(--spacing-3xl);max-width:var(--content-max-width)}.visit-contact{margin:clamp(2rem,4vw,5rem) auto;padding:var(--spacing-3xl) var(--spacing-lg);max-width:var(--content-max-width)}.gallery-atmosphere{margin:clamp(2rem,4vw,5rem) auto;padding:var(--spacing-3xl);max-width:var(--content-max-width)}.hero-grid{gap:var(--section-gap);width:100%;display:grid;align-items:center;grid-template-columns:2fr 1fr}.brand-panel{gap:var(--section-gap);display:grid;padding:var(--spacing-3xl);background:var(--color-surface);box-shadow:var(--shadow-level-1);align-items:start;border-radius:var(--border-radius-lg);grid-template-columns:2fr 1fr}.spotlight-header{text-align:center;margin-bottom:var(--spacing-2xl)}.spotlight-grid{gap:var(--spacing-lg);display:grid;margin-bottom:var(--spacing-xl);grid-template-columns:repeat(3, 1fr)}.spotlight-info{gap:var(--spacing-lg);display:grid;margin-top:var(--spacing-xl);grid-column:1/-1;grid-template-columns:repeat(2, 1fr)}.panel{gap:var(--spacing-lg);display:grid;padding:var(--spacing-3xl) var(--spacing-lg);background:var(--color-surface);box-shadow:var(--shadow-level-1);align-items:start;border-radius:var(--border-radius-lg)}.seasonal-grid{gap:var(--spacing-4xl);display:grid;align-items:start;grid-template-columns:1.2fr .8fr}.visit-section{gap:var(--section-gap);display:flex;flex-direction:column}.hero-copy{gap:var(--spacing-lg);display:flex;opacity:1;padding:var(--spacing-4xl) var(--spacing-2xl);animation:heroFadeIn var(--animation-duration-slow) var(--animation-curve-primary) forwards;transform:translateY(6px) scale(0.996);flex-direction:column;justify-content:center}.hero-visual{display:flex;flex-direction:column;gap:50px;padding:var(--spacing-xl);position:relative;align-items:center;justify-content:center}.story{gap:var(--spacing-md);display:flex;flex-direction:column}.vignette{gap:var(--spacing-md);display:flex;flex-direction:column}.card{border:1px solid var(--color-border);display:flex;overflow:hidden;background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);transition:transform var(--animation-duration-fast) var(--animation-curve-primary),box-shadow var(--animation-duration-fast) var(--animation-curve-primary);border-radius:var(--border-radius-lg);flex-direction:column;text-decoration:none}.info-block{gap:var(--spacing-sm);display:flex;padding:var(--spacing-lg);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-md);flex-direction:column}.cards{gap:var(--spacing-md);display:grid;grid-template-columns:1fr}.seasonal-hero{padding:20px 10px;overflow:hidden;position:relative;box-shadow:var(--shadow-level-2);border-radius:20px}.seasonal-content{gap:var(--spacing-lg);display:flex;flex-direction:column}.featured{overflow:hidden;position:relative;background:var(--color-surface);box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-lg)}.band{gap:var(--spacing-lg);display:grid;grid-template-columns:2fr 1fr}.gallery-grid{gap:var(--spacing-xl);display:grid;align-items:start;grid-template-columns:2fr 1fr}.home-hero-title{color:var(--color-on-surface);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-hero);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-normal)}.home-hero-subtitle{color:var(--color-on-surface-secondary);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);font-family:var(--font-family-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug)}.hero-body{color:var(--color-on-surface);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-base);font-family:var(--font-family-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.hero-utility{gap:var(--spacing-sm);display:flex;flex-wrap:wrap;margin-top:var(--spacing-md);align-items:center}.hero-contact{gap:var(--spacing-xs);display:flex;margin-top:var(--spacing-lg);flex-direction:column}.backplate{overflow:hidden;position:relative;box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-lg);background-color:var(--color-backplate)}.story-subhead{color:var(--color-on-surface-secondary);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:var(--font-weight-regular)}.btn-reserve{margin-top:var(--spacing-md);transition:transform var(--animation-duration-fast) var(--animation-curve-primary)}.vignette-images{gap:var(--spacing-sm);display:flex;flex-direction:column}.provenance{gap:var(--spacing-sm);color:var(--color-on-surface-secondary);display:flex;opacity:.95;padding:var(--spacing-md);font-size:var(--font-size-sm);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-2);transition:opacity var(--animation-duration-standard) var(--animation-curve-primary);align-items:flex-start;border-radius:var(--border-radius-md)}.card__image-wrapper{width:100%;overflow:hidden;position:relative;aspect-ratio:4/3}.card__meta{gap:var(--spacing-sm);display:flex;padding:var(--spacing-lg);flex-direction:column}.hero-video{top:0;left:0;width:100%;height:100%;z-index:1;position:absolute;object-fit:cover}.hero-content{color:var(--color-on-surface);margin:var(--spacing-md);padding:var(--spacing-lg);z-index:3;position:relative;background:var(--color-backplate);box-shadow:var(--shadow-level-2);text-align:left;border-radius:var(--border-radius-md)}.card--image-first{flex-direction:row}.seasonal-hero-image{width:100%;height:auto;display:block;border-radius:var(--border-radius-lg)}.tabs{gap:var(--spacing-xs);display:flex;flex-wrap:wrap;margin-bottom:var(--spacing-lg)}.tab-panels{position:relative}.tips-stack{gap:var(--spacing-sm);display:flex;margin-top:var(--spacing-lg);flex-direction:column}.featured-image{width:100%;height:auto;display:block;min-height:400px;object-fit:cover}.info-column{gap:var(--spacing-md);display:flex;flex-direction:column}.map-column{position:relative}.masonry{gap:var(--spacing-lg);display:grid;grid-auto-flow:dense;grid-template-columns:repeat(2, 1fr)}.carousel-preview{padding:var(--spacing-lg);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-md)}.contact-item{gap:var(--spacing-xs);color:var(--color-on-surface-secondary);display:flex;font-size:var(--font-size-sm);align-items:center;font-family:var(--font-family-body)}.vignette-img{width:100%;filter:sepia(0.08) saturate(1.05) contrast(1.02);height:auto;opacity:1;animation:vignetteFadeIn var(--animation-duration-standard) var(--animation-curve-primary) forwards;transform:translateY(-6px) scale(1.02);box-shadow:var(--shadow-level-2);border-radius:var(--border-radius-md)}.vignette-img-1{animation-delay:.1s}.vignette-img-2{animation-delay:.2s}.card__image{width:100%;height:100%;object-fit:cover;transition:transform var(--animation-duration-slow) var(--animation-curve-primary)}.card__scrim{inset:0;opacity:.6;position:absolute;background:linear-gradient(transparent 60%, var(--color-overlay));pointer-events:none}.card__title{color:var(--color-on-surface);margin:0;font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.card__subtitle{color:var(--color-accent);margin:0;font-size:var(--font-size-base);font-family:var(--font-family-body);font-weight:var(--font-weight-medium)}.card__tasting{margin:var(--spacing-sm) 0;padding:var(--spacing-sm);background:var(--color-surface-elevated);border-radius:var(--border-radius-sm)}.card__sourcing{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.card-image{width:80px;height:80px;object-fit:cover;flex-shrink:0;border-radius:var(--border-radius-md)}.card-content{gap:var(--spacing-xs);flex:1;display:flex;flex-direction:column}.tab{gap:var(--spacing-xs);color:var(--color-on-surface-secondary);border:none;cursor:pointer;display:flex;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);background:rgba(0,0,0,0);transition:color var(--animation-duration-fast) var(--animation-curve-primary),border-color var(--animation-duration-fast) var(--animation-curve-primary);align-items:center;font-family:var(--font-family-body);font-weight:var(--font-weight-medium);border-bottom:3px solid rgba(0,0,0,0);margin-bottom:-2px}.tab-panel{padding:var(--spacing-lg);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);transition:opacity var(--animation-duration-standard) var(--animation-curve-primary);border-radius:var(--border-radius-md)}.tip-card{border:1px solid var(--color-border);padding:var(--spacing-md);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-md)}.info-card{gap:var(--spacing-sm);color:var(--color-on-surface);display:flex;padding:var(--spacing-lg);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-md);flex-direction:column}.map{width:100%;overflow:hidden;background:var(--color-neutral);box-shadow:var(--shadow-level-2);aspect-ratio:16/9;border-radius:var(--border-radius-md)}.masonry-item{padding:var(--spacing-sm);overflow:hidden;animation:revealItem var(--animation-duration-standard) var(--animation-curve-primary) forwards;transform:translateY(8px);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-2);transition:transform var(--animation-duration-standard) var(--animation-curve-primary),opacity var(--animation-duration-standard) var(--animation-curve-primary);border-radius:var(--border-radius-md)}.masonry-item--tall{grid-row:span 2}.carousel-thumbnails{gap:var(--spacing-md);display:flex;flex-direction:column}.card-title{color:var(--color-on-surface);margin:0;font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium)}.card-description{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-sm);font-family:var(--font-family-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.card-price{color:var(--color-accent-90);font-size:var(--font-size-sm);margin-top:var(--spacing-xs);font-weight:var(--font-weight-medium)}.tip-badge{color:var(--color-on-surface);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);background:var(--color-backplate);border-left:4px solid var(--color-accent);line-height:var(--line-height-base);border-radius:var(--border-radius-sm)}.hours-list{gap:var(--spacing-xs);margin:var(--spacing-sm) 0 0 0;display:flex;padding:0;list-style:none;flex-direction:column}.contact-details{gap:var(--spacing-xs);margin:var(--spacing-md) 0;display:flex;flex-direction:column}.masonry-image{width:100%;height:auto;display:block;border-radius:var(--border-radius-md)}.caption{color:var(--color-on-surface-secondary);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);font-family:var(--font-family-body);line-height:var(--line-height-snug)}.thumbnail{cursor:pointer;transition:transform var(--animation-duration-fast) var(--animation-curve-primary)}.contact-link{gap:var(--spacing-xs);color:var(--color-on-surface);display:flex;font-size:var(--font-size-base);transition:color var(--animation-duration-fast) var(--animation-curve-primary);align-items:center;font-family:var(--font-family-body);text-decoration:none}.thumbnail-image{width:100%;height:auto;box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-xs)}.contact-item svg{color:var(--color-accent);flex-shrink:0}.hero-visual .photo{width:100%;height:auto;display:block;opacity:1;animation:heroFadeIn var(--animation-duration-slow) var(--animation-curve-primary) .2s forwards;transform:translateY(6px) scale(0.996);border-radius:var(--border-radius-md)}.story h2{color:var(--color-on-surface);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-hero);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight)}.story p{color:var(--color-on-surface);margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-base);max-width:65ch;font-family:var(--font-family-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.btn-reserve:hover{transform:translateY(-2px)}.btn-reserve:focus{transform:translateY(-2px)}.provenance:hover{opacity:1}.provenance svg{color:var(--color-accent);margin-top:2px;flex-shrink:0}.provenance p{margin:0;font-size:var(--font-size-sm);line-height:var(--line-height-base)}.card:hover{outline:2px solid var(--color-outline);transform:translateY(-2px) scale(1.002);box-shadow:var(--shadow-level-3);outline-offset:2px}.card:focus{outline:2px solid var(--color-outline);transform:translateY(-2px) scale(1.002);box-shadow:var(--shadow-level-3);outline-offset:2px}.card:hover .card__image{transform:translateY(-4%)}.card__tasting p{color:var(--color-on-surface);margin:0;font-size:var(--font-size-base);font-family:var(--font-family-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.info-block svg{color:var(--color-accent);flex-shrink:0}.info-block h4{color:var(--color-on-surface);margin:0;font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium)}.info-block p{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-base);font-family:var(--font-family-body);line-height:var(--line-height-base)}.menu-preview .section-title{margin-bottom:var(--spacing-md)}.menu-preview .section-subtitle{margin-bottom:var(--spacing-2xl)}.menu-preview .card{gap:var(--spacing-md);display:flex;padding:var(--spacing-md);background:var(--color-surface-elevated);box-shadow:var(--shadow-level-1);text-align:left;transition:transform var(--animation-duration-fast) var(--animation-curve-primary),box-shadow var(--animation-duration-fast) var(--animation-curve-primary);align-items:center;border-radius:var(--border-radius-md)}.menu-preview .card:hover{transform:translateY(-2px) scale(1.002);box-shadow:var(--shadow-level-2)}.menu-preview .card:focus{transform:translateY(-2px) scale(1.002);box-shadow:var(--shadow-level-2)}.menu-preview .cta{margin-top:var(--spacing-xl);text-align:right;grid-column:1/-1}.hero-content-title{color:var(--color-on-surface);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium)}.hero-content p{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-base);font-family:var(--font-family-body)}.tab:hover{color:var(--color-on-surface);outline:2px solid var(--color-outline);outline-offset:2px;border-radius:16px}.tab:focus{color:var(--color-on-surface);outline:2px solid var(--color-outline);outline-offset:2px;border-radius:16px}.tab[aria-selected=true]{color:var(--color-on-surface)}.tab svg{width:20px;height:20px}.tab-panel[hidden]{display:none}.tab-panel h3{color:var(--color-on-surface);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium)}.tab-panel p{color:var(--color-on-surface-secondary);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-base);font-family:var(--font-family-body);line-height:var(--line-height-base)}.tip-badge strong{color:var(--color-on-surface);font-weight:var(--font-weight-medium)}.tip-card h4{color:var(--color-on-surface);margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium)}.tip-card p{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-sm);font-family:var(--font-family-body);line-height:var(--line-height-base)}.visit-contact .section-title{text-align:center;margin-bottom:var(--spacing-2xl)}.visit-contact .backplate{left:var(--spacing-md);color:var(--color-on-surface);bottom:var(--spacing-md);padding:var(--spacing-lg);z-index:3;position:absolute;background:var(--color-backplate);box-shadow:var(--shadow-level-2);border-radius:var(--border-radius-md)}.visit-contact .backplate address{gap:var(--spacing-xs);color:var(--color-on-surface);display:flex;font-size:var(--font-size-base);font-style:normal;font-family:var(--font-family-body);flex-direction:column}.visit-contact .backplate strong{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.info-card svg{color:var(--color-accent);margin-bottom:var(--spacing-xs)}.info-card h3{color:var(--color-on-surface);margin:0;font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium);line-height:var(--line-height-snug)}.info-card p{color:var(--color-on-surface-secondary);margin:0;font-size:var(--font-size-base);font-family:var(--font-family-body);font-weight:var(--font-weight-regular);line-height:var(--line-height-base)}.info-card .note{font-size:var(--font-size-sm);margin-top:var(--spacing-sm)}.info-card .cta{margin-top:var(--spacing-md);transition:transform var(--animation-duration-fast) var(--animation-curve-primary),opacity var(--animation-duration-fast) var(--animation-curve-primary)}.info-card .cta:hover{opacity:.98;transform:translateY(-2px) scale(1.01)}.info-card .cta:focus{opacity:.98;transform:translateY(-2px) scale(1.01)}.hours-list li{color:var(--color-on-surface);display:flex;padding:var(--spacing-xs) 0;font-size:var(--font-size-base);font-family:var(--font-family-body);border-bottom:1px solid var(--color-border);justify-content:space-between}.hours-list li:last-child{border-bottom:none}.contact-link:hover{color:var(--color-primary);margin:calc(-1*var(--spacing-xs));outline:2px solid var(--color-outline);padding:var(--spacing-xs);border-radius:var(--border-radius-sm);outline-offset:2px}.contact-link:focus{color:var(--color-primary);margin:calc(-1*var(--spacing-xs));outline:2px solid var(--color-outline);padding:var(--spacing-xs);border-radius:var(--border-radius-sm);outline-offset:2px}.contact-link svg{color:var(--color-accent)}.map iframe{width:100%;height:100%}.gallery-atmosphere .panel{padding:var(--spacing-3xl) var(--spacing-lg);background:var(--color-surface);box-shadow:var(--shadow-level-1);border-radius:var(--border-radius-lg)}.gallery-atmosphere .section-title{text-align:center;margin-bottom:var(--spacing-md)}.gallery-atmosphere .section-subtitle{text-align:center;margin-bottom:var(--spacing-2xl)}.masonry-item:nth-child(1){animation-delay:.1s}.masonry-item:nth-child(2){animation-delay:.2s}.masonry-item:nth-child(3){animation-delay:.3s}.masonry-item:nth-child(4){animation-delay:.4s}.masonry-item:nth-child(5){animation-delay:.5s}.masonry-item:nth-child(6){animation-delay:.6s}.masonry-item:hover{transform:translateY(-4px)}.caption p{margin:0}.carousel-preview h3{color:var(--color-on-surface);margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-family:var(--font-family-heading);font-weight:var(--font-weight-medium)}.thumbnail:hover{transform:scale(1.02)}.thumbnail span{color:var(--color-on-surface-secondary);display:block;font-size:var(--font-size-sm);text-align:center;font-family:var(--font-family-body)}.Content{font-size:16px;font-family:Inter;font-weight:400;line-height:1.15;text-transform:none;text-decoration:none}.BodyFont{font-size:1rem;font-family:Lora;font-weight:400}.Headings{font-size:2em;font-family:Playfair Display;font-weight:700}@media(max-width: 991px){.thq-grid-4{grid-template-columns:1fr 1fr 1fr}.navigation-container{padding:var(--spacing-sm) var(--spacing-md)}.navigation-menu{gap:var(--spacing-md);top:0;right:0;width:min(320px,85vw);bottom:0;opacity:0;padding:calc(var(--spacing-3xl) + var(--spacing-xl)) var(--spacing-lg) var(--spacing-xl);position:fixed;transform:translateX(100%);background:var(--color-surface);box-shadow:var(--shadow-level-3);overflow-y:auto;transition:all .4s var(--animation-curve-primary);visibility:hidden;align-items:stretch;border-left:1px solid var(--color-border);flex-direction:column}.navigation-menu.navigation-menu--active{opacity:1;transform:translateX(0);visibility:visible}.navigation-toggle{display:flex}.navigation-list{gap:var(--spacing-xs);width:100%;align-items:stretch;flex-direction:column}.navigation-cta{width:100%;border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.navigation-cta .btn{width:100%;justify-content:center}.navigation-link{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg)}.footer-main-grid{gap:var(--spacing-xl);grid-template-columns:repeat(2, 1fr)}.footer-brand-column{grid-column:span 1}.footer-contact-column{grid-column:span 1}.footer-hours-column{grid-column:span 1}.footer-links-column{grid-column:span 1}.hero-grid{min-height:75vh;grid-template-columns:1fr}.brand-panel{padding:var(--spacing-2xl);grid-template-columns:1fr}.spotlight-grid{grid-template-columns:1fr}.spotlight-info{grid-template-columns:1fr}.panel{grid-template-columns:1fr}.seasonal-grid{gap:var(--spacing-2xl);grid-template-columns:1fr}.hero-copy{padding:var(--spacing-2xl)}.hero-visual{order:-1}.vignette{order:-1}.cards{gap:var(--spacing-sm);grid-template-columns:repeat(2, 1fr)}.band{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.masonry{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 767px){.thq-section-padding{padding:var(--dl-layout-space-threeunits)}.thq-flex-column{gap:var(--dl-layout-space-oneandhalfunits)}.thq-flex-row{gap:var(--dl-layout-space-oneandhalfunits)}.thq-grid-6{grid-gap:var(--dl-layout-space-oneandhalfunits);grid-template-columns:1fr 1fr 1fr}.thq-grid-5{grid-gap:var(--dl-layout-space-oneandhalfunits);grid-template-columns:1fr 1fr 1fr}.thq-card{padding:var(--dl-layout-space-oneandhalfunits)}.thq-grid-3{grid-gap:var(--dl-layout-space-oneandhalfunits);grid-template-columns:1fr 1fr}.thq-grid-4{grid-gap:var(--dl-layout-space-oneandhalfunits);flex-direction:row;grid-template-columns:1fr 1fr}.thq-grid-2{grid-gap:var(--dl-layout-space-oneandhalfunits);grid-template-columns:1fr}.thq-img-scale{width:100%}.navigation-menu{width:100%}.navigation-logo-icon{width:38px;height:38px}.navigation-logo-text{font-size:var(--font-size-base)}.footer-content-wrapper{padding:clamp(2rem,5vw,3rem) var(--spacing-lg) 0}.footer-main-grid{gap:var(--spacing-2xl);grid-template-columns:1fr}.footer-brand-column{grid-column:span 1;text-align:center}.footer-contact-column{grid-column:span 1;text-align:center}.footer-contact-list{align-items:center}.footer-hours-column,.footer-links-column{text-align:center;grid-column:span 1}.footer-bottom-content{align-items:center;flex-direction:column}.footer-copyright{text-align:center}.footer-bottom-links{flex-wrap:wrap}.hero{padding:110px 0 0}.brand-story{padding:var(--spacing-2xl) var(--spacing-md)}.spotlight{padding:var(--spacing-xl)}.seasonal-recipes{padding:var(--spacing-2xl) var(--spacing-md)}.visit-contact{padding:var(--spacing-2xl) var(--spacing-md)}.gallery-atmosphere{padding:var(--spacing-2xl) var(--spacing-md)}.brand-panel{padding:var(--spacing-xl)}.cards{grid-template-columns:1fr}.seasonal-content{padding:var(--spacing-lg)}.home-hero-title{font-size:var(--font-size-xl)}.masonry{grid-template-columns:1fr}.card-image{width:100%;height:180px}}@media(max-width: 479px){.thq-section-padding{padding:var(--dl-layout-space-oneandhalfunits)}.thq-flex-column{gap:var(--dl-layout-space-unit)}.thq-flex-row{gap:var(--dl-layout-space-unit)}.thq-grid-6{grid-gap:var(--dl-layout-space-unit);grid-template-columns:1fr 1fr}.thq-grid-5{grid-gap:var(--dl-layout-space-unit);grid-template-columns:1fr 1fr}.thq-grid-3{grid-gap:var(--dl-layout-space-unit);align-items:center;grid-template-columns:1fr}.thq-grid-4{grid-gap:var(--dl-layout-space-unit);align-items:center;flex-direction:column;grid-template-columns:1fr}.thq-grid-2{grid-gap:var(--dl-layout-space-unit)}.thq-grid-auto-300{grid-template-columns:1fr}.footer-content-wrapper{padding:var(--spacing-2xl) var(--spacing-md) 0}.footer-decorative-leaf{width:40px;height:40px;margin:0 auto}.footer-column-title{font-size:var(--font-size-base)}.footer-brand-name{font-size:clamp(1.25rem,5vw,1.5rem)}.footer-contact-item{gap:var(--spacing-sm)}.footer-icon-wrapper{width:36px;height:36px}.spotlight{padding:var(--spacing-md)}.brand-panel{padding:var(--spacing-md)}.panel{padding:var(--spacing-lg)}.hero-copy{padding:var(--spacing-lg)}.home-hero-title{font-size:var(--font-size-lg)}.home-hero-subtitle{font-size:var(--font-size-base)}.hero-utility{width:100%;flex-direction:column}.hero-utility .btn{width:100%}.tabs{border-bottom:none;flex-direction:column}.tab{width:100%;border-left:3px solid rgba(0,0,0,0);border-bottom:1px solid var(--color-border);margin-bottom:0;justify-content:flex-start}}.footer-container1{display:contents}.footer-container2{display:none}.footer-container3{display:contents}.footer-container4{display:none}.footer-container5{display:contents}.footer-container6{display:none}.footer-container7{display:contents}.menu-section{padding:80px 0 0}.menu-header{padding:64px 24px 32px;text-align:center;background:var(--color-surface);border-bottom:1px solid var(--color-border)}.menu-title{font-size:var(--font-size-hero);margin:0;color:var(--color-primary);letter-spacing:-0.5px}.menu-subtitle{font-size:var(--font-size-lg);margin-top:12px;color:var(--color-neutral)}.menu-container{padding:32px 24px 64px;max-width:800px;margin:0 auto}.section-title{font-size:var(--font-size-xl);color:var(--color-primary);margin-bottom:24px;margin-top:48px}.menu-item{background:var(--color-surface);padding:20px 24px;margin-bottom:20px;border-radius:var(--radius);box-shadow:var(--shadow-level-1);border:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:flex-start;gap:24px;transition:box-shadow .2s ease,transform .2s ease}.menu-item:hover{box-shadow:var(--shadow-level-2);transform:translateY(-4px)}.item-title{margin:0;font-size:var(--font-size-lg);color:#1b1b19}.item-desc{margin:6px 0 0;color:var(--color-on-surface-secondary);font-size:var(--font-size-sm)}.item-meta{display:flex;flex-direction:column;gap:4px;text-align:right}.item-weight{font-size:var(--font-size-sm);color:var(--color-neutral)}.item-price{font-size:var(--font-size-lg);font-weight:600;color:var(--color-accent-90)}.reviews-section{background-color:var(--color-surface);color:var(--color-on-surface);padding:120px 16px 60px}.reviews-section .reviews-title{font-size:var(--font-size-xl);color:var(--color-primary);text-align:center;margin-bottom:.5rem}.reviews-section .reviews-subtitle{font-size:var(--font-size-lg);color:var(--color-neutral);text-align:center;margin-bottom:3rem}.reviews-section .reviews-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:2rem}.reviews-section .review-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease}.reviews-section .review-card:hover{transform:translateY(-5px);box-shadow:0 8px 20px var(--color-overlay)}.reviews-section .review-card .review-header{display:flex;align-items:center;margin-bottom:1rem}.reviews-section .review-card .review-header .review-avatar{width:60px;height:60px;border-radius:50%;object-fit:cover;margin-right:1rem;border:2px solid var(--color-primary-70)}.reviews-section .review-card .review-header .review-info .review-name{font-size:var(--font-size-lg);font-weight:bold;color:var(--color-primary);margin-bottom:.25rem}.reviews-section .review-card .review-header .review-info .review-rating{color:var(--color-accent);font-size:1rem}.reviews-section .review-card .review-text{font-size:var(--font-size-sm);color:var(--color-on-surface);line-height:1.5}.contact-section{background-color:var(--color-surface);color:var(--color-on-surface);padding:120px 16px 50px}.contact-section .contact-title{font-size:var(--font-size-xl);color:var(--color-primary);text-align:center;margin-bottom:.5rem}.contact-section .contact-subtitle{font-size:var(--font-size-lg);color:var(--color-neutral);text-align:center;margin-bottom:3rem}.contact-section .contact-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:2rem;margin-bottom:3rem}.contact-section .contact-grid .contact-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;padding:1.5rem;text-align:center}.contact-section .contact-grid .contact-card h3{color:var(--color-primary);font-size:var(--font-size-lg);margin-bottom:.5rem}.contact-section .contact-grid .contact-card p{color:var(--color-on-surface);font-size:var(--font-size-sm);line-height:1.5}.contact-section .contact-form-wrapper{max-width:600px;margin:0 auto}.contact-section .contact-form-wrapper h3{font-size:var(--font-size-lg);color:var(--color-primary);margin-bottom:1rem;text-align:center}.contact-section .contact-form-wrapper .contact-form{display:flex;flex-direction:column;gap:1rem}.contact-section .contact-form-wrapper .contact-form input,.contact-section .contact-form-wrapper .contact-form textarea{padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:12px;font-size:var(--font-size-sm);color:var(--color-on-surface);background-color:var(--color-surface)}.contact-section .contact-form-wrapper .contact-form input:focus,.contact-section .contact-form-wrapper .contact-form textarea:focus{outline:2px solid var(--color-accent)}.contact-section .contact-form-wrapper .contact-form button{padding:.75rem 1.5rem;border:none;border-radius:12px;background-color:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-lg);cursor:pointer;transition:background-color .3s ease}.contact-section .contact-form-wrapper .contact-form button:hover{background-color:var(--color-primary-70)}@media(max-width: 768px){.navbar-container{padding:15px 20px}.logo-brand{font-size:18px}.nav-links{display:none}.nav-toggle{display:flex}.mobile-nav.active{opacity:1;pointer-events:all}.card-grid.reservation-page{grid-template-columns:1fr}.card-grid{grid-template-columns:1fr}.hero-content-title{font-size:18px}.menu-preview .card{flex-wrap:wrap}.btn-primary{width:100%}}
