/* Layout: Kachel-Raster wie der Instagram-Feed – harte Farbflächen, Fotos, die aus ihrer Fläche ragen,
   Winkel-Klammern aus dem Logo als Rahmen. Keine Rundungen, keine weichen Schatten. */
:root{
  --blau:#469bc3; --blau-tief:#27688b; --gelb:#ffd250; --mint:#d6e9d8; --beige:#ebdfd4; --blush:#efc2b7; --wald:#005831;
  --anthrazit:#454d59; --tinte:#2b3138; --papier:#fbfaf7; --weiss:#ffffff; --linie:#d8d1c4; --leise:#59616c;
  --display:"Lexend",Arial,sans-serif; --lauf:"DM Sans",Arial,sans-serif;
  --rand:24px; --breite:1180px;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box;border-radius:0}
*{margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font:400 1.0625rem/1.6 var(--lauf);color:var(--tinte);background:var(--papier);overflow-x:hidden}
img,video,svg{display:block;max-width:100%}
[hidden]{display:none!important}
img{height:auto}
button,input,textarea,select{font:inherit;color:inherit}
a{color:var(--blau-tief)}
:focus-visible{outline:3px solid var(--tinte);outline-offset:3px}
.dunkel :focus-visible,.buehne :focus-visible,.fotoband :focus-visible{outline-color:var(--gelb)}
section[id],div[id]{scroll-margin-top:84px}

.wrap{max-width:var(--breite);margin-inline:auto;padding-inline:var(--rand)}
.band{padding-block:clamp(64px,9vw,118px)}
.band.mint{background:var(--mint)}
.band.beige{background:var(--beige)}
.band.dunkel{background:var(--tinte);color:var(--weiss)}

/* Schrift */
h1,h2,h3,h4{font-family:var(--display);font-weight:700;line-height:1.02;letter-spacing:-.025em;text-wrap:balance}
.eyebrow{display:block;font:600 .76rem/1.3 var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--blau-tief);margin-bottom:14px}
.dunkel .eyebrow,.buehne .eyebrow,.anlass-buehne .eyebrow,.fotoband .eyebrow,.schluss .eyebrow{color:var(--gelb)}
.h2{font-size:clamp(2.2rem,5.4vw,4rem);max-width:14ch}
.h3{font-size:clamp(1.35rem,2.4vw,1.75rem);letter-spacing:-.015em;line-height:1.12}
.lead{font-size:clamp(1.08rem,1.5vw,1.22rem);max-width:60ch;color:var(--anthrazit)}
.lead strong{font-family:var(--display);font-weight:600;color:var(--tinte)}
.dunkel .lead{color:#dfe3e8}
.klein{font-size:.88rem;color:var(--leise)}
.kopfzeile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:end;margin-bottom:clamp(36px,5vw,64px)}
.kopfzeile.eng{display:block}
.kopfzeile.eng .lead{margin-top:20px}

/* Knöpfe */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;font:600 .98rem/1.1 var(--display);padding:15px 24px;border:2px solid var(--tinte);background:var(--gelb);color:var(--tinte);text-decoration:none;cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease);box-shadow:0 0 0 var(--schatten,var(--tinte))}
.btn:hover{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--schatten,var(--tinte))}
.btn:active{transform:none;box-shadow:0 0 0 var(--schatten,var(--tinte))}
.btn.weiss{background:var(--weiss)}
.btn.tinte{background:var(--tinte);color:var(--weiss);--schatten:var(--gelb)}
.btn.geist{background:transparent;color:var(--weiss);border-color:var(--weiss);--schatten:var(--gelb)}
.btn.klein-btn{padding:10px 16px;font-size:.86rem}
.btn svg{width:1em;height:1em;flex:none}
.btn-reihe{display:flex;flex-wrap:wrap;gap:12px}
.textlink{display:inline-flex;align-items:center;gap:.5em;font:600 .95rem/1.2 var(--display);color:var(--tinte);text-decoration:none;padding-bottom:4px;background:linear-gradient(var(--gelb),var(--gelb)) left bottom/100% 4px no-repeat;transition:background-size .25s var(--ease)}
.textlink:hover{background-size:100% 100%}
.textlink svg{width:1em;height:1em}
.dunkel .textlink{color:var(--weiss)}
.dunkel .textlink:hover{color:var(--tinte)}

/* Winkel-Klammern (aus dem Logo) */
.winkel{position:absolute;width:var(--w,34px);height:var(--w,34px);border:var(--d,7px) solid var(--k,var(--gelb));pointer-events:none}
.winkel.or{top:var(--a,18px);right:var(--a,18px);border-left:0;border-bottom:0}
.winkel.ur{bottom:var(--a,18px);right:var(--a,18px);border-left:0;border-top:0}
.winkel.ol{top:var(--a,18px);left:var(--a,18px);border-right:0;border-bottom:0}
.winkel.ul{bottom:var(--a,18px);left:var(--a,18px);border-right:0;border-top:0}

/* Foto auf versetzter Farbfläche */
.versatz{position:relative;isolation:isolate}
.versatz::before{content:"";position:absolute;inset:0;background:var(--fl,var(--gelb));transform:translate(var(--dx,18px),var(--dy,18px));z-index:-1;transition:transform .7s var(--ease)}
.versatz img{width:100%;height:100%;object-fit:cover}

