@font-face{font-family:Anton;src:url('./assets/anton.ttf');font-display:swap}@font-face{font-family:Manrope;src:url('./assets/manrope.ttf');font-weight:400 700;font-display:swap}
:root{--cream:#f7e9d7;--wood:#3b1f14;--terra:#b5522e;--red:#9b2d26;--bg:#180e09;--ease:cubic-bezier(.23,1,.32,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--bg);color:var(--cream);font:400 16px/1.6 Manrope,Arial,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Anton,'Arial Narrow',sans-serif;font-weight:400;line-height:1.02;letter-spacing:-.015em}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{display:block;max-width:100%}button:disabled{cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #d48d63;outline-offset:5px}.skip{position:fixed;z-index:100;top:8px;left:8px;padding:12px;background:var(--cream);color:var(--wood);transform:translateY(-150%)}.skip:focus{transform:none}[hidden]{display:none!important}
.header{position:fixed;inset:0 0 auto;z-index:30;padding:18px 5vw;display:flex;align-items:center;justify-content:space-between;gap:20px;transition:background 200ms ease}.header.scrolled{background:#180e09ed;backdrop-filter:blur(12px)}.logo img{width:76px;height:auto}.header nav{display:flex;gap:30px;align-items:center}.header nav>a{font-size:14px;min-height:44px;display:flex;align-items:center}.menu-button{border:1px solid var(--cream);background:var(--cream);color:var(--wood);padding:10px 22px;min-height:46px;border-radius:30px;font-size:14px}.menu-button span{margin-left:24px}

.scene{height:180svh;position:relative}.stage{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden;isolation:isolate}.cinema-media{position:absolute;inset:0;background:#180e09}.scroll-film{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade,.serving-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#180e09eb 0%,#180e09aa 25%,#180e0922 67%,#180e0911),linear-gradient(0deg,#180e0980,transparent 25%)}.hero-copy{position:absolute;z-index:2;top:29%;left:7vw;width:min(480px,45vw)}.hero-copy h1{font-size:clamp(52px,5.8vw,82px);margin-top:20px}.hero-copy .intro{margin-top:26px;font-size:16px;line-height:1.9;color:#f0e1d2}.hero-copy .underlined{margin-top:28px}.chapter{font-size:12px;line-height:1.5;letter-spacing:.09em;font-weight:600}.underlined{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:48px;padding:5px 0;border:0;border-bottom:1px solid currentColor;background:none;font-size:14px}.underlined span{font-size:22px}.film-control{position:absolute;right:5vw;bottom:75px;z-index:4;min-height:44px;padding:10px 18px;border:1px solid #f7e9d799;border-radius:30px;color:#f7e9d7;background:#180e09c9;font-size:12px}.split-stage{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center;padding:120px 7vw 100px;background:var(--cream);color:var(--wood)}.editorial-copy h2,.pizza-copy h2{font-size:clamp(42px,5vw,68px);margin-top:18px}.editorial-copy h2 span,.pizza-copy h2 span{color:var(--terra)}.editorial-copy>p:not(.chapter){max-width:35ch;font-size:16px;line-height:1.9;margin-top:24px;color:#614335}.editorial-copy .underlined{margin-top:26px}.cooking-frame{position:relative;height:68svh;max-height:700px;overflow:hidden;margin:0;background:#25150e}.cooking-frame .scroll-film{object-position:center}.cooking-frame .film-control,.pizza-frame .film-control{right:20px;bottom:20px}.serving-copy{position:absolute;z-index:2;left:7vw;top:19%;max-width:450px}.serving-copy h2{font-size:clamp(45px,5.5vw,76px);margin-top:20px}.serving-copy>p:not(.chapter){font-size:15px;line-height:1.8;margin-top:24px}.serving-copy .underlined{margin-top:26px}.serving-shade{background:linear-gradient(90deg,#180e09d9,#180e0966 40%,transparent 75%),linear-gradient(180deg,#180e0944,transparent 45%,#180e0944)}.pizza-stage{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center;padding:120px 7vw 100px;background:var(--cream);color:var(--wood)}.pizza-frame{height:66svh;max-height:680px;position:relative;overflow:hidden;margin:0;background:#d8bc9c}.pizza-frame .scroll-film{object-position:48% center}.pizza-copy>p:not(.chapter){font-size:16px;line-height:1.9;color:#614335;margin-top:24px}.pizza-copy .underlined{margin-top:26px}
.scene-controls{position:fixed;z-index:25;bottom:16px;left:5vw;right:5vw;display:flex;justify-content:space-between;align-items:center;pointer-events:none;mix-blend-mode:difference;color:#fff}.chapters{display:flex;gap:2px;pointer-events:auto}.chapters a{display:grid;place-items:center;min-width:40px;min-height:40px;font-size:11px;opacity:.45}.chapters a[aria-current]{opacity:1;text-decoration:underline;text-underline-offset:5px}.scene-controls>button{pointer-events:auto;font-size:11px;min-height:40px;padding:0 10px;border:0;background:none}.motion-off .scene{height:auto}.motion-off .stage{position:relative}
.menu-intro{background:var(--terra);padding:100px 7vw;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px}.menu-intro h2{font-size:clamp(38px,4vw,58px);margin-top:16px}.menu-choice{display:grid;gap:12px}.menu-choice button{display:flex;justify-content:space-between;align-items:center;min-height:78px;padding:18px 24px;border:1px solid #f7e9d799;color:var(--cream);background:transparent;font-size:22px}.visit{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:50px;align-items:center;padding:80px 7vw 110px;background:var(--wood)}.visit>img{width:160px}.visit h2{font-size:30px;margin-bottom:20px}.visit address{font-size:16px;font-style:normal}.visit div>a{font-size:14px;overflow-wrap:anywhere;text-decoration:underline;display:inline-block;margin-top:10px}
dialog{color:var(--wood);border:0;padding:32px;max-width:1100px;width:calc(100% - 40px);max-height:90svh;background:var(--cream);border-radius:8px}dialog::backdrop{background:#120805c9;backdrop-filter:blur(8px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.dialog-top h2{font-size:36px}.close{font-size:30px;width:48px;height:48px;border:1px solid #3b1f1455;background:none;color:var(--wood);border-radius:50%}.service-switch{display:flex;gap:8px;margin-bottom:16px}.service-switch button,#categories button{border:1px solid #3b1f1455;background:transparent;color:var(--wood);padding:12px 18px;min-height:46px;border-radius:4px}.service-switch [aria-pressed=true],#categories [aria-pressed=true]{background:var(--wood);color:var(--cream)}.price-notice{font-size:13px;margin-bottom:18px}.search-label{display:grid;gap:8px;font-size:14px}.search-label input{width:100%;min-height:48px;font-size:16px;padding:10px 14px;border:1px solid #3b1f1455;background:#fff8ee;color:var(--wood);border-radius:4px}.menu-layout{display:grid;grid-template-columns:190px 1fr;gap:32px;margin-top:24px}#categories{display:flex;flex-direction:column;gap:8px;align-items:stretch}#categories button{text-align:left}#dishes h3{font-family:Anton,sans-serif;font-size:28px;font-weight:400;line-height:1.2;margin-bottom:16px}.dish{padding:20px 0;border-top:1px solid #3b1f1426}.dish>div{display:flex;justify-content:space-between;gap:20px}.dish h4{font-size:18px;margin:0;line-height:1.4}.dish strong{white-space:nowrap;font-size:18px}.dish p{font-size:15px;color:#614335;margin-top:8px;line-height:1.7}#film-dialog{background:#180e09;max-width:540px;padding:16px}#film-dialog video{width:100%;max-height:78svh;display:block}#film-dialog .close{position:absolute;right:24px;top:24px;z-index:2;background:var(--cream)}body.modal-open{overflow:hidden}

@media(hover:hover){.menu-button:hover{background:#e4c4a5}.underlined:hover{color:#d69b78}.menu-choice button:hover{background:var(--cream);color:var(--wood)}.pizza-scene .underlined:hover,.cooking-scene .underlined:hover{color:var(--red)}#categories button:hover{box-shadow:inset 0 0 0 1px var(--wood)}}
@media(max-width:900px){.split-stage,.pizza-stage{gap:5vw;padding-inline:5vw}.hero-copy{width:48vw;left:5vw}.hero-copy h1{font-size:58px}.editorial-copy h2,.pizza-copy h2{font-size:48px}.visit{grid-template-columns:.7fr 1.3fr;gap:35px}.visit>.underlined{grid-column:2}}
@media(max-width:650px){.header{padding:14px 6vw}.logo img{width:60px}.header nav>a{display:none}.menu-button{padding:10px 18px}.stage{min-height:0}.hero-copy{left:6vw;right:6vw;top:auto;bottom:15%;width:auto}.hero-copy h1{font-size:49px;margin-top:14px}.hero-copy .intro{font-size:14px;margin-top:18px;line-height:1.7}.hero-copy .underlined{margin-top:18px}.hero-shade{background:linear-gradient(0deg,#180e09f5,#180e09bb 30%,#180e0933 65%,#180e0933)}.cinema-hero .scroll-film{object-position:60% center}.chapter{font-size:10px}.film-control{right:6vw;bottom:64px;min-height:40px;font-size:11px;padding:8px 14px}.split-stage,.pizza-stage{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:28px;padding:106px 6vw 95px}.editorial-copy h2,.pizza-copy h2{font-size:42px;margin-top:14px}.editorial-copy>p:not(.chapter),.pizza-copy>p:not(.chapter){font-size:14px;margin-top:16px;line-height:1.7}.editorial-copy .underlined,.pizza-copy .underlined{margin-top:14px}.cooking-frame,.pizza-frame{height:36svh;max-height:390px;min-height:220px;flex-shrink:0}.cooking-frame .film-control,.pizza-frame .film-control{right:12px;bottom:12px}.serving-copy{left:6vw;right:6vw;top:17%;max-width:none}.serving-copy h2{font-size:44px;margin-top:14px}.serving-copy>p:not(.chapter){font-size:14px;margin-top:18px}.serving-copy .underlined{margin-top:18px}.serving-shade{background:linear-gradient(180deg,#180e09d9,#180e0999 30%,transparent 65%,#180e0944)}.serving-scene .scroll-film{object-position:57% center}.scene-controls{bottom:8px;left:4vw;right:4vw}.scene-controls>button{font-size:10px}.chapters a{font-size:10px;min-width:34px}.menu-intro{grid-template-columns:1fr;padding:70px 6vw;gap:34px}.menu-intro h2{font-size:40px}.menu-choice button{font-size:19px;min-height:64px}.visit{grid-template-columns:1fr;padding:60px 6vw 100px;gap:30px}.visit>img{width:120px}.visit>.underlined{grid-column:1;justify-self:start}dialog{padding:20px;width:calc(100% - 20px)}.dialog-top h2{font-size:29px}.menu-layout{grid-template-columns:1fr;gap:22px}#categories{flex-direction:row;flex-wrap:wrap;gap:6px}#categories button{padding:8px 12px;min-height:44px;font-size:13px}.dish h4,.dish strong{font-size:17px}}
@media(max-height:700px){.split-stage,.pizza-stage{height:auto;min-height:100svh}.hero-copy h1{font-size:42px}.hero-copy{bottom:17%}.hero-copy .intro{font-size:12px;line-height:1.6}.hero-copy .underlined{margin-top:8px}.serving-copy h2{font-size:40px}}
/* The pizza is a full-viewport film, with copy layered above its photograph. */
.pizza-stage{display:block;padding:0;height:100svh;min-height:0;background:var(--bg);color:var(--cream)}
.pizza-frame{position:absolute;inset:0;height:100%;min-height:0;max-height:none;background:var(--bg)}
.pizza-frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#180e09df 0%,#180e0999 28%,#180e0911 70%),linear-gradient(0deg,#180e0977,transparent 25%)}
.pizza-frame .scroll-film{object-position:55% center}
.pizza-frame .film-control{right:5vw;bottom:75px}
.pizza-copy{position:absolute;z-index:2;left:7vw;top:28%;max-width:440px}
.pizza-copy h2{font-size:clamp(48px,5.5vw,76px)}
.pizza-copy h2 span{color:var(--cream)}
.pizza-copy>p:not(.chapter){color:var(--cream)}
.pizza-scene .underlined:hover{color:#e4c4a5}
@media(max-width:650px){.pizza-stage{display:block;padding:0;height:100svh;min-height:0}.pizza-frame{height:100%;min-height:0;max-height:none}.pizza-frame .scroll-film{object-position:53% center}.pizza-frame::after{background:linear-gradient(0deg,#180e09f2 0%,#180e09b3 30%,#180e0911 68%,#180e0944)}.pizza-copy{left:6vw;right:6vw;top:auto;bottom:22%;max-width:none}.pizza-copy h2{font-size:44px}.pizza-copy>p:not(.chapter){font-size:14px}.pizza-frame .film-control{right:6vw;bottom:64px}}
@media(max-height:600px){.pizza-copy{top:23%;bottom:auto}.pizza-copy h2{font-size:36px}.pizza-copy>p:not(.chapter){margin-top:12px}.pizza-copy .underlined{margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.scene{height:auto}.stage{position:relative}}

.public-booking{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;padding:90px 7vw;background:var(--cream);color:var(--wood)}.public-booking h2{font-size:clamp(36px,4vw,54px);margin:18px 0 24px}.public-booking>div>p:not(.chapter){font-size:15px;line-height:1.8;max-width:38ch}.public-booking button{background:var(--wood);color:var(--cream);border:1px solid var(--wood);padding:12px 18px;border-radius:5px;min-height:46px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.booking-fields label{display:grid;gap:8px;font-size:14px}.booking-fields input,.booking-fields select,.booking-fields textarea{font:inherit;width:100%;min-width:0;padding:12px;border:1px solid #a88b74;border-radius:5px;background:#fff9f0;color:var(--wood)}.booking-wide{grid-column:1/-1}.booking-fields textarea{min-height:90px}.booking-privacy{margin:20px 0;font-size:13px}.booking-privacy summary{cursor:pointer;min-height:44px}.booking-privacy p{white-space:pre-line;line-height:1.7;margin-top:15px}.booking-consent{display:flex;gap:12px;align-items:flex-start;font-size:13px}.booking-consent input{width:20px;height:20px;flex-shrink:0}.booking-fineprint{font-size:12px;line-height:1.7;margin:18px 0}.booking-feedback{margin:18px 0;color:#8b2b21}.booking-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.reservation-receipt h3{font-family:Anton,sans-serif;font-size:28px;font-weight:400;margin:14px 0}.reservation-code{font:14px monospace}.booking-coming{padding:26px;border:1px solid #c6a78c;border-radius:6px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}.public-footer{padding:26px 7vw 80px;background:var(--wood);font-size:12px;display:flex;gap:24px;justify-content:space-between;flex-wrap:wrap}.public-footer nav{display:flex;gap:22px}.public-footer a{text-decoration:underline;text-underline-offset:4px}.menu-print-links{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;margin-bottom:20px}.menu-print-links a{text-decoration:underline;min-height:30px}.dish.with-photo{display:grid;grid-template-columns:88px minmax(0,1fr);gap:18px}.dish-photo{width:88px;height:88px;object-fit:cover;border-radius:4px}.dish .illustrative{font-size:11px;color:#765e4c;margin-top:6px}.dish-copy{min-width:0}.cms-film-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.cms-film-photo[hidden]{display:none!important}
@media(max-width:650px){.public-booking{grid-template-columns:1fr;padding:65px 6vw;gap:30px}.booking-fields{grid-template-columns:1fr}.booking-wide{grid-column:1}.dish.with-photo{grid-template-columns:72px minmax(0,1fr);gap:12px}.dish-photo{width:72px;height:80px}.public-footer{padding-inline:6vw}.public-footer nav{gap:18px}}
.header nav .booking-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border:1px solid var(--cream);border-radius:30px;background:#180e09b3;color:var(--cream);font-size:14px;white-space:nowrap}
.public-footer button{font:inherit;background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-underline-offset:4px;min-height:44px}.public-footer nav{align-items:center}
.privacy-notice{position:fixed;z-index:60;left:24px;bottom:24px;max-width:540px;display:flex;align-items:center;gap:20px;padding:20px 24px;background:var(--cream);color:var(--wood);border:1px solid #bea58c;border-radius:8px;box-shadow:0 8px 32px #180e0933}.privacy-notice p{font-size:13px;line-height:1.65}.privacy-notice strong{display:block;font-size:15px;margin-bottom:3px}.privacy-notice a{text-decoration:underline;text-underline-offset:3px}.privacy-notice button{min-height:44px;flex-shrink:0;padding:10px 16px;border:1px solid var(--wood);border-radius:5px;background:var(--wood);color:var(--cream);font-size:13px}.privacy-dialog{max-width:650px}.privacy-dialog p{font-size:15px;line-height:1.8}.privacy-dialog nav{display:flex;gap:24px;flex-wrap:wrap;margin-top:24px}.privacy-dialog nav a{font-size:14px;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}.privacy-technical{padding:20px 0;margin:20px 0;border-block:1px solid #c6a78c}.privacy-technical span{float:right;font-size:13px}.privacy-technical p{font-size:13px;margin-top:10px}.booking-unavailable{margin-bottom:22px;padding:18px;border:1px solid #a88b74;border-radius:5px;font-size:14px;line-height:1.7}.booking-fields fieldset{border:0;padding:0;margin:0;min-width:0}.booking-paused fieldset:disabled{opacity:.65}.booking-paused>fieldset{border:0;padding:0;margin:0}.booking-paused button:disabled{cursor:not-allowed;opacity:.6}.booking-schedule{font-size:13px;line-height:1.8;margin-bottom:20px}.booking-consent a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:650px){.header nav{gap:8px}.header nav .booking-button{display:inline-flex;padding:10px 16px;font-size:13px}.menu-button{padding:10px 14px;font-size:13px}.menu-button span{margin-left:10px}.privacy-notice{left:12px;right:12px;bottom:12px;max-width:none;padding:16px;gap:12px}.privacy-notice p{font-size:12px}.privacy-dialog{padding:24px}.privacy-dialog .dialog-top h2{font-size:28px}}
@media(max-width:350px){.header{padding-inline:14px}.header nav .booking-button,.menu-button{padding-inline:12px}.logo img{width:52px}}
#reservation-form>fieldset{border:0;margin:0;padding:0;min-width:0}.privacy-notice button:focus-visible{outline-color:var(--wood)}.privacy-dialog .close{flex-shrink:0}
.opening-hours{display:grid;grid-template-columns:1fr 1.1fr;gap:8vw;padding:90px 7vw;background:var(--cream);color:var(--wood)}.opening-hours h2{font-size:clamp(36px,4vw,56px);margin-top:18px}.hours-list{margin:0}.hours-list>div{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px 0;border-bottom:1px solid #3b1f1426}.hours-list>div:first-child{padding-top:0}.hours-list dt{font-size:16px;font-weight:600}.hours-list dd{margin:0;font-size:21px;font-variant-numeric:tabular-nums;line-height:1.5;white-space:nowrap}.hours-list small{display:block;font-size:12px;line-height:1.7;color:#614335;margin-top:4px;white-space:normal}.hours-second{display:block;margin-top:18px}.hours-list .hours-closed{color:var(--red);font-size:18px}.hours-book{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;margin-top:30px;border:1px solid var(--wood);border-radius:30px;padding:12px 24px;min-height:48px;font-size:14px}.hours-book:hover{background:var(--wood);color:var(--cream)}
.booking-page{background:var(--cream);color:var(--wood)}.booking-header{position:relative;background:var(--cream);border-bottom:1px solid #3b1f1420}.booking-header .logo img{width:85px}.booking-back{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.standalone-booking{max-width:1340px;margin:auto;padding-top:72px;padding-bottom:90px;min-height:calc(100svh - 200px);grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:start}.booking-page-intro h1{font-size:clamp(42px,4.6vw,64px);line-height:1.1;margin:20px 0 24px}.booking-page-intro>p:not(.chapter){font-size:16px;line-height:1.8;max-width:34ch}.booking-address{margin-top:40px;font-size:14px;line-height:1.8}.booking-address p{margin-top:8px}.booking-address a{display:inline-block;margin-top:14px;text-decoration:underline;overflow-wrap:anywhere}.booking-page-form{min-width:0}.booking-page .public-footer{padding-bottom:28px;color:var(--cream)}
@media(max-width:760px){.opening-hours{grid-template-columns:1fr;gap:36px;padding:64px 6vw}.opening-hours h2{font-size:38px}.hours-list dd{font-size:20px}.hours-list>div{gap:16px}.hours-list dt{font-size:14px}.standalone-booking{grid-template-columns:1fr;padding:38px 6vw 64px;gap:32px}.booking-page-intro h1{font-size:42px}.booking-page-intro>p:not(.chapter){font-size:15px}.booking-address{margin-top:24px}.booking-header .logo img{width:68px}.booking-back{font-size:13px}}

.dish>.dish-copy{display:block}.dish-copy>div{display:flex;justify-content:space-between;gap:20px}
