:root{--bg:#faf6ee;--paper:#fffdf8;--ink:#22301f;--muted:#5d6657;--green:#2e6b46;--green-deep:#17301f;--green-soft:#e6efe4;--blue:#2c5e82;--blue-soft:#e7eef4;--amber:#93650f;--amber-soft:#f7edd4;--accent:#d9652f;--accent-dark:#bf5526;--line:#e8e0d0;--radius:16px;--maxw:1120px;--shadow-soft:0 2px 24px rgba(34,48,31,0.07);--font-display:georgia,serif;--font-body:system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;display:block}a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--green)}blockquote,h1,h2,h3{font-family:var(--font-display);line-height:1.12;letter-spacing:0;font-weight:600}h1{font-size:clamp(2.4rem,6vw,4.2rem)}h1,h2{margin:0 0 1rem}h2{font-size:clamp(1.7rem,3.6vw,2.5rem)}h3{font-size:1.25rem;margin:0 0 .4rem}.container{max-width:var(--maxw);margin:0 auto;padding:0 1.4rem}.eyebrow{display:block;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;font-weight:800;color:var(--green);margin-bottom:.9rem}.site-header{background:rgba(250,246,238,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:40}.site-header .container{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:1rem}.wordmark{text-decoration:none}.logo{display:inline-flex;align-items:center;gap:.55rem}.logo-mark{width:34px;height:34px;border-radius:9px;flex:none;box-shadow:0 2px 8px rgba(23,48,31,.25)}.logo-text{font-family:var(--font-display);font-weight:700;font-size:1.35rem;line-height:1;color:var(--green-deep);letter-spacing:-.015em;display:inline-flex;align-items:baseline;white-space:nowrap}.logo-check{color:var(--green);font-style:italic;margin-left:.05em}.logo-ooe{font-family:var(--font-body);font-size:.6em;font-weight:800;letter-spacing:.08em;color:var(--green-deep);background:var(--green-soft);border-radius:6px;padding:.2em .5em;margin-left:.55em;transform:translateY(-.18em)}.wordmark:hover .logo-text{color:var(--green)}.logo.light .logo-text{color:#fbf9f2}.logo.light .logo-check{color:#a8c8ae}.logo.light .logo-ooe{color:#fbf9f2;background:rgba(251,249,242,.16)}.lang{position:relative}.lang summary{list-style:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:1px solid var(--line);border-radius:999px;padding:.32rem .9rem;font-weight:800;font-size:.82rem;background:var(--paper);color:var(--ink);letter-spacing:.06em}.lang summary::-webkit-details-marker{display:none}.lang[open] summary{border-color:var(--green)}.lang ul{position:absolute;right:0;top:calc(100% + 8px);background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 44px rgba(34,48,31,.16);list-style:none;margin:0;padding:.4rem;min-width:11.5rem;z-index:50}.lang li a{display:block;padding:.5rem .85rem;border-radius:9px;text-decoration:none;color:var(--ink);font-size:.95rem}.lang li a:hover{background:var(--green-soft);color:var(--green-deep)}.lang li a.active{font-weight:800;color:var(--green)}.hero-photo{position:relative;min-height:min(82vh,760px);display:flex;align-items:center;background-image:url(/images/almsee.jpg);background-size:cover;background-position:center 62%;color:#fbf9f2}.hero-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,48,31,.28) 0,rgba(23,48,31,.34) 55%,rgba(23,48,31,.66))}.hero-photo .container{position:relative;z-index:2;max-width:880px;text-align:center;padding-top:5rem;padding-bottom:5.5rem}.hero-photo h1{text-shadow:0 2px 26px rgba(12,24,16,.55);margin-bottom:1.1rem}.hero-photo .sub{font-size:clamp(1.08rem,2.2vw,1.3rem);max-width:640px;margin:0 auto 2.2rem;color:#f1eee2;text-shadow:0 1px 14px rgba(12,24,16,.6)}.trust{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-top:2.4rem;padding:0;list-style:none}.trust li{border:1px solid rgba(251,249,242,.45);padding:.3rem 1rem;font-size:.85rem;font-weight:700;letter-spacing:.04em;background:rgba(23,48,31,.25)}.btn-cta,.trust li{border-radius:999px}.btn-cta{display:inline-block;background:var(--accent);color:#fff;font-family:var(--font-body);font-weight:800;font-size:1.06rem;padding:1rem 2.1rem;text-decoration:none;border:none;cursor:pointer;box-shadow:0 6px 22px rgba(217,101,47,.4);transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.btn-cta:hover{background:var(--accent-dark);color:#fff;transform:translateY(-2px);box-shadow:0 10px 28px rgba(191,85,38,.45)}.section{padding:clamp(3rem,7vw,5.5rem) 0}.section.alt{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-lead{color:var(--muted);max-width:660px;margin:0 0 2.4rem;font-size:1.05rem}.center{text-align:center}.center .section-lead{margin-left:auto;margin-right:auto}.grid{display:grid;grid-gap:1.2rem;gap:1.2rem}.grid.cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.grid.cols-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:580px){.grid.cols-3{grid-template-columns:1fr}}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem 1.6rem 1.5rem;box-shadow:var(--shadow-soft)}.card p{margin:0;color:var(--muted);font-size:.98rem}.card .icon{width:52px;height:52px;border-radius:14px;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}a.card{text-decoration:none;color:inherit;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;position:relative}a.card:hover{border-color:var(--green);transform:translateY(-3px);color:inherit;box-shadow:0 12px 34px rgba(34,48,31,.12)}a.card .arrow{position:absolute;right:1.3rem;bottom:1.1rem;color:var(--accent);font-weight:800;opacity:0;transition:opacity .15s ease}a.card:hover .arrow{opacity:1}.card .bezirk{color:var(--muted);font-size:.9rem;margin-bottom:.7rem}.badge{display:inline-block;padding:.26rem .8rem;border-radius:999px;font-size:.84rem;font-weight:800;font-family:var(--font-body)}.badge.announced{background:var(--amber-soft);color:var(--amber)}.badge.construction{background:var(--blue-soft);color:var(--blue)}.badge.live{background:var(--green);color:#fff}.badge.unknown{background:var(--line);color:var(--muted)}.step .num{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--green);color:#fff;font-weight:800;font-size:1.05rem;margin-bottom:.9rem}.step p{color:var(--muted);margin:0}.band{position:relative;min-height:400px;display:flex;align-items:center;background-size:cover;background-position:50%;color:#fbf9f2}.band:before{content:"";position:absolute;inset:0;background:rgba(23,48,31,.52)}.band .container{position:relative;z-index:2;text-align:center;max-width:860px}.band blockquote{margin:0;font-size:clamp(1.8rem,4.5vw,3rem);font-style:italic;text-shadow:0 2px 24px rgba(12,24,16,.6)}.price-panel{background:var(--green-deep);color:#f3f1e6;border-radius:calc(var(--radius) + 6px);padding:clamp(2.2rem,5vw,3.5rem);text-align:center;box-shadow:0 18px 60px rgba(23,48,31,.25)}.price-panel h2{color:#fbf9f2;margin-bottom:1rem}.price-panel p{max-width:640px;margin:0 auto 1.8rem;color:#d9d9c8;font-size:1.05rem}.price-panel .cta-note{font-size:.84rem;color:#b9c0ac;max-width:560px;margin:1.1rem auto 0}.gemeinde-hero{position:relative;min-height:380px;display:flex;align-items:flex-end;background-size:cover;background-position:50%;color:#fbf9f2}.gemeinde-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,48,31,.18),rgba(23,48,31,.72))}.gemeinde-hero .container{position:relative;z-index:2;padding-bottom:2.4rem;padding-top:5rem}.gemeinde-hero h1{margin-bottom:.8rem;text-shadow:0 2px 22px rgba(12,24,16,.6)}.meta-line{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center;font-size:.95rem}.meta-line .plain{color:#e4e1d2}.example-note{margin:1.2rem auto 0;padding:.65rem 1rem;border-radius:12px;background:var(--amber-soft);color:var(--amber);font-size:.9rem;border:1px solid rgba(147,101,15,.25)}.chips{display:flex;flex-wrap:wrap;gap:.55rem;padding:0;margin:1rem 0 0;list-style:none}.chips li{background:var(--green-soft);color:var(--green-deep);border-radius:999px;padding:.35rem 1rem;font-size:.93rem;font-weight:700}.data-note{color:var(--muted);font-size:.9rem}.faq details{border-top:1px solid var(--line);padding:1rem 0}.faq details:last-of-type{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700;font-size:1.05rem;list-style:none;position:relative;padding-right:2rem}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:.3rem;top:50%;transform:translateY(-50%);color:var(--green);font-weight:800;font-size:1.3rem;transition:transform .15s ease}.faq details[open] summary:after{transform:translateY(-50%) rotate(45deg)}.faq details p{color:var(--muted);margin:.7rem 0 0;max-width:700px}.optin{background:var(--blue-soft);border:1px solid rgba(44,94,130,.18);border-radius:calc(var(--radius) + 6px);padding:clamp(1.8rem,4vw,2.6rem)}.optin form{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.2rem}.optin input[type=email]{flex:1 1 260px;padding:.9rem 1.2rem;border-radius:999px;border:1px solid var(--line);font-size:1rem;background:var(--paper);color:var(--ink);font-family:var(--font-body)}.optin input[type=email]:focus{outline:2px solid var(--blue);outline-offset:1px}.optin .consent{font-size:.82rem;color:var(--muted);margin-top:.9rem}.optin .msg{margin-top:1rem;font-weight:700}.optin .msg.ok{color:var(--green)}.optin .msg.err{color:var(--accent-dark)}.az h3{font-family:var(--font-body);font-size:.85rem;text-transform:uppercase;letter-spacing:.14em;color:var(--green);margin:1.8rem 0 .5rem}.az ul{list-style:none;padding:0;margin:0;column-count:3;column-gap:2.4rem}@media (max-width:860px){.az ul{column-count:2}}@media (max-width:540px){.az ul{column-count:1}}.az li{page-break-inside:avoid;break-inside:avoid;padding:.18rem 0}.az a{color:var(--ink);text-decoration:none;font-size:.97rem}.az a:hover{color:var(--green);text-decoration:underline}.site-footer{background:var(--green-deep);color:#c8cfba;margin-top:4rem;padding:3rem 0 2.4rem;font-size:.92rem}.site-footer .brand{font-family:var(--font-display);font-size:1.35rem;color:#fbf9f2;margin-bottom:1rem}.site-footer .brand .dot{color:var(--accent)}.site-footer a{color:#eef0e4}.site-footer a:hover{color:#fff}.site-footer .affiliate{max-width:760px;margin:0 0 1.6rem;line-height:1.7}.site-footer nav{display:flex;flex-wrap:wrap;gap:1.4rem;margin-bottom:1.6rem}.site-footer .langs{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;list-style:none;padding:0;margin:0 0 1.2rem}.site-footer .langs a{font-size:.85rem}.site-footer .legal-primacy{font-size:.82rem;opacity:.75}.admin-topbar{flex-wrap:wrap}.admin-tag{font-family:var(--font-body);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;background:var(--blue-soft);color:var(--blue);border-radius:999px;padding:.15rem .6rem;vertical-align:middle}.admin-nav{display:flex;flex-wrap:wrap;gap:1.1rem;align-items:center;font-size:.95rem}.admin-nav a{text-decoration:none;font-weight:700}.admin-user{color:var(--muted);font-size:.85rem}.admin-main{padding:2rem 1.4rem 4rem}.admin-main h1{font-size:2rem;margin:0 0 1rem}.admin-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.6rem;margin:1.4rem 0}.admin-card h2{font-size:1.25rem;margin:0 0 .8rem}.admin-status{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 .6rem}.admin-status span{border-radius:999px;padding:.25rem .85rem;font-size:.85rem;font-weight:700}.admin-status .ok{background:var(--green-soft);color:var(--green)}.admin-status .warn{background:var(--amber-soft);color:var(--amber)}.admin-table{width:100%;border-collapse:collapse;font-size:.95rem}.admin-table td,.admin-table th{text-align:left;padding:.5rem .7rem;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.admin-details{max-width:420px;word-break:break-word;font-size:.85rem;color:var(--muted)}.admin-inline{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.admin-form label{display:block;margin:.8rem 0;font-weight:700;font-size:.95rem}.admin-form input,.admin-form textarea,.admin-inline select{display:block;width:100%;max-width:640px;margin-top:.3rem;padding:.55rem .8rem;border:1px solid var(--line);border-radius:10px;font-family:var(--font-body);font-size:.95rem;background:var(--paper);color:var(--ink)}.admin-inline select{display:inline-block;width:auto;margin:0}.admin-form fieldset{border:1px solid var(--line);border-radius:10px;margin:.8rem 0;padding:.7rem 1rem}.admin-form fieldset input,.admin-form fieldset textarea{margin-bottom:.5rem}.admin-main button:not(.btn-cta){background:var(--paper);border:1px solid var(--green);color:var(--green);border-radius:999px;padding:.45rem 1.1rem;font-weight:700;cursor:pointer;font-family:var(--font-body);font-size:.9rem}.admin-main button:not(.btn-cta):hover{background:var(--green-soft)}.admin-main button:disabled{opacity:.5;cursor:not-allowed}.admin-main .btn-cta{padding:.6rem 1.4rem;font-size:.95rem}.consent{position:fixed;left:50%;bottom:1rem;transform:translateX(-50%);z-index:100;width:min(680px,calc(100vw - 2rem));background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.3rem;box-shadow:0 18px 50px rgba(23,48,31,.3)}.consent p{margin:0 0 .9rem;font-size:.92rem;color:var(--ink)}.consent-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.consent .btn-cta{padding:.55rem 1.4rem;font-size:.95rem}.consent-decline{background:none;border:1px solid var(--line);border-radius:999px;padding:.5rem 1.2rem;font-weight:700;color:var(--muted);cursor:pointer;font-family:var(--font-body);font-size:.92rem}.consent-decline:hover{border-color:var(--muted);color:var(--ink)}.hp{position:absolute!important;left:-9999px!important;opacity:0}.prose{max-width:760px}.prose h2{font-size:1.35rem;margin-top:2.2rem}.prose .placeholder{background:var(--amber-soft);color:var(--amber);padding:.15rem .45rem;border-radius:6px;font-size:.92em}