/* Hinweis-Leisten: Vorschau, angemeldete Admins; Sprunglink für Tastatur */
.vorschau,.admin-leiste{background:var(--gelb);color:var(--tinte);font:600 .82rem/1.4 var(--display);text-align:center;padding:9px var(--rand)}
.admin-leiste a{color:var(--tinte)}
.sprung{position:absolute;left:var(--rand);top:-90px;z-index:200;background:var(--gelb);color:var(--tinte);font:600 .9rem/1 var(--display);padding:13px 16px;border:2px solid var(--tinte);text-decoration:none}
.sprung:focus{top:10px}

/* Kopf */
.kopf{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--papier);border-bottom:2px solid var(--tinte)}
.kopf-innen{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:var(--breite);margin-inline:auto;padding:12px var(--rand)}
.logo{display:block;flex:0 1 auto;min-width:0}
.logo img{height:28px;width:auto}
.menue ul{display:flex;gap:26px;list-style:none;align-items:center}
.menue a{display:block;font:500 .9rem/1.2 var(--display);color:var(--tinte);text-decoration:none;padding:7px 0;background:linear-gradient(var(--gelb),var(--gelb)) left bottom/0 4px no-repeat;transition:background-size .25s var(--ease)}
.menue a:hover,.menue a.aktiv{background-size:100% 4px}
.kopf-rechts{display:flex;align-items:center;gap:10px;flex:none}
.burger{display:none;width:44px;height:44px;border:2px solid var(--tinte);background:var(--weiss);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.burger span{display:block;width:18px;height:2px;background:var(--tinte);transition:transform .2s,opacity .2s}
.kopf.offen .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.kopf.offen .burger span:nth-child(2){opacity:0}
.kopf.offen .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Bühne (Hero) */
.buehne{position:relative;display:grid;align-items:end;min-height:clamp(540px,82vh,840px);color:var(--weiss);background:var(--tinte);overflow:hidden;isolation:isolate}
.buehne-medium{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.buehne::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(43,49,56,.34) 0%,rgba(43,49,56,.16) 34%,rgba(43,49,56,.86) 100%)}
.buehne-inhalt{width:100%;padding-top:120px;padding-bottom:clamp(104px,13vw,150px)}
.buehne h1{font-size:clamp(2.9rem,8.6vw,6.4rem);line-height:.94;letter-spacing:-.035em;margin:0 0 .32em;max-width:11ch}
.buehne h1 .zeile{display:block;overflow:hidden;padding-bottom:.06em}
.buehne h1 .zeile>span{display:block}
.buehne h1 .zeile:nth-child(2){color:var(--gelb)}
.buehne-text{font-size:clamp(1.05rem,1.6vw,1.24rem);max-width:44ch;margin-bottom:26px}
.buehne-text strong{font-family:var(--display);font-weight:600}
.buehne .btn{--schatten:var(--weiss)}
.buehne .btn.geist{--schatten:var(--gelb)}
.sterne-zeile{display:inline-flex;align-items:center;gap:10px;margin-top:22px;font:500 .9rem/1.2 var(--display);color:var(--weiss);text-decoration:none}
.sterne-zeile:hover span:last-child{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.buehne-ecke{position:absolute;right:var(--rand);bottom:clamp(104px,13vw,150px);display:flex;gap:10px}
.film{display:inline-flex;align-items:center;gap:10px;font:600 .86rem/1 var(--display);color:var(--weiss);text-decoration:none;border:2px solid var(--weiss);padding:11px 16px;background:rgba(43,49,56,.4);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.film:hover{background:var(--gelb);border-color:var(--gelb);color:var(--tinte)}
.film svg{width:14px;height:14px;fill:currentColor}
.film.nur-symbol{padding:11px 13px}
.film .p-aus,.film[aria-pressed="true"] .p-an{display:none}
.film[aria-pressed="true"] .p-aus{display:inline}
.buehne>.winkel{--w:clamp(44px,7vw,84px);--d:clamp(9px,1.3vw,14px);--a:clamp(18px,3vw,36px)}

/* Sterne */
.sterne{position:relative;display:inline-block;width:calc(var(--g,18px)*5.6);height:var(--g,18px);flex:none;background:var(--leer,rgba(255,255,255,.35));-webkit-mask:var(--stern) left center/calc(var(--g,18px)*1.12) 100% repeat-x;mask:var(--stern) left center/calc(var(--g,18px)*1.12) 100% repeat-x}
.sterne::before{content:"";position:absolute;inset:0;width:var(--anteil,100%);background:var(--voll,var(--gelb))}
:root{--stern:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.6l3.1 6.6 7.2.9-5.3 5 1.4 7.1L12 17.7l-6.4 3.5 1.4-7.1-5.3-5 7.2-.9z'/%3E%3C/svg%3E")}

/* Kennzahlen */
.zahlen{position:relative;z-index:2;margin-top:clamp(-76px,-7vw,-56px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--weiss);border:2px solid var(--tinte);box-shadow:12px 12px 0 var(--gelb)}
.zahl{padding:clamp(18px,2.6vw,30px) clamp(14px,2vw,26px);border-left:2px solid var(--tinte)}
.zahl:first-child{border-left:0}
.zahl .n{font:700 clamp(1.9rem,4.4vw,3.2rem)/1 var(--display);letter-spacing:-.03em;color:var(--blau);font-variant-numeric:tabular-nums;white-space:nowrap}
.zahl .l{font:500 .84rem/1.3 var(--display);color:var(--anthrazit);margin-top:8px}

/* Willkommen */
.zwei{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(32px,6vw,88px);align-items:center}
.zwei.gedreht{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.zwei .h2{margin-bottom:22px}
.collage{position:relative;padding:0 0 clamp(40px,6vw,72px) clamp(28px,5vw,64px)}
.collage .gross{--fl:var(--mint);--dx:-22px;--dy:22px;aspect-ratio:3/2}
.collage .klein-bild{position:absolute;left:0;bottom:0;width:44%;aspect-ratio:3/2;border:8px solid var(--papier);--fl:var(--gelb);--dx:14px;--dy:14px}
.collage .klein-bild img{width:100%;height:100%;object-fit:cover}

/* Geschichte */
.dreizeiler{font-size:clamp(2.4rem,6.2vw,4.7rem)}
.dreizeiler span{display:block}
.dreizeiler span:last-child{color:var(--blau-tief)}
.zeitstrahl{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,3vw,40px);margin-top:clamp(40px,6vw,72px);padding-top:38px;--p:1}
.zeitstrahl::before,.zeitstrahl::after{content:"";position:absolute;left:0;top:9px;height:6px;width:100%}
.zeitstrahl::before{background:rgba(43,49,56,.16)}
.zeitstrahl::after{background:var(--tinte);transform-origin:left center;transform:scaleX(var(--p));transition:transform .25s linear}
.station{position:relative}
.station::before{content:"";position:absolute;left:0;top:-38px;width:24px;height:24px;background:var(--mint);border:6px solid var(--tinte);z-index:1;transition:background .3s}
.station.an::before{background:var(--gelb)}
.station .jahr{font:700 clamp(2rem,4.2vw,3.2rem)/1 var(--display);letter-spacing:-.03em}
.station h3{font-size:1.12rem;letter-spacing:-.01em;margin:10px 0 6px}
.station p{font-size:.96rem;color:var(--anthrazit);max-width:30ch}
.werte{margin-top:clamp(56px,8vw,104px)}
.werte .bild{--fl:var(--blau);--dx:22px;--dy:22px;aspect-ratio:3/2}
.wort-kacheln{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 18px}
.wort{padding:20px 20px 22px;position:relative}
.wort b{display:block;font:700 clamp(1.5rem,2.6vw,2rem)/1 var(--display);letter-spacing:.02em;margin-bottom:10px}
.wort p{font-size:.98rem;line-height:1.45}
.wort.blau{background:var(--blau);color:var(--weiss)}
.wort.blau p{font-family:var(--display);font-weight:600;font-size:1.02rem}
.wort.gelb{background:var(--gelb)}

/* Fotoband */
.fotoband{position:relative;height:clamp(360px,64vh,640px);overflow:hidden;color:var(--weiss);display:grid;align-items:end;isolation:isolate;background:var(--tinte)}
.fotoband img{position:absolute;left:0;top:-12%;width:100%;height:124%;object-fit:cover;z-index:-2;transform:translate3d(0,var(--y,0px),0);will-change:transform}
.fotoband::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(43,49,56,.08) 30%,rgba(43,49,56,.8) 100%)}
.fotoband .wrap{width:100%;padding-bottom:clamp(30px,5vw,60px)}
.fotoband .ruf{font:700 clamp(3rem,10.5vw,8.2rem)/.9 var(--display);letter-spacing:-.04em;text-wrap:balance;max-width:11ch}
.fotoband .ruf.lang{font-size:clamp(2.5rem,7.6vw,6rem);max-width:13ch}
.fotoband p{font:500 clamp(1rem,1.6vw,1.2rem)/1.3 var(--display);margin-top:14px}
.fotoband>.winkel{--w:clamp(40px,6vw,72px);--d:clamp(8px,1.2vw,13px);--a:clamp(18px,3vw,36px)}

/* Angebote */
.kacheln{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(20px,3vw,36px);row-gap:0;padding-top:26px}
.kachel{display:grid;grid-template-rows:subgrid;grid-row:span 3;justify-items:start;color:var(--tinte);text-decoration:none}
.kachel-flaeche{position:relative;justify-self:stretch;background:var(--kf);display:flex;flex-direction:column;padding:0 22px 22px}
.kachel-bild{display:block;width:86%;margin:-26px 0 20px auto;aspect-ratio:5/4;overflow:hidden;transition:transform .45s var(--ease)}
.kachel-kopf{display:block;margin-top:auto}
.kachel-bild img{width:100%;height:100%;object-fit:cover}
.kachel:hover .kachel-bild{transform:translate(-8px,-8px)}
.kachel-titel{position:relative;display:block;font:700 clamp(1.5rem,2.5vw,2.05rem)/1.04 var(--display);letter-spacing:-.025em;color:var(--kt,var(--tinte));max-width:11ch;padding-right:44px;text-wrap:balance}
.kachel-kicker{display:block;font:600 .74rem/1 var(--display);letter-spacing:.2em;text-transform:uppercase;margin-bottom:10px;color:var(--kt,var(--tinte))}
.kachel-flaeche .winkel{--k:var(--kw,var(--tinte));--w:26px;--d:6px;--a:20px}
.kachel-text{font-size:.98rem;color:var(--anthrazit);margin:18px 0 14px}
.kachel .textlink{align-self:start}
.kachel:hover .textlink{background-size:100% 100%}
.k-blau{--kf:var(--blau);--kt:var(--weiss);--kw:var(--gelb)}
.k-blush{--kf:var(--blush);--kw:var(--tinte)}
.k-gelb{--kf:var(--gelb);--kw:var(--tinte)}

/* Gästestimmen */
.stimmen-raster{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(28px,5vw,72px);align-items:start}
.note-block{position:sticky;top:104px}
.note{display:flex;align-items:baseline;gap:12px;margin:18px 0 12px}
.note b{font:700 clamp(4.6rem,10vw,7.6rem)/.82 var(--display);letter-spacing:-.05em;color:var(--gelb);font-variant-numeric:tabular-nums}
.note span{font:600 1.1rem/1 var(--display);color:#dfe3e8}
.note-block .sterne{--g:26px}
.note-block p{margin:14px 0 22px;color:#dfe3e8;max-width:28ch}
.zitate{columns:2;column-gap:18px}
.zitat{break-inside:avoid;margin:0 0 18px;padding:26px 24px 22px;background:var(--zf,var(--weiss));color:var(--tinte);position:relative}
.zitat p{font-size:1.02rem;line-height:1.5}
.zitat footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:16px;font:600 .88rem/1.2 var(--display)}
.zitat footer .anlass{font-weight:500;color:var(--anthrazit)}
.zitat .sterne{--g:14px;--voll:var(--tinte);--leer:rgba(43,49,56,.2)}
.zitat .winkel{--k:var(--tinte);--w:18px;--d:5px;--a:12px}
.zitat.mint{--zf:var(--mint)}.zitat.blush{--zf:var(--blush)}.zitat.gelb{--zf:var(--gelb)}.zitat.beige{--zf:var(--beige)}
.band:not(.dunkel) .zitat{border:2px solid var(--tinte)}

/* Räume */
.haus{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(20px,3vw,40px);align-items:start}
.plan{background:var(--weiss);border:2px solid var(--tinte);padding:16px 16px 12px}
.plan-kopf{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:8px}
.umschalter{display:inline-flex;border:2px solid var(--tinte)}
.umschalter button{font:600 .86rem/1 var(--display);padding:10px 14px;background:var(--weiss);border:0;cursor:pointer;color:var(--tinte)}
.umschalter button+button{border-left:2px solid var(--tinte)}
.umschalter button[aria-pressed="true"]{background:var(--tinte);color:var(--weiss)}
.plan svg{width:100%;height:auto}
.plan .zone{fill:rgba(255,210,80,0);stroke:rgba(43,49,56,0);stroke-width:5;stroke-linejoin:miter;cursor:pointer;transition:fill .18s,stroke .18s;outline:none}
.plan .zone:hover,.plan .zone:focus-visible{fill:rgba(255,210,80,.42);stroke:var(--tinte)}
.plan .zone.aktiv{fill:rgba(255,210,80,.5);stroke:var(--tinte)}
.plan .schild{pointer-events:none}
.plan .schild rect{fill:var(--tinte)}
.plan .schild text{font:600 25px var(--display);fill:var(--weiss);text-anchor:middle;dominant-baseline:central}
.plan .mass line{stroke:var(--tinte);stroke-width:2.5}
.plan .mass text{font:600 24px var(--display);fill:var(--tinte);text-anchor:middle}
.raum-karte{background:var(--weiss);border:2px solid var(--tinte);position:relative}
.raum-foto{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--beige)}
.raum-foto img{width:100%;height:100%;object-fit:cover}
.raum-foto .winkel{--w:28px;--d:6px;--a:14px}
.raum-inhalt{padding:20px 22px 24px}
.raum-inhalt .eyebrow{margin-bottom:8px}
.raum-inhalt h3{margin-bottom:10px}
.raum-inhalt p{font-size:.98rem;color:var(--anthrazit)}
.raum-zimmer{margin-top:14px;padding:10px 12px;background:var(--gelb);font:600 .9rem/1.35 var(--display)}
.marken{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin-top:14px}
.marken li{font:500 .8rem/1.2 var(--display);padding:6px 10px;background:var(--mint)}
.raum-wahl{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:clamp(20px,3vw,32px)}
.raum-wahl button{display:block;text-align:left;background:var(--weiss);border:2px solid var(--tinte);padding:0;cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease)}
.raum-wahl button img{width:100%;aspect-ratio:4/3;object-fit:cover}
.raum-wahl button span{display:block;font:600 .86rem/1.2 var(--display);padding:10px 10px 11px;color:var(--tinte)}
.raum-wahl button:hover,.raum-wahl button[aria-pressed="true"]{transform:translate(-3px,-3px);box-shadow:5px 5px 0 var(--tinte)}
.raum-wahl button[aria-pressed="true"]{background:var(--gelb)}

