@font-face{font-family:Hind;src:url('fonts/hind-400.woff2') format('woff2');font-display:swap}
@font-face{font-family:Hind;src:url('fonts/hind-700.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:Satisfy;src:url('fonts/satisfy-400.woff2') format('woff2');font-display:swap}
:root{--ink:#11252d;--lime:#c8d400;--olive:#5f6700;--soft:#f8f9f9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:16px/1.45 Hind,Arial,sans-serif}img{display:block;max-width:100%}a{color:inherit}:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.footer :focus-visible,.closing :focus-visible,.lightbox :focus-visible,.lang-hint :focus-visible{outline-color:var(--lime)}
.wrap{max-width:1240px;margin-inline:auto;padding-inline:20px}.skip-link{position:fixed;top:-60px;left:10px;z-index:100;background:var(--ink);color:#fff;padding:8px 15px}.skip-link:focus{top:10px}
.site-header{height:90px;margin-bottom:-90px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.87);box-shadow:0 1px 2px #0001}.nav{height:90px;max-width:1100px;margin:auto;display:grid;grid-template-columns:1fr 110px 1fr;align-items:center;position:relative}.nav-side{display:flex;align-items:center;gap:40px}.nav-left{justify-content:flex-start;padding-left:55px}.nav-right{justify-content:flex-end;padding-right:30px}.nav-side a{font:20px/1 'Times New Roman',Times,serif;text-decoration:none;padding:35px 0 32px;border-bottom:3px solid transparent;white-space:nowrap}.nav-side a.active,.nav-side a:hover{color:var(--olive);border-color:var(--lime)}.nav-logo{display:grid;place-items:center;height:90px}.nav-logo img{width:84px;height:auto}.language-link{position:absolute;right:-60px;top:34px;font:12px Hind,Arial,sans-serif;text-decoration:none;text-transform:uppercase}
.hero{position:relative;display:grid;place-items:center;overflow:hidden}.hero-home{height:550px;min-height:550px;text-align:center}.hero-video,.hero-overlay{position:absolute;inset:0;width:100%;height:100%}.hero-video{object-fit:cover;opacity:0;transition:opacity 1.4s linear;pointer-events:none}.hero-video.is-visible{opacity:1}.hero-overlay{background:rgba(255,255,255,.38)}.hero-copy{position:relative;z-index:1;margin-top:65px;padding:16px}.hero-logo{width:210px;height:auto;margin:0 auto 20px}h1,h2,h3,p{margin-top:0}.hero-home h1{font:700 clamp(36px,4.5vw,50px)/1.1 'Times New Roman',Times,serif;margin:0 0 18px;text-shadow:0 0 4px #fff,0 0 14px #fff}.hero-home .hero-copy>p{font:20px/1.3 'Times New Roman',Times,serif;color:var(--olive);text-shadow:0 0 3px #fff,0 0 10px #fff,0 0 18px #fff;margin-bottom:24px}.hero-actions{display:flex;justify-content:center;gap:20px}.button{display:inline-grid;place-items:center;width:180px;min-height:48px;background:var(--ink);color:#fff;text-decoration:none;font:700 14px 'Times New Roman',Times,serif}.button:hover{background:var(--lime);color:var(--ink)}.video-toggle{position:absolute;bottom:18px;right:18px;z-index:3;width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;background:#fffd;color:var(--ink);cursor:pointer}.hero-inner{height:350px;background-position:center;background-size:cover}.hero-inner h1{font:normal clamp(45px,5vw,60px)/1 'Times New Roman',Times,serif;color:#fff;text-shadow:0 1px 3px #3338;margin:80px 0 0}
.home-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:70px;padding-bottom:85px}.home-card{text-align:center;text-decoration:none;min-width:0}.home-card img{width:100%;height:auto;aspect-ratio:700/910;object-fit:cover}.home-card span{display:block;font:26px/28px Satisfy,cursive;margin-top:14px}.home-card span:after{content:'';display:block;width:80px;height:2px;background:var(--lime);margin:18px auto 0}
.home-row{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding-top:70px;padding-bottom:70px}.row-text,.row-media{padding:0 50px}.row-text{border-left:1px solid var(--lime)}.row-guesthouse .row-text,.row-news .row-text{border-left:0}.row-guesthouse .row-media,.row-news .row-media{border-left:1px solid var(--lime)}.row-text h2,.inner-intro h2,.services h2,.impressions h2,.rooms h2{font:700 42px/1.15 Satisfy,cursive;margin-bottom:16px}.row-text h3,.inner-side h3{font:26px/1.2 Satisfy,cursive;margin-bottom:18px}.row-text p{margin:0 0 15px}.row-text a,.inner-side a{text-decoration:none}.row-text a:hover,.inner-side a:hover{text-decoration:underline}.row-welcome .row-media{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:25px}.welcome-logo{width:150px;height:auto}.welcome-building{width:225px;height:300px;object-fit:cover}.row-guesthouse,.row-news{background:#fafbfc}.row-guesthouse .row-media img,.row-news .row-media img{width:100%;height:430px;object-fit:cover}.row-news .row-media img{height:420px}.signature{font:21px Satisfy,cursive}
.services{padding-top:70px;padding-bottom:70px}.services-heading{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-bottom:45px;border-bottom:1px solid var(--lime)}.services-heading h2{text-align:center}.services-heading p{font:27px/1.2 Satisfy,cursive}.services-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;row-gap:30px;padding-top:55px}.service{display:flex;align-items:flex-start;gap:20px}.service img{width:77px;height:77px;object-fit:contain;flex:none}.service h3{font:26px/1.2 Satisfy,cursive;margin:0 0 8px}.service p{margin:0}.impressions{padding:70px 0;text-align:center;background:var(--soft)}.impression-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:35px 0}.impression-grid img{width:100%;height:170px;object-fit:cover}.text-link{font:24px Satisfy,cursive;text-decoration:none}
.inner-intro{display:grid;grid-template-columns:1fr 1fr;padding-top:70px;padding-bottom:70px}.inner-main{padding:0 40px 0 0;text-align:right}.inner-main h2{margin-bottom:15px}.inner-main p{margin-bottom:15px}.inner-side{border-left:1px solid var(--lime);padding:0 0 0 50px}.inner-side p{margin-bottom:15px}.mini-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:35px 0}.mini-gallery img{width:100%;height:160px;object-fit:cover}.inner-blocks{padding-bottom:70px}.inner-block{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:45px 0;border-top:1px solid #e4e8e8}.inner-block:nth-child(even) img{order:2}.inner-block img{width:100%;height:290px;object-fit:cover}.inner-block h2{font:700 38px Satisfy,cursive}.rooms{text-align:center;padding-bottom:80px}.rooms-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;text-align:left;margin-top:35px}.rooms-grid article{background:var(--soft)}.rooms-grid img{height:310px;width:100%;object-fit:cover}.rooms-grid article div{padding:25px}.rooms-grid span{color:var(--olive)}.rooms-grid h3{font:32px Satisfy,cursive;margin:5px 0 15px}
.booking-strip{text-align:center;padding:30px 20px 55px}.booking-strip a{display:inline-block;background:var(--lime);padding:14px 30px;min-width:250px;font:700 32px Satisfy,cursive;text-decoration:none}.booking-strip a:hover{background:var(--ink);color:#fff}.closing{min-height:295px;display:grid;place-items:center;text-align:center;padding:50px 20px;background:var(--ink) url("images/closing-fern.jpg") center 43%/cover no-repeat;color:#fff}.closing p{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;font:700 50px/1.15 Satisfy,cursive;margin:0}.closing img{display:inline-block;width:145px;height:auto}.footer{background:var(--ink);color:#fff}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;padding-top:55px;padding-bottom:45px}.footer h2{font:26px/1.2 Satisfy,cursive;margin-bottom:18px}.footer p{margin-bottom:22px}.footer a{display:inline;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-brand{display:flex;justify-content:center;align-items:flex-start}.footer-brand img{width:220px;height:auto}.footer-links a:not(.facebook-link){display:block}.footer-social-title{margin-top:45px}.facebook-link{display:grid!important;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--lime);color:var(--ink);font:bold 36px/1 Arial,sans-serif}.copyright{text-align:center;padding:16px;border-top:1px solid #ffffff26;font-size:13px}
@media(max-width:1000px){.nav{padding:0 22px}.nav-side{gap:20px}.nav-left{padding-left:0}.nav-right{padding-right:0}.language-link{right:5px;top:72px}.nav-side a{font-size:17px}.row-text,.row-media{padding-inline:30px}}
@media(max-width:700px){.site-header{height:auto;min-height:76px;margin-bottom:-76px}.nav{height:auto;min-height:76px;display:flex;flex-wrap:wrap;justify-content:center;padding:4px 12px 8px}.nav-logo{order:-2;height:65px}.nav-logo img{width:65px}.language-link{position:static;order:-1;margin-left:auto}.nav-side{order:2;width:100%;justify-content:space-around;gap:6px}.nav-side a{padding:6px 0;font-size:16px}.nav-right{order:3}.hero-home{height:570px;min-height:570px}.hero-copy{margin-top:115px}.hero-logo{width:150px;margin-bottom:14px}.hero-home h1{font-size:36px}.hero-home .hero-copy>p{font-size:17px;margin-bottom:20px}.hero-actions{gap:10px}.button{width:135px}.hero-inner{height:330px}.hero-inner h1{margin-top:145px;font-size:45px}.home-cards{grid-template-columns:1fr;max-width:420px;gap:45px;padding-top:50px}.home-card img{max-height:none}.home-row,.inner-intro,.services-heading,.services-grid,.inner-block,.rooms-grid,.footer-grid{grid-template-columns:1fr}.home-row{padding-block:45px}.row-text,.row-media,.inner-main,.inner-side{padding:20px 5px;border:0;text-align:left}.row-guesthouse .row-media,.row-news .row-media,.inner-side{border:0}.row-welcome .row-media{order:2}.inner-intro{padding-top:45px}.inner-main{text-align:left}.inner-side{border-top:1px solid var(--lime);padding-top:25px}.mini-gallery{gap:8px}.mini-gallery img{height:100px}.row-guesthouse .row-media img,.row-news .row-media img{height:300px}.services-heading{gap:0}.services-heading h2{text-align:left}.services-grid{gap:25px}.impression-grid{grid-template-columns:repeat(2,1fr)}.impression-grid img{height:150px}.footer-grid{gap:25px}.inner-block:nth-child(even) img{order:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(max-width:700px){.closing{min-height:240px}.closing p{font-size:36px;gap:12px}.closing img{width:100px}.footer-brand{justify-content:flex-start}.footer-brand img{width:190px}.footer-social-title{margin-top:25px}}
.gallery-thumb{display:block;overflow:hidden;cursor:zoom-in}.gallery-thumb img{transition:transform .45s ease}.gallery-thumb:hover img,.gallery-thumb:focus-visible img{transform:scale(1.08)}
.lightbox{position:fixed;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:35px 70px;border:0;background:rgba(10,20,24,.96);color:#fff}.lightbox::backdrop{background:rgba(0,0,0,.8)}.lightbox[open]{display:grid;grid-template-columns:50px minmax(0,1fr) 50px;align-items:center;gap:12px}.lightbox-image{grid-column:2;grid-row:1;justify-self:center;max-width:100%;max-height:calc(100vh - 100px);object-fit:contain}.lightbox button{border:0;background:#ffffff24;color:#fff;cursor:pointer}.lightbox button:hover{background:#ffffff50}.lightbox-prev,.lightbox-next{grid-row:1;width:50px;height:60px;font:48px/1 Arial,sans-serif}.lightbox-prev{grid-column:1}.lightbox-next{grid-column:3}.lightbox-close{position:absolute;top:16px;right:20px;width:46px;height:46px;font:36px/1 Arial,sans-serif}.lightbox-counter{position:absolute;bottom:15px;left:0;right:0;margin:0;text-align:center;font:16px Hind,Arial,sans-serif}
@media(max-width:700px){.lightbox{padding:55px 8px 45px}.lightbox[open]{grid-template-columns:38px minmax(0,1fr) 38px;gap:4px}.lightbox-prev,.lightbox-next{width:38px;height:48px;font-size:36px}.lightbox-image{max-height:calc(100vh - 120px)}}
@media(prefers-reduced-motion:reduce){.gallery-thumb img{transition:none}.gallery-thumb:hover img,.gallery-thumb:focus-visible img{transform:none}}
.hero-legal{background-image:url('images/closing-fern.jpg')}.legal-content{max-width:920px;padding-top:60px;padding-bottom:90px;overflow-wrap:anywhere}.legal-content h2{font:700 34px/1.2 Satisfy,cursive;margin:38px 0 15px}.legal-content h3{font:700 23px/1.3 Hind,Arial,sans-serif;margin:30px 0 12px}.legal-content h4{font:700 19px/1.3 Hind,Arial,sans-serif;margin:26px 0 10px}.legal-content p,.legal-content li{line-height:1.65;margin-bottom:16px}.legal-content ul{padding-left:25px;margin-bottom:20px}.copyright p{margin:0}.back-to-top{display:grid!important;place-items:center;width:48px;height:48px;margin:0 auto 15px;border-radius:50%;background:var(--lime);color:var(--ink);font:30px/1 Hind,Arial,sans-serif;transition:transform .2s ease,background .2s ease}.back-to-top:hover{background:#fff;transform:translateY(-4px);text-decoration:none!important}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top:hover{transform:none}}
.nav-toggle{display:none}
#inhalt,#aktuelles{scroll-margin-top:90px}
@media(max-width:900px){
  .site-header{height:72px;min-height:72px;margin-bottom:-72px;background:#fff}
  .nav{height:72px;min-height:72px;max-width:none;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;padding:0 20px}
  .nav-logo{grid-column:1;grid-row:1;justify-self:start;order:0;height:72px}
  .nav-logo img{width:68px}
  .language-link{position:static;grid-column:2;grid-row:1;order:0;margin:0;font-size:12px}
  .nav-toggle{grid-column:3;grid-row:1;display:flex;align-items:center;gap:8px;min-height:44px;padding:6px 0 6px 8px;border:0;background:transparent;color:var(--ink);font:16px Hind,Arial,sans-serif;cursor:pointer}
  .nav-toggle-icon{position:relative;display:block;width:20px;height:2px;background:currentColor}
  .nav-toggle-icon:before,.nav-toggle-icon:after{content:'';position:absolute;left:0;width:20px;height:2px;background:currentColor;transition:transform .2s ease}
  .nav-toggle-icon:before{top:-6px}.nav-toggle-icon:after{top:6px}
  .nav.is-open .nav-toggle-icon{background:transparent}
  .nav.is-open .nav-toggle-icon:before{transform:translateY(6px) rotate(45deg)}
  .nav.is-open .nav-toggle-icon:after{transform:translateY(-6px) rotate(-45deg)}
  .nav-side{display:none;position:absolute;left:0;right:0;width:auto;gap:0;padding:0 12px;background:#fff;box-shadow:0 8px 14px #0002}
  .nav.is-open .nav-side{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .nav-left{top:72px}.nav-right{top:122px;border-top:1px solid #e5e8e8}
  .nav-side a{min-height:50px;padding:15px 4px;text-align:center;font-size:16px;white-space:normal}
  #inhalt,#aktuelles{scroll-margin-top:72px}
}
@media(max-width:700px){
  .hero-home{height:520px;min-height:520px}
  .hero-copy{margin-top:65px}
  .hero-inner h1{margin-top:72px}
  .home-cards{gap:32px;padding-top:48px;padding-bottom:35px}
  .home-row{padding-block:32px}
  .row-text,.row-media{padding-block:12px}
  .row-text h2,.inner-intro h2,.services h2,.impressions h2,.rooms h2{font-size:34px}
  .row-text h3,.inner-side h3{font-size:24px}
  .services,.impressions{padding-block:45px}
  .inner-intro{padding-bottom:45px}
  .inner-blocks{padding-bottom:45px}
  .rooms{padding-bottom:50px}
}
@media(min-width:701px) and (max-width:900px){
  .home-row,.inner-intro{grid-template-columns:1fr}
  .home-row{padding-block:50px}
  .row-text,.row-media{padding:20px 50px;border:0!important}
  .row-welcome .row-media{order:2}
  .inner-main,.inner-side{padding:0 30px;text-align:left}
  .inner-side{border-left:0;border-top:1px solid var(--lime);margin-top:20px;padding-top:25px}
}
@media(max-width:380px){.nav{gap:10px;padding:0 14px}.hero-home h1{font-size:32px}.hero-actions .button{width:128px}}
@media(prefers-reduced-motion:reduce){.nav-toggle-icon:before,.nav-toggle-icon:after{transition:none}}
.inner-quote{margin:0;padding:45px 20px;border-top:1px solid #e4e8e8;text-align:center}.inner-quote blockquote{margin:0}.inner-quote p{font:700 34px/1.25 Satisfy,cursive;margin:0 0 10px}.inner-quote figcaption{font:18px 'Times New Roman',Times,serif;color:var(--olive)}.inner-block .signature{margin:0 0 4px;color:var(--olive)}
@media(max-width:700px){.inner-quote p{font-size:27px}}
.hero-hotel{background-image:url('images/hero-hotel.jpg')}.hero-fruehstueck{background-image:url('images/hero-fruehstueck.jpg')}.hero-bewegung{background-image:url('images/hero-bewegung.jpg')}.hero-vilsen{background-image:url('images/hero-vilsen.jpg')}.hero-kontakt{background-image:url('images/hero-kontakt.jpg')}
.lang-hint{position:fixed;left:16px;bottom:16px;z-index:40;max-width:min(380px,calc(100vw - 32px));margin:0;padding:14px 54px 14px 18px;background:var(--ink);color:#fff;box-shadow:0 6px 20px #0004}.lang-hint[hidden]{display:none}.lang-hint p{margin:0;line-height:1.4}.lang-hint a{color:#fff;font-weight:700;text-decoration:underline;text-decoration-color:var(--lime);text-underline-offset:3px;white-space:nowrap}.lang-hint-close{position:absolute;top:4px;right:4px;width:44px;height:44px;border:0;background:transparent;color:#fff;font:28px/1 Arial,sans-serif;cursor:pointer}.lang-hint-close:hover{color:var(--lime)}

/* ---- Wirkung (25.09.2026): größeres Kopfbild, lesbare Seitentitel, Karten, Collage, Buchen-Knopf, Einblenden ---- */
.hero-home{height:auto;min-height:min(70vh,640px)}
.hero-copy{margin-top:80px;padding-bottom:30px}
.hero-inner{height:auto;min-height:min(52vh,480px);isolation:isolate}
.hero-inner::before{content:'';position:absolute;inset:0;z-index:-2;background:inherit;background-size:cover;background-position:center;animation:hero-zoom 22s ease-out both}
.hero-inner::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(17,37,45,.05) 30%,rgba(17,37,45,.55))}
.hero-inner h1{margin:90px 0 0;font-size:clamp(48px,6vw,76px);text-shadow:0 2px 14px rgba(0,0,0,.35);letter-spacing:.01em}
@keyframes hero-zoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.inner-main{text-align:left}
.inner-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));column-gap:28px}
.inner-block:not(.text-only),.inner-quote{grid-column:1/-1}
.inner-block.text-only{display:block;align-self:start;margin-top:45px;padding:34px 32px 26px;background:var(--soft);border-top:3px solid var(--lime)}
.inner-block.text-only h2{font-size:34px;line-height:1.15;margin-bottom:14px}
.inner-block.text-only p{max-width:72ch}
.inner-block:not(.text-only) img{height:340px;border-radius:2px}
.impression-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:12px}
.impression-grid .gallery-thumb:first-child{grid-column:span 2;grid-row:span 2}
.impression-grid img{height:100%}
.home-card{overflow:hidden}.home-card img{transition:transform .6s ease}.home-card:hover img,.home-card:focus-visible img{transform:scale(1.04)}
.book-float{position:fixed;right:16px;bottom:16px;z-index:35;display:inline-grid;place-items:center;min-height:52px;padding:0 26px;background:var(--lime);color:var(--ink);font:700 16px/1 'Times New Roman',Times,serif;letter-spacing:.06em;text-decoration:none;box-shadow:0 8px 24px rgba(17,37,45,.28);transform:translateY(140%);transition:transform .35s ease}
.book-float.is-shown{transform:none}.book-float:hover{background:var(--ink);color:#fff}
.lang-hint{bottom:84px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:700px){
  .hero-home{min-height:min(72svh,600px)}
  .hero-copy{margin-top:60px}
  .hero-inner{min-height:300px}
  .hero-inner h1{margin-top:72px;font-size:46px}
  .home-card img{aspect-ratio:4/3}
  .inner-block.text-only{padding:26px 20px 18px}
  .inner-block:not(.text-only) img{height:240px}
  .impression-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:140px;gap:8px}
  .impression-grid .gallery-thumb:first-child{grid-row:span 1}
  .book-float{left:16px;right:16px}
  .lang-hint{bottom:80px}
}
@media(prefers-reduced-motion:reduce){.hero-inner::before{animation:none}.reveal{opacity:1;transform:none;transition:none}.book-float,.home-card img{transition:none}.home-card:hover img{transform:none}}
@media print{.book-float,.lang-hint{display:none}}
/* Zitat und einzelner Textabschnitt wie im Original: Sterne, Blätter-Muster, grüne Linie; grauer Streifen mit zwei Spalten */
.inner-quote{position:relative;isolation:isolate;border-top:0;padding:50px 20px 60px;clip-path:inset(0 -100vmax)}
.inner-quote::before{content:'';position:absolute;inset:0 -100vmax;z-index:-1;background:url('images/muster-blaetter.jpg') center/375px repeat}
.inner-quote img{margin:0 auto 22px;width:130px;height:auto}
.inner-quote p{font-size:clamp(30px,3.4vw,44px);max-width:900px;margin:0 auto 14px}
.inner-quote figcaption{color:var(--ink);font-size:17px}
.inner-quote::after{content:'';display:block;width:min(420px,60%);height:2px;margin:40px auto 0;background:var(--lime)}
.inner-block.text-wide{grid-column:1/-1;margin-top:0;padding:60px 0;background:#f8f9f9;border-top:0;box-shadow:0 0 0 100vmax #f8f9f9;clip-path:inset(0 -100vmax);display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:start}
.inner-block.text-wide h2{font-weight:400;font-size:32px;margin-bottom:18px}
.inner-block.text-wide p{max-width:none}.inner-block.text-wide>div{display:contents}
@media(max-width:800px){.inner-block.text-wide{grid-template-columns:1fr}}

/* ---- Wirkung II: Auftritt, Scroll-Linie, Zahlen-Band, Bild-Vorhang, Parallax, Karte ---- */
.hero-copy>*{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.hero-copy>:nth-child(1){animation-delay:.1s}.hero-copy>:nth-child(2){animation-delay:.3s}.hero-copy>:nth-child(3){animation-delay:.5s}.hero-copy>:nth-child(4){animation-delay:.7s}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.scroll-progress{position:absolute;left:0;bottom:-3px;width:100%;height:3px;background:var(--lime);transform-origin:0 50%;transform:scaleX(var(--progress,0))}
.facts{background:var(--ink);color:#fff;padding:56px 0}
.facts-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0 auto;padding-left:20px;list-style:none;text-align:center}
.facts-list li{display:flex;flex-direction:column;align-items:center}
.fact-num{font:700 clamp(46px,5vw,68px)/1 'Times New Roman',Times,serif;color:var(--lime);font-variant-numeric:tabular-nums}
.fact-unit{font:700 22px/1 'Times New Roman',Times,serif;color:var(--lime);margin-top:4px}
.fact-label{font:24px/1.25 Satisfy,cursive;margin-top:10px;max-width:14ch}
.reveal-img{clip-path:inset(100% 0 0 0);transition:clip-path 1.1s cubic-bezier(.6,0,.2,1)}.reveal-img.is-visible{clip-path:inset(0 0 0 0)}
.inner-quote::before{background-position:center calc(50% + var(--parallax,0px))}
.closing{position:relative;isolation:isolate;overflow:hidden;background-image:none}.closing::before{content:'';position:absolute;inset:-80px 0;z-index:-1;background:url('images/closing-fern.jpg') center 43%/cover no-repeat;transform:translateY(var(--parallax,0px))}
.map-section{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:center;padding-top:30px;padding-bottom:70px}
.map-text h2{font:700 42px/1.15 Satisfy,cursive;margin-bottom:16px}.map-note{font-size:14px;color:#4a5a60}
.map{width:100%;height:auto;max-height:560px}
.map-land{fill:#f3f5ec;stroke:#e1e6d2;stroke-width:1}
.map-road{fill:none;stroke:var(--ink);stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}
.map.will-draw .map-road{stroke-dashoffset:1}.map.is-visible .map-road{stroke-dashoffset:0;transition:stroke-dashoffset 2.2s ease-in-out}
.map-road-label{font:700 18px Arial,sans-serif;fill:#fff;paint-order:stroke;stroke:var(--ink);stroke-width:10px;stroke-linejoin:round}
.map-river{fill:none;stroke:#9cc3d5;stroke-width:7;stroke-linecap:round}.map-river-label{font:italic 16px Hind,Arial,sans-serif;fill:#3d7189}.map-town{fill:#fff;stroke:var(--ink);stroke-width:2}.map-city{fill:var(--ink)}
.map-here{fill:var(--lime);stroke:var(--ink);stroke-width:3}
.map-pulse{fill:var(--lime);opacity:.6;transform-box:fill-box;transform-origin:center;animation:pulse 2.2s ease-out infinite}
@keyframes pulse{from{transform:scale(1);opacity:.6}to{transform:scale(3.2);opacity:0}}
.map-label{font:700 22px 'Times New Roman',Times,serif;fill:var(--ink)}.map-label-here{font-size:24px}
.map-km{font:16px Hind,Arial,sans-serif;fill:#3c4c52}.map-small{font:14px Hind,Arial,sans-serif;fill:#4a5a60}
@media(max-width:800px){.facts-list{grid-template-columns:repeat(2,1fr);row-gap:36px}.facts-list li:last-child:nth-child(odd){grid-column:1/-1}.map-section{grid-template-columns:1fr;gap:20px}}
@media(max-width:700px){.facts{padding:44px 0}.fact-label{font-size:21px}.map-text h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.hero-copy>*,.map-pulse{animation:none}.reveal-img{clip-path:none;transition:none}.map.will-draw .map-road{stroke-dashoffset:0}}

/* ---- Wirkung III: Live-Anzeige, Anzeige-Schalter, Wischen, Blatt-Linie ---- */
.live-status{display:inline-flex;align-items:center;gap:10px;margin:22px auto 0;padding:7px 16px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--ink);font:15px/1.3 Hind,Arial,sans-serif;box-shadow:0 2px 10px rgba(17,37,45,.12)}
.live-status[hidden]{display:none}.inner-side .live-status{margin:0 0 15px;background:var(--soft)}
.live-dot{flex:none;width:10px;height:10px;border-radius:50%;background:#8a9699}
.live-status.is-open .live-dot{background:#3f9a3a;box-shadow:0 0 0 0 rgba(63,154,58,.5);animation:live-pulse 2s infinite}
@keyframes live-pulse{70%{box-shadow:0 0 0 9px rgba(63,154,58,0)}100%{box-shadow:0 0 0 0 rgba(63,154,58,0)}}
.a11y-toggle{position:absolute;right:-112px;top:24px;width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;background:#fff;color:var(--ink);font:700 15px/1 'Times New Roman',Times,serif;cursor:pointer}
.a11y-toggle[aria-expanded="true"],.a11y-toggle:hover{background:var(--ink);color:#fff}
.a11y-panel{position:absolute;top:calc(100% + 8px);right:-112px;z-index:60;width:300px;padding:18px 20px;background:#fff;color:var(--ink);box-shadow:0 12px 32px rgba(17,37,45,.22);border-top:3px solid var(--lime)}
.a11y-panel[hidden]{display:none}.a11y-title{font:28px/1.2 Satisfy,cursive;margin:0 0 10px}
.a11y-option{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;font:17px Hind,Arial,sans-serif;cursor:pointer}
.a11y-option input{position:absolute;opacity:0;width:44px;height:26px;margin:0}
.a11y-switch{position:relative;flex:none;width:44px;height:26px;border-radius:13px;background:#b9c2c4;transition:background .2s}
.a11y-switch::after{content:'';position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}
.a11y-option input:checked+.a11y-switch{background:var(--ink)}.a11y-option input:checked+.a11y-switch::after{transform:translateX(18px);background:var(--lime)}
.a11y-option input:focus-visible+.a11y-switch{outline:3px solid var(--ink);outline-offset:3px}
.a11y-actions{display:flex;justify-content:space-between;gap:10px;margin-top:12px}
.a11y-actions button{min-height:40px;padding:0 14px;border:1px solid var(--ink);background:#fff;color:var(--ink);font:15px Hind,Arial,sans-serif;cursor:pointer}.a11y-actions .a11y-close{background:var(--ink);color:#fff}
@media(max-width:1000px){.a11y-toggle{right:60px;top:64px;width:34px;height:34px}.a11y-panel{right:0}}
@media(max-width:900px){.nav{grid-template-columns:minmax(0,1fr) auto auto auto}.a11y-toggle{position:static;grid-column:2;grid-row:1;width:40px;height:40px}.language-link{grid-column:3}.nav-toggle{grid-column:4}.a11y-panel{right:12px;top:calc(100% + 4px);width:min(300px,calc(100vw - 24px))}}
.a11y-large body{zoom:1.2}
.a11y-contrast{--olive:#3a4100}.a11y-contrast body{color:#000}.a11y-contrast .site-header{background:#fff}
.a11y-contrast .hero-overlay{background:rgba(255,255,255,.82)}.a11y-contrast .hero-inner::after{background:rgba(17,37,45,.62)}
.a11y-contrast .inner-quote::before{opacity:.25}.a11y-contrast .map-note,.a11y-contrast .map-small,.a11y-contrast .map-km{color:#000;fill:#000}
.a11y-contrast main a:not(.button):not(.home-card):not(.gallery-thumb):not(.book-float),.a11y-contrast .footer a:not(.facebook-link):not(.back-to-top){text-decoration:underline}
.a11y-still,.a11y-still *,.a11y-still *::before,.a11y-still *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.a11y-still .reveal,.a11y-still .reveal-img{opacity:1!important;transform:none!important;clip-path:none!important}
.a11y-still .map.will-draw .map-road,.a11y-still .leaf-divider.will-draw .leaf-stem{stroke-dashoffset:0}.a11y-still .leaf-divider.will-draw .leaf-shape{opacity:1;transform:none}
.leaf-divider{max-width:420px;margin:10px auto;padding:0 20px}.leaf-divider svg{display:block;width:100%;height:auto}
.leaf-stem{fill:none;stroke:var(--olive);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}
.leaf-shape{fill:var(--lime);transform-box:fill-box;transform-origin:100% 0}
.leaf-divider.will-draw .leaf-stem{stroke-dashoffset:1}.leaf-divider.will-draw .leaf-shape{opacity:0;transform:scale(.3) rotate(-20deg)}
.leaf-divider.is-visible .leaf-stem{stroke-dashoffset:0;transition:stroke-dashoffset 1.4s ease-in-out}
.leaf-divider.is-visible .leaf-shape{opacity:1;transform:none;transition:opacity .6s ease 1.1s,transform .8s cubic-bezier(.3,1.4,.5,1) 1.1s}
.swipe-dots{display:none}
@media(max-width:700px){
  .impression-grid,.rooms-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-20px;padding:0 20px 6px;scroll-padding:0 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .impression-grid::-webkit-scrollbar,.rooms-grid::-webkit-scrollbar{display:none}
  .impression-grid .gallery-thumb,.impression-grid .gallery-thumb:first-child{flex:0 0 84%;height:280px;scroll-snap-align:start}
  .rooms-grid article{flex:0 0 86%;scroll-snap-align:start}
  .swipe-dots{display:flex;justify-content:center;gap:4px;margin:10px 0 0}
  .swipe-dots button{width:28px;height:28px;padding:0;border:0;background:transparent;cursor:pointer}
  .swipe-dots button::before{content:'';display:block;width:9px;height:9px;margin:auto;border-radius:50%;background:#b9c2c4;transition:transform .2s,background .2s}
  .swipe-dots button[aria-current="true"]::before{background:var(--ink);transform:scale(1.3)}
}
@media(prefers-reduced-motion:reduce){.live-status.is-open .live-dot{animation:none}.leaf-divider.will-draw .leaf-stem{stroke-dashoffset:0}.leaf-divider.will-draw .leaf-shape{opacity:1;transform:none}}
/* Sprache und „Aa“ innerhalb der Menübreite, damit nichts über den Rand ragt (auch bei größerer Schrift) */
@media(min-width:901px){.nav-right{padding-right:118px}.language-link{right:62px;top:37px}.a11y-toggle{right:10px;top:25px;width:40px;height:40px}.a11y-panel{right:0}}

@media(max-width:700px){.hero-home .hero-copy{padding-bottom:72px}}
/* Randlose Hintergründe (Zitat, grauer Streifen) dürfen die Seite nicht seitlich verschiebbar machen */
main{overflow-x:hidden;overflow-x:clip}
