/* Hinweisleiste: identisch zur Demo Coiffeur Muster. Nicht ändern. */
@font-face { font-family: "DM Sans"; src: url("../fonts/dm-sans-latin.woff2") format("woff2"); font-weight: 100 1000; font-display: swap; }
.example-notice { position: sticky; top: 0; z-index: 70; background: rgba(248, 247, 245, .88); border-bottom: 1px solid rgba(87, 79, 72, .15); -webkit-backdrop-filter: blur(16px) saturate(1.2); backdrop-filter: blur(16px) saturate(1.2); font-family: "DM Sans", system-ui, sans-serif; color: #302b28; font-size: 13px; line-height: 1.35; }
.notice-inner { width: min(calc(100% - 80px), 1200px); min-height: 48px; margin: auto; display: flex; gap: 12px; align-items: center; justify-content: space-between; padding-block: 2px; }
.notice-inner > span { color: #3a3430; font-size: 13px; line-height: 1.25; }
.notice-inner > a { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; min-height: 44px; padding: 0 12px; border-radius: 10px; background: rgba(195, 43, 35, .09); color: #a82920; font-size: 13px; font-weight: 700; text-decoration: none; }
.notice-inner > a:hover { background: rgba(195, 43, 35, .16); }
@media (max-width: 1023px) { .notice-inner { width: min(calc(100% - 40px), 1200px); } }
@media (max-width: 600px) { .notice-inner { width: calc(100% - 24px); } .notice-inner > span { font-size: 12px; } .notice-inner > a { padding-inline: 9px; font-size: 12px; } }
/* Gemeinsame Hilfen */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-stopped { overflow: hidden; }
body { margin: 0; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; } button { font: inherit; color: inherit; }
h1, h2, h3, p, figure, blockquote { margin: 0; }
.line { display: block; overflow: hidden; padding: .14em 0 .08em; margin: -.14em 0 -.08em; }
.line > span { display: inline-block; }
.split-line-mask { padding: .16em 0 .1em; margin: -.16em 0 -.1em; }
.menu-sheet[hidden] { display: none; }
.toast { position: fixed; z-index: 90; left: 50%; bottom: calc(96px + env(safe-area-inset-bottom)); width: max-content; max-width: calc(100% - 40px); padding: 14px 20px; font-size: 15px; line-height: 1.4; transform: translate(-50%, 20px); opacity: 0; pointer-events: none; transition: transform .5s cubic-bezier(.22,1,.36,1), opacity .5s cubic-bezier(.22,1,.36,1); }
.toast.is-visible { transform: translate(-50%, 0); opacity: 1; }
@media (min-width: 1024px) { .toast { bottom: 32px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