/* Aufklapper */
details.mehr{margin-top:22px;background:var(--weiss);border:2px solid var(--tinte)}
details.mehr>summary{cursor:pointer;list-style:none;padding:18px 20px;font:600 1.02rem/1.25 var(--display);display:flex;justify-content:space-between;align-items:center;gap:14px}
details.mehr>summary::-webkit-details-marker{display:none}
details.mehr>summary::after{content:"+";flex:none;display:grid;place-items:center;width:30px;height:30px;background:var(--gelb);border:2px solid var(--tinte);font:600 1.2rem/1 var(--display)}
details.mehr[open]>summary::after{content:"–"}
details.mehr .innen{padding:2px 20px 22px}
.liste{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px}
.liste .zwischen{grid-column:1/-1;font:600 .78rem/1.2 var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--blau-tief);margin:18px 0 4px}
.posten{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--linie);padding:8px 0;font-size:.94rem;min-width:0}
.posten span:last-child{font-weight:700;white-space:nowrap}
.hinweis{font-size:.9rem;color:var(--leise);margin-top:14px;max-width:80ch}
.hinweis strong{color:var(--tinte)}

/* Galerie */
.filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.filter button{font:600 .88rem/1 var(--display);padding:11px 16px;background:var(--weiss);border:2px solid var(--tinte);cursor:pointer;color:var(--tinte)}
.filter button[aria-pressed="true"]{background:var(--tinte);color:var(--weiss)}
.filter button .anz{font-weight:400;opacity:.7;margin-left:4px}
.mosaik{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(120px,15.5vw,196px);grid-auto-flow:dense;gap:12px}
.mosaik button{position:relative;padding:0;border:0;background:var(--beige);cursor:zoom-in;overflow:hidden;display:block}
.mosaik button.hoch{grid-row:span 2}
.mosaik button.breit{grid-column:span 2;grid-row:span 2}
.mosaik img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.mosaik button:hover img{transform:scale(1.045)}
.mosaik button .winkel{--w:24px;--d:6px;--a:12px;opacity:0;transition:opacity .2s}
.mosaik button:hover .winkel,.mosaik button:focus-visible .winkel{opacity:1}
.galerie-fuss{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;margin-top:24px}

