/* p10-abendlicht: warm night, warm paper light, one lit window. Phone first; the wide layout starts at 1000px. */
@font-face{font-family:Literata;src:url(fonts/literata-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Literata;src:url(fonts/literata-latin-ext-400-normal.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0100-02BA,U+1E00-1EFF}
@font-face{font-family:Literata;src:url(fonts/literata-latin-600-normal.woff2) format("woff2");font-weight:600 700;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Literata;src:url(fonts/literata-latin-ext-600-normal.woff2) format("woff2");font-weight:600 700;font-display:swap;unicode-range:U+0100-02BA,U+1E00-1EFF}
@font-face{font-family:Literata;src:url(fonts/literata-latin-400-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Figtree;src:url(fonts/figtree-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Figtree;src:url(fonts/figtree-latin-700-normal.woff2) format("woff2");font-weight:600 700;font-display:swap}

:root{
  --night:#140a05;--wood:#20110a;--wood2:#2c190d;--wood3:#3a2212;--band:#2f1a0c;--foot:#0c0603;
  --line:#4d2f1b;--line-soft:#3a2212;--line-ctl:#a07858;
  --heading:#fff4e8;--paper:#f5e7d5;--paper2:#dcc4a9;
  --link:#f3c08f;--link-visited:#dba991;--glow:#f8d2a6;--glow2:#d99a5f;
  --amber:#e9ae74;--amber-hi:#f3c390;
  --lit-core:#fff5e8;--lit:#ffe9d3;--lit-edge:#f6cfa3;--frame:#4a2211;--frame-hi:#7a4524;
  --ink:#1f0f06;--ink2:#4f2c14;--lit-link:#5a2608;--lit-visited:#653020;--lit-line:#8a5a35;
  --focus:#fff4e8;--focus-lit:#1f0f06;
  --mat:#f6ebdc;--pages-open:#f5e9da;--pages-line:#96755a;--pages-accent:#6a300e;
  --ok-bg:#e8e5c5;--ok-text:#26280e;--err-bg:#f8d3bf;--err-text:#471605;
  --ember:226 130 60;--hearth:200 105 40;--hearth2:190 95 35;--shade:31 15 6;--dusk:20 10 5;--frame-rgb:74 34 17;
  --serif:Literata,Georgia,serif;--ui:Figtree,system-ui,sans-serif;
  --doc-accent:#e9ae74;--doc-surface:#20110a;--doc-line:#a07858;--doc-text:#f5e7d5;--doc-scroll-offset:5rem;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:5rem;background:var(--night)}
html.menu-open{overflow:hidden}
body{margin:0;background:var(--night);color:var(--paper);font:400 1.0625rem/1.65 var(--serif);padding-bottom:calc(4.25rem + env(safe-area-inset-bottom));overflow-wrap:break-word}
img{max-width:100%;height:auto}
a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:1px}
a:where(:visited){color:var(--link-visited)}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}
main:focus{outline:none}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.25;margin:0 0 .6em;color:var(--heading);scroll-margin-top:5rem}
h1{font-size:2rem}h2{font-size:1.45rem}h3{font-size:1.15rem}
p{margin:0 0 .9em}
ul,ol{padding-left:1.25em}
hr{border:0;border-top:1px solid var(--line);margin:2rem 0}
pre{margin:0 0 .9em;white-space:pre-wrap;font:inherit}
h1{hyphens:auto;overflow-wrap:anywhere}
.prose li{overflow-wrap:anywhere}
@media (max-width:639px){.prose,.reading,.step{hyphens:auto}h1{font-size:1.75rem}}
@media (max-width:359px){.brand{font-size:.95rem;gap:.4rem}.brand img{width:34px}.menu-btn{padding:.4rem .6rem}.menu-btn svg{display:none}}
.wrap{width:min(100% - 2rem,76rem);margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;z-index:50;background:var(--glow);color:var(--ink);padding:.7rem 1rem}
.skip:focus{left:.5rem;top:.5rem}
.long{max-width:40rem}
.more{font:600 1rem var(--ui);display:inline-block;padding:.65rem 0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.6rem 1.3rem;border-radius:3px;background:var(--amber);color:var(--ink);font:700 1.0625rem var(--ui);text-decoration:none;box-shadow:0 0 26px rgb(var(--ember) / .3)}
.btn:hover{background:var(--amber-hi);text-decoration:underline}
.btn.ghost{background:rgb(var(--dusk) / .7);color:var(--glow);border:2px solid var(--glow2);box-shadow:none}
.btn.ghost:hover{background:var(--wood2)}

/* ---------- top ---------- */
.top{position:sticky;top:0;z-index:20;background:var(--night);border-bottom:1px solid var(--line-soft)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3.75rem;padding:.3rem 1rem}
.brand{display:flex;align-items:center;gap:.6rem;min-height:44px;color:var(--heading);text-decoration:none;font:600 1.0625rem var(--serif);white-space:nowrap}
.brand img,.foot-brand img{width:40px;height:auto;filter:brightness(0) invert(.62) sepia(1) saturate(.5) brightness(1.2)}
.menu-btn{display:inline-flex;align-items:center;gap:.5rem;min-height:46px;padding:.4rem .9rem;background:transparent;color:var(--glow);border:2px solid var(--line-ctl);border-radius:3px;font:700 1rem var(--ui);cursor:pointer;white-space:nowrap}
.menu-btn:hover{border-color:var(--glow2)}
.mainnav{display:none}

/* the light under the door: bottom bar on phones, line under the menu on wide screens */
.sill{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;align-items:stretch;gap:.5rem;min-height:4.25rem;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom));background:linear-gradient(180deg,var(--amber-hi),var(--amber));color:var(--ink);--focus:var(--focus-lit);font-family:var(--ui);box-shadow:0 -6px 30px rgb(var(--ember) / .28)}
.sill a{color:var(--ink);text-decoration:none}
.sill-next{flex:1 1 auto;min-width:0;display:flex;align-items:center;line-height:1.25}
.sill-next:hover{text-decoration:underline}
.sill .wide,.sill-news{display:none}
.sill .narrow{display:flex;flex-direction:column;font-size:.95rem;font-weight:500}
.sill .narrow b{font-size:1.05rem;font-weight:700}
.sill a.sill-probe{flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.4rem .9rem;border-radius:3px;background:var(--ink);color:var(--lit);font-weight:700;font-size:1rem}
.sill a.sill-probe:hover{text-decoration:underline}

