* { box-sizing: border-box; } body {margin: 0;}:root{--gjs-t-color-primary:#e7c98a;--gjs-t-color-secondary:#f7f1e3;--gjs-t-color-accent:#0c1f45;--gjs-t-color-success:#5ba67a;--gjs-t-color-warning:#c89c42;--gjs-t-color-error:#c75a5a;}html{scroll-behavior:smooth;}.gjs-t-body{background-color:#04122e;color:#f7f1e3;font-size:16px;line-height:1.6;}.gjs-t-h1{color:#f6deb0;font-size:64px;line-height:1.05;}.gjs-t-h2{color:#f1d39a;font-size:38px;line-height:1.15;}.gjs-t-button{background-color:#e7c98a;color:#08204c;border-radius:9999px;}.gjs-t-link{color:#f1d39a;text-decoration:none;}.gjs-t-border{border-radius:24px;border-color:rgba(231,201,138,0.3);}.font-display{font-family:"Cormorant Garamond",serif;}.font-body{font-family:"Inter",sans-serif;}.panel-dark{background:linear-gradient(180deg,#0a1f49 0%,#071634 100%);}.panel-deep{background:linear-gradient(180deg,#071634 0%,#04122e 100%);}.gold-line{background:linear-gradient(90deg,rgba(231,201,138,0) 0%,rgba(231,201,138,0.8) 50%,rgba(231,201,138,0) 100%);}.gold-glow{box-shadow:0 0 0 1px rgba(231,201,138,0.25),0 12px 40px rgba(0,0,0,0.25);}.text-gold{color:#e7c98a;}.text-cream{color:#f7f1e3;}.bg-gold-soft{background-color:rgba(231,201,138,0.08);}.border-gold-soft{border-color:rgba(231,201,138,0.2);}.hero-aura{background:radial-gradient(circle at center,rgba(231,201,138,0.12) 0%,rgba(231,201,138,0.03) 30%,rgba(4,18,46,0) 62%);position:absolute;inset:0px;}.btn-outline{border:1px solid rgba(231,201,138,0.35);}.field-dark{background-color:rgba(255,255,255,0.03);}.anchor-offset{scroll-margin-top:110px;}*, ::before, ::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb;}html, :host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;}body{margin:0;line-height:inherit;}hr{height:0;color:inherit;border-top-width:1px;}abbr:where([title]){text-decoration:underline dotted;}h1, h2, h3, h4, h5, h6{font-size:inherit;font-weight:inherit;}a{color:inherit;text-decoration:inherit;}b, strong{font-weight:bolder;}code, kbd, samp, pre{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em;}small{font-size:80%;}sub, sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}table{text-indent:0;border-color:inherit;border-collapse:collapse;}button, input, optgroup, select, textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0;}button, select{text-transform:none;}button, input:where([type='button']), input:where([type='reset']), input:where([type='submit']){-webkit-appearance:button;background-color:transparent;background-image:none;}:-moz-focusring{outline:auto;}:-moz-ui-invalid{box-shadow:none;}progress{vertical-align:baseline;}::-webkit-inner-spin-button, ::-webkit-outer-spin-button{height:auto;}[type='search']{-webkit-appearance:textfield;outline-offset:-2px;}::-webkit-search-decoration{-webkit-appearance:none;}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}summary{display:list-item;}blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre{margin:0;}fieldset{margin:0;padding:0;}legend{padding:0;}ol, ul, menu{list-style:none;margin:0;padding:0;}dialog{padding:0;}textarea{resize:vertical;}input::placeholder, textarea::placeholder{opacity:1;color:#9ca3af;}button, [role="button"]{cursor:pointer;}:disabled{cursor:default;}img, svg, video, canvas, audio, iframe, embed, object{display:block;vertical-align:middle;}img, video{max-width:100%;height:auto;}[hidden]{display:none;}.body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.body *::selection{background-color:rgb(231 201 138 / 1);color:rgb(8 32 76 / 1);}.body::selection{background-color:rgb(231 201 138 / 1);color:rgb(8 32 76 / 1);}.page-wrapper{min-height:100vh;}.header{position:sticky;top:0px;z-index:30;border-bottom-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgba(4,18,46,0.88);backdrop-filter:blur(12px);}.header-container{margin-left:auto;margin-right:auto;display:flex;max-width:80rem;align-items:center;justify-content:space-between;padding-left:2rem;padding-right:2rem;padding-top:1rem;padding-bottom:1rem;}.brand-link{display:flex;align-items:center;gap:0.75rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.brand-link:hover{color:rgb(255 255 255 / 1);}.brand-logo{height:2.75rem;width:auto;object-fit:contain;}.brand-text{display:flex;flex-direction:column;}.brand-name{font-size:1.5rem;line-height:2rem;font-weight:600;letter-spacing:0.025em;color:rgb(246 222 176 / 1);}.brand-tagline{font-size:0.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:0.35em;color:rgba(247,241,227,0.7);}.main-navigation{display:flex;align-items:center;gap:2rem;font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.22em;color:rgba(247,241,227,0.78);}.navigation-link{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.navigation-link:hover{color:rgb(255 255 255 / 1);}.hero-section{position:relative;overflow:hidden;}.hero-container{margin-left:auto;margin-right:auto;display:grid;max-width:80rem;grid-template-columns:repeat(2, minmax(0, 1fr));gap:3rem;padding-left:2rem;padding-right:2rem;padding-top:5rem;padding-bottom:5rem;}.hero-content{display:flex;flex-direction:column;justify-content:center;gap:2rem;}.hero-heading-group{display:flex;flex-direction:column;gap:1rem;}.hero-eyebrow{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.45em;color:rgb(231 201 138 / 1);}.hero-title{font-weight:600;}.hero-divider{height:1px;width:10rem;}.hero-description{max-width:42rem;font-size:1.125rem;line-height:1.75rem;color:rgba(247,241,227,0.82);}.hero-actions{display:flex;align-items:center;gap:1rem;}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding-left:1.75rem;padding-right:1.75rem;padding-top:1rem;padding-bottom:1rem;font-size:0.875rem;line-height:1.25rem;font-weight:600;text-transform:uppercase;letter-spacing:0.24em;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.primary-button:hover{background-color:rgb(243 217 163 / 1);outline-style:solid;outline-width:2px;outline-color:#f7f1e3;}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;border-radius:9999px;padding-left:1.75rem;padding-right:1.75rem;padding-top:1rem;padding-bottom:1rem;font-size:0.875rem;line-height:1.25rem;font-weight:600;text-transform:uppercase;letter-spacing:0.24em;color:rgb(247 241 227 / 1);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.secondary-button:hover{border-color:rgb(231 201 138 / 1);background-color:rgba(231,201,138,0.08);color:rgb(255 255 255 / 1);}.hero-highlights{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;padding-top:1rem;}.highlight-card{border-radius:1.5rem;border-width:1px;padding:1.25rem;}.highlight-value{font-size:1.875rem;line-height:2.25rem;color:rgb(241 211 154 / 1);}.highlight-label{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.22em;color:rgba(247,241,227,0.72);}.hero-visual{display:flex;align-items:center;justify-content:center;}.hero-logo-panel{position:relative;width:100%;border-radius:36px;border-width:1px;padding:2rem;}.top-decorative-line{position:absolute;left:2rem;right:2rem;top:1.5rem;height:1px;}.bottom-decorative-line{position:absolute;bottom:1.5rem;left:2rem;right:2rem;height:1px;}.hero-logo-content{display:flex;min-height:560px;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;}.hero-main-logo{width:100%;max-width:760px;object-fit:contain;filter:drop-shadow(0 16px 60px rgba(0, 0, 0, 0.35));}.hero-label-row{display:flex;align-items:center;gap:1rem;}.decorative-line{height:1px;width:5rem;}.hero-label{font-size:1.875rem;line-height:2.25rem;font-weight:600;letter-spacing:0.15em;color:rgb(246 222 176 / 1);}.menu-section{border-top-width:1px;border-bottom-width:1px;border-color:rgba(231,201,138,0.12);}.menu-container{margin-left:auto;margin-right:auto;display:flex;max-width:80rem;flex-direction:column;gap:3rem;padding-left:2rem;padding-right:2rem;padding-top:5rem;padding-bottom:5rem;}.section-header{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;}.section-eyebrow{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.45em;color:rgb(231 201 138 / 1);}.section-title{font-weight:600;}.section-divider{height:1px;width:10rem;}.section-description{max-width:48rem;color:rgba(247,241,227,0.78);}.menu-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.5rem;}.menu-category-card{grid-column:span 2 / span 2;border-radius:28px;border-width:1px;background-color:rgba(255,255,255,0.02);padding:1.75rem;}.category-header{margin-bottom:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom-width:1px;border-color:rgba(231,201,138,0.12);padding-bottom:1rem;}.category-title{font-size:1.875rem;line-height:2.25rem;font-weight:600;color:rgb(241 211 154 / 1);}.category-badge{border-radius:9999px;background-color:rgba(231,201,138,0.1);padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.75rem;line-height:1rem;text-transform:uppercase;letter-spacing:0.28em;color:rgb(247 241 227 / 1);}.menu-item-list{display:flex;flex-direction:column;gap:1rem;}.menu-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;}.item-text{display:flex;flex-direction:column;gap:0.25rem;}.item-name{font-size:1.25rem;line-height:1.75rem;font-weight:600;color:rgb(255 255 255 / 1);}.item-description{font-size:0.875rem;line-height:1.25rem;color:rgba(247,241,227,0.7);}.item-price{font-size:1.5rem;line-height:2rem;color:rgb(231 201 138 / 1);}.item-divider{height:1px;background-color:rgba(231,201,138,0.12);}.burger-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1.25rem;}.menu-feature-card{border-radius:1.5rem;border-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgba(255,255,255,0.02);padding:1.25rem;}.item-header{margin-bottom:0.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}.about-container{margin-left:auto;margin-right:auto;display:grid;max-width:80rem;grid-template-columns:1.1fr 0.9fr;gap:2rem;padding-left:2rem;padding-right:2rem;padding-top:5rem;padding-bottom:5rem;}.about-content-card{border-radius:34px;border-width:1px;padding:2rem;}.about-content{display:flex;flex-direction:column;gap:1.25rem;}.about-title{font-weight:600;}.about-paragraph{color:rgba(247,241,227,0.74);}.about-highlights{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;padding-top:0.5rem;}.about-highlight-card{border-radius:1.5rem;border-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgba(231,201,138,0.06);padding:1.25rem;}.highlight-text{font-size:0.875rem;line-height:1.25rem;color:rgba(247,241,227,0.7);}.about-side-card{border-radius:34px;border-width:1px;padding:2rem;}.about-side-content{display:flex;height:100%;flex-direction:column;justify-content:space-between;gap:2rem;}.about-side-top{display:flex;flex-direction:column;gap:1rem;}.about-logo-image{margin-left:auto;margin-right:auto;width:100%;max-width:28rem;object-fit:contain;opacity:0.95;}.about-side-label{text-align:center;font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.38em;color:rgb(231 201 138 / 1);}.about-quote-card{display:flex;flex-direction:column;gap:1rem;border-radius:28px;border-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgba(255,255,255,0.02);padding:1.5rem;}.quote-mark{font-size:2.25rem;line-height:1;color:rgb(241 211 154 / 1);}.quote-text{font-size:1.125rem;line-height:1.75rem;color:rgba(247,241,227,0.82);}.quote-author{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.28em;color:rgba(247,241,227,0.64);}.reservation-section{border-top-width:1px;border-color:rgba(231,201,138,0.12);}.reservation-container{margin-left:auto;margin-right:auto;display:grid;max-width:80rem;grid-template-columns:0.95fr 1.05fr;gap:2rem;padding-left:2rem;padding-right:2rem;padding-top:5rem;padding-bottom:5rem;}.reservation-intro{display:flex;flex-direction:column;justify-content:center;gap:1.5rem;}.reservation-title{font-weight:600;}.reservation-description{color:rgba(247,241,227,0.8);}.reservation-info-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1rem;}.info-card{border-radius:1.5rem;border-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgba(231,201,138,0.06);padding:1.25rem;}.info-label{margin-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.22em;color:rgb(231 201 138 / 1);}.info-value{color:rgb(255 255 255 / 1);}.info-detail{color:rgba(247,241,227,0.7);}.reservation-form-card{border-radius:34px;border-width:1px;padding:2rem;}.reservation-form{display:flex;flex-direction:column;gap:1.25rem;}.form-row{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1.25rem;}.form-field{display:flex;flex-direction:column;gap:0.5rem;}.field-label{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.2em;color:rgb(231 201 138 / 1);}.text-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.text-input::placeholder{color:rgba(247,241,227,0.35);}.text-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.phone-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.phone-input::placeholder{color:rgba(247,241,227,0.35);}.phone-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.date-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.date-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.time-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.time-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.email-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.email-input::placeholder{color:rgba(247,241,227,0.35);}.email-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.select-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.select-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.textarea-input{border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.18);padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem;color:rgb(255 255 255 / 1);outline:2px solid transparent;outline-offset:2px;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.textarea-input::placeholder{color:rgba(247,241,227,0.35);}.textarea-input:focus{border-color:rgb(231 201 138 / 1);background-color:rgba(255,255,255,0.05);outline-style:solid;outline-width:1px;outline-color:#e7c98a;}.checkbox-field{display:flex;align-items:flex-start;gap:0.75rem;border-radius:1rem;border-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgba(231,201,138,0.05);padding:1rem;}.checkbox-input{margin-top:0.25rem;height:1.25rem;width:1.25rem;border-radius:0.25rem;border-width:1px;border-color:rgba(231,201,138,0.4);background-color:transparent;accent-color:#e7c98a;}.checkbox-text{font-size:0.875rem;line-height:1.25rem;color:rgba(247,241,227,0.74);}.submit-button{display:inline-flex;align-items:center;justify-content:center;padding-left:1.75rem;padding-right:1.75rem;padding-top:1rem;padding-bottom:1rem;font-size:0.875rem;line-height:1.25rem;font-weight:600;text-transform:uppercase;letter-spacing:0.24em;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.submit-button:hover{background-color:rgb(243 217 163 / 1);outline-style:solid;outline-width:2px;outline-color:#f7f1e3;}.footer{border-top-width:1px;border-color:rgba(231,201,138,0.12);background-color:rgb(3 16 42 / 1);}.footer-container{margin-left:auto;margin-right:auto;display:grid;max-width:80rem;grid-template-columns:1.1fr 0.9fr;gap:2rem;padding-left:2rem;padding-right:2rem;padding-top:2.5rem;padding-bottom:2.5rem;}.footer-brand-area{display:flex;flex-direction:column;gap:1rem;}.footer-brand{display:flex;align-items:center;gap:1rem;}.footer-logo{height:4rem;width:auto;object-fit:contain;}.footer-text-group{display:flex;flex-direction:column;gap:0.25rem;}.footer-brand-name{font-size:1.875rem;line-height:2.25rem;font-weight:600;color:rgb(246 222 176 / 1);}.footer-tagline{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.34em;color:rgba(247,241,227,0.65);}.footer-description{max-width:42rem;color:rgba(247,241,227,0.7);}.footer-links-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1.5rem;}.footer-column{display:flex;flex-direction:column;gap:0.75rem;}.footer-column-title{font-size:0.875rem;line-height:1.25rem;text-transform:uppercase;letter-spacing:0.24em;color:rgb(231 201 138 / 1);}.footer-link{color:rgba(247,241,227,0.76);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;}.footer-link:hover{color:rgb(255 255 255 / 1);}.footer-text{color:rgba(247,241,227,0.76);}.footer-bottom{border-top-width:1px;border-color:rgba(231,201,138,0.12);padding-left:2rem;padding-right:2rem;padding-top:1rem;padding-bottom:1rem;text-align:center;font-size:0.875rem;line-height:1.25rem;color:rgba(247,241,227,0.55);}@media (max-width: 992px){.gjs-t-h1{font-size:48px;line-height:1.08;}.gjs-t-h2{font-size:32px;line-height:1.15;}.header-container{padding-left:1.5rem;padding-right:1.5rem;}.main-navigation{gap:1.25rem;}.hero-container{grid-template-columns:repeat(1, minmax(0, 1fr));gap:2.5rem;padding-left:1.5rem;padding-right:1.5rem;padding-top:4rem;padding-bottom:4rem;}.hero-description{font-size:1rem;line-height:1.5rem;}.hero-highlights{grid-template-columns:repeat(3, minmax(0, 1fr));}.hero-logo-panel{padding:1.5rem;}.hero-logo-content{min-height:420px;}.hero-label{font-size:1.5rem;line-height:2rem;}.menu-container{padding-left:1.5rem;padding-right:1.5rem;padding-top:4rem;padding-bottom:4rem;}.menu-grid{grid-template-columns:repeat(1, minmax(0, 1fr));}.menu-category-card{grid-column:span 1 / span 1;}.burger-grid{grid-template-columns:repeat(1, minmax(0, 1fr));}.about-container{grid-template-columns:repeat(1, minmax(0, 1fr));padding-left:1.5rem;padding-right:1.5rem;padding-top:4rem;padding-bottom:4rem;}.about-highlights{grid-template-columns:repeat(3, minmax(0, 1fr));}.reservation-container{grid-template-columns:repeat(1, minmax(0, 1fr));padding-left:1.5rem;padding-right:1.5rem;padding-top:4rem;padding-bottom:4rem;}.footer-container{grid-template-columns:repeat(1, minmax(0, 1fr));padding-left:1.5rem;padding-right:1.5rem;}.footer-links-grid{grid-template-columns:repeat(3, minmax(0, 1fr));}.footer-bottom{padding-left:1.5rem;padding-right:1.5rem;}.menu-item{flex-wrap:wrap;}.item-price{margin-left:auto;}}@media (max-width: 480px){.gjs-t-h1{font-size:38px;line-height:1.08;}.gjs-t-h2{font-size:28px;line-height:1.15;}.gjs-t-body{font-size:15px;line-height:1.6;}.header-container{flex-direction:column;gap:1rem;padding-left:1rem;padding-right:1rem;}.main-navigation{flex-wrap:wrap;justify-content:center;gap:1rem;font-size:0.75rem;line-height:1rem;}.hero-container{padding-left:1rem;padding-right:1rem;padding-top:3rem;padding-bottom:3rem;}.hero-actions{flex-direction:column;align-items:stretch;}.hero-highlights{grid-template-columns:repeat(1, minmax(0, 1fr));}.hero-logo-panel{padding:1rem;}.top-decorative-line{left:1rem;right:1rem;}.bottom-decorative-line{left:1rem;right:1rem;}.hero-logo-content{min-height:280px;}.hero-label-row{flex-direction:column;}.decorative-line{width:7rem;}.hero-label{font-size:1.25rem;line-height:1.75rem;}.menu-container{gap:1.6rem;padding-left:1rem;padding-right:1rem;padding-top:3rem;padding-bottom:3rem;}.menu-category-card{padding:1rem;grid-column:span 1 / span 1;border-radius:22px;box-shadow:0 0 0 1px rgba(231,201,138,0.16),0 10px 24px rgba(0,0,0,0.18);}.about-container{padding-left:1rem;padding-right:1rem;padding-top:3rem;padding-bottom:3rem;}.about-content-card{padding:1.25rem;}.about-highlights{grid-template-columns:repeat(1, minmax(0, 1fr));}.about-side-card{padding:1.25rem;}.reservation-container{padding-left:1rem;padding-right:1rem;padding-top:3rem;padding-bottom:3rem;}.reservation-info-grid{grid-template-columns:repeat(1, minmax(0, 1fr));}.reservation-form-card{padding:1.25rem;}.form-row{grid-template-columns:repeat(1, minmax(0, 1fr));}.footer-container{padding-left:1rem;padding-right:1rem;}.footer-brand{flex-direction:column;align-items:flex-start;}.footer-links-grid{grid-template-columns:repeat(1, minmax(0, 1fr));}.footer-bottom{padding-left:1rem;padding-right:1rem;}.menu-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem;}.category-header{margin-bottom:1rem;align-items:flex-start;gap:0.75rem;padding-bottom:0.85rem;flex-wrap:wrap;}.category-title{font-size:1.5rem;line-height:1.9rem;}.category-badge{padding-left:0.8rem;padding-right:0.8rem;padding-top:0.42rem;padding-bottom:0.42rem;font-size:0.68rem;line-height:0.95rem;letter-spacing:0.22em;border:1px solid rgba(231,201,138,0.18);}.menu-item-list{gap:0.85rem;}.menu-item{flex-direction:column;align-items:flex-start;gap:0.45rem;}.item-text{gap:0.35rem;width:100%;}.item-name{font-size:1.05rem;line-height:1.45rem;}.item-description{font-size:0.82rem;line-height:1.3rem;color:rgba(247,241,227,0.74);}.item-price{align-self:flex-end;font-size:1.2rem;line-height:1.6rem;padding-top:0.1rem;}.item-divider{opacity:0.75;}.burger-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:0.9rem;}.menu-feature-card{width:100%;border-radius:1.2rem;padding:1rem;background-color:rgba(255,255,255,0.025);box-shadow:inset 0 0 0 1px rgba(231,201,138,0.08);}.item-header{margin-bottom:0.55rem;align-items:flex-start;gap:0.55rem;flex-wrap:wrap;}.section-description{font-size:0.92rem;line-height:1.5rem;}.section-title{max-width:20rem;}}

/* ==========================================================================
   CORRECCIONES RESPONSIVE — Chobefood
   Bloque añadido al final de style.css. Va DESPUÉS de todo lo original a
   propósito: en CSS, a igual especificidad gana la última regla, así que
   estas correcciones se imponen sin necesidad de !important ni de tocar
   el CSS que genera GrapesJS.
   ========================================================================== */

/* --- 1. Guardas globales: nada puede provocar scroll horizontal ---------- */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

/* --- 2. Altura real del viewport en móvil -------------------------------- */
/* 100vh en móvil incluye la barra de direcciones y provoca un salto al
   hacer scroll. dvh usa la altura visible real; el 100vh queda de fallback. */
.page-wrapper {
  min-height: 100vh;
  min-height: 100dvh;
}

/* --- 3. Header sticky: blur con prefijo y fallback opaco ----------------- */
.header {
  -webkit-backdrop-filter: blur(12px);
}

/* Si el navegador no soporta backdrop-filter (Android antiguos, Firefox con
   la opción desactivada), el header quedaba semitransparente y el texto se
   mezclaba con el contenido al hacer scroll. Con fondo sólido siempre se lee. */
@supports not ((backdrop-filter: blur(12px)) or (-webkit-backdrop-filter: blur(12px))) {
  .header {
    background-color: #04122e;
  }
}

/* --- 4. Anclas: el offset debe coincidir con la altura real del header --- */
.anchor-offset {
  scroll-margin-top: 110px;
}


/* ==========================================================================
   TABLET / MÓVIL HORIZONTAL  (<= 992px)
   ========================================================================== */
@media (max-width: 992px) {

  /* El nav ya no empuja al logo fuera de la pantalla: puede encogerse. */
  .header-container {
    gap: 1rem;
  }

  .brand-link {
    flex: 0 1 auto;
    min-width: 0;
  }

  .brand-text {
    min-width: 0;
  }

  .main-navigation {
    flex: 0 1 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 1rem;
    letter-spacing: 0.12em;
  }

  .brand-tagline {
    letter-spacing: 0.18em;
  }

  /* letter-spacing de escritorio (0.45em / 0.35em / 0.28em) desbordaba las
     cajas estrechas. Se reduce sin perder el aire del diseño. */
  .hero-eyebrow,
  .section-eyebrow {
    letter-spacing: 0.24em;
  }

  .highlight-label {
    letter-spacing: 0.12em;
  }

  .about-side-label {
    letter-spacing: 0.2em;
  }

  .category-badge {
    letter-spacing: 0.2em;
  }

  /* Rejillas fijas de 3 columnas que ya no caben: ahora se adaptan solas. */
  .hero-highlights,
  .about-highlights {
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
  }

  .footer-links-grid {
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  }

  .anchor-offset {
    scroll-margin-top: 96px;
  }
}


/* ==========================================================================
   BREAKPOINT INTERMEDIO NUEVO  (<= 768px)
   Cubre el hueco 481–992px del CSS original: móvil en horizontal,
   plegables y tablets pequeñas.
   ========================================================================== */
@media (max-width: 768px) {

  /* Header en dos filas centradas en lugar de una fila que se desborda. */
  .header-container {
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
  }

  .brand-link {
    justify-content: center;
  }

  .brand-logo {
    height: 2.25rem;
  }

  .brand-name {
    font-size: 1.25rem;
    line-height: 1.6rem;
  }

  .brand-tagline {
    font-size: 0.7rem;
    line-height: 1rem;
    letter-spacing: 0.16em;
  }

  .main-navigation {
    width: 100%;
    justify-content: center;
    gap: 1.25rem;
    font-size: 0.75rem;
    line-height: 1rem;
    letter-spacing: 0.1em;
  }

  .anchor-offset {
    scroll-margin-top: 104px;
  }

  /* Hero */
  .hero-highlights {
    grid-template-columns: repeat(auto-fit, minmax(8rem, 1fr));
  }

  .hero-description {
    max-width: 100%;
  }

  .hero-logo-content {
    min-height: 340px;
  }

  .hero-main-logo {
    max-width: 420px;
  }

  /* Menú */
  .category-header {
    flex-wrap: wrap;
  }

  /* Footer */
  .footer-description {
    max-width: 100%;
  }
}


/* ==========================================================================
   MÓVIL  (<= 480px)
   ========================================================================== */
@media (max-width: 480px) {

  /* Header compacto: antes ocupaba ~140px de alto de forma permanente
     (sticky) por el nav apilado con letter-spacing grande. Ahora ~90px. */
  .header-container {
    gap: 0.5rem;
    padding: 0.6rem 1rem;
  }

  .main-navigation {
    gap: 0.9rem;
    font-size: 0.7rem;
    line-height: 1rem;
    letter-spacing: 0.08em;
  }

  .navigation-link {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
  }

  .anchor-offset {
    scroll-margin-top: 92px;
  }

  /* letter-spacing: valores mínimos para que nada se salga de su caja. */
  .hero-eyebrow,
  .section-eyebrow {
    font-size: 0.75rem;
    line-height: 1.1rem;
    letter-spacing: 0.18em;
  }

  .brand-tagline {
    letter-spacing: 0.14em;
  }

  .highlight-label {
    font-size: 0.75rem;
    line-height: 1.1rem;
    letter-spacing: 0.08em;
  }

  .about-side-label {
    font-size: 0.75rem;
    line-height: 1.1rem;
    letter-spacing: 0.16em;
  }

  .quote-author {
    letter-spacing: 0.14em;
  }

  .footer-tagline {
    letter-spacing: 0.16em;
  }

  .footer-column-title {
    letter-spacing: 0.14em;
  }

  .field-label {
    letter-spacing: 0.1em;
  }

  .primary-button,
  .secondary-button,
  .submit-button {
    letter-spacing: 0.12em;
  }

  /* Se restauran las rejillas de 1 columna del diseño original, que las
     reglas auto-fit de arriba habrían sobrescrito en pantallas pequeñas. */
  .hero-highlights,
  .about-highlights,
  .footer-links-grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .hero-main-logo {
    max-width: 320px;
  }

  /* iOS hace zoom automático al enfocar un input con font-size < 16px.
     Fijarlo en 16px lo evita sin cambiar el aspecto. */
  .text-input,
  .phone-input,
  .date-input,
  .time-input,
  .email-input,
  .select-input,
  .textarea-input {
    font-size: 16px;
  }

  /* Área táctil mínima cómoda en el checkbox. */
  .checkbox-input {
    height: 1.35rem;
    width: 1.35rem;
    flex: 0 0 auto;
  }
}


/* ==========================================================================
   ACCESIBILIDAD BÁSICA
   ========================================================================== */

/* El diseño original no tiene foco visible en teclado en ningún enlace. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #e7c98a;
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