/* Lichtkasten */
.lichtkasten{position:fixed;inset:0;z-index:120;background:rgba(27,31,36,.96);display:grid;grid-template-rows:1fr auto;align-items:center;justify-items:center;padding:calc(env(safe-area-inset-top,0px) + 64px) 16px calc(env(safe-area-inset-bottom,0px) + 18px);touch-action:pan-y}
.lichtkasten figure{min-height:0;max-height:100%;display:grid;place-items:center}
.lichtkasten img{max-width:min(1280px,100%);max-height:calc(100vh - 170px);width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none}
.lichtkasten .lk-unter{display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap;color:#dfe3e8;font:500 .88rem/1.3 var(--display);padding-top:14px;text-align:center}
.lichtkasten .zaehler{color:var(--gelb);font-variant-numeric:tabular-nums}
.lk-knopf{position:absolute;width:48px;height:48px;display:grid;place-items:center;background:var(--tinte);color:var(--weiss);border:2px solid var(--weiss);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.lk-knopf:hover{background:var(--gelb);border-color:var(--gelb);color:var(--tinte)}
.lk-knopf svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:square}
.lk-zu{top:calc(env(safe-area-inset-top,0px) + 12px);right:16px}
.lk-vor{right:16px;top:50%;margin-top:-24px}
.lk-zurueck{left:16px;top:50%;margin-top:-24px}

/* Film (wird erst nach Klick von YouTube geladen) */
.film-fenster{position:fixed;inset:0;z-index:130;background:rgba(27,31,36,.96);display:grid;place-items:center;padding:calc(env(safe-area-inset-top,0px) + 72px) 16px calc(env(safe-area-inset-bottom,0px) + 24px)}
.film-rahmen{width:min(1100px,100%);aspect-ratio:16/9;max-height:100%;background:#000;border:2px solid var(--weiss)}
.film-rahmen iframe{display:block;width:100%;height:100%;border:0}

/* Anfahrt */
.strecke{display:grid;gap:14px}
.fahrt{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
.fahrt-kopf{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font:600 .95rem/1.2 var(--display)}
.fahrt-kopf span:last-child{font-weight:500;color:var(--anthrazit);font-size:.86rem;text-align:right}
.balken{display:flex;justify-content:flex-end;height:38px;background:rgba(43,49,56,.1)}
.balken i{display:flex;align-items:center;justify-content:center;font:700 .86rem/1 var(--display);font-style:normal;white-space:nowrap;height:100%;flex:0 0 auto;width:calc(var(--min)/var(--skala,51)*100%);min-width:0;overflow:hidden;transform-origin:right center}
.balken .zug{background:var(--tinte);color:var(--weiss)}
.balken .weg{background:var(--gelb);color:var(--tinte);border:2px solid var(--tinte)}
.strecke-legende{display:flex;flex-wrap:wrap;gap:8px 20px;font:500 .84rem/1.3 var(--display);color:var(--anthrazit);margin-top:6px}
.strecke-legende i{display:inline-block;width:14px;height:14px;margin-right:7px;vertical-align:-2px;border:2px solid var(--tinte)}
.adresse{font:600 1.08rem/1.45 var(--display);margin:6px 0 16px}
.ziel{display:flex;gap:14px;align-items:center;background:var(--weiss);border:2px solid var(--tinte);padding:14px 16px;margin-top:8px;box-shadow:8px 8px 0 var(--tinte)}
.ziel b{font:700 2rem/1 var(--display);letter-spacing:-.03em;color:var(--blau);white-space:nowrap}
.ziel span{font:500 .92rem/1.3 var(--display)}

/* Preise */
.tabelle-huelle{overflow-x:auto}
table.preise{width:100%;border-collapse:collapse;background:var(--weiss);border:2px solid var(--tinte);margin-top:18px;font-variant-numeric:tabular-nums}
table.preise th,table.preise td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--linie);font-size:.98rem;vertical-align:top}
table.preise th{background:var(--tinte);color:var(--weiss);font:600 .9rem/1.3 var(--display)}
table.preise th small{display:block;font-weight:400;font-size:.78rem;opacity:.85;margin-top:2px}
table.preise tr:last-child td{border-bottom:0}
table.preise td.p{font:700 1.14rem/1.3 var(--display);white-space:nowrap}
table.preise td small{display:block;color:var(--leise);font-size:.86rem}
.preis-gruppe+.preis-gruppe{margin-top:26px}

/* Preisrechner */
.rechner{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);margin-top:clamp(40px,6vw,72px);border:2px solid var(--tinte);background:var(--weiss);box-shadow:14px 14px 0 var(--blau)}
.rechner-eingabe{padding:clamp(22px,3vw,36px)}
.rechner-eingabe h3{margin-bottom:6px}
.rechner-eingabe>p{color:var(--anthrazit);font-size:.98rem;margin-bottom:20px}
.rechner-eingabe>.rechner-regel{color:var(--leise);font-size:.86rem;margin:24px 0 0;padding-top:14px;border-top:1px solid var(--linie)}
.rechner-ergebnis{background:var(--gelb);border-left:2px solid var(--tinte);padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;position:relative}
.feld{display:block;min-width:0}
.feld>span,.feld>label{display:block;font:500 .8rem/1.2 var(--display);margin-bottom:6px;color:var(--tinte)}
.feld input[type=date],.feld input[type=number],.feld input[type=text],.feld input[type=email],.feld input[type=tel],.feld textarea{width:100%;min-width:0;border:2px solid var(--tinte);background:var(--papier);padding:12px 12px;font:400 1rem/1.3 var(--lauf);color:var(--tinte)}
.feld input:focus,.feld textarea:focus{outline:3px solid var(--blau);outline-offset:0}
.feld-reihe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.rechner-felder{display:grid;gap:16px}
.regler{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}
.regler output{font:700 1.5rem/1 var(--display);min-width:2.4ch;text-align:right;font-variant-numeric:tabular-nums}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;cursor:pointer}
input[type=range]::-webkit-slider-runnable-track{height:8px;background:var(--tinte)}
input[type=range]::-moz-range-track{height:8px;background:var(--tinte)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-9px;background:var(--gelb);border:2px solid var(--tinte)}
input[type=range]::-moz-range-thumb{width:22px;height:22px;background:var(--gelb);border:2px solid var(--tinte);border-radius:0}
.haken{display:flex;gap:10px;align-items:flex-start;font-size:.96rem;cursor:pointer}
.haken input{width:22px;height:22px;flex:none;margin-top:2px;accent-color:var(--tinte)}
.erg-kopf{display:flex;justify-content:space-between;align-items:center;gap:10px;font:600 .76rem/1.2 var(--display);letter-spacing:.18em;text-transform:uppercase}
.erg-marke{font:600 .72rem/1 var(--display);letter-spacing:.08em;background:var(--tinte);color:var(--weiss);padding:5px 8px;text-transform:none}
.erg-summe{font:700 clamp(2.8rem,6.6vw,4.4rem)/1 var(--display);letter-spacing:-.04em;margin:12px 0 4px;font-variant-numeric:tabular-nums;white-space:nowrap}
.erg-zeitraum{font:500 .95rem/1.3 var(--display);min-height:1.3em}
.erg-posten{list-style:none;margin:16px 0 0;border-top:2px solid var(--tinte)}
.erg-posten li{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid rgba(43,49,56,.3);font-size:.95rem;font-variant-numeric:tabular-nums}
.erg-posten li span:last-child{font-weight:700;white-space:nowrap}
.erg-kopf-pro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 6px}
.erg-kopf-pro div{background:var(--weiss);border:2px solid var(--tinte);padding:12px 12px 13px}
.erg-kopf-pro b{display:block;font:700 1.55rem/1 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.erg-kopf-pro span{display:block;font:500 .78rem/1.25 var(--display);margin-top:6px}
.erg-hinweis{font:500 .9rem/1.4 var(--display);background:var(--weiss);border:2px solid var(--tinte);padding:10px 12px;margin-top:12px}
.erg-fuss{margin-top:auto;padding-top:18px}
.erg-fuss p{font-size:.84rem;margin-top:10px}
.erg-fuss .erg-gewaehr{font:600 .84rem/1.4 var(--display);margin-top:4px}
.regler-hinweis{margin-top:6px}

/* Buchen */
.buchen-raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,36px);margin-top:8px;align-items:start}
.karte{background:var(--weiss);border:2px solid var(--tinte)}
.karte>h3{padding:20px 22px 4px}
.karte>p{color:var(--leise);font-size:.92rem;padding:0 22px 12px}
.kal-frage{margin:6px 22px 22px;padding:34px 22px;background:var(--mint);text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px;min-height:300px;justify-content:center}
.kal-frage svg{width:44px;height:44px;stroke:var(--tinte);fill:none;stroke-width:1.8}
.kal-frage p{max-width:36ch;color:var(--anthrazit);font-size:.92rem}
.kal-rahmen{display:block;width:calc(100% - 44px);height:560px;margin:6px 22px 22px;border:2px solid var(--tinte);background:var(--weiss)}
.anfrage{padding:6px 22px 24px;display:flex;flex-direction:column;gap:14px}
.anfrage .pflicht{color:var(--blau-tief)}
.anfrage textarea{resize:vertical;min-height:92px}
.anfrage .btn{align-self:flex-start;margin-top:4px}
.danke{padding:34px 22px 38px;text-align:center}
.danke .ok{width:56px;height:56px;background:var(--mint);border:2px solid var(--tinte);display:grid;place-items:center;margin:0 auto 14px}
.danke .ok svg{width:24px;height:24px;fill:none;stroke:var(--tinte);stroke-width:3;stroke-linecap:square}
.danke h4{font-size:1.2rem;margin-bottom:6px}
.danke p{color:var(--leise);font-size:.94rem}

