﻿:root{--font-display:"Campanile","Iowan Old Style","Palatino Linotype","Book Antiqua",Georgia,serif;--font-heading:var(--font-display);--font-body:"Nunito Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-ui:var(--font-body);--weight-body:400;--weight-medium:600;--weight-strong:700;--scroll-track:#070805;--scroll-thumb:#705936;--scroll-thumb-hover:#a17d48}
html{text-size-adjust:100%;-webkit-text-size-adjust:100%;scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-gutter:stable}body{font-family:var(--font-body);font-weight:var(--weight-body);font-kerning:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) var(--scroll-track)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:linear-gradient(180deg,#050604,#0a0b08)}*::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#80663e,#5a4529);border:2px solid #080906;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#b08c52,#785b34)}
.hero h1,.hero h1 em,.section h2,.story-copy h2,.eco-section h2,.page-hero h1,.entry-content h2,.post-list h2,.hours-board h2,.header-brand,.logo-seal strong,.logo-copy b,.footer-brand h2{font-family:var(--font-display);font-weight:400;font-style:normal;font-synthesis:none;font-kerning:normal;text-transform:uppercase;text-wrap:balance}
h3,h4,h5,h6,.entry-content h3,.menu-card h3,.menu-detailed-category h3,.discovery-card h3,.big-card h3,.location-board h3,.reserve-board h3,.nav-link,.submenu a,.eyebrow,.signpost strong,.kbn-form label{font-family:var(--font-ui);font-weight:var(--weight-strong)}
.utility,.hours-board:before,.hours-board dt,.hours-board dd,.menu-card .num,.menu-card .view,.menu-detailed-price,.story-image:after,.story-points span,.text-link,.eco-item b,.contact-box small,.contact-box a,.reserve-board .walkin,.footer h4,.footer-nav a,.copyright{font-family:var(--font-ui);font-weight:var(--weight-medium)}
p,li,blockquote{font-family:inherit;text-wrap:pretty}.kbn-form input,.kbn-form textarea{font-family:var(--font-body);font-weight:var(--weight-body)}

/* WordPress admin bar: keep sticky navigation visibly below the fixed admin chrome. */
body.admin-bar .site-header{top:32px}

/* Campanile display headings: subtle clipped grain for a stable letterpress/vintage finish. */
.hero h1,.section h2,.story-copy h2,.eco-section h2,.page-hero h1,.entry-content h2,.hours-board h2,.footer-brand h2{--kbn-heading-ink:#eadbb8;color:var(--kbn-heading-ink);background-image:radial-gradient(circle at 18% 32%,rgba(255,255,255,.22) 0 .45px,transparent .7px),radial-gradient(circle at 72% 66%,rgba(37,24,8,.38) 0 .5px,transparent .78px),linear-gradient(var(--kbn-heading-ink),var(--kbn-heading-ink));background-size:5px 5px,7px 7px,100% 100%;background-repeat:repeat,repeat,no-repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 0 rgba(62,43,18,.22)) drop-shadow(0 8px 24px rgba(0,0,0,.18))}
.hero h1{--kbn-heading-ink:#f0dfb9}.hours-board h2{--kbn-heading-ink:#eadbb7}.footer-brand h2{--kbn-heading-ink:#ddcba6}.hero h1 em{color:#d4aa65!important;background:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;-webkit-text-fill-color:#d4aa65!important;filter:none!important}

/* Full-width-contained signposts: one premium vintage rail aligned to the global shell. */
.signpost-wrap{width:calc(100% - 68px);max-width:var(--max);margin:-46px auto 0;padding:0 0 6px}
.signposts{width:100%;max-width:none;margin:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.35vw,22px)}
.signpost{isolation:isolate;min-height:124px;padding:22px 24px 19px;overflow:visible;background:radial-gradient(circle at 16% 22%,rgba(230,200,138,.10) 0 .7px,transparent .9px) 0 0/15px 15px,linear-gradient(135deg,rgba(30,105,97,.98),rgba(8,49,45,.99) 62%,rgba(5,29,27,.99));border:1px solid rgba(117,174,164,.62);box-shadow:inset 0 1px 0 rgba(245,222,170,.13),inset 0 -14px 28px rgba(0,0,0,.22),0 16px 32px rgba(0,0,0,.34);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.signpost:before{top:-19px;width:72px;height:30px;border-radius:42px 42px 4px 4px;background:linear-gradient(180deg,#1a605a,#0b403c);border:1px solid rgba(117,174,164,.72);border-bottom:0;box-shadow:inset 0 1px 0 rgba(245,222,170,.11),0 -5px 14px rgba(0,0,0,.18)}
.signpost:after{content:"";position:absolute;inset:8px;z-index:0;pointer-events:none;border:1px solid rgba(230,200,138,.10);box-shadow:inset 0 0 28px rgba(0,0,0,.14)}
.signpost span,.signpost strong{position:relative;z-index:1}.signpost span{color:#d3c5a5;font-family:var(--font-display);font-size:16px;font-style:normal;letter-spacing:.01em;text-transform:uppercase}.signpost strong{margin-top:5px;color:#f0daa4;font-size:15px;letter-spacing:.12em}.signpost:hover,.signpost:focus-visible{background:radial-gradient(circle at 16% 22%,rgba(230,200,138,.12) 0 .7px,transparent .9px) 0 0/15px 15px,linear-gradient(135deg,#26766e,#0c4d47 62%,#073532);border-color:rgba(197,219,176,.78);box-shadow:inset 0 1px 0 rgba(245,222,170,.17),inset 0 -14px 28px rgba(0,0,0,.18),0 20px 38px rgba(0,0,0,.40);transform:translateY(-3px)}

/* Header/footer resilience without changing their information architecture. */
.primary-nav{width:100%}.footer-inner{grid-template-columns:minmax(260px,1fr) minmax(280px,1.25fr) minmax(220px,.8fr);align-items:start}.footer-nav a,.footer-contact a{overflow-wrap:anywhere}
.submenu-toggle{display:none}
@media (max-width:920px){.signpost-wrap{width:calc(100% - 44px);margin-top:-34px}.signposts{gap:10px}.signpost{min-height:112px;padding-inline:16px}.footer-inner{grid-template-columns:1fr 1fr;gap:34px 42px}.footer-brand{grid-column:1/-1}.footer{padding-inline:22px}}
@media (max-width:782px){body.admin-bar .site-header{top:46px}}
@media (max-width:640px){.signpost-wrap{width:calc(100% - 28px);margin-top:-18px;padding-bottom:4px}.signposts{grid-template-columns:1fr;gap:12px}.signpost{min-height:88px;padding:17px 18px 15px}.signpost:before{top:-14px;width:54px;height:22px}.signpost span{font-size:15px}.signpost strong{font-size:13px}.footer{padding:44px 18px 28px}.footer-inner{grid-template-columns:1fr;gap:30px}.footer-brand{grid-column:auto}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}.copyright{margin-top:30px;padding-top:16px}}
@media (max-width:600px){body.admin-bar .site-header{top:0}}
@media (max-width:420px){.footer-nav{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fade-in-element{transition:none!important;animation:none!important}.signpost{transition:none!important}}

/* Theme 0.2.3: consolidated brand mark, normal navigation, production trust strip and premium footer. */
.primary-nav{min-height:78px;gap:8px}.nav-link{min-height:78px}
.header-brand{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;margin:0 18px 0 0;padding:0;color:#ead29a;text-transform:none;letter-spacing:0}
.header-seal{width:58px;height:58px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 38% 30%,rgba(229,198,130,.10),rgba(5,6,4,.72) 58%),#080906;border:1px solid rgba(230,200,138,.88);box-shadow:inset 0 0 0 4px rgba(0,0,0,.52),inset 0 0 0 5px rgba(230,200,138,.18),0 7px 18px rgba(0,0,0,.36);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.header-seal strong{font-family:var(--font-display);font-size:15px;font-weight:400;line-height:.9;letter-spacing:-.025em;text-transform:uppercase}.header-seal small{display:block;margin-top:5px;font-family:var(--font-ui);font-size:5px;font-weight:700;line-height:1;letter-spacing:.24em}.header-brand:hover .header-seal,.header-brand:focus-visible .header-seal{transform:scale(1.045);border-color:#f0d796;box-shadow:inset 0 0 0 4px rgba(0,0,0,.48),inset 0 0 0 5px rgba(230,200,138,.22),0 9px 24px rgba(0,0,0,.44)}
.nav-item.reserve>.nav-link{margin:0;min-height:78px;padding:0 11px;background:transparent;color:#f0dca8;text-shadow:0 2px 0 #000;box-shadow:none;border:0}.nav-item.reserve>.nav-link:hover{background:rgba(198,161,93,.08);color:#fff7dc}
.nav-item.menus>.nav-link{align-self:flex-start;width:99px;height:64px;min-height:64px;margin:7px 6px;padding:10px;box-sizing:border-box;background:url("../images/plaque-nav.svg") center/100% 100% no-repeat;box-shadow:none;border:0;color:#f0d798;text-align:center;text-shadow:0 2px 2px rgba(0,0,0,.8);filter:drop-shadow(0 3px 5px rgba(0,0,0,.65));line-height:1.15}
.nav-item.menus>.nav-link:hover{filter:brightness(1.12) drop-shadow(0 4px 6px rgba(0,0,0,.72))}
.nav-label--bistro .bistro-line{display:block;line-height:1.1}

.trust-strip{width:calc(100% - 68px);max-width:var(--max);margin:0 auto;padding-top:48px}
.trust-strip-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:linear-gradient(180deg,rgba(18,18,13,.96),rgba(9,10,7,.98));border-top:1px solid rgba(198,161,93,.42);border-bottom:1px solid rgba(198,161,93,.24);box-shadow:0 18px 48px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.02)}
.trust-item{position:relative;min-height:112px;display:flex;align-items:center;gap:16px;padding:22px 24px;color:#dbc8a2;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.trust-item+.trust-item:before{content:"";position:absolute;left:0;top:22px;bottom:22px;width:1px;background:linear-gradient(transparent,rgba(198,161,93,.26),transparent)}
.trust-item:hover,.trust-item:focus-visible{z-index:1;transform:translateY(-3px) scale(1.015);background:rgba(198,161,93,.055);box-shadow:0 15px 30px rgba(0,0,0,.26)}
.trust-icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(198,161,93,.36);border-radius:50%;color:#d7b76f;background:radial-gradient(circle,rgba(198,161,93,.08),rgba(0,0,0,.08));transition:transform .2s ease,border-color .2s ease,color .2s ease}.trust-item:hover .trust-icon{transform:scale(1.09) rotate(-2deg);border-color:rgba(230,200,138,.7);color:#f0d99f}.trust-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}.trust-copy{display:grid;gap:4px;min-width:0}.trust-copy strong{font-family:var(--font-ui);font-size:11px;line-height:1.2;letter-spacing:.13em;text-transform:uppercase;color:#efd9a4}.trust-copy small{font-family:var(--font-body);font-size:13px;line-height:1.35;color:#9f957e}

.signpost-wrap{margin:36px auto 0;padding:0 0 22px}.signpost-wrap+.section{padding-top:122px}

.footer{padding:0 24px 34px;background:radial-gradient(circle at 12% 0%,rgba(113,53,45,.11),transparent 27%),linear-gradient(180deg,#0a0b08,#050604 72%);box-shadow:inset 0 1px 0 rgba(198,161,93,.30)}
.footer-masthead{max-width:var(--max);margin:0 auto;padding:58px 0 42px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:60px;align-items:end;border-bottom:1px solid rgba(198,161,93,.20)}
.footer-masthead-copy{max-width:760px}.footer-masthead h2{--kbn-heading-ink:#e5d2aa;margin:10px 0 12px;font-family:var(--font-display);font-size:clamp(44px,4vw,68px);font-weight:400;line-height:.95;letter-spacing:-.035em;text-transform:uppercase;color:var(--kbn-heading-ink);background-image:radial-gradient(circle at 18% 32%,rgba(255,255,255,.20) 0 .45px,transparent .7px),radial-gradient(circle at 72% 66%,rgba(37,24,8,.36) 0 .5px,transparent .78px),linear-gradient(var(--kbn-heading-ink),var(--kbn-heading-ink));background-size:5px 5px,7px 7px,100% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.footer-masthead p{max-width:690px;margin:0;color:#9f967f;font-size:16px;line-height:1.65}
.footer-reserve{min-height:112px;padding:22px 24px;display:grid;grid-template-columns:1fr auto;align-content:center;column-gap:18px;background:linear-gradient(135deg,rgba(25,81,75,.88),rgba(8,39,36,.96));border:1px solid rgba(91,143,134,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 35px rgba(0,0,0,.26);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.footer-reserve span{grid-column:1;color:#9fb3a2;font-family:var(--font-ui);font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.footer-reserve strong{grid-column:1;color:#f0dcaa;font-family:var(--font-display);font-size:26px;font-weight:400;text-transform:uppercase}.footer-reserve svg{grid-column:2;grid-row:1/3;width:28px;height:28px;fill:none;stroke:#d7b76f;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;align-self:center;transition:transform .2s ease}.footer-reserve:hover,.footer-reserve:focus-visible{transform:translateY(-3px);border-color:rgba(151,193,180,.78);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 42px rgba(0,0,0,.33)}.footer-reserve:hover svg{transform:translateX(4px)}
.footer-inner{max-width:var(--max);margin:0 auto;padding:42px 0 0;display:grid;grid-template-columns:minmax(260px,1fr) minmax(300px,1.2fr) minmax(250px,.8fr);gap:54px;align-items:start}.footer h4{margin-bottom:16px}.footer-visit address{max-width:320px;margin:0 0 14px;color:#aaa087;font-size:14px;font-style:normal;line-height:1.7}.footer-detail-link{color:#c3a363;font-family:var(--font-ui);font-size:9px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.footer-detail-link:hover{color:#f0dca8}.footer-contact-list{display:grid;gap:10px}.footer-contact-list a{color:#aaa087;font-size:14px;line-height:1.45}.footer-contact-list a:hover{color:#efdeb7}.footer-social{display:flex;gap:8px;margin-top:20px}.footer-social a{width:34px;height:34px;display:grid;place-items:center;border:1px solid rgba(198,161,93,.22);border-radius:50%;color:#ba9d64;background:rgba(255,255,255,.015);transition:transform .18s ease,color .18s ease,border-color .18s ease}.footer-social a:hover{transform:translateY(-2px) scale(1.05);color:#f0dca8;border-color:rgba(198,161,93,.52)}

@media (min-width:1025px) and (max-width:1320px){.primary-nav{min-height:70px}.nav-link,.nav-item.menus>.nav-link,.nav-item.reserve>.nav-link{min-height:auto}.header-brand{flex-basis:58px;width:58px;height:58px;margin-right:auto}.header-seal{width:52px;height:52px}.nav-item.menus>.nav-link,.nav-item.reserve>.nav-link{margin:0;justify-content:space-between;padding:13px 11px;background:none;color:#f0dca8;box-shadow:inset 0 -1px 0 rgba(238,220,181,.09)}}
@media (max-width:1320px){.trust-strip{width:calc(100% - 44px)}}
@media (max-width:920px){.trust-strip{padding-top:38px}.trust-strip-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-item:nth-child(3):before{display:none}.trust-item:nth-child(n+3){border-top:1px solid rgba(198,161,93,.13)}.signpost-wrap{width:calc(100% - 44px);margin-top:30px}.signpost-wrap+.section{padding-top:104px}.footer-masthead{grid-template-columns:1fr;gap:30px;padding-top:48px}.footer-reserve{max-width:520px}.footer-inner{grid-template-columns:1fr 1fr;gap:34px 42px}.footer-contact{grid-column:1/-1}}
@media (max-width:640px){.trust-strip{width:calc(100% - 28px);padding-top:30px}.trust-strip-inner{grid-template-columns:1fr}.trust-item{min-height:86px;padding:16px 18px}.trust-item+.trust-item:before{left:18px;right:18px;top:0;bottom:auto;width:auto;height:1px;background:linear-gradient(90deg,transparent,rgba(198,161,93,.24),transparent)}.trust-item:nth-child(3):before{display:block}.trust-item:nth-child(n+3){border-top:0}.signpost-wrap{width:calc(100% - 28px);margin-top:26px;padding-bottom:12px}.signpost-wrap+.section{padding-top:88px}.footer{padding-inline:18px}.footer-masthead{padding:44px 0 34px}.footer-masthead h2{font-size:48px}.footer-reserve{min-height:98px;padding:18px}.footer-reserve strong{font-size:23px}.footer-inner{grid-template-columns:1fr;gap:30px;padding-top:34px}.footer-contact{grid-column:auto}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.copyright{margin-top:30px}}
@media (max-width:420px){.footer-nav{grid-template-columns:1fr}.trust-icon{flex-basis:38px;width:38px;height:38px}.trust-copy small{font-size:12px}}
@media (prefers-reduced-motion:reduce){.header-seal,.trust-item,.trust-icon,.footer-reserve,.footer-reserve svg,.footer-social a{transition:none!important}}