@media (max-width:1239px){
  .sill{flex-wrap:wrap;gap:.25rem .5rem}
  body:not(.home) .sill-news{display:flex;align-items:center;order:3;flex:0 0 100%;min-height:44px;padding:0 .1rem;font:500 .92rem/1.25 var(--ui);border-top:1px solid rgb(var(--shade) / .4);overflow:hidden}
  body:not(.home) .sill-news>*{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  body:not(.home){padding-bottom:calc(8.1rem + env(safe-area-inset-bottom))}
}

/* ---------- phone menu ---------- */
dialog#menu{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;background:var(--night);color:var(--paper);font-family:var(--ui)}
dialog#menu[open]{display:flex;flex-direction:column}
dialog#menu::backdrop{background:var(--night)}
.sheet-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3.75rem;padding:.3rem 1rem;border-bottom:1px solid var(--line-soft);flex:none}
.sheet-top form{margin:0}
.sheet{flex:1;overflow-y:auto;padding:.5rem 1rem 2rem;-webkit-overflow-scrolling:touch}
.sheet ul{list-style:none;margin:0;padding:0}
.rows a{display:flex;align-items:center;min-height:52px;color:var(--paper);font-size:1.15rem;font-weight:500;text-decoration:none;border-bottom:1px solid var(--line-soft)}
.rows a:hover{color:var(--glow)}
.rows a[aria-current]{color:var(--glow);font-weight:700}
.grp p{margin:1.25rem 0 .1rem;color:var(--glow);font-size:.95rem;font-weight:700;letter-spacing:.01em}
.grp+li:not(.grp){margin-top:1rem}
.legal{display:flex;flex-wrap:wrap;gap:0 1.25rem;margin-top:1.25rem!important}
.legal a{display:flex;align-items:center;min-height:44px;color:var(--paper2);font-size:1rem}
.latest{margin:1rem 0 0;font:500 1rem/1.4 var(--ui);color:var(--paper2)}
.latest span{display:block}
.latest a{font-weight:700;display:inline-flex;align-items:center;min-height:44px;padding:.2rem 0}

/* ---------- home: lantern and window ---------- */
.hero{position:relative;background:radial-gradient(120% 60% at 80% 0%,rgb(var(--hearth2) / .22),transparent 62%),linear-gradient(180deg,var(--wood2),var(--night) 80%)} /* no lantern on narrow screens: it would sit behind the text */
.hero-in{position:relative;z-index:2;padding:0 1rem 1.5rem}
.hero-text{padding:1.5rem 0 1.1rem}
.hero-text h1{font-size:1.65rem;margin-bottom:.4rem}
.hero-text p{font:500 1rem/1.4 var(--ui);color:var(--paper);margin:0}
.win{position:relative;color:var(--ink);--focus:var(--focus-lit);background:radial-gradient(120% 110% at 50% 35%,var(--lit-core) 0%,var(--lit) 52%,var(--lit-edge) 100%);border:5px solid var(--frame);border-radius:2px;box-shadow:0 0 0 1px var(--frame-hi),0 0 70px 6px rgb(var(--ember) / .34),0 24px 90px rgb(var(--hearth2) / .26);font-family:var(--ui)}
.win a{color:var(--lit-link);text-decoration-color:currentColor;text-decoration-thickness:1px}
.win p{margin:0}
.win-main{padding:.9rem 1.05rem .85rem}
.win-lbl,.win-sub{font-weight:700;font-size:.92rem;color:var(--ink2);line-height:1.3}
.win-day{font:600 1.55rem/1.2 var(--serif);margin-top:.15rem!important}
.win-time{font:600 2.45rem/1.15 var(--serif);letter-spacing:-.01em;margin:.05rem 0 .3rem!important}
.win-place{font-size:1.1rem;line-height:1.3}
.win-dir{margin-top:.3rem!important;font-size:.98rem;line-height:1.4;color:var(--ink2);font-weight:500}
.win-sill{border-top:2px solid var(--frame);padding:.75rem 1.05rem .75rem;display:grid;gap:.75rem;line-height:1.35;font-weight:500;font-size:.98rem}
.win-news-t{font-weight:700;font-size:1.05rem;margin:.1rem 0!important}
.win-then ul{list-style:none;margin:.1rem 0 0;padding:0}
.win-then li a{display:flex;flex-wrap:wrap;align-items:center;gap:0 .4rem;min-height:44px;text-decoration:none;border-bottom:1px solid rgb(var(--frame-rgb) / .35)}
.win-then li a:hover{text-decoration:underline}
.win-then li:last-child a{border-bottom:0;font-weight:700;text-decoration:underline}
.hero-cta{display:flex;flex-direction:column;gap:.6rem;margin-top:1.4rem}