/* Schluss */
.schluss{position:relative;background:var(--blau);color:var(--weiss);padding-block:clamp(64px,9vw,112px);overflow:hidden}
.schluss h2{font-size:clamp(2.3rem,6vw,4.4rem);max-width:14ch}
.schluss p{font:600 clamp(1.2rem,2vw,1.4rem)/1.3 var(--display);margin:14px 0 26px}
.schluss .btn{--schatten:var(--tinte)}
.schluss>.winkel{--w:clamp(48px,8vw,110px);--d:clamp(10px,1.5vw,18px);--a:clamp(18px,3vw,40px);--k:var(--gelb)}

/* Fuß */
.fuss{background:var(--tinte);color:#dfe3e8;padding:clamp(48px,6vw,72px) 0 30px;font-size:.94rem}
.fuss-spalten{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:32px}
.fuss h4{font:600 .76rem/1.2 var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--weiss);margin-bottom:14px}
.fuss a{color:#dfe3e8;text-decoration:none;display:block;padding:3px 0}
.fuss a:hover{color:var(--gelb)}
.fuss .logo-weiss{height:26px;width:auto;margin-bottom:18px}
.fuss .post{color:#aab1ba;font-size:.84rem;margin-top:10px}
.fuss .url{font:600 1.5rem/1 var(--display);color:var(--gelb);display:inline-block;margin-top:18px;letter-spacing:-.01em}
.fuss-ende{border-top:2px solid var(--anthrazit);margin-top:36px;padding-top:16px;font-size:.82rem;color:#aab1ba}
.fuss-ende a{display:inline;padding:0}

/* Rechtstexte */
.recht{padding:52px 0 84px}
.recht .wrap{max-width:820px}
.recht h1{font-size:clamp(2rem,5vw,3rem);margin-bottom:.5em;hyphens:auto}
.recht h2{font-size:1.16rem;letter-spacing:-.01em;line-height:1.25;margin:1.9em 0 .45em}
.recht p,.recht li{color:var(--anthrazit);font-size:1rem;margin-bottom:.7em}
.recht ul{padding-left:1.25em}
.recht .zurueck{display:inline-block;margin-bottom:26px}
.recht .stand{color:var(--leise);font-size:.9rem}
.recht:target{display:block!important}

/* Anlass-Seiten */
.anlass-buehne{position:relative;display:grid;align-items:end;min-height:clamp(440px,66vh,660px);color:var(--weiss);background:var(--tinte);overflow:hidden;isolation:isolate}
.anlass-buehne img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.anlass-buehne::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(43,49,56,.3) 0%,rgba(43,49,56,.24) 30%,rgba(43,49,56,.88) 100%)}
.anlass-buehne .wrap{width:100%;padding-top:96px;padding-bottom:clamp(36px,6vw,64px)}
.anlass-buehne h1{font-size:clamp(2.6rem,7.6vw,5.6rem);line-height:.95;letter-spacing:-.035em;max-width:12ch;margin-bottom:.3em}
.anlass-buehne p{font-size:clamp(1.05rem,1.6vw,1.22rem);max-width:50ch;margin-bottom:24px}
.anlass-buehne .btn{--schatten:var(--weiss)}
.anlass-buehne .btn.geist{--schatten:var(--gelb)}
.anlass-buehne>.winkel{--w:clamp(40px,6vw,72px);--d:clamp(8px,1.2vw,13px);--a:clamp(18px,3vw,36px)}
.kruemel{display:inline-flex;align-items:center;gap:8px;font:500 .84rem/1 var(--display);color:var(--weiss);text-decoration:none;margin-bottom:22px}
.kruemel:hover{text-decoration:underline;text-underline-offset:4px}
.kruemel svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:square}
.nutzen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nutzen-kachel{position:relative;padding:26px 22px 28px;background:var(--nf,var(--mint));min-height:230px;display:flex;flex-direction:column}
.nutzen-kachel h3{font-size:clamp(1.3rem,2vw,1.6rem);margin-bottom:12px;padding-right:34px}
.nutzen-kachel p{font-size:.97rem;line-height:1.5;color:var(--tinte)}
.nutzen-kachel .winkel{--k:var(--tinte);--w:20px;--d:5px;--a:16px}
.nutzen-kachel:nth-child(4n+1){--nf:var(--gelb)}
.nutzen-kachel:nth-child(4n+2){--nf:var(--mint)}
.nutzen-kachel:nth-child(4n+3){--nf:var(--blush)}
.nutzen-kachel:nth-child(4n+4){--nf:var(--beige)}
.band.beige .nutzen-kachel:nth-child(4n+4){--nf:var(--weiss)}
.band.mint .nutzen-kachel:nth-child(4n+2){--nf:var(--weiss)}
.dazu{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,72px);align-items:start}
.dazu .h2{font-size:clamp(2rem,4.4vw,3.2rem);margin-bottom:18px}
.dazu-liste{background:var(--weiss);border:2px solid var(--tinte);padding:8px 22px 14px}
.dazu-liste .posten:last-child{border-bottom:0}
.dazu-liste .posten span:first-child small{display:block;color:var(--leise);font-size:.84rem}
.streifen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.streifen button{padding:0;border:0;background:var(--beige);cursor:zoom-in;overflow:hidden;aspect-ratio:4/3;display:block;position:relative}
.streifen img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.streifen button:hover img{transform:scale(1.045)}
.zitate.drei{columns:3}
.preis-kasten{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);border:2px solid var(--tinte);background:var(--weiss);box-shadow:14px 14px 0 var(--blau)}
.preis-kasten>div{padding:clamp(22px,3vw,36px)}
.preis-kasten .gelb{background:var(--gelb);border-left:2px solid var(--tinte)}
.preis-kasten .gross-zahl{font:700 clamp(2.6rem,6vw,4rem)/1 var(--display);letter-spacing:-.04em;margin:10px 0 6px;white-space:nowrap}
.preis-kasten ul{list-style:none;margin-top:14px}
.preis-kasten li{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--linie);font-size:.96rem}
.preis-kasten li span:last-child{font-weight:700;white-space:nowrap}
.preis-kasten h3{margin-bottom:8px}

