/* Canonical visual theme — keep viewport and snapping rules together. */
:root{--parchment:#D8C8B2;--ivory:#E4D7C5;--taupe:#89745E;--graphite:#342B24;--header-height:44px}
html,body{height:100%;overflow:hidden}body{background:var(--parchment)}
.site-header{height:var(--header-height);padding:0 24px;background:#E4D7C5;color:var(--graphite);border-bottom:1px solid #89745E40}
.nav{max-width:1180px;margin:auto}.nav-links{display:flex;justify-content:space-between;gap:18px;height:44px}.nav-links a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 10px;font-size:13px;white-space:nowrap}.nav-links a[aria-current],.nav-links a:hover{text-decoration:underline;text-underline-offset:5px}.nav-links a:focus-visible{outline-offset:-4px}.skip-link{z-index:500}
.page-scroll{position:fixed;inset:var(--header-height) 0 0;height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));padding:0;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:var(--taupe) var(--parchment)}
.screen{height:100%;min-height:100%;padding:0;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always;grid-template-rows:minmax(0,1fr)}
.copy,.screen:nth-child(even):not(.team-screen) .copy{max-height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:clamp(24px,4vh,48px) clamp(24px,4vw,56px);scrollbar-width:thin;scrollbar-color:var(--taupe) transparent;overflow-wrap:break-word}
.copy:focus-visible,.team-wrap:focus-visible{outline:2px solid var(--taupe);outline-offset:-4px}
h1{font-family:'EB Garamond',Georgia,serif;font-size:clamp(38px,4vw,60px);text-transform:none;font-weight:500;letter-spacing:0}h2,h3{text-transform:none;letter-spacing:0}h2{font-size:29px}h3{font-size:22px}p,li{line-height:1.55}.photo-edge{display:none}.photo img{filter:none}.btn{background:var(--graphite);color:#F4EBDD}.btn:hover{background:#574534}
.team-screen{display:block}.team-wrap{height:100%;max-height:100%;overflow-y:auto;padding:32px 48px;scrollbar-width:thin}.portrait{height:clamp(150px,26dvh,240px)}.missing{color:#594536}.site-copyright{font-size:12px;line-height:1.4;margin:24px 0 0;color:#665441}
.faq-item summary{cursor:pointer;padding:15px 0;font-size:17px}.faq-item summary:focus-visible{outline:2px solid var(--graphite);outline-offset:2px}.answer{padding-top:10px}.faq .screen{display:grid;grid-template-columns:1fr}.faq .photo{display:none}.faq .copy{width:100%;max-width:950px;margin:auto}.screen[id]{scroll-margin:0}
@media(max-width:820px){:root{--header-height:48px}.site-header{padding:0 16px}.nav-links{inset:var(--header-height) 0 0;height:auto;background:var(--ivory);color:var(--graphite);overflow:auto;justify-content:flex-start;padding:24px 20px;gap:12px}.nav-links a{width:100%;font-size:16px;flex-shrink:0}.nav-toggle{color:var(--graphite)}
.screen{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) min(22dvh,180px)}
.copy,.screen:nth-child(even):not(.team-screen) .copy{grid-column:1;grid-row:1;order:0;margin:0;padding:24px;align-self:center;max-width:none}
.photo,.screen:nth-child(even):not(.team-screen) .photo{grid-column:1;grid-row:2;order:1;height:100%;min-height:0;margin:0}.photo img,.screen:nth-child(even):not(.team-screen) .photo img{mask-image:none;-webkit-mask-image:none}.photo:after{display:none}
.faq .screen,.kontakt .screen{grid-template-rows:minmax(0,1fr)}.kontakt .photo{display:none}.team-screen{display:block}.team-wrap{padding:24px}.team-pair{grid-template-columns:1fr;gap:32px}.portrait{height:220px}.team-pair p{font-size:16px}h1{font-size:38px}h2{font-size:26px}h3{font-size:21px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media print{html,body{height:auto;overflow:visible}.site-header,.skip-link{display:none}.page-scroll{position:static;height:auto;overflow:visible}.screen{height:auto;min-height:0;overflow:visible;break-inside:avoid}.copy,.team-wrap{height:auto;max-height:none;overflow:visible}}


/* Phase 1 — navigation, palette and section scroll hints. */
:root{
  --door-brown:#36454F;
  --ivory:#F4EADE;
  --parchment:#EDE5DA;
  --taupe:#8A7968;
  --graphite:#36454F;
}
.site-header{
  background:var(--door-brown);
  color:var(--ivory);
  border-bottom:1px solid rgba(244,234,222,.14);
}
.nav-links a{
  color:var(--ivory);
  opacity:.82;
  transition:opacity .2s ease;
  text-decoration:none;
}
.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a[aria-current="page"],
.nav-links a[aria-current="location"]{
  opacity:1;
  text-decoration:none;
  border-bottom:1px solid currentColor;
}
.nav-toggle{color:var(--ivory)}
html.home .site-header{
  background:rgba(54,69,79,.75);
  color:var(--ivory);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  transition:background .3s ease;
}
html.home .site-header.is-scrolled{
  background:var(--door-brown);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
.scroll-hint{
  position:absolute;
  bottom:2rem;
  left:50%;
  display:grid;
  place-items:center;
  width:2.75rem;
  height:2.75rem;
  color:var(--ivory);
  opacity:.7;
  transition:opacity .3s ease;
  animation:gh-bounce 2.4s ease-in-out infinite;
  z-index:3;
}
.scroll-hint:hover,.scroll-hint:focus-visible{opacity:1}
.scroll-hint--dark{color:var(--graphite)}
@keyframes gh-bounce{
  0%,22%,52%,100%{transform:translate(-50%,0)}
  36%{transform:translate(-50%,-9px)}
  64%{transform:translate(-50%,-4px)}
}
.values{margin:0 0 20px}.values dt{font-weight:700;margin-top:14px}.values dd{margin:4px 0 12px;line-height:1.55}
@media(max-width:820px){
  .nav-links{background:var(--door-brown);color:var(--ivory)}
  .nav-links a{color:var(--ivory)}
  .nav-toggle{color:var(--ivory)}
  .scroll-hint{bottom:.75rem}
  .scroll-hint--dark{color:var(--ivory);text-shadow:0 1px 3px rgba(0,0,0,.45)}
}
@media(prefers-reduced-motion:reduce){.scroll-hint{animation:none}}

/* Phase 1 — FAQ keeps the requested food image visible after the 4→2 section merge. */
.faq .screen{display:grid;grid-template-columns:1fr 1fr}
.faq .photo{display:block}
.faq .copy{width:auto;max-width:46rem;margin:0}
@media(max-width:820px){
  .faq .screen{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) min(22dvh,180px)}
  .faq .photo{display:block}
  .faq .copy{width:100%;max-width:none;margin:0}
}

/* Keep the arrow horizontally centered even when reduced motion disables animation. */
.scroll-hint{transform:translate(-50%,0)}

/* Redesign — anchor the title (H1) section to a fixed top position on every page,
   instead of vertical centering, so the heading lands at the same height
   regardless of how much copy follows it. Only the first screen (the one
   holding the H1) is affected; later sub-sections keep centering. */
.page-scroll>.screen:first-child .copy{align-self:start}

/* Redesign — two equally-weighted CTA buttons side by side (e.g. Kontakt: email + WhatsApp). */
.btn-group{display:flex;gap:12px;flex-wrap:wrap}
.btn-group .btn{margin-top:0}
