.footer{background:var(--blue);color:rgba(var(--paper-rgb), .92);padding:var(--space-8) 0 var(--space-5);font-family:var(--font-sans);border-top:3px double rgba(var(--paper-rgb), .38);font-size:16px;line-height:1.5}.footer__columns{gap:var(--space-7) var(--space-6);grid-template-columns:1fr;display:grid}@media (min-width:576px){.footer__columns{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.footer__columns{gap:var(--space-8) var(--space-7);grid-template-columns:1.5fr repeat(3,1fr)}}@media (min-width:576px) and (max-width:1023.98px){.footer__brand{grid-column:1/-1}}.footer__logo{margin-bottom:var(--space-4);display:block}.footer__logo img{filter:brightness(0)invert();opacity:.85;width:200px;max-width:100%;transition:opacity var(--dur) var(--ease);display:block}.footer__logo span{font-family:var(--font-sans);color:var(--paper);font-size:21px}.footer__logo:hover{text-decoration:none}.footer__logo:hover img{opacity:1}.footer__description{max-width:38ch;margin:0;line-height:1.7}.footer__column{align-items:flex-start;gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.footer__heading{letter-spacing:.18em;text-transform:uppercase;color:var(--paper-bright);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-dark);align-self:stretch;font-size:13px;font-style:italic}.footer__text{padding:var(--space-1) 0;color:rgba(var(--paper-rgb), .82)}.footer__link{padding:var(--space-1) 0;color:var(--paper-bright);transition:color var(--dur) var(--ease)}.footer__link:hover{color:var(--paper-bright);text-underline-offset:3px;text-decoration:underline}.footer__bottom{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--line-dark);align-items:center;gap:var(--space-3) var(--space-5);color:rgba(var(--paper-rgb), .72);flex-wrap:wrap;font-size:14px;font-style:italic;display:flex}@media (min-width:768px){.footer__bottom{margin-top:var(--space-8)}}.footer__legal{color:rgba(var(--paper-rgb), .72);transition:color var(--dur) var(--ease)}.footer__legal:hover{color:var(--paper-bright);text-underline-offset:3px;text-decoration:underline}@media (min-width:576px){.footer__legal--first{margin-left:auto}}
.navbar{z-index:60;background:var(--blue);border-bottom:2px solid rgba(var(--paper-rgb), .38);box-shadow:0 3px 0 -1px rgba(var(--paper-rgb), .16);position:sticky;top:0}.navbar .container{align-items:center;gap:var(--space-4);min-height:var(--nav-height);padding-top:var(--space-2);padding-bottom:var(--space-2);display:flex}.navbar__brand{align-items:center;gap:var(--space-3);color:var(--paper-bright);min-width:0;margin-right:auto;display:flex}.navbar__brand:hover{color:var(--paper-bright);text-decoration:none}.navbar__brand img{flex-shrink:0;width:auto;height:34px;display:block}@media (min-width:768px){.navbar__brand img{height:40px}}.navbar__wordmark{flex-direction:column;min-width:0;line-height:1.15;display:flex}.navbar__eyebrow{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:rgba(var(--paper-rgb), .78);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-style:italic;overflow:hidden}.navbar__name{letter-spacing:.005em;font-size:17px;line-height:1.15}@media (min-width:768px){.navbar__name{font-size:21px}}.navbar__toggle{width:var(--tap);height:var(--tap);border:1px solid rgba(var(--paper-rgb), .5);border-radius:var(--radius);background:rgba(var(--paper-rgb), .12);cursor:pointer;z-index:2;flex-direction:column;flex-shrink:0;justify-content:center;gap:5px;padding:11px;display:inline-flex}.navbar__toggle span{background:var(--paper-bright);width:100%;height:1.5px;transition:transform var(--dur) var(--ease),opacity var(--dur) var(--ease);display:block}.navbar__toggle.is-open span:first-child{transform:translateY(6.5px)rotate(45deg)}.navbar__toggle.is-open span:nth-child(2){opacity:0}.navbar__toggle.is-open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.navbar__scrim{inset:var(--nav-height) 0 0;background:rgba(var(--ink-rgb), .35);opacity:0;visibility:hidden;transition:opacity var(--dur) var(--ease),visibility var(--dur) var(--ease);position:fixed}.navbar__scrim.is-open{opacity:1;visibility:visible}.navbar__menu{background:var(--blue);border-bottom:1px solid rgba(var(--paper-rgb), .28);box-shadow:var(--shadow-md);padding:var(--space-3) var(--gutter) var(--space-5);max-height:calc(100dvh - var(--nav-height));overscroll-behavior:contain;visibility:hidden;opacity:0;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease),visibility var(--dur) var(--ease);position:absolute;top:100%;left:0;right:0;overflow-y:auto;transform:translateY(-8px)}.navbar__menu.is-open{visibility:visible;opacity:1;transform:none}.navbar ul{font-family:var(--font-sans);flex-direction:column;align-items:stretch;gap:0;margin:0;padding:0;font-size:17px;list-style:none;display:flex}.navbar li a:not(.btn){min-height:var(--tap);padding:var(--space-2) 0;color:var(--paper-bright);border-bottom:1px solid rgba(var(--paper-rgb), .22);transition:color var(--dur) var(--ease);align-items:center;display:flex}.navbar li a:not(.btn):hover,.navbar li a:not(.btn).is-active{color:var(--red-logo);text-decoration:none}.navbar__cta{margin-top:var(--space-4);width:100%}@media (min-width:1024px){.navbar .container{gap:var(--space-6)}.navbar__toggle,.navbar__scrim{display:none}.navbar__menu{max-height:none;box-shadow:none;visibility:visible;opacity:1;background:0 0;border:0;padding:0;position:static;overflow:visible;transform:none}.navbar ul{align-items:center;gap:var(--space-6);letter-spacing:.06em;text-transform:uppercase;flex-direction:row;font-size:15px}.navbar li a:not(.btn){min-height:0;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);border-bottom:2px solid #0000;padding:0 0 3px}.navbar li a:not(.btn):hover,.navbar li a:not(.btn).is-active{border-bottom-color:var(--red-logo)}.navbar__cta{width:auto;min-height:40px;padding:0 var(--space-5);letter-spacing:.02em;margin-top:0}}
:root{--paper:#ece4d6;--paper-raised:#f2ebdf;--paper-bright:#f8f3e9;--ink:#1f1c17;--ink-nav:#3a342b;--ink-body:#453e34;--ink-muted:#6b6155;--line:#d5c8b2;--line-strong:#bda98a;--line-dark:#ece4d633;--red:#86281f;--red-dark:#631d16;--red-bright:#9e3125;--red-logo:#d21116;--blue:#3e8ec5;--blue-dark:#2f6f9c;--blue-rgb:62, 142, 197;--gold:#c99a4e;--gold-light:#e4c88b;--sand:#e4d3b4;--ink-rgb:31, 28, 23;--paper-rgb:248, 243, 233;--scrim:#14110df0;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--container:1240px;--measure:720px;--gutter:20px;--nav-height:66px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:44px;--space-8:60px;--section-y:42px;--section-y-tight:27px;--radius:0px;--shadow-sm:0 1px 2px rgba(var(--ink-rgb), .08);--shadow-md:0 12px 28px rgba(var(--ink-rgb), .14);--shadow-lg:0 24px 60px #00000080;--shadow-plate:0 1px 0 rgba(var(--ink-rgb), .12), 0 6px 18px rgba(var(--ink-rgb), .1);--ease:cubic-bezier(.4, 0, .2, 1);--dur-fast:.15s;--dur:.25s;--dur-slow:.45s;--tap:44px;--photo-tone:sepia(.32) saturate(.82) contrast(1.04) brightness(.99);--grain-opacity:.055}@media (min-width:768px){:root{--gutter:28px;--nav-height:74px;--section-y:69px;--section-y-tight:42px}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--paper);-webkit-text-size-adjust:100%}body{background-color:var(--paper);background-image:linear-gradient(color-mix(in srgb, var(--paper) 70%, transparent), color-mix(in srgb, var(--paper) 70%, transparent)),url(/design/stadtkarte.jpg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:lining-nums proportional-nums;font-feature-settings:"liga" 1,"clig" 1;background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;position:relative;overflow-x:hidden}body:after{content:"";z-index:9999;pointer-events:none;opacity:var(--grain-opacity);mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}body.is-locked{overflow:hidden}::selection{background:var(--sand)}a{color:var(--red);text-decoration:none}a:hover{color:var(--red-dark);text-underline-offset:3px;text-decoration:underline}img,picture,video,svg{max-width:100%}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--red);outline-offset:3px}.band--dark :focus-visible,.band--red :focus-visible,.hero :focus-visible,.navbar :focus-visible,.footer :focus-visible,.lightbox :focus-visible{outline-color:var(--paper-bright)}:target,[id]{scroll-margin-top:calc(var(--nav-height) + var(--space-4))}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.container{width:100%;max-width:calc(var(--container) + var(--gutter)*2);padding:0 var(--gutter);margin:0 auto}.container--measure{max-width:calc(var(--measure) + var(--gutter)*2)}.section{padding:var(--section-y) 0}.section--tight{padding:var(--section-y-tight) 0}.band{background:var(--paper-raised);border-top:3px double var(--line-strong);border-bottom:3px double var(--line-strong);position:relative}.band+.band{border-top:0}.band--dark{background:var(--ink);color:var(--paper);border-color:rgba(var(--paper-rgb), .28)}.band--red{background:var(--red);color:var(--paper-bright);border-color:rgba(var(--paper-rgb), .3)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.015em;color:inherit;text-wrap:balance;font-weight:400;line-height:1.14}h1{letter-spacing:-.022em;font-size:clamp(34px,5.2vw,60px);line-height:1.06}h2{font-size:clamp(27px,3.4vw,40px)}h3{font-size:clamp(21px,2.2vw,28px)}h4{font-size:clamp(19px,1.6vw,22px)}h5{font-size:18px;line-height:1.2}h6{letter-spacing:.02em;color:var(--ink-body);font-size:16px;line-height:1.2}.display{letter-spacing:-.028em;font-size:clamp(38px,7vw,82px);line-height:1.02}p{text-wrap:pretty;line-height:1.68}.eyebrow{font-family:var(--font-sans);letter-spacing:.24em;text-transform:uppercase;color:var(--red);margin:0 0 var(--space-4);font-size:13px;font-style:italic}@media (min-width:768px){.eyebrow{font-size:14px}}.kicker{font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin:0 0 var(--space-2);font-size:13px}.lead{color:var(--ink-body);font-size:clamp(17px,1.5vw,21px);line-height:1.62}.intro{color:var(--ink-body);max-width:62ch;font-size:clamp(16.5px,1.3vw,18.5px);line-height:1.72}.caption{font-family:var(--font-sans);color:var(--ink-muted);font-size:14px;font-style:italic}.empty-note{font-family:var(--font-sans);color:var(--ink-muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--space-6);text-align:center;font-size:16px;font-style:italic}.ornament{align-items:center;gap:var(--space-4);color:var(--line-strong);-webkit-user-select:none;user-select:none;font-size:13px;line-height:1;display:flex}.ornament:before,.ornament:after{content:"";background:currentColor;flex:1;height:1px}.ornament--start:before{display:none}.btn{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--tap);border-radius:var(--radius);cursor:pointer;text-align:center;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease);border:1px solid #0000;padding:13px 28px;font-size:15px;display:inline-flex}.btn:hover{text-decoration:none}.btn--primary{background:var(--red);color:var(--paper-bright);box-shadow:inset 0 0 0 1px rgba(var(--paper-rgb), .25)}.btn--primary:hover{background:var(--red-bright);color:var(--paper-bright)}.btn--outline{color:var(--ink);border-color:rgba(var(--ink-rgb), .38)}.btn--outline:hover{background:rgba(var(--ink-rgb), .06);border-color:rgba(var(--ink-rgb), .6);color:var(--ink)}.btn--light{background:var(--paper-bright);color:var(--red);box-shadow:inset 0 0 0 1px rgba(var(--ink-rgb), .15)}.btn--light:hover{color:var(--red-dark);background:#fff}.btn--inline{min-height:0;box-shadow:none;letter-spacing:.12em;color:var(--red);background:0 0;border:0;padding:0;font-size:14px}.btn--inline:after{content:"→";transition:transform var(--dur) var(--ease)}.btn--inline:hover{color:var(--red-dark);text-underline-offset:4px;text-decoration:underline}.btn--inline:hover:after{transform:translate(3px)}.btn-row{align-items:stretch;gap:var(--space-3);flex-direction:column;display:flex}@media (min-width:576px){.btn-row{align-items:center;gap:var(--space-4);flex-flow:wrap}}.btn-row .btn--inline{justify-content:flex-start}.band--dark .btn--outline,.band--red .btn--outline,.hero .btn--outline{color:var(--paper-bright);border-color:rgba(var(--paper-rgb), .5)}.band--dark .btn--outline:hover,.band--red .btn--outline:hover,.hero .btn--outline:hover{background:rgba(var(--paper-rgb), .12);border-color:rgba(var(--paper-rgb), .75);color:var(--paper-bright)}.band--dark .btn--inline,.band--red .btn--inline,.hero .btn--inline,.band--dark .btn--inline:hover,.band--red .btn--inline:hover,.hero .btn--inline:hover{color:var(--gold-light)}.band--dark .eyebrow,.band--dark .kicker{color:var(--gold)}.band--dark .intro,.band--dark .caption{color:rgba(var(--paper-rgb), .64)}.band--red .eyebrow,.band--red .kicker{color:rgba(var(--paper-rgb), .75)}.band--red .intro,.band--red .caption{color:rgba(var(--paper-rgb), .84)}.band--red a:not(.btn){color:var(--paper-bright)}.plate{background:var(--paper-bright);border:1px solid var(--line-strong);box-shadow:var(--shadow-plate);padding:6px;position:relative}@media (min-width:768px){.plate{padding:8px}}.plate img{filter:var(--photo-tone);transition:filter var(--dur-slow) var(--ease),transform var(--dur-slow) var(--ease);display:block}.plate--interactive:hover img,.plate--interactive:focus-visible img,a:hover .plate img,a:focus-visible .plate img{filter:none}