/* Bewegung */
@keyframes hoch{from{transform:translateY(105%)}to{transform:none}}
@keyframes rein{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){
  .buehne h1 .zeile>span{animation:hoch .9s var(--ease) both}
  .buehne h1 .zeile:nth-child(2)>span{animation-delay:.12s}
  .buehne .eyebrow,.buehne-text,.buehne .btn-reihe,.buehne .sterne-zeile{animation:rein .8s var(--ease) both;animation-delay:.3s}
  .buehne .btn-reihe{animation-delay:.42s}
  .buehne .sterne-zeile{animation-delay:.54s}
  .bewegt [data-rv]{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--vz,0s)}
  .bewegt [data-rv].da{opacity:1;transform:none}
  .bewegt .versatz[data-rv]::before,.bewegt [data-rv] .versatz::before{transform:translate(0,0)}
  .bewegt .versatz[data-rv].da::before,.bewegt [data-rv].da .versatz::before{transform:translate(var(--dx,18px),var(--dy,18px));transition-delay:.25s}
  .bewegt [data-rv] .balken i{clip-path:inset(0 0 0 100%);transition:clip-path 1s var(--ease)}
  .bewegt [data-rv].da .balken i{clip-path:inset(0)}
  .bewegt [data-rv].da .balken .zug{transition-delay:.3s}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* Schmal */
