/* grundgerüst für alle seiten: ruhig, editorial, wie ein reisemagazin */
:root{
  --cream:#f5f0e8; --paper:#fbf8f3; --sand:#e8dccb; --sand-2:#d9c8b1;
  --ink:#1e2226; --anthracite:#2b2f33; --night:#1b2433; --night-2:#243046;
  --muted:#6d675f; --line:#e1d6c6; --line-dark:rgba(255,255,255,.14);
  --accent:#a9512f; --accent-2:#c27a52; --gold:#b89662;
  --on-night:#efe8dc; --on-night-muted:#a9a49b;
  --r:4px; --ease:cubic-bezier(.22,.61,.36,1);
  --serif:Fraunces,Georgia,"Times New Roman",serif; --sans:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 var(--sans);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%}
a{color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 20px}
@media(min-width:760px){.wrap{padding:0 40px}}

/* typografie */
.kicker,.versal{font:600 11px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin:0 0 18px}
.kicker b,.versal b{color:var(--accent);font-weight:600}
h1,h2,h3{font-family:var(--serif);font-weight:300;letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(46px,9vw,112px);line-height:.98;margin:0 0 22px}
h2{font-size:clamp(34px,5.4vw,66px);line-height:1.04;margin:0 0 20px}
h1 em,h2 em{font-style:italic;font-weight:300;color:var(--accent)}
.lead{font-size:clamp(17px,1.6vw,19px);line-height:1.65;color:#4b4741;max-width:40ch;margin:0 0 28px}
.intro{color:var(--muted);max-width:56ch;margin:0 0 44px;font-size:17px}
.linie{height:1px;background:var(--line);border:0;margin:0}

/* knöpfe */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;font:500 15px/1 var(--sans);letter-spacing:.01em;text-decoration:none;transition:background .4s var(--ease),color .4s var(--ease),border-color .4s var(--ease)}
.pill.solid,.pill.big{background:var(--ink);color:var(--paper)}
.pill.solid:hover,.pill.big:hover{background:var(--accent)}
.pill.ghost{border:1px solid var(--ink);color:var(--ink);background:transparent}
.pill.ghost:hover{background:var(--ink);color:var(--paper)}
.pill.small{min-height:38px;padding:8px 16px;font-size:13px}
.textlink{font:500 14px var(--sans);color:var(--ink);text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:2px}
.textlink:hover{color:var(--accent)}

/* ki-hinweis */
.badge{display:inline-flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;color:var(--muted);max-width:100%}
.badge i{flex:none;width:6px;height:6px;margin-top:7px;border-radius:50%;background:var(--accent);display:inline-block}
.badge b{color:var(--ink);font-weight:600;white-space:nowrap}

/* navigation */
nav.top{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .5s var(--ease),box-shadow .5s var(--ease)}
nav.top .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
nav.top .logo{font-family:var(--serif);font-size:24px;font-weight:400;font-style:italic;text-decoration:none;color:var(--ink);letter-spacing:-.01em}
nav.top ul{display:none;list-style:none;margin:0;padding:0;gap:30px}
@media(min-width:960px){nav.top ul{display:flex}}
nav.top ul a{text-decoration:none;font:500 14px var(--sans);letter-spacing:.01em;color:var(--muted)}
nav.top ul a:hover,nav.top ul a.hl{color:var(--ink)}
nav.top .nav-r{display:flex;align-items:center;gap:16px}
nav.top .back{font:500 14px var(--sans);letter-spacing:.01em;color:var(--muted);text-decoration:none}
nav.top.scrolled,nav.top.fest{background:rgba(245,240,232,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
nav.top.hell{color:var(--paper)}

/* filmkorn über fotos */
.korn{position:relative;isolation:isolate}
.korn::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;mix-blend-mode:overlay;z-index:2;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* abschnitte */
section{padding:112px 0}
@media(max-width:760px){section{padding:76px 0}}
.dunkel{background:var(--night);color:var(--on-night)}
.dunkel h2,.dunkel h3{color:var(--paper)}
.dunkel .kicker{color:var(--on-night-muted)}
.dunkel h2 em{color:var(--accent-2)}

/* folgen-block */
.folgen{background:var(--night);color:var(--on-night);text-align:center}
.folgen h2{color:var(--paper);max-width:18ch;margin-left:auto;margin-right:auto}
.folgen p{max-width:46ch;margin:0 auto 32px;color:var(--on-night-muted);font-size:17px}
.folgen .row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;align-items:center}
.folgen .pill.big{background:var(--paper);color:var(--ink)}
.folgen .pill.big:hover{background:var(--accent-2);color:var(--paper)}
.folgen .pill.ghost{border-color:rgba(239,232,220,.4);color:var(--on-night)}
.folgen .pill.ghost:hover{background:var(--paper);color:var(--ink)}
.folgen .home{margin:32px auto 0}
.folgen .home a{color:var(--on-night);font-weight:500;text-decoration:none;border-bottom:1px solid var(--accent-2)}

/* fusszeile */
footer{background:var(--ink);color:var(--on-night-muted);padding:48px 0 calc(48px + env(safe-area-inset-bottom));font-size:13px;line-height:1.7}
footer .wrap{display:flex;flex-wrap:wrap;gap:20px 48px;justify-content:space-between}
footer .logo{font-family:var(--serif);font-style:italic;font-size:26px;color:var(--on-night);text-decoration:none}
footer p{margin:0 0 6px;max-width:62ch}

/* sanftes einblenden */
.reveal{opacity:0;transform:translateY(18px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* bitte um tipps (nur links zu instagram, kein formular) */
.tipp{background:var(--sand);text-align:center}
.tipp h2{max-width:16ch;margin-left:auto;margin-right:auto}
.tipp p:not(.kicker){max-width:48ch;margin:0 auto 32px;font-size:17px;color:#4b4741}
.tipp .row{display:flex;gap:14px 26px;justify-content:center;align-items:center;flex-wrap:wrap}