.newhere{display:grid;gap:1.1rem;padding:2rem 0 2.25rem;border-top:1px solid var(--line-soft)}
.doors{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.doors a{display:flex;align-items:center;min-height:52px;padding:.5rem .8rem;background:var(--wood2);border:1px solid var(--line-ctl);border-radius:3px;color:var(--paper);font:600 1rem/1.25 var(--ui);text-decoration:none}
.doors a:hover{border-color:var(--glow2);color:var(--glow)}
.whatis{background:var(--band);border-block:1px solid var(--line);padding:2.25rem 0}
.whatis-in{display:grid;gap:1.4rem}
.whatis .more{color:var(--glow)}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:0}
.pair img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.8) brightness(.93);border-radius:2px}
.home-news{padding:2rem 0 2.5rem}
.row-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0 1rem;margin-bottom:.5rem}
.row-head h2{margin:0}

/* ---------- news ---------- */
.newsitem{padding:1rem 0;border-top:1px solid var(--line-soft)}
.newsitem time,.date{font:600 .98rem var(--ui);color:var(--paper2)}
.newsitem h3{margin:.1rem 0 .35rem}
.newsitem h3 a{color:var(--heading)}
.newsitem p:last-child{margin-bottom:0}

/* ---------- pages ---------- */
main>.wrap:first-child,main>article.wrap{padding-top:1.75rem}
.head{padding-bottom:.5rem}
.head .latest{margin-top:.5rem}
.reading{max-width:42rem;padding-bottom:3rem}
.reading>h2,.prose h2{margin-top:2em}
.opening{font-size:1.2rem;line-height:1.55;color:var(--heading)}
.closing{font:600 1.2rem/1.5 var(--serif);color:var(--glow);margin-top:1.5em}
.zeichen{float:right;margin:0 0 .75rem 1rem}
.zeichen img,.prose img,.changes-pic img{background:var(--mat);padding:4px;border-radius:2px}
.zeichen img{max-width:86px;display:block}
.prose figure{margin:1.25rem 0;max-width:100%}
.prose table{border-collapse:collapse;max-width:100%}
.prose td,.prose th{padding:.5rem .7rem;border:1px solid var(--line);vertical-align:top}
.prose .sl-gallery img{background:none;padding:0}
.crumb{font:600 1rem var(--ui);margin-bottom:.25rem}
.crumb a{display:inline-block;padding:.5rem 0}
.note{padding:.75rem 1rem;border-left:4px solid var(--glow2);background:var(--wood)}
.snap{margin:1.25rem 0}
.snap img{display:block;width:100%;max-width:30rem;filter:saturate(.8) brightness(.93);border-radius:2px}
.siblings{margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--line);font-family:var(--ui)}
.siblings h2{font:700 1rem var(--ui);color:var(--glow);margin:0 0 .25rem}
.siblings ul{list-style:none;margin:0;padding:0}
.siblings a{display:flex;align-items:center;min-height:44px;font-weight:500}
.siblings a[aria-current]{color:var(--heading);font-weight:700;text-decoration:none}

