*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--font-body);font-size:var(--fs-base);line-height:var(--lh-normal);
  color:var(--c-ink);background:var(--c-sand);-webkit-font-smoothing:antialiased;
  min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}
img,picture,svg,video{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit;color:inherit}
button{background:none;border:none;cursor:pointer;padding:0}
a{color:var(--c-forest);text-underline-offset:.2em}
a:focus-visible,button:focus-visible{outline:2px solid var(--c-forest);outline-offset:3px}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:340;line-height:var(--lh-tight);
  letter-spacing:-.02em;color:var(--c-ink);text-wrap:balance;overflow-wrap:break-word}
h1{font-size:clamp(1.9rem,7vw,var(--fs-4xl))}
h2{font-size:clamp(2rem,5vw,var(--fs-3xl))}
h3{font-size:var(--fs-lg);font-weight:380}
p{text-wrap:pretty}
.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}
.container--narrow{max-width:var(--container-narrow)}
.label{font-family:var(--font-label);font-size:var(--fs-xs);letter-spacing:.18em;
  text-transform:uppercase;color:var(--c-ink-soft);display:inline-flex;align-items:center;gap:.55rem}
.label::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c-forest)}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--c-forest);color:var(--c-cream);
  padding:.6rem 1rem;z-index:999}
.skip-link:focus{left:0}
/* Fließtext-Rhythmus (Null-Spezifität, wie homepage-atelier) */
:where(.container,.container--narrow) > * + :where(h2,h3,p,ul,ol,blockquote,.prose,.measure,.faq,.focus-grid,.stack-list){margin-top:var(--sp-5)}
:where(.container,.container--narrow) > :where(h2,h3) + *{margin-top:var(--sp-6)}
:where(.prose) :where(p,ul,ol) + :where(p,ul,ol){margin-top:var(--sp-4)}