@media (max-width:980px){
  .raum-wahl{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nutzen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mosaik{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(110px,21vw,190px)}
  .zitate.drei{columns:2}
  .stimmen-raster{grid-template-columns:minmax(0,1fr)}
  .note-block{position:static}
  .note-block p{max-width:46ch}
  .haus{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:860px){
  :root{--rand:20px}
  .menue{display:none;position:absolute;top:100%;left:0;right:0;background:var(--papier);border-bottom:2px solid var(--tinte)}
  .kopf.offen .menue{display:block}
  .menue ul{flex-direction:column;align-items:stretch;gap:0;padding:4px var(--rand) 14px}
  .menue a{padding:15px 0;font-size:1.05rem;border-bottom:1px solid var(--linie);background:none}
  .menue li:last-child a{border-bottom:0}
  .menue .nur-breit{display:none}
  .burger{display:flex}
  .logo img{height:auto;width:100%;max-width:210px}
  .kopfzeile{grid-template-columns:minmax(0,1fr);gap:18px}
  .zwei,.zwei.gedreht,.dazu,.rechner,.buchen-raster,.preis-kasten{grid-template-columns:minmax(0,1fr)}
  .rechner-ergebnis,.preis-kasten .gelb{border-left:0;border-top:2px solid var(--tinte)}
  .rechner,.preis-kasten{box-shadow:8px 8px 0 var(--blau)}
  .kacheln{grid-template-columns:minmax(0,1fr);row-gap:56px}
  .kachel{display:flex;flex-direction:column;align-items:flex-start;grid-row:auto}
  .kachel-flaeche{align-self:stretch}
  .zeitstrahl{grid-template-columns:minmax(0,1fr);padding-top:0;padding-left:44px;gap:30px}
  .zeitstrahl::before,.zeitstrahl::after{left:9px;top:0;width:6px;height:100%}
  .zeitstrahl::after{transform-origin:center top;transform:scaleY(var(--p))}
  .station::before{left:-44px;top:4px}
  .station p{max-width:none}
  .fuss-spalten{grid-template-columns:minmax(0,1fr)}
  .buehne-ecke{top:18px;left:var(--rand);right:auto;bottom:auto}
  .buehne-inhalt{padding-top:84px}
  .zahlen{box-shadow:8px 8px 0 var(--gelb)}
  .versatz{--dx:12px;--dy:12px}
  .collage .gross{--dx:-12px;--dy:12px}
  .collage .klein-bild{--dx:10px;--dy:10px}
  .werte .bild{--dx:12px;--dy:12px}
}
@media (max-width:620px){
  .zahlen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zahl:nth-child(3){border-left:0}
  .zahl:nth-child(n+3){border-top:2px solid var(--tinte)}
  .zitate,.zitate.drei{columns:1}
  .raum-wahl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nutzen{grid-template-columns:minmax(0,1fr)}
  .nutzen-kachel{min-height:0}
  .mosaik{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(110px,34vw,170px);gap:10px}
  .streifen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .liste{grid-template-columns:minmax(0,1fr)}
  .feld-reihe{grid-template-columns:minmax(0,1fr)}
  .wort-kacheln{grid-template-columns:minmax(0,1fr)}
  .collage{padding-left:22px}
  table.preise th,table.preise td{padding:12px 12px;font-size:.92rem}
  table.preise td.p{font-size:1.02rem;white-space:normal}
  table.preise.gestapelt thead{display:none}
  table.preise.gestapelt td{display:block}
  table.preise.gestapelt td:first-child{border-bottom:0;padding-bottom:2px}
  table.preise.gestapelt td.p{padding-top:0}
  .erg-kopf-pro b{font-size:1.3rem}
  .lk-vor,.lk-zurueck{top:auto;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);margin-top:0}
  .lichtkasten{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 76px)}
  .lichtkasten img{max-height:calc(100vh - 230px)}
  .balken i{font-size:.78rem}
  .umschalter{display:flex}
  .umschalter button{flex:1 1 0;padding-inline:8px}
  table.preise th{font-size:.8rem}
  .plan .schild{transform:scale(1.7)}
  .plan .schild.mini{display:none}
  .plan .mass text{font-size:40px}
}