/* ---------- training: three windows, the next one lit ---------- */
.halls-wrap{margin:1.5rem 0 2rem}
.halls{display:grid;gap:1rem}
.h1220{--hall:#d8743c;--hall-lit:#a4481a}.h1070{--hall:#f3d9b8;--hall-lit:#4a2211}.h1160{--hall:#aeb27c;--hall-lit:#5c6230}
.mark{display:inline-block;width:.8rem;height:1.05rem;margin-right:.5rem;vertical-align:-.1em;background:var(--hall);border-radius:1px}
.hall,.pick{padding:1rem 1.1rem;background:var(--wood);border:1px solid var(--line);border-radius:2px;font-size:1rem;line-height:1.5}
.hall p,.pick p{margin:0 0 .55rem}
.hall p:last-child,.pick p:last-child{margin-bottom:0}
.hall h3{font-size:1.5rem;margin:0}
.hall-time{font:600 1.75rem/1.2 var(--serif);color:var(--heading);margin-bottom:.4rem!important}
.hall-next,.pick-when{font:500 .98rem/1.35 var(--ui)}
.hall-place{font-size:1.05rem}
.maplink{display:inline-flex;align-items:center;min-height:44px;font:600 1rem var(--ui)}
.hall-extra{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line)}
.lit{background:radial-gradient(120% 110% at 50% 35%,var(--lit-core) 0%,var(--lit) 52%,var(--lit-edge) 100%);color:var(--ink);border:5px solid var(--frame);box-shadow:0 0 0 1px var(--frame-hi),0 0 56px 4px rgb(var(--ember) / .3);--focus:var(--focus-lit);order:-1}
.lit h3,.lit .hall-time{color:var(--ink)}
.lit a{color:var(--lit-link)}
.win a:visited,.lit a:visited{color:var(--lit-visited)}
.lit .mark{background:var(--hall-lit)}
.lit .hall-extra{border-color:var(--lit-line)}
.changes{display:grid;gap:1.5rem;padding-bottom:1rem}
.moved{padding-bottom:1rem}
.invite{display:grid;gap:.75rem;margin:1.5rem 0 3rem;padding:1.25rem;background:var(--band);border:1px solid var(--line);border-radius:2px}
.invite h2,.invite p{margin:0}

/* ---------- first training: five steps ---------- */
.step-lead{font:500 1.1rem/1.4 var(--ui);color:var(--glow);margin-bottom:1em}
.jump{list-style:none;margin:1rem 0 1.5rem;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.3rem}
.jump a{display:flex;flex-direction:column;align-items:center;gap:.15rem;min-height:64px;padding:.4rem .1rem;background:var(--wood2);border:1px solid var(--line-ctl);border-radius:2px;color:var(--paper);font:600 .86rem/1.15 var(--ui);text-decoration:none;text-align:center}
.jump a:hover{border-color:var(--glow2);color:var(--glow)}
.jump b{font:600 1.2rem var(--serif);color:var(--glow)}
.first-grid{display:grid;gap:1.25rem}
.glance ul{margin:0}
.glance li{margin-bottom:.4em}
.probe-card{padding:1rem 1.1rem;background:var(--band);border:1px solid var(--line);border-radius:2px}
.probe-card h2{margin-bottom:.35em}
.probe-card p:last-child{margin-bottom:0}
.probe-card section{scroll-margin-top:5rem}
.path{list-style:none;margin:1.5rem auto 3rem;padding:0;counter-reset:none;max-width:48rem}
.path>li{position:relative;padding:0 0 2.25rem 3.1rem;scroll-margin-top:5rem}
.path>li::before{content:"";position:absolute;left:1.05rem;top:2.6rem;bottom:0;width:2px;background:linear-gradient(180deg,var(--glow2),var(--line))}
.path>li:last-child::before{display:none}
.num{position:absolute;left:0;top:0;width:2.2rem;height:2.7rem;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,var(--lit-core),var(--lit-edge));color:var(--ink);border:2px solid var(--frame);font:600 1.25rem var(--serif);box-shadow:0 0 22px rgb(var(--ember) / .38)}
.step>h2{font-size:1.6rem;margin:.1rem 0 .15em}
.qa{margin-top:1.25rem}
.qa h3{margin-bottom:.3em}
.picks{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.75rem}

/* ---------- documents and accordions on dark; PDF pages on light ---------- */
.doc-block{font-size:1rem}
.doc-block .doc-title{font-family:var(--serif)}
.doc-block a.doc-btn{font-family:var(--ui)}
.doc-preview{padding:.4rem;background:var(--mat);border-radius:2px}
.doc-preview img{border:0}
.doc-pages{background:var(--wood2)}
.doc-pages[open]{background:var(--pages-open);color:var(--ink);--doc-line:var(--pages-line);--doc-accent:var(--pages-accent);--focus:var(--focus-lit)}
.doc-page-list img{box-shadow:0 1px 6px rgb(var(--shade) / .35)}
.doc-pages>summary,.faq-item>summary,.acc-toggle{font-family:var(--ui)}
.doc-block .doc-note{background:var(--wood2)}
.faq-item>summary{font-size:1.0625rem;color:var(--heading);padding-block:.8rem}
.faq-item>summary:hover{color:var(--glow)}
.faq-item[open]>summary{color:var(--glow)}
.faq-item[open]{background:var(--wood);box-shadow:-.5rem 0 0 var(--wood),.5rem 0 0 var(--wood)}
.doc-reading{max-width:42rem}
.doc-table{background:var(--wood)}

