:root{
  --charcoal:#101310;
  --forest:#173328;
  --forest-2:#214839;
  --cream:#f5efe3;
  --paper:#fbf6ec;
  --paper-2:#eee4d3;
  --ink:#171914;
  --muted:#5e584e;
  --line:#c8bcaa;
  --rust:#963d24;
  --blue:#276c82;
  --green:#4f7754;
  --gold:#a27b2e;
  --white:#fffef9;
  --max:1500px;
  --radius:0px;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{outline-offset:3px}
:focus-visible{outline:3px solid #1d6e8b;outline-offset:3px}
[hidden]{display:none!important}
.skip-link{position:absolute;left:-9999px;top:8px;background:var(--ink);color:white;padding:.75rem 1rem;z-index:9999}
.skip-link:focus{left:8px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(16,19,16,.97);border-bottom:1px solid rgba(255,255,255,.14);color:var(--cream);backdrop-filter:blur(10px)}
.header-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:minmax(180px,315px) 1fr auto;gap:1.4rem;align-items:center;padding:10px 24px}
.wordmark{display:block;text-decoration:none;min-width:0}
.wordmark img{width:min(315px,100%);height:auto}
.wordmark small{display:block;margin-top:2px;font-size:.62rem;font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#d7ccba}
.main-nav{display:flex;justify-content:center;gap:1.45rem;flex-wrap:wrap;font-size:.77rem;font-weight:760;text-transform:uppercase;letter-spacing:.09em}
.main-nav a{text-decoration:none;padding:8px 0;border-bottom:2px solid transparent}
.main-nav a:hover,.main-nav a[aria-current="page"]{border-bottom-color:var(--cream)}
.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1rem;border:1px solid var(--ink);background:var(--ink);color:var(--white);text-decoration:none;font-weight:800;letter-spacing:.03em;cursor:pointer;border-radius:var(--radius)}
.header-cta{background:transparent;border-color:rgba(255,255,255,.75);text-transform:uppercase;letter-spacing:.1em;font-size:.75rem}
.header-cta:hover{background:var(--cream);color:var(--charcoal)}
.button.secondary{background:transparent;color:var(--ink)}
.button.rust{background:var(--rust);border-color:var(--rust)}
.button:disabled{opacity:.55;cursor:not-allowed}
.mobile-toggle{display:none;min-height:44px;min-width:60px;border:1px solid rgba(255,255,255,.62);background:transparent;color:var(--cream);text-transform:uppercase;font-weight:800;letter-spacing:.08em}
main{min-height:70vh}
.shell{max-width:var(--max);margin:auto;padding-left:24px;padding-right:24px}
.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:900;color:var(--rust)}
.display,.section-title,.panel-body h2,.event-detail h3,.menu-row h3,.recipe-card h2{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:900;letter-spacing:-.045em;line-height:.93}
.rule{border:0;border-top:1px solid var(--line);margin:0}

