@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";:root{--ink:#151513;--muted:#77766f;--yellow:#f4c430;--cream:#f7f5ef;--line:#dfddd4;--serif:"Playfair Display", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);font-family:var(--sans);margin:0;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{z-index:20;color:#fff;background:#151513f5;justify-content:space-between;align-items:center;height:76px;padding:0 clamp(20px,5vw,76px);display:flex;position:sticky;top:0}.brand{letter-spacing:-.04em;align-items:center;gap:10px;font-size:17px;font-weight:700;display:flex}.brand-accent{color:var(--yellow)}.brand-mark{border:2px solid var(--yellow);width:34px;height:34px;color:var(--yellow);letter-spacing:.04em;place-items:center;font-size:11px;display:grid;transform:rotate(-8deg)}.main-nav{letter-spacing:.14em;align-items:center;gap:clamp(18px,2.8vw,42px);font-size:11px;font-weight:600;display:flex}.main-nav a{opacity:.8;transition:opacity .2s,color .2s}.main-nav a:hover{opacity:1;color:var(--yellow)}.main-nav .nav-cta{opacity:1;color:var(--yellow);letter-spacing:.08em;border:1px solid #f4c43080;padding:8px 13px}.menu-toggle{background:0 0;border:0;padding:8px;display:none}.menu-toggle span{background:#fff;width:25px;height:2px;margin:5px;display:block}.hero{background:var(--ink);color:#fff;align-items:center;min-height:min(760px,100vh - 76px);display:grid;position:relative;overflow:hidden}.hero__image{opacity:.95;background:linear-gradient(90deg,#151513ed 0%,#151513b3 45%,#15151340 100%),url(/images/placeholder.svg) 50%/cover;position:absolute;inset:0}.hero__content{z-index:1;width:min(1120px,100%);margin:auto;padding:80px clamp(24px,8vw,110px);position:relative}.eyebrow{color:var(--yellow);letter-spacing:.24em;margin:0 0 14px;font-size:10px;font-weight:700}.hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(52px,9vw,108px);line-height:.94}.hero h1 em,h2 em{color:var(--yellow);font-family:var(--serif);letter-spacing:-.04em;font-weight:600}.hero__lead{color:#fffc;margin:28px 0 30px;font-size:clamp(16px,2vw,20px)}.hero__actions{flex-wrap:wrap;gap:10px;display:flex}.button{letter-spacing:.04em;justify-content:space-between;align-items:center;gap:24px;min-height:50px;padding:0 18px;font-size:12px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--yellow{background:var(--yellow);color:var(--ink)}.button--ghost{color:#fff;border:1px solid #ffffff80}.button--dark{background:var(--ink);color:#fff}.button span{font-size:18px;line-height:1}.hero__stamp{z-index:1;color:var(--yellow);text-align:center;letter-spacing:.08em;font-size:22px;font-weight:700;line-height:.9;position:absolute;bottom:75px;right:clamp(22px,8vw,110px);transform:rotate(-8deg)}.hero__stamp b{color:#fff}.hero__stamp span{letter-spacing:.25em;margin-top:10px;font-size:8px;display:block}.hero__scroll{z-index:1;color:#ffffff8c;letter-spacing:.2em;font-size:9px;position:absolute;bottom:25px;left:clamp(24px,8vw,110px)}.hero__scroll span{vertical-align:middle;background:var(--yellow);width:50px;height:1px;margin-left:10px;display:inline-block}.section{width:min(1180px,100%);margin:auto;padding:clamp(72px,10vw,135px) clamp(20px,5vw,60px)}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px;display:flex}.section h2,.about-section h2,.contact-section h2{letter-spacing:-.07em;margin:0;font-size:clamp(38px,5vw,66px);line-height:1}.section-intro{color:var(--muted);font-size:13px}.text-link{border-bottom:1px solid var(--ink);padding-bottom:8px;font-size:12px;font-weight:700}.menu-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.menu-card{background:#fff;transition:transform .25s,box-shadow .25s}.menu-card:hover{transform:translateY(-5px);box-shadow:0 16px 28px #1515131a}.menu-card__image{aspect-ratio:1.15;background:var(--ink);position:relative;overflow:hidden}.menu-card__image img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.menu-card:hover img{transform:scale(1.04)}.badge{background:var(--yellow);letter-spacing:.08em;padding:4px 9px;font-size:9px;font-weight:700;position:absolute;top:12px;left:12px}.menu-card__body{padding:17px 18px 16px}.menu-card__name{color:var(--muted);letter-spacing:.06em;margin:0;font-size:10px}.menu-card h3{margin:3px 0 10px;font-size:18px;line-height:1.2}.menu-card__body>p:last-of-type{min-height:50px;color:var(--muted);margin:0;font-size:12px;line-height:1.6}.menu-card__footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:18px;padding-top:12px;display:flex}.menu-card__footer strong{font-size:18px}.menu-card__footer span{color:var(--muted);letter-spacing:.12em;font-size:9px}.menu-card__footer i{color:var(--ink);font-size:15px;font-style:normal}.menu-status{color:var(--muted);padding:24px 0}.menu-status--error{color:#a73520}.schedule-section{background:var(--ink);color:#fff;max-width:none}.schedule-section .section-heading{width:min(1060px,100%);margin-inline:auto}.schedule-section .text-link{border-color:#ffffff80}.schedule-list{border-top:1px solid #fff3;width:min(1060px,100%);margin:auto}.schedule-card{border-bottom:1px solid #fff3;grid-template-columns:110px 1fr auto;align-items:center;gap:20px;padding:24px 0;display:grid}.schedule-card__date strong{color:var(--yellow);letter-spacing:-.06em;font-size:35px;line-height:1;display:block}.schedule-card__date span{letter-spacing:.2em;opacity:.6;font-size:10px}.schedule-card__tag{color:var(--yellow);letter-spacing:.14em;font-size:9px}.schedule-card h3{margin:4px 0;font-size:20px}.schedule-card p{color:#fff9;margin:0 16px 0 0;font-size:13px;display:inline}.schedule-card__hours{color:#fffc;font-size:12px}.schedule-card__arrow{color:var(--yellow);font-size:24px}.schedule-status{color:#ffffffb3;width:min(1060px,100%);margin:0 auto;padding:32px 0}.schedule-status--error{color:var(--yellow)}.public-calendar__toolbar{align-items:center;gap:12px;width:min(1060px,100%);margin:0 auto 18px;display:flex}.public-calendar__toolbar strong{text-align:center;letter-spacing:-.05em;flex:1;font-size:clamp(21px,3vw,32px)}.public-calendar__toolbar button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff40;min-height:40px;padding:0 12px;font-size:12px}.public-calendar__toolbar button:hover,.public-calendar__toolbar .public-calendar__today{border-color:var(--yellow);color:var(--yellow)}.public-calendar{border-top:1px solid #fff3;border-left:1px solid #fff3;grid-template-columns:repeat(7,minmax(0,1fr));width:min(1060px,100%);margin:auto;display:grid}.public-calendar__weekday{color:#ffffff8c;text-align:center;border-bottom:1px solid #fff3;border-right:1px solid #fff3;padding:10px 8px;font-size:11px}.public-calendar__cell{border-bottom:1px solid #fff3;border-right:1px solid #fff3;min-height:118px;padding:8px;overflow:hidden}.public-calendar__cell--empty{background:#ffffff06}.public-calendar__cell--sun .public-calendar__number{color:var(--yellow)}.public-calendar__number{color:#ffffffbf;font-size:14px;display:block}.public-calendar__events{gap:5px;margin-top:5px;display:grid}.public-calendar__event{border:1px solid #f4c430a6;border-left:3px solid var(--yellow);color:#fff;text-align:left;cursor:pointer;background:#f4c4301a;min-width:0;padding:6px 7px}.public-calendar__event:hover{background:#f4c43038}.public-calendar__event>span{margin-right:4px;font-size:11px}.public-calendar__event strong,.public-calendar__event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.public-calendar__event strong{color:#fff;font-size:11px}.public-calendar__event small{color:#ffffffa6;margin-top:2px;font-size:10px}.public-calendar__empty{color:#fff9;text-align:center;width:min(1060px,100%);margin:22px auto 0}.public-schedule-modal{z-index:40;background:#000000b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.public-schedule-modal__card{background:var(--cream);width:min(480px,100%);color:var(--ink);padding:35px;position:relative;box-shadow:0 20px 70px #00000059}.public-schedule-modal__close{color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:30px;position:absolute;top:8px;right:14px}.public-schedule-modal__card h3{margin:0 0 14px;font-size:clamp(24px,5vw,34px);line-height:1.15}.public-schedule-modal__date{margin:0 0 22px;font-weight:700}.public-schedule-modal__card dl{border-top:1px solid var(--line);grid-template-columns:80px 1fr;gap:9px 14px;margin:0;padding-top:18px;display:grid}.public-schedule-modal__card dt{color:var(--muted);font-size:12px}.public-schedule-modal__card dd{margin:0;font-size:14px}.gallery-grid{grid-template-rows:220px 220px;grid-template-columns:1.2fr .8fr .8fr;gap:12px;display:grid}.gallery-tile{background:var(--ink);cursor:zoom-in;border:0;min-width:0;padding:0;position:relative;overflow:hidden}.gallery-tile--0{grid-row:span 2}.gallery-tile img{object-fit:cover;opacity:.8;width:100%;height:100%;transition:transform .5s,opacity .3s}.gallery-tile:hover img{opacity:.55;transform:scale(1.05)}.gallery-tile span{color:#fff;letter-spacing:.18em;font-size:10px;position:absolute;bottom:15px;left:15px}.about-section{grid-template-columns:minmax(180px,.7fr) 1.3fr;gap:40px;width:min(1000px,100%);margin:auto;padding:clamp(75px,10vw,130px) 20px;display:grid}.about-section__mark{border:3px solid var(--yellow);width:150px;height:150px;color:var(--yellow);align-self:start;place-items:center;font-size:38px;font-weight:700;display:grid;transform:rotate(-8deg)}.about-section p:not(.eyebrow){color:var(--muted);margin:26px 0 30px}.contact-section{background:var(--yellow);justify-content:space-between;align-items:center;gap:35px;padding:clamp(60px,8vw,100px) max(20px,50% - 540px);display:flex}.contact-section .eyebrow{color:var(--ink)}.contact-section__copy{max-width:430px}.contact-section__copy p{margin-top:0}.site-footer{background:var(--ink);color:#fff;padding:48px max(20px,50% - 540px) 22px}.footer__top{grid-template-columns:1.2fr 1fr 1fr;align-items:start;gap:20px;padding-bottom:42px;display:grid}.brand--footer{align-self:start}.footer__top p{color:#ffffff8c;margin:0;font-size:12px}.footer__socials{flex-wrap:wrap;justify-content:end;gap:14px;display:flex}.footer__socials a{color:var(--yellow);font-size:11px}.footer__bottom{color:#fff6;letter-spacing:.08em;border-top:1px solid #ffffff26;justify-content:space-between;gap:15px;padding-top:18px;font-size:10px;display:flex}.lightbox{z-index:50;background:#000000e6;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:min(100%,900px);max-height:85vh}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:38px;position:absolute;top:18px;right:25px}@media (width<=850px){.main-nav{gap:18px}.menu-grid{grid-template-columns:repeat(2,1fr)}.footer__top{grid-template-columns:1fr 1fr}.footer__socials{grid-column:1/-1;justify-content:start}}@media (width<=620px){.site-header{height:64px}.menu-toggle{z-index:2;display:block}.main-nav{background:var(--ink);flex-direction:column;align-items:stretch;gap:0;padding:25px 24px;transition:transform .25s;display:flex;position:fixed;inset:64px 0 0;transform:translate(100%)}.main-nav--open{transform:translate(0)}.main-nav a{border-bottom:1px solid #ffffff21;padding:16px 0;font-size:13px}.main-nav .nav-cta{text-align:center;margin-top:16px}.hero{min-height:650px}.hero__content{padding:55px 24px 120px}.hero__stamp{font-size:16px;bottom:70px;right:24px}.section-heading{margin-bottom:28px;display:block}.section-intro{margin-top:20px}.menu-grid{gap:10px}.menu-card__body{padding:13px 12px}.menu-card h3{font-size:15px}.menu-card__body>p:last-of-type{min-height:72px;font-size:11px}.menu-card__footer{margin-top:12px}.schedule-card{grid-template-columns:72px 1fr auto;gap:10px;padding:20px 0}.schedule-card__date strong{font-size:27px}.schedule-card h3{font-size:16px}.schedule-card p{margin:3px 0;font-size:12px;display:block}.schedule-card__hours{font-size:11px}.public-calendar__toolbar{flex-wrap:wrap}.public-calendar__toolbar strong{flex-basis:100%;order:-1}.public-calendar__toolbar button{flex:1}.public-calendar__cell{min-height:58px;padding:5px 3px}.public-calendar__weekday{padding:7px 2px;font-size:10px}.public-calendar__number{font-size:12px}.public-calendar__event{background:var(--yellow);border:0;border-radius:50%;width:10px;height:10px;padding:0;font-size:0}.public-calendar__event>span,.public-calendar__event strong,.public-calendar__event small{display:none}.public-calendar__events{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.public-schedule-modal__card{padding:30px 22px}.gallery-grid{grid-template-rows:repeat(2,150px);grid-template-columns:1fr 1fr}.gallery-tile--0{grid-area:span 1/span 2}.about-section{grid-template-columns:1fr;gap:32px}.about-section__mark{width:95px;height:95px;font-size:25px}.contact-section{display:block}.contact-section__copy{margin-top:25px}.footer__top{grid-template-columns:1fr}.footer__socials{grid-column:auto}.footer__bottom{display:block}.footer__bottom span{margin-top:8px;display:block}.desktop-only{display:none}}.menu-card{color:inherit;text-decoration:none}.hero{background-repeat:no-repeat;background-size:cover}.hero__overlay{z-index:0;pointer-events:none;background:#000;position:absolute;inset:0}.hero__content,.hero__stamp,.hero__scroll{z-index:1;position:relative}.hero__content h1 em{color:var(--hero-accent,var(--yellow))}.hero--compact{min-height:520px}.hero--standard{min-height:620px}.hero--large{min-height:760px}.hero__dots{z-index:2;gap:7px;display:flex;position:absolute;bottom:26px;right:clamp(24px,8vw,110px)}.hero__dots button{cursor:pointer;background:0 0;border:1px solid #fffc;border-radius:50%;width:8px;height:8px;padding:0}.hero__dots button.is-active{background:var(--yellow);border-color:var(--yellow)}@media (prefers-reduced-motion:reduce){.hero,.hero__dots button{transition:none!important}}.brand img{object-fit:contain;width:auto;max-width:150px;max-height:42px}.brand--small img{max-height:30px}.brand--large img{max-height:52px}.brand-subtext{color:var(--muted);letter-spacing:.12em;margin-top:2px;font-size:9px;font-weight:500;display:block}.brand-align-left,.footer-align-left{text-align:left;justify-content:flex-start}.brand-align-center,.footer-align-center{text-align:center;justify-content:center}.brand-align-right,.footer-align-right{text-align:right;justify-content:flex-end}.footer-contact{color:#ffffff8c;flex-direction:column;gap:4px;font-size:12px;display:flex}.footer__top>.brand--footer{display:flex}.brand--footer img{object-fit:contain;width:auto;max-width:180px;max-height:48px}.brand--footer.brand--small img{max-height:32px}.brand--footer.brand--large img{max-height:62px}.footer__columns{grid-template-columns:minmax(0,1.2fr) minmax(150px,.8fr) minmax(0,1fr);align-items:start;gap:clamp(28px,5vw,72px);padding-bottom:34px;display:grid}.footer__column{min-width:0}.footer__column--brand{flex-direction:column;gap:18px;display:flex}.footer__column--brand .brand{width:100%}.footer__column--brand.footer-align-left .brand{justify-content:flex-start}.footer__column--brand.footer-align-center .brand{justify-content:center}.footer__column--brand.footer-align-right .brand{justify-content:flex-end}.footer__description{color:#ffffff8c;max-width:34em;margin:0;font-size:12px;line-height:1.8}.footer__column--nav{flex-direction:column;gap:11px;padding-top:4px;display:flex}.footer__column--nav a{color:#ffffffb3;letter-spacing:.08em;font-size:11px;text-decoration:none}.footer__column--nav a:hover{color:var(--yellow)}.footer__column--contact{padding-top:4px}.footer__socials{border-top:1px solid #ffffff26;flex-wrap:wrap;align-items:center;gap:14px;width:100%;padding:22px 0;display:flex}.footer__socials a{color:var(--yellow);font-size:11px;text-decoration:none}.footer__bottom{color:#fff6;letter-spacing:.08em;border-top:1px solid #ffffff26;width:100%;padding-top:18px;font-size:10px;display:flex}@media (width<=850px){.footer__columns{grid-template-columns:minmax(0,1.15fr) minmax(130px,.85fr) minmax(0,1fr);gap:22px}}@media (width<=620px){.footer__columns{grid-template-columns:1fr;gap:30px;padding-bottom:28px}.footer__column--nav,.footer__column--contact{padding-top:0}.footer__socials{padding:20px 0}.footer__bottom{display:flex}}.menu-card__body>p:last-of-type{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.menu-card__badges{flex-wrap:wrap;gap:5px;display:flex;position:absolute;top:12px;left:12px;right:8px}.menu-card__badges .badge{padding:4px 7px;display:inline-block;position:static}.badge--recommended{background:var(--yellow)}.badge--new{background:#fff}.badge--popular{background:#f4c430}.badge--very_popular{color:#fff;border:1px solid var(--yellow);background:#111}.product-detail{width:min(1120px,100%);min-height:70vh;margin:0 auto;padding:120px clamp(20px,5vw,60px) 100px}.product-detail__back{margin-bottom:36px;display:inline-block}.product-detail__layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:center;gap:clamp(30px,6vw,90px);display:grid}.product-detail__image{aspect-ratio:1;background:var(--ink);overflow:hidden}.product-detail__image img{object-fit:cover;width:100%;height:100%}.product-detail__content h1{margin:6px 0 12px;font-size:clamp(34px,5vw,68px);line-height:1.05}.product-detail__content .menu-card__name{font-size:13px}.product-detail__content .menu-card__badges{margin-bottom:20px;position:static}.product-detail__price{margin:20px 0 28px;font-size:28px;display:block}.product-detail__description{max-width:42em;color:var(--muted);white-space:pre-line;line-height:2}.product-detail--error h1{margin-top:60px}.lightbox__caption{color:#fff;text-align:center;max-width:min(720px,90vw);margin:14px auto 0}.lightbox__caption strong,.lightbox__caption small{display:block}.lightbox__caption p{color:#ddd;margin:8px 0 0}@media (width<=700px){.product-detail{padding-top:92px}.product-detail__layout{grid-template-columns:1fr;gap:28px}.product-detail__image{max-height:72vw}.product-detail__content h1{font-size:42px}}.social-icon{border:1px solid;border-radius:50%;place-items:center;width:22px;height:22px;margin-right:5px;font-weight:700;display:inline-grid}.about-section__image{aspect-ratio:1;background:var(--ink);min-width:0;overflow:hidden}.about-section__image img{object-fit:cover;width:100%;height:100%}.about-section__secondary{color:var(--muted);white-space:pre-line;font-size:12px}.about-admin-thumb{object-fit:cover;border-radius:10px;width:min(280px,100%);height:170px;margin:0 0 14px;display:block}@media (width<=620px){.about-section__image{max-height:78vw}}