/* ---------- form, gallery, video ---------- */
.sl-form p{margin-bottom:1rem}
.sl-form label{display:block;font:600 1rem var(--ui);margin-bottom:.25rem}
.sl-form input,.sl-form textarea{width:100%;min-height:48px;padding:.6rem .75rem;background:var(--wood);border:2px solid var(--line-ctl);border-radius:3px;color:var(--paper);font:1.0625rem var(--ui)}
.sl-form input:focus,.sl-form textarea:focus{border-color:var(--glow2)}
.sl-form button{min-height:50px;padding:.6rem 2rem;border:0;border-radius:3px;background:var(--amber);color:var(--ink);font:700 1.0625rem var(--ui);cursor:pointer}
.sl-form button:hover{background:var(--amber-hi)}
.sl-ok,.sl-err{padding:.75rem 1rem;border-radius:3px;font-family:var(--ui);font-weight:500}
.sl-ok{background:var(--ok-bg);color:var(--ok-text)}
.sl-err{background:var(--err-bg);color:var(--err-text)}
.sl-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.5rem;margin:1rem 0}
.sl-gallery a{display:block}
.sl-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px}
.sl-yt{position:relative;display:block;width:100%;max-width:36rem;padding:0;margin:1rem 0;background:var(--wood2);border:1px solid var(--line-ctl);color:var(--paper);cursor:pointer;font:600 1rem var(--ui)}
.sl-yt img{display:block;width:100%;background:none;padding:0}
.sl-yt span{display:block;padding:.7rem}

/* ---------- footer ---------- */
.foot{background:var(--foot);border-top:1px solid var(--line);padding:1.25rem 0;font-family:var(--ui)}
.foot-in{display:grid;gap:.5rem}
.foot-brand{display:flex;align-items:center;gap:.6rem;font:600 1.0625rem var(--serif)}
.foot ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 1.25rem}
.foot a{display:flex;align-items:center;min-height:44px;color:var(--paper);font-weight:500}

/* ---------- Beitritt: the same small lit windows as the first-training path ---------- */
.page-join{max-width:48rem}
.join-lead,.fee-lead{border-left-color:var(--glow2);background:var(--band);border-radius:0 2px 2px 0;font:500 1.0625rem/1.5 var(--ui);color:var(--paper)}
.join-lead-label{color:var(--glow);font-size:.95rem;font-weight:700}
.fee-lead strong{font-weight:500}
.prose .join-heading,.prose .fee-heading{margin-top:1.75rem}
.join-step{padding:0 0 2.25rem 3.35rem;scroll-margin-top:5rem}
.join-step::before{width:2.2rem;height:2.7rem;border-radius:0;background:radial-gradient(circle at 50% 40%,var(--lit-core),var(--lit-edge));color:var(--ink);border:2px solid var(--frame);font:600 1.25rem var(--serif);box-shadow:0 0 22px rgb(var(--ember) / .38)}
.join-step::after{left:1.05rem;top:2.6rem;bottom:0;width:2px;border:0;background:linear-gradient(180deg,var(--glow2),var(--line))}
.join-steps .join-label{font-size:1.45rem;margin:.1rem 0 .3em}
.join-bank,.fee-bank{background:var(--wood2);border-color:var(--line-ctl);border-radius:2px;font:500 1rem/1.6 var(--ui)}
.join-step .doc-card{background:var(--wood)}

/* ---------- Kosten: one lit window, three panes. One window so that no fee looks recommended ---------- */
.page-fees{max-width:68rem}
.fee-cards{gap:0;margin:1rem 0 2.5rem;background:radial-gradient(120% 110% at 50% 35%,var(--lit-core) 0%,var(--lit) 52%,var(--lit-edge) 100%);border:5px solid var(--frame);border-radius:2px;box-shadow:0 0 0 1px var(--frame-hi),0 0 56px 4px rgb(var(--ember) / .3);--focus:var(--focus-lit);font-family:var(--ui)}
.fee-card{padding:1.1rem 1.2rem 1.2rem;background:none;border:0;border-radius:0;color:var(--ink);line-height:1.4}
.fee-card+.fee-card{border-top:4px solid var(--frame)}
.fee-cards .fee-name{color:var(--ink2);font:700 1rem/1.3 var(--ui)}
.fee-cards .fee-card .fee-price{color:var(--ink);font:600 2.3rem/1.1 var(--serif);letter-spacing:-.01em}
.fee-cards .fee-card .fee-reduced{font-size:1.1rem}
.fee-cards .fee-card .fee-pre{font-weight:500}
.fee-cards .fee-card .fee-note{color:var(--ink2);font-weight:500;font-size:.98rem}
.fee-section{max-width:42rem;border-top-color:var(--line)}
.prose .fee-section h2{margin-top:0}
@media (min-width:56rem){
  .fee-cards{grid-template-rows:repeat(5,auto)}
  .fee-card{display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:.3rem;align-content:start}
  .fee-card+.fee-card{border-top:0;border-left:4px solid var(--frame)}
  .fee-cards .fee-name{grid-row:1}
  .fee-cards .fee-card .fee-pre{grid-row:2;align-self:end}
  .fee-cards .fee-card .fee-price{grid-row:3;font-size:clamp(1.8rem,2.7vw,2.3rem)}
  .fee-cards .fee-card .fee-reduced{grid-row:4}
  .fee-cards .fee-card .fee-note{grid-row:5}
  .page-fees .prose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:3rem}
  .page-fees .prose>*{grid-column:1/-1}
  .page-fees .prose>.fee-section{grid-column:auto;max-width:none;margin-top:0}
}

