:root{--navy:#171717;--yellow:#f7b916;--orange:#b77d00;--ink:#171717;--muted:#65707a;--paper:#fffdf8;--warm:#f6f1e7;--line:#deddd7;--max:1120px;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}img{display:block;width:100%;height:auto}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:8px;top:8px;z-index:1000;background:#fff;padding:9px 14px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,248,.96);border-bottom:1px solid rgba(23,23,23,.12);backdrop-filter:blur(12px)}.nav-shell{max-width:var(--max);height:72px;margin:auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;flex-direction:column;text-align:center;text-decoration:none;color:var(--navy);font-size:23px;font-weight:900;line-height:.8;letter-spacing:-1px}.brand small{text-transform:uppercase;font-size:8px;letter-spacing:5px;margin:6px 0 0 5px}.site-nav{display:flex;align-items:center;gap:28px}.site-nav>a:not(.button){text-decoration:none;font-size:14px;font-weight:800}.menu-toggle{display:none;width:44px;height:44px;border:0;background:transparent}.menu-toggle span:not(.sr-only){display:block;width:22px;height:2px;background:var(--navy);margin:6px auto}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border:2px solid var(--navy);border-radius:13px;background:var(--navy);color:#fff;text-decoration:none;font-weight:900;box-shadow:4px 4px 0 var(--yellow);transition:transform .2s}.button:hover{transform:translateY(-2px)}.button-small{min-height:40px;padding:9px 16px;font-size:14px}.button-outline{background:transparent;color:var(--navy);box-shadow:none}.button-yellow{background:var(--yellow);border-color:var(--yellow);color:var(--navy);box-shadow:4px 4px 0 #fff}a:focus-visible,button:focus-visible{outline:3px solid #2878d1;outline-offset:4px}.hero{max-width:var(--max);min-height:610px;margin:auto;padding:46px 20px 62px;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}.location,.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:1.8px;font-size:12px;font-weight:900}.location{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid #ccd1d6;border-radius:999px;color:var(--navy)}.location span,.eyebrow{color:var(--orange)}h1,h2{margin:0;color:var(--navy);font-weight:900;line-height:.96;letter-spacing:-3.5px}.hero h1{font-size:clamp(50px,7vw,82px)}.hero h1 em{color:var(--orange);font-style:normal}.hero-copy>p:not(.location){max-width:560px;margin:22px 0;color:var(--muted);font-size:19px}.actions{display:flex;gap:13px;flex-wrap:wrap}.hero-copy>small{display:block;margin-top:23px;color:var(--muted);font-weight:700}.hero-image{position:relative;min-height:475px;border-radius:36% 36% 20px 20px;overflow:hidden;box-shadow:12px 12px 0 var(--yellow)}.hero-image img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-image span{position:absolute;left:16px;bottom:16px;background:#fff;padding:8px 12px;border-radius:8px;color:var(--navy);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px}.menu-section{background:var(--warm);padding:82px max(20px,calc((100vw - var(--max))/2 + 20px))}.section-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px 50px;margin-bottom:30px}.section-head .eyebrow{grid-column:1/-1}.section-head h2{font-size:clamp(40px,5vw,62px)}.section-head>p:not(.eyebrow){max-width:360px;margin:0;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.menu-card{position:relative;min-height:180px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--navy);text-decoration:none;display:flex;overflow:hidden;transition:transform .2s}.menu-card:hover{transform:translateY(-3px)}.menu-card.yellow{background:var(--yellow)}.menu-card.navy{background:var(--navy);color:#fff}.menu-card.warm{background:#e5d5be}.menu-card span{position:relative;z-index:2;margin-top:auto}.menu-card b,.menu-card small{display:block}.menu-card b{font-size:23px;line-height:1.05}.menu-card small{margin-top:6px;opacity:.72}.photo-card{color:#fff;grid-row:span 2;min-height:372px}.photo-card::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(23,23,23,.9))}.photo-card img{position:absolute;inset:0;height:100%;object-fit:cover}.catering{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff;min-height:570px}.catering-image{min-height:480px}.catering-image img{height:100%;object-fit:cover}.catering-copy{align-self:center;padding:65px max(24px,calc((100vw - var(--max))/2 + 20px)) 65px 58px}.catering h2{color:#fff;font-size:clamp(40px,5vw,62px)}.catering-copy>p:not(.eyebrow){max-width:540px;margin:22px 0 28px;color:#d7d7d2;font-size:17px}.find-us{max-width:var(--max);margin:auto;padding:82px 20px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.find-us h2{font-size:clamp(40px,5vw,62px)}.find-us address{font-style:normal;margin-top:23px;color:var(--muted);font-size:18px}.find-us address strong{color:var(--navy)}.details{background:var(--warm);border-radius:var(--radius);padding:27px}.details>div:not(.quick-links){padding:12px 0 20px;border-bottom:1px solid var(--line);margin-bottom:8px}.details small,.details strong,.details span{display:block}.details small{text-transform:uppercase;letter-spacing:1.4px;color:var(--orange);font-weight:900}.details strong,.details>div>a{font-size:24px;font-weight:900;color:var(--navy)}.quick-links{display:flex;flex-wrap:wrap;gap:8px;padding-top:12px}.quick-links a{min-height:43px;display:inline-flex;align-items:center;padding:9px 13px;border:1px solid var(--navy);border-radius:10px;color:var(--navy);font-size:13px;font-weight:900}.order-link[data-pending="true"]{cursor:not-allowed;opacity:.62}.mobile-order{display:none}footer{max-width:var(--max);margin:auto;padding:34px 20px;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line)}footer p,footer>small{color:var(--muted);font-size:13px}
@media(max-width:820px){.site-nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:18px 20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.site-nav.is-open{display:flex}.site-nav>a{min-height:46px;display:flex;align-items:center}.menu-toggle{display:block}.hero{grid-template-columns:1fr;gap:32px}.hero-image{min-height:500px;max-width:600px}.section-head{grid-template-columns:1fr}.menu-grid{grid-template-columns:1fr 1fr}.catering{grid-template-columns:1fr}.catering-image{max-height:520px}.catering-copy{padding:60px 28px}.find-us{grid-template-columns:1fr;gap:35px}}
@media(max-width:540px){body{padding-bottom:70px}.hero{min-height:auto;padding:31px 18px 48px}.hero h1{font-size:48px;letter-spacing:-2.8px}.hero-copy>p:not(.location){font-size:16px;margin:18px 0}.actions{display:grid;grid-template-columns:1fr 1fr}.actions .button{padding-inline:10px}.hero-image{min-height:330px;border-radius:30% 30% 17px 17px;box-shadow:8px 8px 0 var(--yellow)}.menu-section{padding:65px 18px}.section-head h2,.catering h2,.find-us h2{font-size:40px;letter-spacing:-2.3px}.menu-grid{grid-template-columns:1fr}.menu-card,.photo-card{min-height:150px;grid-row:auto}.photo-card{min-height:310px}.catering-image{min-height:340px}.catering-copy{padding:55px 18px}.find-us{padding:65px 18px}.details{padding:22px 18px}.mobile-order{display:block;position:fixed;left:9px;right:9px;bottom:7px;z-index:110}.mobile-order a{min-height:57px;display:grid;grid-template-columns:1fr auto;background:var(--yellow);color:var(--navy);border:2px solid var(--navy);border-radius:14px;padding:7px 15px;text-decoration:none;box-shadow:0 5px 18px rgba(0,0,0,.2)}.mobile-order span,.mobile-order small{display:block;grid-column:1}.mobile-order span{font-weight:900}.mobile-order small{font-size:11px}.mobile-order b{grid-column:2;grid-row:1/3;align-self:center;font-size:21px}footer{padding:30px 18px;align-items:flex-start;flex-direction:column}.button{min-height:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* Refined brand and contact treatments */
.brand{position:relative;padding-bottom:5px;font-family:Arial Black,Arial,sans-serif;font-size:22px;line-height:.82;letter-spacing:-.8px}
.brand::after{content:"";position:absolute;left:50%;bottom:0;width:34px;height:2px;background:var(--yellow);transform:translateX(-50%)}
.brand small{color:#9a6b00;font-family:Arial,"Helvetica Neue",sans-serif;font-size:8px;letter-spacing:5.8px;margin-top:7px}
.quick-links{gap:10px;padding-top:15px}
.quick-links a{min-height:46px;padding:10px 16px;border:2px solid var(--navy);border-radius:999px;transition:transform .2s,background .2s}
.quick-links a:hover{transform:translateY(-2px)}
.quick-links .directions{background:var(--navy);color:#fff}
.quick-links .call{background:var(--yellow);color:var(--navy);border-color:var(--yellow)}
.quick-links .whatsapp{background:#fff}
.quick-links .order-link{background:var(--navy);color:#fff}
.details{padding:31px}
.hero{gap:56px;padding-top:52px;padding-bottom:68px}
.hero-image{border-radius:28px;box-shadow:10px 10px 0 var(--yellow)}
.menu-section{padding-top:76px;padding-bottom:76px}
.find-us{padding-top:76px;padding-bottom:76px}
@media(max-width:540px){.details{padding:23px 18px}.quick-links a{flex:1 1 calc(50% - 5px);justify-content:center;padding-inline:10px}.hero{gap:27px}.hero-image{border-radius:20px}}
.image-card{color:#fff;padding:0;min-height:180px}
.image-card::after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(23,23,23,.88))}
.image-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.image-card span{padding:22px}
/* Integrated storefront hero */
.hero{position:relative;max-width:none;min-height:570px;padding:78px max(20px,calc((100vw - var(--max))/2 + 20px));display:flex;align-items:center;overflow:hidden;background:#171717}
.hero-copy{position:relative;z-index:3;max-width:650px;color:#fff}
.hero h1{color:#fff;font-size:clamp(52px,7vw,86px);text-shadow:0 2px 24px rgba(0,0,0,.22)}
.hero h1 em{color:var(--yellow)}
.hero-copy>p:not(.location){color:#f0eee9;max-width:540px}
.hero-copy>small{color:#ddd9d0}
.hero .location{color:#fff;border-color:rgba(255,255,255,.5);background:rgba(0,0,0,.3);backdrop-filter:blur(7px)}
.hero .location span{color:var(--yellow)}
.hero .button-outline{color:#fff;border-color:#fff;background:rgba(0,0,0,.18)}
.hero-image{position:absolute;z-index:1;inset:0;min-height:0;border-radius:0;box-shadow:none}
.hero-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,10,10,.93) 0%,rgba(10,10,10,.78) 38%,rgba(10,10,10,.26) 72%,rgba(10,10,10,.1) 100%)}
.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-image span{z-index:2;left:auto;right:max(20px,calc((100vw - var(--max))/2 + 20px));bottom:22px;background:rgba(255,255,255,.92)}
@media(max-width:820px){.hero{display:flex;min-height:550px;padding-top:62px;padding-bottom:62px}.hero-copy{max-width:590px}.hero-image{max-width:none}.hero-image::after{background:linear-gradient(90deg,rgba(10,10,10,.9),rgba(10,10,10,.55))}}
@media(max-width:540px){.hero{min-height:510px;padding:54px 18px}.hero h1{font-size:47px}.hero-copy>p:not(.location){color:#f3f0ea}.hero .actions{grid-template-columns:1fr 1fr}.hero-image{min-height:0;border-radius:0;box-shadow:none}.hero-image::after{background:linear-gradient(180deg,rgba(10,10,10,.72),rgba(10,10,10,.86))}.hero-image img{object-position:57% center}.hero-image span{display:none}}
/* Compact contact actions */
.details .quick-links{display:flex;align-items:center;gap:9px}
.details .quick-links a{flex:0 0 auto;min-height:40px;padding:8px 14px;border-width:1.5px;border-radius:10px;font-size:13px;line-height:1.15;white-space:nowrap;text-align:center}
@media(max-width:540px){.details .quick-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.details .quick-links a{width:100%;min-height:42px;padding:8px 9px;font-size:13px;justify-content:center;border-radius:9px}}
.photo-card img[src*="daily-braai-original"]{object-position:center 48%}
