:root{--green:#075b35;--deep-green:#06462c;--yellow:#ffde59;--red:#be2028;--ink:#133d2b;--paper:#fff;--line:#dce3db;--body:'Barlow',Arial,sans-serif;--display:'Barlow Condensed','Arial Narrow',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55}body:has(dialog[open]){overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a,button,summary{touch-action:manipulation}button,a,summary{outline-offset:5px}:focus-visible{outline:3px solid var(--red)}.story :focus-visible,.footer :focus-visible,.site-header :focus-visible,.food-nav :focus-visible{outline-color:var(--yellow)}button{cursor:pointer}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--display);line-height:.97;font-weight:800}h1,h2{text-wrap:balance;letter-spacing:-.02em}h2{font-size:clamp(44px,5vw,72px)}h3{font-size:28px;line-height:1.1}.shell{width:min(1280px,calc(100% - 96px));margin-inline:auto}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:white;padding:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:13px 24px;border-radius:5px;font-weight:700;font-size:17px;text-decoration:none;transition:background .2s}.button--red{background:var(--red);color:white}.button--red:hover{background:#971b23}.button span,.text-link span{font-size:23px;line-height:1}.text-link{display:inline-flex;gap:20px;align-items:center;min-height:44px;text-underline-offset:6px;font-weight:600}.text-link:hover{text-decoration-thickness:2px}.site-header{position:sticky;top:0;z-index:20;background:var(--green);color:white}.nav{display:flex;align-items:center;gap:30px;height:96px}.brand{background:#fff;display:block;padding:5px 13px;border-radius:0 0 8px 8px;align-self:flex-start}.brand img{width:103px;height:65px;object-fit:contain}.desktop-nav{display:flex;gap:28px;align-items:center;margin-left:auto}.desktop-nav a{font-size:15px;text-decoration:none;font-weight:600;padding-block:15px}.desktop-nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav-order{font-size:15px;min-height:46px;padding:10px 20px;gap:12px}.mobile-nav{display:none}
.hero{background:var(--yellow);overflow:hidden}.hero__layout{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;min-height:660px;gap:36px}.hero__copy{padding-block:52px;z-index:1}.hero h1{font-size:clamp(64px,6.65vw,96px);line-height:.95;color:var(--green)}.hero h1>span:not(.visually-hidden){color:var(--ink)}.hero__copy>p{font-size:18px;margin-top:25px;line-height:1.45}.hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:30px}.hero__actions .text-link{font-size:16px;gap:12px}.hero__visual{position:relative;align-self:stretch;display:flex;align-items:center;min-width:0}.hero__pizza{width:calc(100% + 55px);max-width:none;aspect-ratio:1;object-fit:cover;border-radius:50%;transform:rotate(-9deg);box-shadow:0 18px 24px #45370826}.hero__note{background:var(--yellow);padding:4px 10px;position:absolute;bottom:25px;left:12%;display:flex;align-items:center;gap:16px;font-family:var(--display);font-size:22px;font-weight:600;transform:rotate(-5deg)}.hero__note span{font-size:40px}.hero__location{background:var(--yellow);padding:6px 10px;position:absolute;right:0;top:27px;font-size:14px;text-decoration:none;line-height:1.35;text-align:right}.hero__location>span{display:block;font-size:18px;font-weight:700}.food-nav{background:var(--green);color:var(--yellow)}.food-nav .shell{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:24px}.food-nav a{display:flex;align-items:center;gap:35px;text-decoration:none;font-family:var(--display);font-weight:700;font-size:32px;line-height:1.1;min-height:44px}.food-nav a:hover{text-decoration:underline;text-underline-offset:7px}.food-nav .shell>span{font-size:27px}.food-nav a span{font-family:var(--body);font-size:22px}
.menu-section{padding-block:88px 96px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:38px}.section-heading>div,.section-heading>p{max-width:420px}.section-heading p{margin-bottom:12px;font-size:18px}.pizza-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:28px;align-items:start}.dish--featured{grid-row:span 2;height:100%;display:flex;flex-direction:column}.dish__photo{display:block;position:relative;overflow:hidden;background:#e3e1df;isolation:isolate}.dish__photo img{width:100%;aspect-ratio:2/1;object-fit:cover;transition:transform .4s cubic-bezier(.16,1,.3,1)}.dish--featured .dish__photo{flex:1}.dish--featured img{height:100%;aspect-ratio:1;object-fit:cover}.dish__photo:hover img{transform:scale(1.035)}.dish__zoom{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#fff;color:var(--green);font-size:24px}.dish figcaption{font-family:var(--display);font-size:26px;font-weight:700;padding-top:10px;line-height:1.15}.sides-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:36px}.sides-grid .dish__photo img{aspect-ratio:1.2}.story{background:var(--green);color:#fff;padding-block:88px}.story__layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.story h2 span{color:var(--yellow)}.story__intro img{margin-top:36px;width:100%;aspect-ratio:1.78;object-fit:cover}.story__copy{padding-top:4px;font-size:18px;line-height:1.65}.story__copy>p+p{margin-top:22px}.story blockquote{border-top:1px solid #ffffff55;margin-top:32px;padding-top:26px;color:var(--yellow);font-family:var(--display);font-size:28px;line-height:1.2;font-weight:600}.menu-callout{padding-block:52px;background:var(--yellow)}.menu-callout .shell{display:flex;align-items:center;justify-content:space-between;gap:48px}.menu-callout h2{font-size:60px}.menu-callout h2 span{color:var(--green)}.menu-callout .shell>div{display:flex;align-items:flex-start;flex-direction:column;gap:12px}.visit{padding-block:90px}.visit__grid{display:grid;grid-template-columns:.85fr 1fr 1.05fr;gap:48px}.hours dl{margin:22px 0 0}.hours dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line)}.hours dt{font-weight:600}.hours dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.delivery>p{margin-top:20px}.postal-codes{display:flex;list-style:none;gap:16px;margin:22px 0 32px;padding:0;font-weight:700;color:var(--green);font-size:22px;font-family:var(--display)}#contact{scroll-margin-top:125px}address{font-style:normal;margin:16px 0 12px}.map{width:100%;height:100%;min-height:350px;border:0;background:#eef0eb}.footer{background:var(--deep-green);color:#fff;padding-block:54px 26px}.footer__top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;align-items:center}.footer__brand{font-family:var(--display);font-size:60px;line-height:.85;letter-spacing:-.02em;text-decoration:none;font-weight:800;color:var(--yellow);width:fit-content}.footer__brand span{display:block;color:white}.footer__top>p{font-size:22px;font-family:var(--display);font-weight:600}.footer__top>div{justify-self:end;display:flex;flex-direction:column;gap:8px}.footer__top>div a{font-size:15px;min-height:32px;text-underline-offset:5px}.footer__bottom{display:flex;justify-content:space-between;gap:24px;margin-top:44px;padding-top:22px;border-top:1px solid #ffffff44;font-size:13px}.mobile-actions{display:none}
.lightbox{position:fixed;padding:16px 24px;border:0;background:var(--deep-green);color:#fff;width:min(920px,94vw);max-height:94dvh;border-radius:10px}.lightbox::backdrop{background:#031e19dd}.lightbox__toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:12px}.lightbox__toolbar p{font-size:22px;font-family:var(--display);font-weight:700}.lightbox button{border:0;background:transparent;color:white;min-height:44px;padding:8px 12px}.lightbox button:hover{background:#ffffff22}.lightbox button:focus-visible{outline-color:var(--yellow)}.lightbox__close{font-size:32px;line-height:1;width:44px}.lightbox__image{width:100%;max-height:68dvh;object-fit:contain;aspect-ratio:1.25}.lightbox__controls{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px}.lightbox__count{font-size:14px}
@media(min-width:1450px){.hero__layout{min-height:730px}.hero__note{bottom:28px}}
@media(max-width:1100px){.shell{width:calc(100% - 64px)}.desktop-nav{gap:18px}.desktop-nav a{font-size:14px}.nav{gap:20px}.hero__layout{min-height:590px;gap:24px}.hero h1{font-size:76px}.hero__pizza{width:calc(100% + 30px)}.hero__actions{align-items:flex-start;flex-direction:column;gap:8px}.hero__note{bottom:30px;left:6%;font-size:20px}.visit__grid{grid-template-columns:1fr 1fr}.map{grid-column:1/-1;height:260px;min-height:0}.story__layout{gap:48px}}
@media(max-width:800px){html{scroll-padding-top:96px}.shell{width:calc(100% - 40px)}.nav{height:78px;gap:16px}.brand{padding:4px 9px}.brand img{width:85px;height:54px}.desktop-nav{display:none}.nav-order{margin-left:auto;font-size:14px;min-height:44px;padding:10px 15px}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;list-style:none;display:flex;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:5px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{width:23px;height:2px;background:white}.mobile-nav nav{position:absolute;left:0;right:0;top:78px;background:var(--deep-green);padding:16px 20px 24px;border-top:1px solid #ffffff33;display:flex;flex-direction:column}.mobile-nav nav a{padding:12px 8px;text-decoration:none;font-weight:600}.hero__layout{grid-template-columns:1fr 1fr;gap:15px;min-height:520px}.hero h1{font-size:64px}.hero__copy{padding-block:36px}.hero__copy>p{font-size:16px}.hero__visual{align-items:center}.hero__pizza{width:calc(100% + 45px)}.hero__location{top:20px;font-size:12px}.hero__note{bottom:42px;left:2%;font-size:18px}.food-nav .shell{gap:12px;padding-block:14px}.food-nav a{font-size:25px;gap:16px}.food-nav .shell>span{font-size:20px}.section-heading{gap:30px;align-items:center}.section-heading h2{font-size:54px}.section-heading p{font-size:16px}.menu-section{padding-block:56px}.pizza-grid,.sides-grid{gap:18px}.dish figcaption{font-size:23px}.story{padding-block:56px}.story__layout{gap:32px}.story__copy{font-size:16px}.story blockquote{font-size:24px}.menu-callout h2{font-size:48px}.menu-callout .shell{gap:32px}.visit{padding-block:56px}.visit__grid{gap:32px}.footer__top{gap:24px}.footer__brand{font-size:50px}}
@media(max-width:600px){body{font-size:16px}.hero__layout{grid-template-columns:1fr;gap:0}.hero__copy{padding:26px 0 12px}.hero h1{font-size:clamp(42px,11vw,58px);line-height:.94}.hero h1 br:first-of-type{display:none}.hero h1>span:not(.visually-hidden){display:block}.hero h1>span:not(.visually-hidden) br{display:none}.hero__copy>p{margin-top:16px}.hero__actions{flex-direction:row;align-items:center;gap:10px 12px;margin-top:20px}.hero__actions .button{min-height:50px;padding:12px 16px;font-size:15px;gap:14px}.hero__actions .text-link{font-size:14px;gap:8px}.hero__visual{height:286px;display:block}.hero__pizza{position:absolute;width:310px;right:-18px;top:0}.hero__location{top:auto;bottom:17px;left:0;right:auto;text-align:left;background:var(--yellow);padding:8px 10px 8px 0;z-index:2;font-size:12px}.hero__location>span{font-size:17px}.hero__note{top:24px;bottom:auto;left:0;z-index:1;font-size:17px;transform:rotate(-7deg);flex-direction:column;gap:0;align-items:flex-start;max-width:115px;line-height:1}.hero__note span{transform:rotate(90deg);margin-left:20px;font-size:36px}.food-nav .shell{gap:7px}.food-nav a{font-size:21px;gap:8px;min-height:40px}.food-nav a span{display:none}.food-nav .shell>span{font-size:17px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:52px}.section-heading>div,.section-heading>p{margin-top:20px}.section-heading p{margin-bottom:8px}.desktop-break{display:none}.pizza-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.dish--featured{grid-column:1/-1;grid-row:auto}.dish--featured .dish__photo img{aspect-ratio:1.1;height:auto}.dish__photo img{aspect-ratio:1;object-fit:cover}.dish figcaption{font-size:22px;padding-top:10px}.dish__zoom{width:34px;height:34px;right:10px;bottom:10px;font-size:21px}.sides-grid{grid-template-columns:1fr 1fr;gap:24px 14px;margin-top:24px}.sides-grid .dish:first-child{grid-column:1/-1}.sides-grid .dish:first-child img{aspect-ratio:1.6}.sides-grid .dish__photo img{aspect-ratio:1}.story__layout{grid-template-columns:1fr;gap:30px}.story h2{font-size:56px}.story h2 span br{display:none}.story__intro img{margin-top:28px}.story__copy{font-size:17px}.story blockquote{font-size:26px}.menu-callout .shell{display:block}.menu-callout h2{font-size:50px}.menu-callout .shell>div{margin-top:28px}.visit__grid{grid-template-columns:1fr;gap:38px}.visit .section-heading{margin-bottom:30px}.hours dl{margin-top:15px}.hours dl>div{padding:12px 0}.delivery>p{margin-top:14px}.map{grid-column:auto;height:280px}.footer{padding-bottom:96px}.footer__top{grid-template-columns:1fr 1fr;gap:30px}.footer__top>div{grid-column:1/-1;justify-self:start;flex-direction:row;flex-wrap:wrap;gap:8px 24px}.footer__top>p{font-size:20px}.footer__bottom{margin-top:24px;display:block;font-size:12px}.footer__bottom>span{display:block;margin-top:5px}.mobile-actions{display:flex;position:fixed;z-index:25;left:0;right:0;bottom:0;background:var(--deep-green);padding-bottom:env(safe-area-inset-bottom)}.mobile-actions>a{display:flex;justify-content:center;align-items:center;min-height:56px;text-decoration:none;font-weight:700;width:36%;color:white}.mobile-actions .mobile-actions__order{background:var(--red);width:64%;gap:36px}.lightbox{padding:12px}.lightbox__toolbar p{font-size:20px}.lightbox__controls button{font-size:14px;padding:8px}.lightbox__image{max-height:65dvh}.lightbox__count{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Keep the two secondary pizzas aligned with the full featured photograph. */
@media(min-width:601px){.pizza-grid>.dish{display:flex;flex-direction:column;height:100%}.pizza-grid .dish__photo{flex:1;min-height:0}.pizza-grid .dish--featured .dish__photo{aspect-ratio:1.07}.pizza-grid .dish__photo img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto}}
.footer{background:#fff;color:var(--green);border-top:1px solid var(--line)}.footer__brand,.footer__brand span{color:var(--green)}.footer__bottom{border-color:var(--line)}.footer :focus-visible{outline-color:var(--red)}

/* SVG icons never use platform emoji fonts. Keep their size tied to existing text. */
.icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex:none;overflow:visible}

/* Client-supplied promotional posters remain uncropped and expandable. */
.deals{padding-block:80px 88px;background:#fff9e5;border-top:1px solid var(--line)}
.deals-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 40px}
.deal{min-width:0;border:1px solid var(--green);border-radius:14px;padding:24px;background:var(--paper)}.deal__poster{display:block;position:relative}.deal__poster img{width:100%;height:auto}.deal__enlarge{display:flex;justify-content:flex-end;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.deal__heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:12px 0}.deal h3{font-size:34px}.deal__price{white-space:nowrap;font-size:15px}.deal__price strong{font-family:var(--display);font-size:36px;color:var(--red)}.deal>p{max-width:65ch}.deal>.text-link{margin-top:14px}.section-heading h2{flex:1}.section-heading>div,.section-heading>p{flex:1}
@media(max-width:1100px) and (min-width:801px){.desktop-nav{gap:12px}.nav{gap:14px}.desktop-nav a{font-size:13px}.nav-order{padding-inline:14px}}
@media(max-width:600px){.deals{padding-block:48px 56px}.deals-grid{grid-template-columns:1fr;gap:32px}.deal{padding:16px}.deal__heading{flex-wrap:wrap;row-gap:6px}.deal h3{font-size:30px}.deal__heading{gap:14px}.deal__price strong{font-size:32px}}

@media(max-width:600px){#menu-title{font-size:clamp(42px,13.33vw,52px)}}
