@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Oswald:wght@500;600;700&display=swap');
:root{--red:#ac2a18;--dark:#261b16;--cream:#f5ede0;--paper:#faf6ed;--line:#dacfc0;--sans:'DM Sans',Arial,sans-serif;--display:'Oswald','Arial Narrow',Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--dark);font-family:var(--sans);font-size:16px}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}.wrap{width:min(100% - 64px,1380px);margin-inline:auto}.skip{position:absolute;left:12px;top:-60px;z-index:100;background:#fff;padding:10px}.skip:focus{top:10px}.site-header{height:88px;display:flex;align-items:center;gap:32px;padding:0 4.1%;background:var(--paper);position:relative;z-index:30}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-mark{width:45px;height:45px;background:var(--red);color:#fff;display:grid;place-items:center;font:700 22px var(--display);letter-spacing:-2px;transform:rotate(-5deg)}.brand-dot{color:#ffcc8c}.brand-name{font:700 21px/1 var(--display);letter-spacing:.04em}.brand-name small{display:block;font:700 8px/1.8 var(--sans);letter-spacing:.18em;margin-top:4px}.desktop-nav{display:flex;gap:36px;margin:auto;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.desktop-nav a,.footer-bottom a{transition:color .2s}.desktop-nav a:hover,.footer-bottom a:hover{color:var(--red)}.header-contact{background:var(--red);color:white;padding:15px 23px;text-transform:uppercase;font-weight:800;font-size:12px;letter-spacing:.08em;display:flex;gap:28px;align-items:center;transition:background .2s,transform .2s}.header-contact:hover{background:#7e1d11;transform:translateY(-2px)}.menu-toggle,.mobile-nav{display:none}.hero{min-height:min(760px,calc(100svh - 88px));height:calc(100svh - 88px);position:relative;display:flex;align-items:center;background:#36221d;color:#fff;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center 55%;animation:hero-in 1.2s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(20,12,8,.88) 0%,rgba(25,14,9,.65) 38%,rgba(25,14,9,.1) 78%),linear-gradient(0deg,rgba(20,12,8,.46),transparent 35%)}.hero-content{position:relative;z-index:1;padding-bottom:35px}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 26px}.hero-eyebrow{display:flex;align-items:center;gap:12px}.eyebrow-line{display:block;background:#fff;width:32px;height:1px}.hero h1{font:700 clamp(5.5rem,11vw,11.5rem)/.91 var(--display);letter-spacing:-.045em;text-transform:uppercase;margin:0;max-width:1000px}.hero h1 em,section h2 em{font-style:normal;color:#eec28a}.period{color:#e04825}.hero-sub{font-size:clamp(18px,2vw,24px);font-weight:600;max-width:550px;line-height:1.42;margin:32px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:56px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 22px;text-transform:uppercase;font-weight:800;font-size:12px;letter-spacing:.08em;transition:transform .25s,background .25s,color .25s}.button:hover{transform:translateY(-3px)}.button-cream{background:var(--cream);color:var(--dark)}.button-cream:hover{background:#fff}.button-outline{border:1px solid rgba(255,255,255,.75);color:#fff}.button-outline:hover{background:white;color:var(--dark)}.section-pad{padding:120px 0}.story{background:var(--paper)}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.red{color:var(--red)}section h2{font:600 clamp(3.4rem,6.3vw,7rem)/1.03 var(--display);text-transform:uppercase;letter-spacing:-.035em;margin:0 0 32px}section h2 em{color:var(--red)}.story-copy{max-width:580px}.story-copy p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:490px;color:#62534a}.story-copy .story-lead{font-size:23px!important;font-weight:700;line-height:1.4!important;color:var(--dark)!important}.text-link{font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--red);display:inline-block;border-bottom:2px solid var(--red);padding:11px 0;margin-top:24px}.story-visual{position:relative;padding:0 42px 28px 0}.story-photo{aspect-ratio:4/5;overflow:hidden;background:#dbc7a6}.story-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.story-photo:hover img{transform:scale(1.04)}.gallery{background:#e9ddcc}.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:44px}.section-heading h2{margin-bottom:0}.section-heading p:last-child{max-width:310px;line-height:1.65;font-weight:600;color:#615047;margin-bottom:4px}.gallery-grid{display:grid;grid-template-columns:1.2fr .85fr .85fr;grid-template-rows:320px 320px;gap:14px}.gallery-tile{border:0;padding:0;position:relative;overflow:hidden;cursor:zoom-in;background:#b79b79;color:#fff;text-align:left}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .4s}.gallery-tile:hover img{transform:scale(1.06);filter:brightness(.9)}.gallery-tile:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}.gallery-tile span{position:absolute;z-index:2;bottom:22px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;font:600 19px var(--display);letter-spacing:.06em}.tile-a{grid-row:span 2}.tile-b{grid-column:span 2}.tile-c img{object-position:center 70%}.tile-d img{object-position:center 55%}.locations{background:#30211b;color:#fff}.locations-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:50px}.locations-intro h2{margin-bottom:0}.locations-intro h2 em{color:#ebb474}.locations-intro>p{max-width:320px;line-height:1.7;color:#d0bfb0;font-weight:500}.location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.location-card{background:var(--paper);color:var(--dark)}.location-photo{height:290px;position:relative;overflow:hidden;background:#675448}.location-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.location-card:hover img{transform:scale(1.04)}.location-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.35),transparent 55%)}.location-photo span{position:absolute;z-index:1;bottom:19px;left:24px;color:#fff;font-weight:800;font-size:12px;letter-spacing:.14em}.location-body{padding:26px 28px 28px}.location-body h3{font:600 clamp(2rem,3vw,3rem)/1.1 var(--display);text-transform:uppercase;margin:0 0 8px}.location-body p{margin:0 0 25px;color:#6e5f55;font-size:15px}.location-actions{display:flex;border-top:1px solid var(--line);padding-top:20px;gap:12px}.location-actions a{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.03em;min-height:44px}.location-actions a:first-child{background:var(--red);color:#fff}.location-actions a:last-child{border:1px solid #c8b6a4}.location-actions a:hover{filter:brightness(.88)}.final-cta{background:var(--red);color:#fff;text-align:center;padding:100px 0 110px}.final-cta h2{margin:0 auto 34px;max-width:1000px}.final-cta h2 em{color:#f4bf83}.final-cta .button{min-width:280px}footer{background:#1f1713;color:#fff;padding:70px 0 26px}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:30px;padding-bottom:80px}.footer-brand{font:600 clamp(3rem,6vw,6rem)/1 var(--display);text-transform:uppercase;letter-spacing:-.04em}.footer-brand span{color:#e3472e}.footer-top p{font-size:17px;line-height:1.5;margin:5px 0}.footer-top>a:last-child{border-bottom:1px solid #a69385;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.1em;padding:10px 0}.footer-bottom{border-top:1px solid #584a40;padding-top:22px;display:flex;justify-content:space-between;gap:15px;color:#aa9b90;font-size:11px;font-weight:700;letter-spacing:.1em}.whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:40;background:#25d366;color:#123b25;border:3px solid white;border-radius:50px;box-shadow:0 8px 24px #0004;display:flex;align-items:center;gap:9px;padding:13px 19px;font-weight:800;font-size:13px;transition:transform .2s}.whatsapp-float:hover{transform:translateY(-4px)}.whatsapp-float svg{height:25px;width:25px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}dialog{padding:0;border:0;background:#15110f;color:white;max-width:min(1100px,94vw);max-height:92vh;box-shadow:0 20px 80px #0008}dialog::backdrop{background:#000d}dialog img{max-height:88vh;max-width:94vw;object-fit:contain}.lightbox-close{position:absolute;right:8px;top:8px;background:#17110fcc;color:#fff;border:0;width:44px;height:44px;font-size:30px;cursor:pointer}.lightbox-hint{position:absolute;bottom:10px;right:15px;font-size:10px;letter-spacing:.1em;background:#17110fcc;padding:7px}a:focus-visible,button:focus-visible{outline:3px solid #f7b866;outline-offset:3px}@keyframes hero-in{from{transform:scale(1.06);opacity:.7}to{transform:scale(1);opacity:1}}
@media(max-width:900px){.site-header{height:72px;padding:0 24px}.desktop-nav,.header-contact{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:none;width:45px;height:45px;margin-left:auto;cursor:pointer}.menu-toggle span{height:2px;width:26px;background:var(--dark);display:block}.mobile-nav:not([hidden]){display:flex;position:absolute;z-index:29;left:0;right:0;top:72px;background:var(--paper);padding:12px 24px 25px;flex-direction:column;box-shadow:0 12px 20px #0002}.mobile-nav a{font-weight:800;text-transform:uppercase;padding:15px 0;border-top:1px solid var(--line)}.hero{height:690px;min-height:0}.hero h1{font-size:clamp(5rem,12vw,8rem)}.story-grid{gap:6%}.section-pad{padding:85px 0}.gallery-grid{grid-template-rows:250px 250px}.locations-intro h2{font-size:clamp(3rem,6vw,5rem)}}
@media(max-width:650px){.wrap{width:min(100% - 36px,1380px)}.brand-name{font-size:19px}.brand-mark{width:42px;height:42px}.hero{height:min(760px,calc(100svh - 72px));min-height:620px;align-items:end}.hero-image{object-position:57% center}.hero-shade{background:linear-gradient(0deg,rgba(22,13,10,.93),rgba(22,13,10,.55) 58%,rgba(22,13,10,.12))}.hero-content{padding-bottom:95px}.hero h1{font-size:clamp(4.25rem,16vw,6.8rem)}.hero-sub{font-size:18px;margin:25px 0}.hero-actions{flex-direction:column;align-items:stretch}.button{min-height:54px}.eyebrow{font-size:11px}.section-pad{padding:75px 0}.story-grid{grid-template-columns:1fr;gap:55px}.story-copy .story-lead{font-size:21px!important}.story-visual{padding-right:25px}.story-photo{aspect-ratio:1.06}.section-heading,.locations-intro{display:block}.section-heading p:last-child,.locations-intro>p{max-width:500px;margin-top:24px}section h2{font-size:clamp(3.1rem,12vw,5rem)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:280px 190px 210px;gap:9px}.tile-a{grid-row:1;grid-column:span 2}.tile-b{grid-row:2;grid-column:1;grid-column:auto}.tile-c{grid-row:2;grid-column:2}.tile-d,.tile-e{grid-row:3}.gallery-tile span{font-size:14px;bottom:12px;left:12px;right:12px}.location-grid{grid-template-columns:1fr;gap:16px}.location-photo{height:240px}.location-body{padding:22px}.location-body h3{font-size:2.2rem}.location-actions{flex-wrap:wrap}.location-actions a{flex:1;white-space:nowrap;padding:13px 10px;font-size:11px}.final-cta{padding:75px 0}.footer-top{display:block;padding-bottom:40px}.footer-top p{margin:24px 0}.footer-bottom{flex-wrap:wrap;line-height:1.7}.footer-bottom span:nth-child(2){display:none}.whatsapp-float{right:14px;bottom:14px;padding:13px;border-width:2px}.whatsapp-float span{display:none}.whatsapp-float svg{width:29px;height:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
/* Extended photo story */
@media(min-width:651px){.gallery-grid{grid-template-rows:320px 320px 320px 340px}.tile-h{grid-column:span 3}.tile-h img{object-position:center 62%}}
@media(max-width:650px){.gallery-grid{grid-template-rows:280px 190px 210px 210px 210px}.tile-f,.tile-g{grid-row:4}.tile-f{grid-column:1}.tile-g{grid-column:2}.tile-h{grid-row:5;grid-column:span 2}}
/* Wide view of the newly supplied pizza counter photo. */
.story-photo{aspect-ratio:1.18}
@media(max-width:650px){.story-photo{aspect-ratio:1.28}}
/* Clear actions and quieter image presentation across viewports. */
.button{justify-content:center;text-align:center;gap:0;font-size:13px;letter-spacing:.045em}
.header-contact{justify-content:center;gap:0;min-width:114px}
.text-link{font-size:13px;letter-spacing:.045em}
.story-visual{padding:0}
.story-photo{aspect-ratio:1.18}
.gallery-tile span{display:block;font-size:17px;letter-spacing:.035em}
.location-actions a{letter-spacing:.02em}
@media(max-width:650px){
 .hero-content{padding-bottom:58px}
 .button{font-size:13px;min-height:56px;padding-inline:16px}
 .story-photo{aspect-ratio:1.28}
 .gallery-tile span{font-size:14px;line-height:1.2}
 .location-actions{gap:8px}
 .location-actions a{white-space:normal;line-height:1.25;text-align:center}
}
@media(max-width:410px){.location-actions{flex-direction:column}.location-actions a{width:100%}}
/* Photography-first gallery: even grid, no image captions or dark overlays. */
.gallery .section-heading{display:block;margin-bottom:36px}
.gallery .section-heading h2{margin-bottom:0}
.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:12px}
.gallery-grid .gallery-tile{grid-column:auto;grid-row:auto;aspect-ratio:1/1}
.gallery-tile:after{display:none}
.gallery-tile:hover img{filter:none;transform:scale(1.035)}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;gap:10px}}
@media(max-width:650px){.gallery .section-heading{margin-bottom:27px}.gallery-grid{grid-template-rows:none;gap:8px}}
/* WhatsApp is a secondary action in the opening section. */
.hero-whatsapp{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-height:44px;padding:10px 12px;font-size:14px;font-weight:500;letter-spacing:0;text-transform:none;color:#fff;text-decoration:underline;text-decoration-color:#ffffff80;text-underline-offset:5px;transition:text-decoration-color .2s}
.hero-whatsapp:hover{text-decoration-color:#fff}
/* Supplied brand artwork replaces the temporary letter mark. */
.brand-logo{width:64px;height:64px;object-fit:contain;flex-shrink:0}
@media(max-width:650px){.site-header{column-gap:16px}.brand{gap:8px}.brand-logo{width:48px;height:48px}.brand-name{font-size:18px}}