/* ---------- Aktuelles: the newest notice lit, the older ones along a thread ---------- */
.board-page{padding-bottom:3rem}
.news-board{gap:1.5rem;font-size:1rem;line-height:1.55}
.nb-feature{padding:1.2rem 1.25rem;background:radial-gradient(120% 110% at 50% 35%,var(--lit-core) 0%,var(--lit) 52%,var(--lit-edge) 100%);color:var(--ink);border:5px solid var(--frame);border-radius:2px;box-shadow:0 0 0 1px var(--frame-hi),0 0 56px 4px rgb(var(--ember) / .3);--doc-text:var(--ink);--doc-accent:var(--ink);--doc-line:var(--frame);--focus:var(--focus-lit);font-family:var(--ui)}
.nb-feature a{color:var(--lit-link)}
.nb-feature a:visited{color:var(--lit-visited)}
.nb-eyebrow{margin-bottom:.1rem!important;font:700 .95rem var(--ui);color:var(--ink2)}
.news-board .nb-feature-title{font:600 1.65rem/1.2 var(--serif);color:var(--ink)}
.news-board .nb-feature-title a{color:var(--ink)}
.nb-meta{font:600 .95rem/1.3 var(--ui);margin-bottom:.35rem!important}
.nb-date{color:var(--paper2)}
.nb-feature .nb-date,.nb-feature .nb-age{color:var(--ink2)}
.nb-kind{padding:.1rem .5rem;border:1px solid var(--line-ctl);border-radius:2px;font:500 .875rem var(--ui);color:var(--paper2)}
.nb-kind-entfall{border:1px solid var(--glow2);color:var(--glow)}
.nb-feature .nb-kind{border-color:var(--lit-line);color:var(--ink)}
.nb-feature .nb-body{font-size:1.05rem}
.nb-body p:last-child,.nb-body pre:last-child{margin-bottom:0}
.nb-next{padding:1.1rem 1.25rem;background:var(--wood);border:1px solid var(--line);border-radius:2px;font-family:var(--ui)}
.news-board .nb-next-title{font:600 1.2rem/1.3 var(--serif);color:var(--heading);margin-bottom:.6rem}
.nb-session{border-top-color:var(--line);line-height:1.35}
.nb-when strong{color:var(--heading);font-weight:700}
.nb-type,.nb-where,.nb-note{color:var(--paper2);font-size:.95rem}
.nb-next .nb-note{margin:.2rem 0 0}
.nb-next .nb-more{margin:0}
a.nb-all{font-weight:600}
.news-board .nb-timeline-title{font:600 1.45rem/1.25 var(--serif);color:var(--heading);margin:.5rem 0 .75rem}
.nb-chips{gap:.4rem;margin-bottom:.9rem;font-family:var(--ui)}
.nb-chip{padding:.35rem .8rem;border:1px solid var(--line-ctl);border-radius:3px;background:var(--wood2);color:var(--paper);font:600 .98rem/1.2 var(--ui)}
.nb-chip:hover{border-color:var(--glow2);color:var(--glow)}
.nb-chip[aria-pressed="true"]{background:var(--amber);border-color:var(--amber);color:var(--ink)}
.nb-chip:focus-visible{outline-color:var(--focus)}
.nb-status{font:500 .95rem var(--ui);color:var(--paper2)}
.nb-year,.nb-year:last-child{border-color:var(--line)}
.nb-year>summary{font-family:var(--ui);padding-block:.65rem}
.nb-year>summary:hover .nb-year-label{color:var(--glow)}
.nb-year-label{font:600 1.35rem/1.2 var(--serif);color:var(--heading)}
.nb-count{font-size:.95rem;font-weight:500;color:var(--paper2)}
.nb-list{margin:.1rem 0 1rem .4rem}
.nb-item{padding:.65rem 0 .95rem 1.25rem;border-left-color:var(--line)}
.nb-item::before{left:-.45rem;top:.8rem;width:.75rem;height:.95rem;border-radius:1px;background:var(--wood3);border:1px solid var(--line-ctl)}
.nb-item[data-kind="entfall"]::before{background:var(--lit-edge);border-color:var(--frame-hi);box-shadow:0 0 10px rgb(var(--ember) / .5)}
.news-board .nb-title{font:600 1.15rem/1.3 var(--serif);color:var(--heading)}
.news-board .nb-title a{color:var(--heading)}
@media (max-width:639px){.board-page{hyphens:auto}}
@media (min-width:1240px){
  .join-step,.nb-item,.nb-feature,.fee-section{scroll-margin-top:8.5rem}
  .page-join{max-width:56rem}
  .join-step{display:grid;grid-template-columns:12rem minmax(0,1fr);column-gap:1.25rem;align-content:start}
  .join-step>*{grid-column:2}
  .join-steps .join-label{grid-column:1;grid-row:1/span 9;font-size:1.35rem}
  .news-board{grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);column-gap:2.5rem;row-gap:1.75rem}
  .nb-feature{grid-column:1;grid-row:1;padding:1.6rem 1.9rem;border-width:6px}
  .news-board .nb-feature-title{font-size:2rem}
  .nb-next{grid-column:2;grid-row:1/3;position:sticky;top:8.5rem;align-self:start}
  .nb-timeline{grid-column:1;grid-row:2}
  .nb-item{display:grid;grid-template-columns:10.5rem minmax(0,1fr);column-gap:1rem;align-items:start}
  .nb-item>*{grid-column:2}
  .nb-item>.nb-meta{grid-column:1;grid-row:1/span 2;flex-direction:column;align-items:flex-start;padding-top:.7rem}
}

