/* Mozaik WO · public presentation */
body.mz-site {
  --mz-paper: #faf7f2;
  --mz-ink: #16233a;
  --mz-brass: #ab8654;
  background: var(--mz-paper);
}
.mz-site header { background-color: #fffdf9; border-color: #e1d9cb; }
.mz-site .mz-hero { isolation: isolate; border-bottom: 3px solid #ad8d60; }
.mz-site .mz-home { min-height: clamp(28rem, 67svh, 49rem); }
.mz-site .mz-hero::after {
  content: ""; position: absolute; pointer-events: none; z-index: 10;
  inset: 0; background: linear-gradient(90deg, rgba(10,18,31,.62), transparent 85%);
}
.mz-site .mz-copy {
  position: relative; z-index: 20; text-align: left; width: min(100%, 72rem); max-width: 72rem;
  padding-inline: clamp(.5rem, 3vw, 3rem);
}
.mz-site .mz-copy::before {
  content: ""; display: block; width: 4rem; height: 2px; margin-bottom: 1.3rem;
  background: linear-gradient(90deg, #f2d5a4 65%, transparent);
}
.mz-site .mz-copy h1 {
  font-family: Georgia, "Times New Roman", serif; font-weight: 500;
  letter-spacing: -.035em; line-height: 1.06; font-size: clamp(2.2rem, 5.2vw, 4.9rem);
  max-width: 19ch; text-wrap: balance; overflow-wrap: break-word;
}
.mz-site .mz-copy p { margin-left: 0; font-size: clamp(.94rem, 1.3vw, 1.1rem); color: #f9f5ef; }
.mz-site .mz-copy .flex { justify-content: flex-start; }
.mz-site .mz-copy a { border-radius: 2rem; }
.mz-site .mz-copy a.bg-blue-600 { background: #fff9ed; color: var(--mz-ink); }
.mz-site .mz-copy a.bg-amber-400 { background: #e7c797; color: #19202f; }
.mz-site .mz-copy a:hover { box-shadow: 0 0 0 2px #fffc; }
.mz-site section.bg-slate-50 { background-color: #f2ede5; }
.mz-site .mz-card {
  border-color: #ded4c4; background-color: #fffdfa;
  border-radius: .45rem 1.6rem .45rem .45rem;
  box-shadow: 0 9px 24px -18px rgba(35,28,18,.33);
}
.mz-site .mz-card .bg-blue-100 { background-color: #f2eadc; color: #715636; }
.mz-site .mz-heading h2 { font-family: Georgia, serif; font-weight: 500; letter-spacing: -.025em; }
.mz-site .mz-heading .bg-amber-400 { height: 2px; background: var(--mz-brass); }
.mz-site :focus-visible { outline: 3px solid #b38440; outline-offset: 3px; }
@media screen and (prefers-reduced-motion: no-preference) {
  .mz-site .mz-motion { transition: opacity .42s ease, translate .48s cubic-bezier(.2,.7,.2,1); }
  .mz-site .mz-away:not(:focus-within) { opacity: 0; translate: 0 var(--mz-shift, 14px); }
}
@media (max-width: 600px) {
  .mz-site .mz-home { min-height: 27rem; }
  .mz-site .mz-copy { padding-inline: .5rem; }
  .mz-site .mz-card.p-6 { padding: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .mz-site .animate-logo { animation: none; }
}

.mz-navigation { position: sticky; top: 0; z-index: 45; }
.mz-navigation.mz-scrolled { transform: translateY(calc(-1 * var(--brand-height))); }
.mz-navigation.mz-scrolled > header { visibility: hidden; }
