
:root{
  --bg:#faf8f4;
  --surface:#ffffff;
  --text:#1f1612;
  --muted:#766d68;
  --line:#ece7e1;
  --brown:#34170d;
  --red:#e52a18;
  --orange:#ff7415;
  --yellow:#ffbf17;
  --shadow:0 12px 34px rgba(34,20,12,.09);
  --shadow-soft:0 6px 20px rgba(34,20,12,.07);
  --radius:26px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
a{text-decoration:none;color:inherit}
button{font:inherit}
img{display:block;max-width:100%}
.app{width:min(941px,100%);margin:0 auto;background:linear-gradient(#fff,#fbfaf7);min-height:100vh}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:28px 28px 14px;gap:18px}
.top-title{display:flex;align-items:center;gap:14px}
.top-icon{font-size:30px}
.top-title strong{display:block;font-size:30px;line-height:1}
.top-title span{display:block;color:var(--muted);font-size:18px;margin-top:6px}
.scan-badge{display:flex;align-items:center;gap:12px;background:#f7f3ee;padding:14px 18px;border-radius:22px;font-weight:900;font-size:16px}
.scan-box{width:38px;height:38px;border:3px solid #221713;border-radius:9px;display:grid;place-items:center;font-size:18px}
.landing{padding:18px 28px 34px}
.landing h1{font-size:74px;line-height:.95;margin:12px 0 12px;letter-spacing:-.045em}
.landing .subtitle{font-size:28px;color:#706761;margin:0 0 30px}
.brand-card{display:grid;grid-template-columns:1fr 1.08fr;border-radius:30px;overflow:hidden;background:var(--surface);box-shadow:var(--shadow);margin-bottom:24px;min-height:360px;border:1px solid #eee7df}
.brand-copy{padding:28px 26px;display:flex;flex-direction:column;justify-content:center}
.brand-logo{max-height:210px;object-fit:contain;margin-bottom:16px}
.brand-meta{font-size:21px;font-weight:800;margin:8px 0 24px;color:#3b2b25}
.brand-btn{display:flex;align-items:center;justify-content:space-between;color:#fff;border-radius:18px;padding:18px 22px;font-weight:900;font-size:24px}
.foodies .brand-btn{background:linear-gradient(135deg,#e33221,#ff7415)}
.hollaender .brand-btn{background:linear-gradient(135deg,#ff8c17,#ff5e0a)}
.brand-visual{position:relative;min-height:360px;background:#2b160c}
.brand-visual img{width:100%;height:100%;object-fit:cover}
.brand-tag{position:absolute;right:18px;bottom:18px;background:#ffc628;padding:14px 18px;border-radius:18px 18px 18px 4px;font-weight:1000;font-size:20px;line-height:1.1;transform:rotate(-2deg)}
.hollaender .brand-tag{background:#ff7a11;color:#fff}
.halal{position:absolute;right:20px;top:18px;width:80px;height:80px;border-radius:50%;background:#18a449;color:#fff;display:grid;place-items:center;font-weight:1000;font-size:18px;box-shadow:var(--shadow-soft)}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:12px 28px 34px}
.feature{display:flex;gap:12px;align-items:center;justify-content:center;border-top:1px solid var(--line);padding-top:18px}
.feature i{width:54px;height:54px;border-radius:50%;background:#f3eee7;display:grid;place-items:center;font-style:normal;font-size:24px}
.feature strong{display:block;font-size:17px}
.feature span{display:block;color:var(--muted);font-size:14px;margin-top:2px}

/* Menu pages */
.menu-header{padding:18px 28px 10px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.scribble{font-family:"Segoe Print","Bradley Hand",cursive;font-size:24px;line-height:1.1;font-weight:800}
.scribble.right{text-align:right}
.menu-brand{text-align:center}
.menu-brand img{max-height:180px;max-width:330px;margin:auto}
.menu-brand .tagline{font-size:17px;font-weight:900;letter-spacing:.08em;margin-top:4px}
.mini-scan{justify-self:end;background:#f7f3ee;padding:12px 16px;border-radius:20px;font-weight:900}
.table-chip{display:none;margin:0 auto 8px;width:max-content;background:#23140e;color:#fff;padding:8px 14px;border-radius:999px;font-weight:900}
.category-nav{
  position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);
  display:flex;gap:10px;overflow-x:auto;padding:10px 28px 14px;border-bottom:1px solid #eee8e2
}
.category-nav::-webkit-scrollbar{display:none}
.cat-link{
  white-space:nowrap;display:flex;align-items:center;gap:8px;background:#f4f0eb;padding:12px 18px;border-radius:17px;
  font-weight:900;font-size:17px
}
.foodies-theme .cat-link.active{background:#3d1b10;color:#fff}
.hollaender-theme .cat-link.active{background:linear-gradient(135deg,#ff8b17,#ff5e0b);color:#fff}
.menu-main{padding:12px 22px 120px}
.hero-card{
  display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;background:#2d160d;border-radius:26px;box-shadow:var(--shadow);
  min-height:300px;margin:4px 0 22px
}
.hero-copy{padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:center}
.hero-label{color:#ffc329;font-weight:1000;font-size:20px;margin-bottom:8px}
.hero-title{font-size:49px;line-height:.94;font-weight:1000;margin:0 0 12px;letter-spacing:-.03em}
.hero-text{color:#f5e6dd;font-size:17px;line-height:1.42;max-width:360px}
.hero-price{margin-top:18px;display:inline-block;background:#e6321d;color:#fff;font-size:30px;font-weight:1000;padding:12px 18px;border-radius:14px;width:max-content}
.hollaender-theme .hero-price{background:#ff8a10}
.hero-image img{width:100%;height:100%;object-fit:cover}

.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:22px 2px 12px}
.section-title-wrap{display:flex;align-items:center;gap:10px}
.section-icon{font-size:28px}
.section-title{font-size:31px;font-weight:1000;line-height:1;margin:0}
.section-sub{color:var(--muted);font-size:15px;margin-top:5px}
.more-btn{border:0;background:transparent;color:#8b817b;font-weight:800;cursor:pointer;font-size:15px}
.items-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.product-card{background:#fff;border:1px solid #eee8e2;border-radius:20px;padding:12px;box-shadow:var(--shadow-soft);display:grid;grid-template-columns:108px 1fr auto;gap:13px;align-items:center}
.product-card.extra{display:none}
.product-card.visible{display:grid}
.product-img{width:108px;height:82px;border-radius:14px;object-fit:contain;background:#fff}
.product-name{font-size:18px;font-weight:1000;line-height:1.1}
.product-desc{font-size:13px;color:var(--muted);line-height:1.25;margin-top:4px}
.product-price{font-size:19px;font-weight:1000;white-space:nowrap}
.foodies-theme .product-price{background:#e62c1b;color:#fff;padding:8px 10px;border-radius:10px}
.hollaender-theme .product-price{color:#17110e}
.review-bar{
  position:sticky;bottom:10px;z-index:30;margin-top:26px;display:flex;align-items:center;gap:16px;padding:16px 20px;border-radius:24px;color:#fff;box-shadow:0 16px 40px rgba(0,0,0,.16)
}
.foodies-theme .review-bar{background:linear-gradient(90deg,#ff8618,#df261b)}
.hollaender-theme .review-bar{background:linear-gradient(90deg,#ff9119,#ff5c0a)}
.review-icon{width:54px;height:54px;border-radius:50%;background:#fff;color:#4285f4;display:grid;place-items:center;font-size:29px;font-weight:1000;flex:0 0 auto}
.review-copy strong{display:block;font-size:24px;line-height:1}
.review-copy span{display:block;margin-top:4px;font-size:15px;opacity:.95}
.review-arrow{margin-left:auto;font-size:34px}
.footer-traits{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px;color:#6f655e}
.trait{text-align:center;padding:12px 4px;font-size:13px}
.trait i{display:block;font-style:normal;font-size:24px;margin-bottom:5px}

@media(max-width:760px){
  .topbar{padding:18px 16px 8px}
  .top-title strong{font-size:23px}
  .top-title span{font-size:14px}
  .scan-badge{padding:10px 12px;font-size:13px}
  .landing{padding:10px 12px 24px}
  .landing h1{font-size:48px}
  .landing .subtitle{font-size:20px}
  .brand-card{grid-template-columns:1fr;min-height:0;border-radius:24px}
  .brand-copy{padding:20px}
  .brand-logo{max-height:160px;margin:auto auto 12px}
  .brand-meta{font-size:17px;text-align:center}
  .brand-btn{font-size:18px;padding:15px 18px}
  .brand-visual{min-height:255px}
  .features{padding:8px 12px 26px;gap:6px}
  .feature{flex-direction:column;text-align:center}
  .feature strong{font-size:14px}
  .feature span{font-size:12px}
  .feature i{width:44px;height:44px}
  .menu-header{grid-template-columns:1fr auto;padding:14px 14px 6px}
  .scribble{display:none}
  .menu-brand{justify-self:start;text-align:left}
  .menu-brand img{max-height:110px;max-width:200px;margin:0}
  .menu-brand .tagline{font-size:12px}
  .mini-scan{font-size:12px;padding:9px 11px}
  .category-nav{padding:9px 12px 11px}
  .cat-link{font-size:14px;padding:10px 13px}
  .menu-main{padding:10px 10px 110px}
  .hero-card{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:20px}
  .hero-title{font-size:39px}
  .hero-image{height:230px}
  .section-title{font-size:25px}
  .items-grid{grid-template-columns:1fr}
  .product-card{grid-template-columns:88px 1fr auto;padding:10px}
  .product-img{width:88px;height:68px}
  .product-name{font-size:16px}
  .product-price{font-size:16px}
  .review-bar{margin:20px 2px 0;padding:14px 15px}
  .review-copy strong{font-size:18px}
  .review-copy span{font-size:13px}
  .footer-traits{grid-template-columns:repeat(2,1fr)}
}

/* Der Holländer: use the supplied full product photos without cutting them off. */
.hollaender-theme .product-img{object-fit:contain;background:#fff;padding:2px}
.hollaender-theme .hero-image img{object-fit:contain;background:#f59a70;padding:0}

.product-price:empty{display:none}
.hollaender-theme .product-img{background:#fff}

/* Review corrections: complete entrance images and larger nuggets. */
.brand-copy{min-width:0}
.brand-logo{width:100%;height:auto;max-height:210px;object-fit:contain}
.brand-card .brand-visual{display:flex;align-items:center;justify-content:center;min-width:0;background:#fff}
.brand-card .brand-visual img{width:100%;height:auto;object-fit:contain}
.brand-card.hollaender .brand-visual{background:#f99b68}
.foodies-theme .hero-image img{object-fit:contain;background:#fff}
.pizza-extras{margin-top:24px}
.pizza-extras h3{font-size:21px;margin:0 0 12px}
.extra-star{display:grid;place-items:center;width:48px;height:48px;color:#edaa13;font-size:36px}
.pizza-extra-card{grid-template-columns:48px minmax(0,1fr) auto}
@media(max-width:600px){
 .pizza-extra-card{grid-template-columns:28px minmax(0,1fr) auto;gap:8px}
 .extra-star{width:28px;font-size:26px}
}


/* Compact Foodies rows: slightly larger photos, price on the right. */
.foodies-theme .product-card:not(.pizza-extra-card){grid-template-columns:112px minmax(0,1fr) auto;gap:12px;padding:12px}
.foodies-theme .product-card:not(.pizza-extra-card) .product-img{width:112px;height:84px;object-fit:contain;transform:scale(1.12);transform-origin:center}
.foodies-theme .product-card>div:not(.product-price){min-width:0}
.foodies-theme .product-name{overflow-wrap:anywhere}
@media(max-width:760px){
 .foodies-theme .product-card:not(.pizza-extra-card){grid-template-columns:92px minmax(0,1fr) auto;gap:9px;padding:10px}
 .foodies-theme .product-card:not(.pizza-extra-card) .product-img{width:92px;height:70px}
 .foodies-theme .product-name{font-size:15px;line-height:1.2}
 .foodies-theme .product-desc{font-size:12px;line-height:1.3}
 .foodies-theme .product-price{font-size:15px;padding:7px 8px}
 .foodies-theme .section-title{font-size:23px}
 .foodies-theme .section-title-row{align-items:center;gap:8px}
 .foodies-theme .section-title-wrap{min-width:0}
 .foodies-theme .more-btn{flex-shrink:0;font-size:13px}
}
@media(max-width:360px){
 .foodies-theme .product-card:not(.pizza-extra-card){grid-template-columns:78px minmax(0,1fr) auto;gap:8px;padding:9px}
 .foodies-theme .product-card:not(.pizza-extra-card) .product-img{width:78px;height:64px}
 .foodies-theme .product-price{font-size:14px;padding:6px}
}
