:root { --green:#99cc33; --red:#e10000; --yellow:#ffff00; --ink:#111; --layout-row:20px; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; }
body { background:var(--green); color:var(--ink); font-family:"Lucida Sans Unicode","Lucida Grande",Arial,sans-serif; }
a { color:inherit; }
img { max-width:100%; height:auto; }
.site-shell { width:min(1194px, 100%); margin:0 auto; padding:22px 10px 36px; }
.page-layout { display:grid; grid-template-columns:repeat(24,minmax(0,1fr)); grid-auto-rows:var(--layout-row); position:relative; width:100%; min-width:0; }
.home-layout { min-height:1240px; }
.spices-layout { min-height:640px; }
.layout-item { min-width:0; min-height:0; position:relative; display:flex; align-items:center; justify-content:center; text-align:center; }
.layout-item.align-bottom { align-items:flex-end; }
.layout-item > a { display:flex; align-items:center; justify-content:center; width:100%; height:100%; max-width:100%; max-height:100%; }
.layout-item .editable-text { width:100%; height:100%; }
.layout-item img { display:block; max-width:100%; max-height:100%; object-fit:contain; }
.image-link { display:flex; justify-content:center; align-items:flex-end; width:100%; height:100%; }
.top-sign { width:92%; height:100%; object-fit:contain; object-position:center bottom; }
.intro,.ingredients { display:flex; align-items:center; justify-content:center; flex-direction:column; text-align:center; font-size:21px; line-height:1.25; padding:14px 8px; overflow:auto; }
.intro { color:#000; }
.ingredients { font-size:20px; }
.yellow-card { background:var(--yellow); text-align:center; overflow:auto; padding:18px 16px; }
.notice { color:var(--red); font-size:21px; line-height:1.25; display:flex; flex-direction:column; justify-content:center; }
.notice p:first-child { margin-top:0; }
.notice p:last-child { margin-bottom:0; }
.offers { color:var(--red); font-size:21px; line-height:1.45; }
.offers p { margin:.52em 0; }
.center-main { width:100%; height:100%; object-fit:contain; }
.nocard { width:100%; height:100%; object-fit:contain; }
.swr-link { display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.swr { width:100%; height:100%; object-fit:contain; }
.spice-link { display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
.spice-teaser { width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 0 10px rgba(255,255,255,.7)); }
.spices-shell { padding-top:45px; }
.spices-main,.holland-logo,.spice-mix { width:100%; height:100%; object-fit:contain; }
.spice-headline,.spice-copy { display:flex; align-items:center; justify-content:center; text-align:center; font-size:16px; line-height:1.35; padding:8px; overflow:auto; }
.spice-headline strong,.spice-copy strong { color:var(--red); }
.spices-home-link { display:flex; width:100%; height:100%; align-items:center; justify-content:center; }

@media (max-width:900px) {
  :root { --layout-row:auto; }
  .site-shell { padding-top:14px; }
  .page-layout { display:flex; flex-direction:column; gap:18px; max-width:600px; margin:0 auto; min-height:0; }
  .layout-item { grid-column:auto !important; grid-row:auto !important; min-height:0; height:auto; }
  .home-layout .layout-item[data-layout-key="center"] { order:-10; min-height:620px; }
  .home-layout .layout-item[data-layout-key="nocard"] { order:-9; min-height:170px; }
  .home-layout .layout-item[data-layout-key="swr"] { order:-8; min-height:90px; }
  .home-layout .layout-item[data-layout-key="address"],
  .home-layout .layout-item[data-layout-key="opening"] { min-height:190px; }
  .home-layout .layout-item[data-layout-key="wildbret"],
  .home-layout .layout-item[data-layout-key="ingredients"] { min-height:190px; }
  .home-layout .layout-item[data-layout-key="notice"],
  .home-layout .layout-item[data-layout-key="offers"] { min-height:300px; }
  .home-layout .layout-item[data-layout-key="spice_teaser"] { min-height:140px; }
  .spices-layout .layout-item[data-layout-key="spices_main"] { min-height:470px; }
  .spices-layout .layout-item[data-layout-key="holland_logo"] { min-height:100px; }
  .spices-layout .layout-item[data-layout-key="headline"],
  .spices-layout .layout-item[data-layout-key="copy"] { min-height:90px; }
  .spices-layout .layout-item[data-layout-key="spice_mix"] { min-height:220px; }
}