/* ---------- no script: the menu stays reachable as plain links ---------- */
html:not(.js) .menu-btn{display:none}
html:not(.js) .mainnav{display:block}
html:not(.js) .mainnav ul{list-style:none;padding:0;margin:0}
html:not(.js) .mainnav a{display:flex;align-items:center;min-height:44px}

/* ---------- gentle glow ---------- */
@media (prefers-reduced-motion:no-preference){

  .win::after{content:"";position:absolute;inset:-5px;pointer-events:none;box-shadow:0 0 110px 22px rgb(var(--ember) / .2);animation:breathe 9s ease-in-out infinite alternate}
  @keyframes breathe{from{opacity:.35}to{opacity:1}}
}

@media (min-width:640px){
  h1{font-size:2.4rem}
  .hero-text h1{font-size:2.3rem}
  .hero-text p{font-size:1.15rem}
  .hero-cta{flex-direction:row}
  .doors{grid-template-columns:repeat(3,1fr)}
  .win-sill{grid-template-columns:1fr 1fr}
  .picks,.halls{grid-template-columns:1fr}
  .invite{grid-template-columns:1fr auto;align-items:center}
  .first-grid{grid-template-columns:1.5fr 1fr;align-items:start}
  .jump a{font-size:1rem}
  .num{}
}

