/* Helpers that let native, editable blocks render exactly like the original design. */

/* Image blocks that fill their frame (the frame sets the size). */
.wp-block-image.cgx-img{margin:0}
.wp-block-image.cgx-img img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.wp-block-image.cgx-img-contain img{object-fit:contain}

/* Footer logo. */
.wp-block-image.cgx-footer-logo{margin:0;line-height:0}
.wp-block-image.cgx-footer-logo a{display:block}
.wp-block-image.cgx-footer-logo img{display:block;height:6rem;width:auto;max-width:none}
@media (min-width:768px){.wp-block-image.cgx-footer-logo img{height:7rem}}

/* A paragraph that behaves like an inline label. */
.cgx-inline{display:inline}

/* A paragraph that only holds a styled link: the link lays out as if it had no wrapper. */
.cgx-contents{display:contents}

/* Keyboard users open the desktop dropdowns too. */
header .group:focus-within > .invisible{visibility:visible;opacity:1}

/* Editor: show the dynamic header in place instead of fixed over the canvas. */
.editor-styles-wrapper .cgx-header-preview header,
.block-editor-block-preview__content .cgx-header-preview header{position:relative !important}
.editor-styles-wrapper .cgx-dynamic-preview a{pointer-events:none}

/* Announcement bar (Settings > Tavern Details): pinned above the header, which moves down to make room. */
.cgx-bar{position:fixed;top:0;left:0;right:0;z-index:49;background:rgb(23 49 38);color:rgb(244 236 221);border-bottom:1px solid rgb(184 155 94/.35)}
.cgx-bar__in{max-width:80rem;margin:0 auto;padding:.55rem 3rem;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;column-gap:1.1rem;row-gap:.1rem;text-align:center}
.cgx-bar p{margin:0}
.cgx-bar__eyebrow{font-family:var(--font-body);font-weight:600;text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:rgb(184 155 94)}
.cgx-bar__title{font-family:var(--font-heading);font-size:17px;line-height:1.35}
.cgx-bar__sub{font-family:var(--font-heading);font-style:italic;font-size:15px;color:rgb(244 236 221/.75)}
.cgx-bar__link{font-family:var(--font-body);font-weight:500;text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:rgb(184 155 94);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgb(184 155 94/.5);white-space:nowrap;transition:color .3s}
.cgx-bar__link:hover,.cgx-bar__link:focus-visible{color:rgb(244 236 221);text-decoration-color:currentColor}
.cgx-bar__close{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);display:flex;padding:.4rem;background:none;border:0;color:rgb(244 236 221/.7);cursor:pointer}
.cgx-bar__close:hover,.cgx-bar__close:focus-visible{color:rgb(244 236 221)}
@media (max-width:767px){
	.cgx-bar__in{padding:.45rem 2.5rem;column-gap:.75rem;row-gap:0;line-height:1.3}
	.cgx-bar__eyebrow{flex-basis:100%;font-size:10px}
	.cgx-bar__title{font-size:15px;line-height:1.3}
	.cgx-bar__sub{font-size:13px}
	.cgx-bar__link{font-size:10px}
}
html.cgx-has-bar body{padding-top:var(--cgx-bar-h,0)}
html.cgx-has-bar header.fixed{top:var(--cgx-bar-h,0)}

/* Legal pages (Privacy Policy). */
.bt-legal{max-width:46rem;margin:0 auto;padding:0 1.5rem;color:rgb(38 38 34);font-family:var(--font-body);font-size:16px;line-height:1.8}
.bt-legal h2{font-family:var(--font-heading);color:rgb(23 49 38);font-size:1.6rem;font-weight:500;line-height:1.25;margin:2.5rem 0 .75rem}
.bt-legal p,.bt-legal ul{margin:0 0 1rem}
.bt-legal ul{padding-left:1.25rem;list-style:disc}
.bt-legal li{margin-bottom:.4rem}
.bt-legal a{color:rgb(23 49 38);text-decoration:underline;text-underline-offset:3px}
.bt-legal .bt-legal-updated{font-style:italic;color:rgb(38 38 34/.7)}