/* Homepage */
.home-a{background:var(--charcoal)}
.dood-hero{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.45fr);min-height:590px;background:#0d100e}
.dood-hero-copy{padding:64px 44px 54px;display:flex;flex-direction:column;justify-content:center;color:var(--cream);position:relative;z-index:2}
.hero-kicker{text-transform:uppercase;letter-spacing:.17em;font-size:.74rem;font-weight:750;color:#e8dcc9}
.hero-kicker span{padding:0 .45em;opacity:.55}
.dood-hero h1{font-size:clamp(4.4rem,7vw,8.6rem);text-transform:uppercase;margin:1rem 0 .8rem;line-height:.78;letter-spacing:-.05em;max-width:620px}
.chalk-rule{width:min(280px,70%);height:8px;background:var(--rust);transform:rotate(-1.2deg);margin:.15rem 0 1.1rem;clip-path:polygon(0 35%,88% 0,100% 35%,91% 65%,8% 100%)}
.hero-tagline{margin:0;font-size:1.06rem;font-weight:780;text-transform:uppercase;letter-spacing:.18em}
.dood-hero-media{min-width:0;overflow:hidden;background:#1a1f1b;position:relative}
.dood-hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,11,9,.11) 0%,rgba(8,11,9,0) 24%),linear-gradient(90deg,rgba(8,11,9,.12) 0%,rgba(8,11,9,0) 18%)}
.dood-hero-media img{width:100%;height:100%;object-fit:cover;object-position:44% 62%}
.current-notice{max-width:var(--max);margin:0 auto;background:#fff6dd;color:#372d1e;border-top:1px solid #dbc795;border-bottom:1px solid #dbc795;padding:12px 24px;display:flex;gap:12px;align-items:baseline}
.current-notice strong{text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}
.current-notice span{font-size:.92rem}
.home-panels{max-width:var(--max);margin:0 auto;padding:14px 24px 42px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.home-panel{background:var(--paper);color:var(--ink);border:1px solid #d3c6b4;display:flex;flex-direction:column;min-height:480px;box-shadow:0 10px 28px rgba(0,0,0,.13)}
.home-panel>img{width:100%;height:190px;object-fit:cover}
.schedule-panel>img{object-position:center 64%}
.panel-body{display:flex;flex:1;flex-direction:column;padding:20px 22px 18px}
.panel-body h2{font-size:1.95rem;text-transform:uppercase;margin:0 0 1rem;letter-spacing:-.025em}
.schedule-lines,.menu-preview{border-top:1px solid var(--line)}
.schedule-lines>div,.menu-preview>div{display:grid;grid-template-columns:.9fr 1.35fr;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:.82rem}
.schedule-lines strong,.menu-preview strong{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem}
.schedule-lines span,.menu-preview span{color:var(--muted)}
.panel-empty{display:flex!important;grid-template-columns:1fr!important;gap:3px!important;padding:14px 0!important}
.panel-empty strong{font-size:.78rem!important}
.panel-empty span{font-size:.84rem}
.notebook-preview{display:grid;gap:5px;margin:.2rem 0 1rem;color:var(--muted)}
.notebook-preview strong{color:var(--ink);font-size:1rem}
.panel-button{margin-top:auto;min-height:46px;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--forest);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:800}
.panel-button:hover{background:var(--forest-2)}
.proof-strip{max-width:var(--max);margin:0 auto;padding:6px 24px 64px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.proof-strip figure{margin:0;position:relative;overflow:hidden;min-height:235px;background:#252a26}
.proof-strip img{width:100%;height:100%;object-fit:cover}
.proof-strip figcaption{position:absolute;left:0;bottom:0;background:rgba(16,19,16,.9);color:var(--cream);padding:8px 11px;text-transform:uppercase;letter-spacing:.09em;font-size:.66rem;font-weight:800}

/* Interior */
.page-hero{max-width:1240px;margin:auto;padding:66px 24px 34px;display:grid;grid-template-columns:1fr .62fr;gap:40px;align-items:end}
.page-hero h1{font-size:clamp(3.7rem,7vw,7rem);margin:0;text-transform:uppercase}
.page-hero p{font-size:1.05rem;color:var(--muted);max-width:36rem;margin:0 0 .4rem}
.split{max-width:1240px;margin:auto;padding:28px 24px 72px;display:grid;grid-template-columns:1.05fr .95fr;gap:38px}
.section-title{font-size:clamp(2.3rem,4vw,3.8rem);margin:0 0 1rem}
.prose{max-width:760px;color:var(--muted)}
.details-panel{border-top:5px solid var(--ink);padding-top:20px}
.details-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.details-list li{display:grid;grid-template-columns:1fr 1.25fr;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}
.details-list strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.rules-empty{grid-template-columns:1fr!important}
.rules-empty span{color:var(--muted)}

/* Calendar */
.calendar-wrap{border:1px solid var(--line);background:var(--white)}
.calendar-head{display:flex;align-items:center;justify-content:space-between;padding:15px;border-bottom:1px solid var(--line)}
.calendar-title{font-size:1.35rem;font-weight:900;letter-spacing:-.02em}
.calendar-controls{display:flex;gap:8px}
.calendar-controls button{min-width:44px;min-height:44px;border:1px solid var(--line);background:transparent;cursor:pointer}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.calendar-cell{min-height:96px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px;position:relative;background:var(--white)}
.calendar-cell:nth-child(7n){border-right:0}
.calendar-dayname{min-height:auto;padding:8px;text-transform:uppercase;font-size:.64rem;font-weight:900;letter-spacing:.08em;background:var(--paper-2)}
.calendar-cell.muted{color:#999;background:#f6f2ea}
.day-number{font-size:.76rem;font-weight:900}
.event-chip{display:block;margin-top:6px;padding:5px 6px;font-size:.66rem;font-weight:800;text-decoration:none;border-left:4px solid var(--blue);background:#e5f0f3}
.event-chip.market{border-color:var(--gold);background:#f4ebce}
.event-chip.booked{border-color:var(--rust);background:#f1ded5}
.event-chip.available{border-color:var(--green);background:#e6eee3}.event-chip.unavailable{border-color:#666;background:#ece9e2}.event-chip.ask{border-color:var(--blue);background:#e5f0f3}
.legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:.74rem;font-weight:800}
.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:11px;height:11px;display:inline-block;background:var(--blue)}.legend .market i{background:var(--gold)}.legend .available i{background:var(--green)}.legend .booked i{background:var(--rust)}.legend .unavailable i{background:#666}.legend .ask i{background:var(--blue)}
.event-list{display:grid;gap:12px;margin-top:24px}
.event-detail{display:grid;grid-template-columns:150px 1fr;gap:22px;padding:20px;border-top:1px solid var(--line);background:rgba(255,255,255,.28)}
.event-detail:target{outline:3px solid var(--blue);outline-offset:2px}
.event-date{text-transform:uppercase;font-weight:900;letter-spacing:.09em;font-size:.76rem}
.event-detail h3{font-size:1.45rem;margin:0 0 .5rem}.event-detail p{margin:.2rem 0;color:var(--muted)}

/* Menu */
.menu-layout{max-width:1240px;margin:auto;padding:24px 24px 72px;display:grid;grid-template-columns:.78fr 1.22fr;gap:36px}
.chalk-photo{position:sticky;top:96px;align-self:start;border:7px solid #8a6549;background:#222;box-shadow:8px 8px 0 rgba(0,0,0,.08)}
.chalk-photo img{width:100%;height:auto}
.menu-list{border-top:3px solid var(--ink)}
.menu-row{display:grid;grid-template-columns:1fr auto;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.menu-row h3{font-size:1.5rem;margin:0 0 .3rem}.menu-row p{margin:0;color:var(--muted)}
.menu-price{font-weight:900;white-space:nowrap}
.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.tag{font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink);padding:3px 5px}.tag.pink{background:#a6385d;color:white;border-color:#a6385d}.tag.blue{background:var(--blue);color:white;border-color:var(--blue)}
.empty-box{border:1px dashed var(--line);padding:26px;color:var(--muted);background:rgba(255,255,255,.35)}

/* Gallery / About / Recipes */
.gallery{max-width:1240px;margin:auto;padding:24px 24px 72px;columns:3 300px;column-gap:14px}.gallery figure{break-inside:avoid;margin:0 0 14px;background:#ddd}.gallery figcaption{font-size:.74rem;color:var(--muted);padding:.45rem 0 .2rem}
.about-grid{max-width:1240px;margin:auto;padding:24px 24px 72px;display:grid;grid-template-columns:1.15fr .85fr;gap:38px}.about-photo{min-height:650px;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center 55%}
.feature-band{background:var(--forest);color:var(--white);padding:64px 0}.feature-grid{max-width:1240px;margin:auto;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.feature-image{min-height:500px;overflow:hidden}.feature-image img{height:100%;width:100%;object-fit:cover}.feature-copy h2{font-size:clamp(2.5rem,5vw,4.7rem);line-height:.94;letter-spacing:-.045em;margin:.5rem 0 1rem}.feature-copy p{color:#ece7da;max-width:34rem}
.recipe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.recipe-card{background:var(--white);border:1px solid var(--line)}.recipe-card img{aspect-ratio:16/10;object-fit:cover}.recipe-card-body{padding:18px}.recipe-card h2{font-size:1.55rem;margin:.45rem 0}.recipe-card p{color:var(--muted)}.recipe-card dl{display:flex;gap:14px;flex-wrap:wrap;margin:1rem 0}.recipe-card dl div{display:grid;gap:2px}.recipe-card dt{font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.recipe-card dd{margin:0;color:var(--muted)}
.photo-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}.photo-row figure{margin:0;position:relative;min-height:280px;overflow:hidden}.photo-row img{width:100%;height:100%;object-fit:cover}.photo-row figcaption{position:absolute;left:0;bottom:0;background:rgba(16,19,16,.86);color:var(--cream);padding:7px 10px;font-size:.7rem}

/* Forms */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-weight:850;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.field input,.field select,.field textarea{width:100%;border:1px solid #9d9383;background:var(--white);color:var(--ink);padding:.78rem .82rem;min-height:46px;border-radius:0}.field textarea{min-height:130px;resize:vertical}.form-note{font-size:.82rem;color:var(--muted)}.form-status{display:none;margin-top:10px;padding:12px;border-left:4px solid var(--blue);background:#e8f1f4;color:#24434d}.form-status.show{display:block}.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}
.contact-fallback{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-weight:700}

/* Footer */
.site-footer{background:#0d100e;color:#e9e0cf;border-top:1px solid #30352f;padding:36px 0 24px}.footer-inner{max-width:1240px;margin:auto;padding:0 24px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}.footer-brand{font-weight:900;font-size:1.45rem;letter-spacing:-.03em}.footer-meta{text-align:right;font-size:.86rem;color:#c7bcaa}.footer-meta a{color:#f4ecde}.footer-credit{max-width:1240px;margin:18px auto 0;padding:18px 24px 0;border-top:1px solid #30352f;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:.7rem;color:#bfb4a3}.footer-credit a{color:#e9e0cf}

/* Utility */
.tbc{color:var(--rust);font-weight:900}.privacy-copy{max-width:800px;margin:auto;padding:28px 24px 74px}.privacy-copy h2{margin-top:2rem}.privacy-copy p,.privacy-copy li{color:var(--muted)}

@media(max-width:1100px){
  .header-inner{grid-template-columns:1fr auto}.main-nav{display:none;grid-column:1/-1;justify-content:flex-start;padding-top:6px}.main-nav.open{display:flex}.header-cta{display:none}.mobile-toggle{display:block}
  .dood-hero{grid-template-columns:.85fr 1.15fr}.dood-hero-copy{padding:48px 30px}.home-panels{grid-template-columns:1fr 1fr}.proof-strip{grid-template-columns:1fr 1fr}.page-hero,.split,.menu-layout,.about-grid,.feature-grid{grid-template-columns:1fr}.chalk-photo{position:relative;top:0;max-width:520px}.recipe-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .header-inner{padding:9px 14px}.wordmark{max-width:230px}.wordmark small{font-size:.54rem}.main-nav{gap:.7rem 1.1rem;font-size:.72rem}.main-nav a{min-height:44px;display:flex;align-items:center}
  .dood-hero{display:flex;flex-direction:column;min-height:0}.dood-hero-media{order:1;height:auto;aspect-ratio:16/10}.dood-hero-media img{object-position:43% 60%}.dood-hero-copy{order:2;padding:28px 18px 34px}.dood-hero h1{font-size:4.15rem}.hero-tagline{font-size:.95rem}.current-notice{padding:11px 16px;align-items:flex-start;flex-direction:column;gap:2px}
  .home-panels,.proof-strip{grid-template-columns:1fr;padding-left:14px;padding-right:14px}.home-panel>img{height:220px}.proof-strip figure{min-height:300px}
  .page-hero,.split,.menu-layout,.about-grid,.feature-grid,.privacy-copy{padding-left:16px;padding-right:16px}.page-hero{grid-template-columns:1fr;padding-top:42px}.page-hero h1{font-size:3.5rem}.split{grid-template-columns:1fr}.details-list li,.event-detail{grid-template-columns:1fr}.calendar-cell{min-height:72px;padding:5px}.event-chip{font-size:.58rem;overflow:hidden;text-overflow:ellipsis}.calendar-dayname{font-size:.55rem}.recipe-grid,.photo-row{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.gallery{columns:1;padding-left:16px;padding-right:16px}.about-photo{min-height:430px}.footer-inner{grid-template-columns:1fr}.footer-meta{text-align:left}.footer-credit{padding-left:16px;padding-right:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* PhotoMaster refinement: retain the original composition and real photographs. */
.site-header{backdrop-filter:none;background:var(--charcoal)}
.display,.section-title,.panel-body h2,.dood-hero h1{font-family:"Avenir Next Condensed","Arial Narrow",Impact,sans-serif;font-stretch:condensed;font-weight:800}
.dood-hero{min-height:560px}.dood-hero h1{font-size:clamp(4.2rem,6.7vw,7.6rem);line-height:.9;letter-spacing:-.035em}
.home-panels{padding-top:30px;gap:20px;padding-bottom:54px}.home-panel{box-shadow:none;border:0;min-height:460px}.panel-body{padding:24px}.panel-empty{flex-direction:column}.panel-body h2{font-size:2rem;line-height:1}.proof-strip{gap:20px}
.main-nav a{min-height:44px;display:flex;align-items:center}.home-panel>img{height:210px}.home-panel a:focus-visible{outline-color:#b76642;outline-offset:4px}
.recipe-page{max-width:1060px;margin:auto;padding:60px 24px}.recipe-page h1{font-size:clamp(3rem,6vw,6rem);margin:20px 0}.recipe-hero{width:100%;max-height:650px;object-fit:cover;margin:30px 0}.recipe-times{display:flex;gap:30px}.recipe-times dd{margin:0}.recipe-method{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;margin-top:35px}.recipe-method li{padding:7px 0}.chef-note{border-left:3px solid var(--rust);padding:5px 25px;margin:35px 0}.event-status{font-weight:850;font-size:.75rem;letter-spacing:.08em}
.gallery{columns:2 400px;column-gap:28px}.gallery figure{margin-bottom:28px;background:transparent}.gallery figcaption{padding:10px 0;border-bottom:1px solid var(--line)}.gallery-filters{max-width:1240px;margin:0 auto;padding:0 24px;display:flex;gap:10px;flex-wrap:wrap}.gallery-filters button{min-height:44px;background:transparent;border:1px solid var(--line);padding:10px 16px;cursor:pointer}.gallery-filters button[aria-pressed=true]{background:var(--forest);color:white}
.about-photo{min-height:0;align-self:start;aspect-ratio:4/3}.about-photo img{object-position:45% center}.menu-row img{max-width:130px;aspect-ratio:1;object-fit:cover;float:left;margin:0 20px 10px 0}.notebook-preview{margin-bottom:24px}.form-status.show{scroll-margin-top:100px}
@media(max-width:720px){.dood-hero{min-height:0}.dood-hero h1{font-size:4.2rem}.home-panels{gap:24px}.home-panel{min-height:0}.panel-button{margin-top:24px}.recipe-method{grid-template-columns:1fr;gap:12px}.split>div:first-child{display:flex;flex-direction:column}.event-list{order:-1;margin:0 0 24px}.about-photo{aspect-ratio:4/3}.proof-strip{grid-template-columns:1fr 1fr;gap:12px}.proof-strip figure{min-height:190px}.page-hero h1{overflow-wrap:anywhere}.calendar-cell .event-chip{min-height:44px}.current-notice{gap:6px}}
@media print{.site-header,.site-footer,#print-recipe,.skip-link{display:none}.recipe-page{padding:0;max-width:none}.recipe-hero{max-height:220px;width:auto}.recipe-method{display:block}body{background:white;color:black}a{color:black}.recipe-page li{break-inside:avoid}}

@media(min-width:1101px){.main-nav a:last-child{display:none}}