/* ---------- wide: menu in the bar, the light under it ---------- */
@media (min-width:1240px){
  html{scroll-padding-top:8.5rem}
  :root{--doc-scroll-offset:8.5rem}
  h1,h2,h3,.path>li,.probe-card section{scroll-margin-top:8.5rem}
  body{padding-bottom:0;font-size:1.125rem}
  .bar{padding:.35rem 2rem;gap:1.5rem;min-height:4.25rem}
  .brand{font-size:1.2rem}.brand img{width:46px}
  .menu-btn:not(.close){display:none}
  html:not(.js) .mainnav ul ul{display:none}
  .mainnav{display:block}
  .mainnav>ul{display:flex;align-items:center;gap:.1rem;list-style:none;margin:0;padding:0}
  .mainnav>ul>li{position:relative}
  .mainnav a,.sub-btn{display:inline-flex;align-items:center;min-height:44px;padding:.3rem .8rem;background:none;border:0;border-radius:2px;color:var(--paper);font:500 1.03rem var(--ui);text-decoration:none;cursor:pointer;white-space:nowrap}
  .mainnav>ul>li>a:hover,.sub-btn:hover,.has-sub.open .sub-btn{color:var(--glow)}
  .mainnav a[aria-current],.sub-btn.on{color:var(--glow);box-shadow:inset 0 -2px 0 var(--glow2)}
  .sub-btn::after{content:"";width:.42rem;height:.42rem;margin:-.2rem 0 0 .5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}
  .sub{display:none;position:absolute;top:100%;left:0;z-index:30;min-width:16rem;list-style:none;margin:.2rem 0 0;padding:.4rem;background:var(--wood2);border:1px solid var(--line);border-radius:2px;box-shadow:0 18px 40px rgba(0,0,0,.5)}
  .has-sub:last-of-type .sub{left:auto;right:0}
  .has-sub.open .sub,.has-sub:focus-within .sub{display:block}
  .sub a{display:flex;width:100%;box-shadow:none!important}
  .sub a:hover{background:var(--wood3);color:var(--glow)}

  .sill{position:static;align-items:center;gap:1.5rem;min-height:2.9rem;padding:.2rem 2rem;box-shadow:0 4px 34px rgb(var(--ember) / .26);font-size:1.03rem}
  .home .sill{display:none}
  .sill .narrow{display:none}
  .sill .wide{display:inline}
  .sill .wide .lbl{font-weight:500;margin-right:.4rem}
  .sill .wide b:not(.lbl){font-size:1.1rem}
  .sill-next{flex:0 1 auto;min-height:44px}
  .sill-news{display:block;flex:1 1 0;min-width:0;line-height:1.25;padding:.2rem 0 .2rem 1.5rem;border-left:1px solid rgb(var(--shade) / .45);font-weight:500}
  .sill-news:hover{text-decoration:underline}
  .sill-news span{font-weight:500}
  .sill a.sill-probe{min-height:40px;padding:.3rem 1rem;margin-left:auto}

  h1{font-size:2.6rem}h2{font-size:1.6rem}h3{font-size:1.2rem}

  .hero{display:flex;align-items:center;background:radial-gradient(60% 90% at 66% 50%,rgb(var(--hearth) / .3),transparent 70%),linear-gradient(180deg,var(--wood2),var(--night) 85%)}
  /* the lantern has its own grid column, so text can never sit on it */
  .hero-in::before{content:"";grid-column:2;grid-row:1/3;align-self:stretch;min-height:320px;margin:-3rem 0;background:url(/media/extra/DSC03531a.jpg) 37.5% 40%/auto 130% no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(90deg,transparent,#000 22%,#000 78%,transparent)}
  .hero-in{width:100%;padding:3rem 4%;display:grid;grid-template-columns:27% 18% minmax(0,1fr);grid-template-rows:auto auto;align-items:start}
  .hero-text{grid-column:1;grid-row:1;margin:0;min-height:0;padding:0;align-self:end}
  .hero-text h1{font-size:2.7rem}
  .hero-text p{font-size:1.2rem;line-height:1.45}
  .hero-cta{grid-column:1;grid-row:2;flex-direction:column;align-items:flex-start;margin-top:1.4rem}
  .win{grid-column:3;grid-row:1/3;max-width:47rem;width:100%;justify-self:start;align-self:center;border-width:6px}
  .win-main{padding:1.5rem 1.9rem 1.35rem}
  .win-lbl,.win-sub{font-size:1rem}
  .win-day{font-size:2.2rem}
  .win-time{font-size:4rem;margin:.1rem 0 .45rem!important}
  .win-place{font-size:1.35rem}
  .win-dir{font-size:1.1rem}
  .win-sill{padding:1rem 1.9rem 1rem;gap:1.75rem;font-size:1.03rem}

  .newhere{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem;padding:3.25rem 0;align-items:center}
  .whatis{padding:3.25rem 0}
  .whatis-in{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:3rem;align-items:center}
  .home-news{padding:3rem 0 3.5rem}

  .head{max-width:76rem}
  .halls{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
  .lit{order:0}
  .hall{padding:1.4rem 1.5rem}
  .hall-time{font-size:2rem}
  .changes{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:3rem}
  .foot-in{grid-template-columns:auto 1fr;align-items:center}
  .foot ul{justify-content:flex-end}
  .first-head{max-width:48rem}
  .invite{padding:1.75rem 2rem}
}

/* Beitritt: Vorteile as small lit cards instead of typed bullets */
.perk-cards{list-style:none;margin:1rem 0 1.5rem;padding:0;display:grid;gap:.75rem}
.perk-card{margin:0;padding:.9rem 1.1rem .9rem 1.2rem;background:var(--wood);border:1px solid var(--line);border-left:4px solid var(--glow2);border-radius:2px;line-height:1.45}
@media (min-width:48rem){.perk-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- shared layer: schedule overview, form errors, contact block, folded reading text ---------- */
.hall,.pick{scroll-margin-top:5rem}
.head .sched-overview{margin:1.1rem 0 1.5rem;max-width:56rem;border-top:0;display:grid;gap:.5rem}
.head .so-item{border:1px solid var(--line);border-left:4px solid var(--hall,var(--glow2));background:var(--wood);border-radius:2px}
.head .so-item:nth-child(1){--hall:#d8743c}.head .so-item:nth-child(2){--hall:#f3d9b8}.head .so-item:nth-child(3){--hall:#aeb27c}
.head a.so-row{padding:.55rem .9rem;color:var(--paper);font:500 1rem/1.35 var(--ui)}
.head .so-when{color:var(--heading);font-size:1.1rem;text-decoration:none}
.head .so-when strong{font:600 1.25rem var(--serif)}
.head .so-where{color:var(--glow)}
.head a.so-row:hover{background:var(--wood2)}
.head a.so-row:hover .so-when{text-decoration:underline}
.head a.so-row:focus-visible{outline-color:var(--focus)}
.sl-form-errors{background:var(--err-bg);color:var(--err-text);border-left-color:var(--frame);border-radius:3px;--focus:var(--focus-lit)}
.sl-form-errors a{color:var(--lit-link)}
.sl-form-errors:focus{outline-color:var(--focus-lit)}
.sl-field-err{color:#ffd9c2;font:600 1rem var(--ui)}
.sl-form [aria-invalid=true]{border-color:#ffb98a;border-width:3px}
.contact-info{margin:1rem 0 1.5rem}
.contact-info table{width:100%;border-collapse:separate;border-spacing:0 .5rem}
.contact-info td{background:var(--wood);border:1px solid var(--line);padding:.9rem 1.1rem;vertical-align:top;line-height:1.55}
.contact-info td+td{border-left:4px solid var(--glow2)}
.contact-info td:first-child{border-left:4px solid var(--hearth)}
@media (max-width:40rem){.contact-info td{display:block;width:auto}.contact-info td+td{margin-top:.5rem}}
.doc-reading-fold{background:var(--wood2)}
.doc-reading-fold[open]{background:var(--wood)}
.doc-reading-fold>summary{font-family:var(--ui);color:var(--glow)}
.step-links{display:flex;flex-wrap:wrap;gap:.6rem}