/* Contact form. */
form[data-cgx-cf7].space-y-4{display:flex;flex-direction:column;gap:1rem;max-width:36rem;margin:0 auto}
form[data-cgx-cf7].space-y-4 > *{margin-top:0}
form[data-cgx-cf7] .grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media (min-width:640px){form[data-cgx-cf7] .grid{grid-template-columns:1fr 1fr}}
form[data-cgx-cf7] input,form[data-cgx-cf7] select,form[data-cgx-cf7] textarea{display:block;box-sizing:border-box;width:100%;min-height:3rem;padding:.8rem 1rem;background:#fbf8f1;border:1px solid rgb(184 155 94/.55);border-radius:2px;color:rgb(23 49 38);font-family:var(--font-body);font-size:15px;line-height:1.4;box-shadow:none;transition:border-color .25s,box-shadow .25s}
form[data-cgx-cf7] textarea{min-height:9rem;resize:vertical}
form[data-cgx-cf7] select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:2.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23173126' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}
form[data-cgx-cf7] ::placeholder{color:rgb(60 60 55/.6);opacity:1}
form[data-cgx-cf7] input:focus,form[data-cgx-cf7] select:focus,form[data-cgx-cf7] textarea:focus{outline:none;border-color:rgb(184 155 94);box-shadow:0 0 0 3px rgb(184 155 94/.25)}
form[data-cgx-cf7] button[type=submit]{display:block;width:100%;min-height:3.2rem;padding:.9rem 1.75rem;background:rgb(23 49 38);border:1px solid rgb(23 49 38);border-radius:2px;color:rgb(244 236 221);font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s}
form[data-cgx-cf7] button[type=submit]:hover,form[data-cgx-cf7] button[type=submit]:focus-visible{background:rgb(36 74 57);outline:none}
form[data-cgx-cf7] button[type=submit]:disabled{opacity:.6;cursor:wait}

/* Form messages: errors sit under the button; success replaces the whole form. */
form[data-cgx-cf7] .cgx-form-status{margin:0;font-family:var(--font-body);font-size:14px;line-height:1.6;text-align:center}
form[data-cgx-cf7] .cgx-form-status:empty{display:none}
form[data-cgx-cf7] .cgx-form-status[data-status=validation_failed],form[data-cgx-cf7] .cgx-form-status[data-status=error],form[data-cgx-cf7] .cgx-form-status[data-status=mail_failed],form[data-cgx-cf7] .cgx-form-status[data-status=spam]{color:#9b2c1f}
form[data-cgx-cf7] [aria-invalid=true]{border-color:#9b2c1f}
form[data-cgx-cf7] .cgx-form-again{display:none}
form[data-cgx-cf7].is-sent{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
form[data-cgx-cf7] button[type=submit]{width:100%}
body .wp-site-blocks form[data-cgx-cf7] input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),body .wp-site-blocks form[data-cgx-cf7] select,body .wp-site-blocks form[data-cgx-cf7] textarea{background-color:#fbf8f1!important;color:rgb(23 49 38)!important;border:1px solid rgb(184 155 94/.6)!important;border-radius:2px!important}
body .wp-site-blocks form[data-cgx-cf7] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23173126' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 1rem center!important}
body .wp-site-blocks form[data-cgx-cf7] input:focus,body .wp-site-blocks form[data-cgx-cf7] select:focus,body .wp-site-blocks form[data-cgx-cf7] textarea:focus{border-color:rgb(184 155 94)!important}
body .wp-site-blocks form[data-cgx-cf7] button[type=submit]:not(.cgx-form-again){background-color:rgb(23 49 38)!important;color:rgb(244 236 221)!important;border:1px solid rgb(23 49 38)!important;border-radius:2px!important;padding:.9rem 1.75rem!important;font-size:12px!important}
body .wp-site-blocks form[data-cgx-cf7] button[type=submit]:not(.cgx-form-again):hover{background-color:rgb(36 74 57)!important}
body .wp-site-blocks form[data-cgx-cf7] [aria-invalid=true]{border-color:#9b2c1f!important}
.bt-klaviyo{margin-top:2rem}
.bt-klaviyo input:not([type=checkbox]):not([type=radio]):not([type=hidden]){border:1px solid rgb(184 155 94/.65)!important;background-color:#fbf8f1!important;border-radius:2px!important}
.bt-klaviyo input:focus{border-color:rgb(23 49 38)!important}
form[data-cgx-cf7]:not(.space-y-4) button[type=submit]{width:auto}
form[data-cgx-cf7]:not(.space-y-4) input{width:auto}
form[data-cgx-cf7].is-sent > :not(.cgx-form-status):not(.cgx-form-again){display:none}
form[data-cgx-cf7].is-sent .cgx-form-status{display:block;max-width:26rem;font-family:var(--font-heading);font-size:1.5rem;line-height:1.35;color:rgb(23 49 38)}
form[data-cgx-cf7].is-sent .cgx-form-status::before{content:"";display:block;width:3.25rem;height:3.25rem;margin:0 auto 1.25rem;border-radius:50%;border:1px solid rgb(184 155 94);background:rgb(23 49 38) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23f4ecdd' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/1.4rem no-repeat}
form[data-cgx-cf7].is-sent .cgx-form-again{display:inline-block;width:auto;margin-top:1.25rem;padding:.25rem 0;background:none;border:0;border-bottom:1px solid rgb(184 155 94);color:rgb(23 49 38);font-family:var(--font-body);font-size:12px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}
form[data-cgx-cf7].is-sent .cgx-form-again:hover{color:rgb(184 155 94)}

/* Menu tabs (Lunch / Dinner / Dessert / Kids): links in a .cgx-tabs paragraph switch .cgx-tab-panel groups. */
.cgx-tabs{scroll-margin-top:12rem}
.cgx-tabs .cgx-tab.is-active{background:rgb(23 49 38);border-color:rgb(23 49 38);color:rgb(244 236 221)}
.cgx-tabs-ready > .cgx-tab-panel:not(.is-active){display:none}
.cgx-tab-panel{scroll-margin-top:12rem}
.cgx-tab-panels > .cgx-tab-panel + .cgx-tab-panel{margin-top:3.5rem}
.cgx-tabs-ready > .cgx-tab-panel + .cgx-tab-panel{margin-top:0}
