@font-face{font-family:Geist;src:url(fonts/geist-latin-300-normal.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:Geist;src:url(fonts/geist-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Geist;src:url(fonts/geist-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Literata;src:url(fonts/literata-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}

:root{
  --ink:#0e1512; --paper:#f1f2ec; --cream:#fbfbf7; --flag:#f2673b;
  --ease-out:cubic-bezier(.23,1,.32,1);
  --m:clamp(16px,2.4vw,36px); --r:clamp(20px,2.2vw,32px);
  --step-small:clamp(.875rem,.84rem + .15vw,.95rem);
  --step-body:clamp(1.0625rem,1rem + .3vw,1.25rem);
  --step-lead:clamp(1.2rem,1.1rem + .55vw,1.5rem);
  --step-head:clamp(2.3rem,1rem + 5.4vw,6.5rem);
  --display:Geist,-apple-system,"Helvetica Neue",sans-serif; --text:Literata,Georgia,serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-color:var(--cream) var(--ink);-webkit-text-size-adjust:100%}
@media (min-width:1001px) and (min-height:700px) and (prefers-reduced-motion:no-preference){html{scroll-snap-type:y proximity}.snap{scroll-snap-align:start}}
body{margin:0;background:var(--ink);color:var(--cream);font:400 var(--step-body)/1.5 var(--text);overflow-x:clip;-webkit-font-smoothing:antialiased}
::selection{background:var(--cream);color:var(--ink)}
img,video{display:block;max-width:100%}
a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--cream);outline-offset:3px;border-radius:6px}
.kurse :focus-visible,.ticket:not(.ticket-dark) :focus-visible,.faq :focus-visible{outline-color:var(--ink)}
h1,h2,h3{font-family:var(--display);font-weight:300;line-height:1.02;letter-spacing:-.04em;margin:0;text-wrap:balance}
h2{font-size:var(--step-head)}
h3{font-size:clamp(2rem,1.3rem + 2vw,3.4rem)}
p{margin:0}
ul{margin:0;padding:0;list-style:none}
.skip{position:fixed;left:var(--m);top:-80px;z-index:70;background:var(--cream);color:var(--ink);padding:.6em 1em;transition:top .2s var(--ease-out)}
.skip:focus{top:12px}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.55em 1.35em;border-radius:999px;border:0;background:var(--ink);color:var(--cream);font:500 var(--step-small)/1.2 var(--display);text-decoration:none;cursor:pointer;text-align:center;transition:transform 160ms var(--ease-out),background-color 200ms ease}
.btn:active{transform:scale(.97)}
.btn-light{background:var(--cream);color:var(--ink)}
.btn-soft{background:#0e15121a;color:var(--ink)}
.btn-small{min-height:42px;padding:.4em 1.1em;background:var(--cream);color:var(--ink)}
@media (hover:hover){.btn:hover{background:#2c3a33}.btn-light:hover,.btn-small:hover{background:#dfe2d8}.btn-soft:hover{background:#0e151233}}
.actions{display:flex;flex-wrap:wrap;gap:10px}

/* Navigation als schwebende Leiste */
.nav{position:fixed;left:50%;top:14px;z-index:60;width:min(780px,calc(100% - var(--m) * 2));transform:translateX(-50%);display:flex;align-items:center;gap:clamp(12px,2.4vw,30px);padding:6px 6px 6px 20px;border-radius:999px;background:var(--ink);color:var(--cream)}
.wordmark{font:500 1.25rem/1 var(--display);letter-spacing:-.03em;text-decoration:none;margin-right:auto}
.nav nav{display:flex;gap:clamp(12px,2vw,26px);font:400 var(--step-small)/1.3 var(--display)}
.nav nav a{text-decoration:none;padding:.4em 0;position:relative}
.nav nav a::after{content:"";position:absolute;left:0;right:0;bottom:.1em;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--ease-out)}
@media (hover:hover){.nav nav a:hover::after{transform:none}}
@media (max-width:620px){.nav nav{display:none}}

/* Der fliegende Ball */
.flight-ball{position:fixed;left:0;top:0;z-index:50;width:0;height:0;pointer-events:none;will-change:transform}
.flight-ball i{position:absolute;left:-11px;top:-11px;width:22px;height:22px;border-radius:50%}
.fb-ball{background:#fff;box-shadow:0 0 0 1px #0e15121f,inset -3px -4px 5px #0000002e;will-change:transform} /* taste-skill-ignore */
.fb-shadow{background:#000;opacity:.34;filter:blur(4px);will-change:transform}

/* Erster Bildschirm */
.hero{position:sticky;top:0;z-index:0;height:100svh;background:#000}
.hero-stage{position:absolute;inset:0;overflow:hidden;transform-origin:50% 40%;will-change:transform}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:32% 60%}
.js .hero-video{opacity:0;transform:scale(1.14);transition:opacity 1.5s ease,transform 2.6s var(--ease-out)}
.js .hero.is-open .hero-video{opacity:1;transform:none}
.hero-shade{position:absolute;inset:0;background:#02100a4d}
.hero-copy{position:absolute;inset:clamp(78px,11svh,110px) var(--m) clamp(24px,5svh,56px);display:flex;flex-direction:column;justify-content:space-between}
.hero-side{align-self:flex-end;width:min(440px,100%);background:#0e1512d9;border-radius:var(--r);padding:clamp(16px,1.6vw,22px)}
.hero h1{font-size:clamp(2.6rem,5.8vw,7rem);max-width:13em;letter-spacing:-.04em;line-height:.95;color:#fff}
.hero h1 span{display:inline-block}
/* „in 7 Tagen“ ist die Pointe und steht deutlich größer */
.hero h1 .h1-big{font-size:1.6em;line-height:1}
.js .hero h1 span{opacity:0;filter:blur(18px);transform:translateY(.28em);transition:opacity 1s ease,filter 1.1s ease,transform 1.2s var(--ease-out)}
.js .hero.is-open h1 span{opacity:1;filter:none;transform:none}
.hero h1 span:nth-child(2){transition-delay:.12s!important}.hero h1 span:nth-child(3){transition-delay:.22s!important}.hero h1 span:nth-child(4){transition-delay:.32s!important}.hero h1 span:nth-child(5){transition-delay:.4s!important}.hero h1 span:nth-child(6){transition-delay:.48s!important}
.hero-side p{font-size:var(--step-lead);line-height:1.32;margin-bottom:18px}
.js .hero-side{opacity:0;transform:translateY(26px);transition:opacity .9s .7s ease,transform 1.1s .7s var(--ease-out)}
.js .hero.is-open .hero-side{opacity:1;transform:none}
.film-toggle{position:absolute;z-index:2;right:var(--m);top:84px;width:44px;height:44px;border-radius:50%;border:0;background:#0e1512a6;color:#fff;cursor:pointer;display:grid;place-items:center;transition:transform 160ms var(--ease-out)}
.film-toggle:active{transform:scale(.97)}
.film-toggle svg{width:16px;height:16px;fill:currentColor}
.film-toggle .i-play{display:none}.film-toggle[aria-pressed=true] .i-play{display:block}.film-toggle[aria-pressed=true] .i-pause{display:none}
@media (max-width:1000px){.hero h1{font-size:clamp(2.2rem,9.4vw,5rem)}.hero-side{align-self:stretch;width:auto}.hero-side .btn{flex:1 1 100%}}

/* Eine Woche statt drei Monate */
.words{position:relative;z-index:1;height:330svh;background:var(--ink);border-radius:var(--r) var(--r) 0 0;overflow:clip}
.words-stage{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;display:grid;place-items:center}
.words-field{position:absolute;inset:0;z-index:-1;background:url(img/field.jpg) center/cover #0c4a2c;clip-path:inset(0 0 0 0 round 0);will-change:clip-path}
.words-title{font-size:clamp(3.2rem,12.2vw,13rem);text-align:center;color:#fff;padding:0 var(--m);line-height:1;will-change:transform;font-weight:300}
.words-title span{display:block}
.w1,.w2{will-change:transform,opacity,filter}
.w2{font-size:.56em;margin-top:.12em}
.w3{display:inline!important;position:relative;white-space:nowrap}
.w3::after{content:"";position:absolute;left:-.04em;right:-.04em;top:56%;height:.05em;background:currentColor;transform:scaleX(var(--strike,0));transform-origin:left}
.words-after{position:absolute;left:var(--m);right:var(--m);bottom:clamp(30px,9svh,90px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,5vw,80px);max-width:1180px;margin-inline:auto;font-size:var(--step-lead);line-height:1.38;will-change:transform,opacity}
.words-after h3{margin-bottom:.4em}
.words-after li{font:400 var(--step-body)/1.3 var(--display);padding:.25em 0}
@media (max-width:760px){.words-after{grid-template-columns:1fr;font-size:1.0625rem}}
.js .words-after{opacity:0}

/* Micha */
.micha-film{position:absolute;inset:0;z-index:2;background:#000;will-change:clip-path}
.js .micha-film{clip-path:inset(100svh 0 0 0)}
.micha-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
@media (max-width:760px){.words-field{background-position:88% center}.micha-film video{object-position:70% 40%}.words-after{gap:14px;font-size:1rem}.words-title{align-self:start;margin-top:12svh}}

/* Kurse */
.kurse{position:relative;z-index:2;background:url(img/contours-green.svg) center/cover var(--paper);color:var(--ink);border-radius:var(--r) var(--r) 0 0;padding:clamp(84px,11svh,110px) var(--m) clamp(40px,6svh,70px);min-height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:clip}
.kurs-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--m);margin-top:clamp(24px,4svh,44px)}
.kurs{display:grid;grid-template-columns:2fr 3fr;background:#fff;border-radius:var(--r);overflow:hidden}
.kurs figure{margin:0;overflow:hidden;min-height:440px}
.kurs img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out)}
@media (hover:hover){.kurs:hover img{transform:scale(1.05)}}
.kurs-body{padding:clamp(20px,2.4vw,36px);display:flex;flex-direction:column;gap:12px}
.kurs-for{font-size:var(--step-small)}
.kurs li{padding:.5em 0;font-size:clamp(.98rem,.9rem + .25vw,1.125rem);line-height:1.3}
.kurs li+li{box-shadow:0 -1px 0 #0e151214} /* taste-skill-ignore */
.kurs-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:10px}
.kurs-price{font:300 clamp(1.8rem,1.2rem + 1.5vw,2.8rem)/1 var(--display);letter-spacing:-.04em;white-space:nowrap}
.kurse-note{margin-top:18px;font-size:var(--step-small)}
.kurse-lead{max-width:48ch;margin-top:.6em;font-size:var(--step-lead);line-height:1.35}
.kurse-direkt{border-radius:0;box-shadow:0 -1px 0 #0e15121a;background-color:#61abcd}
.js .kurs{opacity:0;transform:translateX(-150px);transition:opacity .8s ease,transform 1s var(--ease-out)}
.js .kurs+.kurs{transition-delay:.18s}
.js .kurs.is-in{opacity:1;transform:none}
@media (max-width:1000px){.kurs-row{grid-template-columns:1fr}.kurs{grid-template-columns:1fr}.kurs figure{aspect-ratio:16/9;min-height:0}.js .kurs{transform:translateX(-40px)}}

/* Hotel */
.hotel{position:relative;z-index:2;background:url(img/contours-light.svg) center/cover var(--ink);padding:clamp(84px,11svh,110px) var(--m) clamp(40px,6svh,70px);min-height:100svh;display:flex;flex-direction:column;gap:clamp(24px,4svh,44px);overflow:clip}
.hotel-head{display:grid;grid-template-columns:7fr 5fr;gap:var(--m);align-items:end}
.hotel-head h2{font-size:clamp(2.2rem,5.2vw,5.8rem)}
.hotel-pics{flex:1;display:grid;grid-template-columns:6fr 3fr 3fr;gap:var(--m);min-height:300px}
.hotel-pics figure{margin:0;border-radius:var(--r);overflow:hidden;position:relative}
.hotel-pics img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pic-a img{object-position:15% 50%}
.js .hotel-pics figure{opacity:0;transform:translateY(90px);transition:opacity .8s ease,transform 1.2s var(--ease-out)}
.js .hotel-pics figure.is-in{opacity:1;transform:none}
.js .pic-b{transition-delay:.14s!important}.js .pic-c{transition-delay:.28s!important}
@media (max-width:760px){.hotel-head{grid-template-columns:1fr}.hotel-pics{grid-template-columns:1fr 1fr;grid-auto-rows:44vw}.pic-a{grid-column:1/3}}

/* Grün und Buchung */
.buchen{position:relative;z-index:2;background:var(--paper)}
.putt{position:relative;height:100svh;min-height:540px;overflow:hidden;touch-action:pan-y;isolation:isolate;user-select:none}
.putt-ground{position:absolute;inset:0;z-index:-2;background:url(img/ai-green.jpg) center/cover}
/* Das Loch im Bild wird etwas größer gezeichnet. Ein schmaler Streifen oberhalb der Mitte bleibt offen, damit die Fahnenstange aus dem Bild sichtbar bleibt. */
.putt-hole{position:absolute;--d:calc(var(--k,.73) * 24px);--px:calc(var(--k,.73) * 2.3px);width:var(--d);height:var(--d);margin:calc(var(--d) / -2) 0 0 calc(var(--d) / -2 - var(--k,.73) * 6.7px);border-radius:50%;background:radial-gradient(circle at 55% 60%,#3d4a24 0%,#1f2b14 45%,#121c0c 100%);box-shadow:inset 2px 3px 4px #0b120799;-webkit-mask:linear-gradient(#000 0 0) bottom/100% 56% no-repeat,linear-gradient(90deg,#000 calc(50% + var(--px) - 1.6px),transparent 0 calc(50% + var(--px) + 1.6px),#000 0) top/100% 50% no-repeat;mask:linear-gradient(#000 0 0) bottom/100% 56% no-repeat,linear-gradient(90deg,#000 calc(50% + var(--px) - 1.6px),transparent 0 calc(50% + var(--px) + 1.6px),#000 0) top/100% 50% no-repeat} /* taste-skill-ignore */
.putt-aim{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.putt-aim line{stroke:var(--cream);stroke-width:3;stroke-dasharray:3 9;stroke-linecap:round}
.putt-ball{position:absolute;left:0;top:0;width:64px;height:64px;margin:-32px;cursor:grab;z-index:2;display:grid;place-items:center;will-change:transform;touch-action:none}
.putt-ball::before{content:"";width:17.6px;height:17.6px;border-radius:50%;background:#fff;box-shadow:4px 5px 5px #0006,inset -3px -4px 5px #0000002e} /* taste-skill-ignore */
.putt-hint{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none;transition:opacity 240ms ease}
.putt-hint.is-gone{opacity:0}
.ph-ring{position:absolute;left:-22px;top:-22px;width:44px;height:44px;border-radius:50%;border:3px solid var(--cream);box-shadow:0 0 0 1px #0e151240;animation:ph-ring 1.8s var(--ease-out) infinite}
.ph-arrow{position:absolute;left:0;top:-12px;width:80px;height:24px;transform-origin:0 50%;transform:rotate(var(--a)) translateX(20px);overflow:visible}
.ph-arrow{filter:drop-shadow(0 1px 2px #0e151299)}
.ph-arrow path{fill:none;stroke:var(--cream);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;animation:ph-pull 1.8s var(--ease-out) infinite}
.ph-label{position:absolute;left:var(--lx);top:var(--ly);transform:translate(-50%,-50%);padding:.25em .7em;border-radius:999px;background:var(--cream);color:var(--ink);font:500 .8125rem/1.2 var(--display);white-space:nowrap}
@keyframes ph-ring{0%{transform:scale(.6);opacity:.9}70%,100%{transform:scale(1.9);opacity:0}}
@keyframes ph-pull{0%{transform:translateX(-16px);opacity:0}20%{opacity:1}70%{transform:translateX(8px);opacity:1}100%{transform:translateX(8px);opacity:0}}
@media (prefers-reduced-motion:reduce){.ph-ring,.ph-arrow path{animation:none}.ph-ring{opacity:.6}}
.putt-copy{position:absolute;left:var(--m);bottom:var(--m);max-width:min(520px,calc(100% - var(--m) * 2));background:var(--ink);border-radius:var(--r);padding:clamp(20px,2.4vw,34px);z-index:3}
.putt-copy h2{font-size:clamp(2rem,1.2rem + 2.6vw,3.6rem)}
.putt-copy p{margin:.6em 0 1em}
.after-putt{background:url(img/contours-green.svg) center/cover no-repeat var(--paper);padding-bottom:clamp(70px,9vw,130px)}
.tickets{display:flex;justify-content:center;align-items:stretch;gap:clamp(18px,3vw,44px);padding:clamp(80px,9vw,130px) var(--m) clamp(70px,8vw,110px);overflow:clip;scroll-margin-top:0}
.ticket{position:relative;flex:0 1 430px;min-width:0;aspect-ratio:5/7;display:flex;flex-direction:column;gap:16px;background:#fff;color:var(--ink);border-radius:26px;padding:clamp(76px,6vw,92px) clamp(26px,2.6vw,38px);box-shadow:0 24px 60px -18px #0e151240;transform:rotate(-1.6deg);transition:transform 700ms var(--ease-out),opacity 500ms ease} /* taste-skill-ignore */
.ticket-dark{background:var(--ink);color:var(--cream);transform:translateY(20px) rotate(1.8deg)}
.js .ticket:not(.is-in){opacity:0;transform:translateY(90px) rotate(7deg)}
@media (hover:hover){.ticket:hover{transform:translateY(-8px) rotate(0);z-index:2}}
.ticket:focus-within{transform:translateY(-8px) rotate(0);z-index:2}
.card-index{position:absolute;left:18px;top:16px;display:flex;flex-direction:column;align-items:center;gap:4px;width:30px}
.card-index.end{left:auto;top:auto;right:18px;bottom:16px;transform:rotate(180deg)}
.card-index svg{width:24px;height:30px}
.card-index path{fill:var(--flag)}.card-index rect{fill:currentColor}
.card-index b{font:500 1.0625rem/1 var(--display)}
.ticket h3{font-size:clamp(1.9rem,1.3rem + 1.6vw,3rem)}
.ticket .actions{margin-top:auto}
.tel{font-family:var(--display)}
.tel .flag{display:inline-block;width:1.25em;height:.85em;margin-left:.5em;vertical-align:-.05em;border-radius:2px}
@media (max-width:1000px){.tickets{flex-direction:column;align-items:center;gap:30px}.ticket{flex:none;width:min(88%,460px);aspect-ratio:auto;min-height:calc(min(88vw,460px) * 1.3);transform:rotate(-1.2deg)}.ticket-dark{transform:rotate(1.2deg)}.ticket .btn{flex:1 1 100%}}

/* Instagram */
.insta{color:var(--ink);padding:clamp(80px,9vw,140px) var(--m) 0;display:grid;grid-template-columns:5fr 7fr;gap:var(--m);align-items:center}
.insta h3{font-size:clamp(2.2rem,4vw,4.2rem)}
.insta-copy p{max-width:30em;margin:.7em 0 1.4em}
.insta-fan{position:relative;display:block;isolation:isolate;height:calc(clamp(150px,15vw,230px) * 1.25 + 80px);--card:clamp(150px,15vw,230px);--spread:calc(var(--card) * .48)}
.ig-card{position:absolute;left:50%;top:40px;width:var(--card);aspect-ratio:4/5;margin-left:calc(var(--card) / -2);padding:7px;background:#fff;border-radius:18px;box-shadow:0 18px 40px -14px #0e151259;transform-origin:50% 120%;transform:translateX(calc(var(--o) * var(--spread))) translateY(calc(var(--o) * var(--o) * 6px)) rotate(calc(var(--o) * 7deg));transition:transform 900ms var(--ease-out);z-index:calc(5 - var(--o) * var(--o))} /* taste-skill-ignore */
.ig-card img{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}
.js .insta-fan:not(.is-in) .ig-card{transform:rotate(calc(var(--o) * 2deg))}
.insta-fan.is-in .ig-card{transition-delay:calc((var(--o) + 2) * 60ms)}
@media (hover:hover){.insta-fan.is-in:hover .ig-card{transform:translateX(calc(var(--o) * var(--spread) * 1.12)) translateY(calc(var(--o) * var(--o) * 6px - 10px)) rotate(calc(var(--o) * 8.5deg));transition-delay:0ms;transition-duration:420ms}}
.insta-fan:focus-visible{outline-color:var(--ink);outline-offset:8px;border-radius:24px}
@media (max-width:860px){.insta{grid-template-columns:1fr}.insta-fan{--card:min(34vw,190px);--spread:calc(var(--card) * .3)}}
@media (prefers-reduced-motion:reduce){.ig-card{transition:none}}

/* Partner */
.partners{position:relative;z-index:2;background:#fff;color:var(--ink);padding:clamp(48px,6vw,90px) var(--m)}
.partners ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(32px,7vw,110px)}
.partners img{display:block;height:clamp(64px,7.5vw,104px);width:auto}
.partners .logo-wide{height:clamp(42px,4.8vw,66px)}

/* Fragen */
.faq{color:var(--ink);padding:0 var(--m);display:grid;grid-template-columns:5fr 7fr;gap:var(--m);margin-top:clamp(20px,3vw,50px)}
.faq h3{font-size:clamp(2.2rem,4vw,4.2rem)}
details{background:#fff;margin-bottom:8px;border-radius:16px;overflow:hidden}
summary{padding:1em 1.2em;font:400 var(--step-body)/1.35 var(--display);letter-spacing:-.01em;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;transition:background-color 200ms ease}
summary::-webkit-details-marker{display:none}
summary::after{content:"";flex:none;width:16px;height:16px;margin-top:.35em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0v16M0 8h16' stroke='%230e1512' stroke-width='2'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform 240ms var(--ease-out)}
details[open] summary::after{transform:rotate(135deg)}
details.is-closing summary::after{transform:none}
@media (hover:hover){summary:hover{background:#0e151208}}
details>div{padding:0 1.2em 1.2em;overflow:hidden}
details>div p+p{margin-top:.7em}
@media (max-width:1000px){.faq{grid-template-columns:1fr}}

/* Abschluss */
main{position:relative;z-index:1}
.foot{position:relative;z-index:2;background:url(img/contours-light.svg) center/cover var(--ink);color:var(--cream);padding:clamp(40px,6vw,80px) var(--m) var(--m)}
.foot-big{font:300 clamp(2.6rem,10vw,11rem)/1 var(--display);letter-spacing:-.04em}
.foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--m);margin-top:clamp(30px,4vw,60px);font-size:var(--step-small)}
.foot h2{font:500 var(--step-small)/1.3 var(--display);letter-spacing:0;margin-bottom:.6em}
.foot li{margin-bottom:.15em}
.foot-note{margin-top:1em}
@media (max-width:760px){.foot-cols{grid-template-columns:1fr}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}
  .js .hero-video,.js .hero h1 span,.js .hero-side,.js .words-after,.js .kurs,.js .hotel-pics figure,.js .ticket:not(.is-in){opacity:1;filter:none;transform:none}
  .hero{position:relative}
  .flight-ball{display:none}
  .words{height:auto}
  .words-stage{position:relative;height:auto;display:block;padding:110px var(--m) var(--m)}
  .words-after{position:relative;left:auto;right:auto;bottom:auto;margin:40px auto}
  .words-field{clip-path:inset(0 0 100% 0)!important}
  .micha-film{position:relative;inset:auto;width:100%;height:62svh;clip-path:inset(0 round var(--r))}
}

/* Impressum */
.legal{background:var(--paper);color:var(--ink);min-height:100svh;padding:clamp(90px,12vw,150px) var(--m) 80px}
.legal>*{max-width:68ch}
.legal h1{font-size:var(--step-head);margin-bottom:.5em}
.legal h2{font-size:clamp(1.4rem,1.2rem + .8vw,2rem);margin:1.6em 0 .4em;font-weight:400;letter-spacing:-.02em}
.legal :focus-visible{outline-color:var(--ink)}
.legal h3{font:400 clamp(1.15rem,1.05rem + .4vw,1.4rem)/1.3 var(--display);letter-spacing:-.01em;margin:1.4em 0 .35em}
.legal h4{font:500 var(--step-body)/1.35 var(--display);margin:1.1em 0 .3em}
.legal p+p,.legal p+ul,.legal ul+p{margin-top:.8em}
.legal ul{padding-left:1.2em}.legal li{margin:.4em 0}
.legal a{overflow-wrap:anywhere}
.legal h1,.legal h2,.legal h3{overflow-wrap:break-word;hyphens:auto}
