*{box-sizing:border-box}html{background:#008020;scroll-behavior:smooth}body{margin:0;color:#080808;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}.site{width:960px;max-width:100%;margin:12px auto 24px;background:#fff}a{color:#00721b}header{height:150px;display:grid;grid-template-columns:180px 1fr 160px;align-items:center;padding:0 10px}header a{text-decoration:none}header img{display:block;max-width:100%;height:auto}.rathaus{max-width:170px}.rathaus img{width:160px;height:140px;object-fit:contain}.brand{text-align:center;color:#008020;font-weight:800;font-size:48px;line-height:1.22;letter-spacing:-1.2px}.brand span{color:#c00000}.seal{width:140px;max-height:140px;object-fit:contain}nav{background:#c00000;padding:4px 5px;position:relative;z-index:10}nav ul{list-style:none;margin:0;padding:0}nav>.nav-list{display:flex;gap:4px}nav>.nav-list>li{flex:1;min-width:0;position:relative}nav a,nav summary{font-size:14px;font-weight:bold;display:block;background:#008020;border-radius:6px;color:white;text-align:center;text-decoration:none;padding:3px 5px;cursor:pointer;line-height:1.5}nav summary{list-style:none}nav summary::-webkit-details-marker{display:none}nav [aria-current],nav .current-group{background:#c00000}nav a:hover,nav summary:hover{background:#006b1b}nav a:focus-visible,nav summary:focus-visible{outline:2px solid white;outline-offset:-2px}nav details>ul{position:absolute;top:100%;left:0;background:#008020;width:250px;box-shadow:0 5px 12px #0005;border:2px solid #c00000;padding:3px}nav details>ul a,nav details>ul summary{text-align:left;white-space:normal;padding:7px 9px}nav details>ul details>ul{position:static;border:0;border-left:2px solid #fff6;box-shadow:none;width:auto;margin-left:9px}main.home{display:grid;grid-template-columns:1fr 463px;gap:15px;padding:20px 16px 24px;min-height:676px}.welcome{text-align:center}.welcome h1{font-family:Vivaldi,'URW Chancery L','Brush Script MT','Segoe Script',cursive;font-weight:600;font-style:italic;font-size:42px;line-height:1.3;margin:38px 0 0;letter-spacing:-1.2px}.welcome p{font-weight:700;font-size:18px;line-height:1.5;margin:92px 0 0}.family{border:2px solid #999;box-shadow:inset 0 0 4px #888;margin:0!important}.family figcaption{text-align:center;font-family:Vivaldi,'URW Chancery L','Brush Script MT','Segoe Script',cursive;font-style:italic;font-size:32px;padding:17px 5px 22px}.family img{display:block;width:100%;height:auto}footer{background:#c00000;color:#fff;display:grid;grid-template-columns:220px 365px 1fr;gap:12px;padding:8px;font-size:13px;line-height:1.4}address{font-style:normal}footer a{color:white;text-decoration:none}footer a:hover{text-decoration:underline}.hours{display:flex;gap:8px}.hours strong{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px}.content{display:flex;flex-wrap:wrap;align-items:flex-start;padding:22px 12px 30px;min-height:450px}.content>.page-title,.breadcrumb{flex-basis:100%}.page-title{font-size:25px;color:#008020;margin:0 12px 8px}.breadcrumb{font-size:14px;color:#555;margin:0 12px 12px}.column{flex:0 0 var(--column);display:flex;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;min-width:0}.cell{width:100%;padding:10px 12px}.prose{width:100%;font-size:16px;line-height:1.6}.prose p{margin:0 0 14px}.prose br{line-height:1.6}.prose p:empty{display:none}.prose b{font-weight:700}.content figure{margin:12px auto;text-align:center;max-width:100%}figure img{display:block;max-width:100%;height:auto;margin:auto}.content figure figcaption{font-size:14px;line-height:1.4;margin:8px 0}.supplier-card{border:2px solid #008020;text-align:center;padding:20px;max-width:100%;margin:auto}.supplier-card h2{font-size:28px;color:#008020;margin:0}.supplier-card h3{font-size:22px}.supplier-card img{width:100%;height:auto}.supplier-card p{margin:14px 0}.paper{border:3px double #c00000;width:100%;margin:15px auto;padding:28px;min-height:240px;max-width:850px}.paper h1,.paper h2{text-align:center;font-size:27px;margin:0 0 20px}.paper>p{text-align:center}.week{font-weight:bold}table{width:100%;border-collapse:collapse;text-align:left;font-size:16px;line-height:1.5}caption{text-align:left;margin:10px 0;font-weight:bold;color:#008020}th,td{padding:12px 10px;border-bottom:1px solid #ccc;vertical-align:top}thead{background:#008020;color:white}tbody th{width:22%}tbody td:last-child{white-space:nowrap}td strong{color:#c00000;font-size:20px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;width:100%;padding:15px}.gallery a{display:block}.gallery img{width:100%;height:220px;object-fit:cover}.contact-content{width:100%;padding:10px}.contact-content h1{color:#008020}.contact-content h2{font-size:22px}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:30px}.contact-grid iframe{width:100%;height:470px;border:0}.contact-grid dt{font-weight:bold;margin-top:14px}.contact-grid dd{margin:0}.sitemap{padding:10px 24px;width:100%}.sitemap ul{padding-left:20px}.sitemap summary{cursor:pointer}.sitemap li{margin:8px 0}.skip{position:absolute;left:-9999px}.skip:focus{left:8px;top:8px;background:white;padding:10px;z-index:99}@media(max-width:800px){header{grid-template-columns:130px 1fr 110px;height:130px}.brand{font-size:36px}.rathaus img{width:120px;height:115px}.seal{width:100px}main.home{grid-template-columns:1fr 45%;min-height:0;gap:12px}.welcome h1{font-size:30px;margin:28px 0 0}.welcome p{font-size:16px;margin-top:55px}.family figcaption{font-size:26px;padding:15px 4px}footer{grid-template-columns:1fr 1.6fr;font-size:14px}footer>div:last-child{grid-column:1/-1}.hours strong{writing-mode:initial;transform:none;align-self:start;font-size:14px}.hours{flex-direction:column;gap:4px}nav a,nav summary{font-size:14px;padding:5px 2px}nav details>ul{left:auto;right:0}.content{padding:15px 8px}.column{flex-basis:100%}.cell{padding:8px}.gallery{grid-template-columns:repeat(2,1fr)}.prose p{margin-bottom:16px}.contact-grid{grid-template-columns:1fr}}@media(max-width:540px){.site{margin:0 auto}header{height:112px;grid-template-columns:74px 1fr 74px;padding:5px}.rathaus img{width:70px;height:90px}.brand{font-size:26px;letter-spacing:-.7px}.seal{width:70px}nav>.nav-list{flex-wrap:wrap}nav>.nav-list>li{flex:1 0 22%}nav a,nav summary{min-height:34px;display:flex;align-items:center;justify-content:center}nav details>ul a,nav details>ul summary{justify-content:flex-start}main.home{grid-template-columns:1fr;padding:20px 16px}.welcome h1{font-size:32px;margin:8px 0}.welcome p{margin:28px 0}.family{width:100%;max-width:463px}.family figcaption{font-size:30px}footer{grid-template-columns:1fr;padding:16px;gap:18px}footer>div:last-child{grid-column:auto}.paper{padding:16px 8px}.paper h1,.paper h2{font-size:24px}th,td{padding:10px 5px}tbody th{width:auto;font-size:14px}td strong{font-size:17px}.gallery{gap:8px;padding:8px}.gallery img{height:150px}.contact-grid iframe{height:320px}}@media print{html{background:white}.site{margin:0;max-width:100%}nav,.skip{display:none}footer{color:black;background:white}footer a{color:black}.paper{border:1px solid black;break-inside:avoid}}

.pdf-section{width:100%;padding:10px 12px}.pdf-section h2{font-size:25px;color:#008020}.menu-pdf{display:block;width:100%;height:1000px;border:1px solid #ccc}@media(max-width:540px){.menu-pdf{height:650px}.pdf-section{padding:8px}}

.pdf-viewer{width:100%;border:1px solid #999;border-radius:4px;overflow:hidden;background:#646464}.pdf-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px;background:#333;color:white;font-size:14px}.pdf-controls{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.pdf-controls button,.pdf-controls select{font:inherit;min-height:36px;border:1px solid #999;border-radius:3px;padding:5px 10px;background:white;color:#111}.pdf-controls button{cursor:pointer}.pdf-controls button:disabled{opacity:.45;cursor:default}.pdf-controls button:focus-visible,.pdf-controls select:focus-visible{outline:3px solid #89d4ff}.pdf-filename{font-weight:bold}.pdf-viewport{overflow:auto;max-height:1050px;padding:18px}.pdf-viewport img{display:block;width:100%;height:auto;max-width:100%;background:#fff;box-shadow:0 2px 8px #0007}.pdf-viewport:focus-visible{outline:3px solid #008020;outline-offset:-3px}@media(max-width:540px){.pdf-viewport{padding:8px;max-height:750px}.pdf-toolbar{padding:10px}.pdf-filename{width:100%}.pdf-controls{gap:6px}.pdf-controls button,.pdf-controls select{padding:4px 7px}}

.closure-dialog{border:0;padding:0;border-radius:6px;width:min(780px,calc(100vw - 24px));max-width:780px;max-height:calc(100dvh - 24px);overflow:hidden;background:white;box-shadow:0 10px 50px #0007}.closure-dialog[open]{display:flex;flex-direction:column}.closure-dialog::backdrop{background:rgba(0,0,0,.72)}.closure-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#008020;color:white;padding:10px 16px;flex-shrink:0}.closure-bar h2{font-size:18px;line-height:1.3;margin:0}.closure-bar button{background:white;color:#006b1b;border:0;border-radius:4px;font:inherit;font-weight:bold;padding:8px 12px;cursor:pointer;min-height:40px}.closure-bar button:focus-visible,.closure-actions a:focus-visible{outline:3px solid #ffd55c;outline-offset:2px}.closure-scroll{overflow:auto;min-height:0;background:#eee}.closure-scroll img{width:100%;height:auto;display:block}.closure-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:22px;padding:10px 16px;flex-shrink:0;font-size:14px}.closure-actions a{font-weight:bold}.closure-open{overflow:hidden}.closure-footer{grid-column:1/-1}.closure-footer button{font:inherit;background:none;border:0;color:white;text-decoration:underline;padding:0;cursor:pointer}@media(max-width:540px){.closure-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.closure-bar{padding:10px;gap:8px}.closure-bar h2{font-size:16px}.closure-actions{gap:16px}.closure-bar button{font-size:14px}}

.closure-actions{align-items:center}.closure-actions .closure-meal-link{display:inline-block;background:#008020;color:white;padding:9px 16px;border-radius:4px;text-decoration:none;font-size:16px}.closure-actions .closure-meal-link:hover{background:#006b1b}@media(max-width:540px){.closure-actions .closure-meal-link{width:100%;text-align:center}}

.closure-news{width:100%;padding:8px 12px}.closure-news h1{color:#008020;font-size:28px;margin:0 0 18px}.closure-news h2{font-size:24px;line-height:1.35}.closure-news-image{display:block;width:100%;max-width:780px;height:auto;margin:22px auto 0;border:1px solid #ddd}.closure-news-links a{font-weight:bold}

.site-credits{width:100%;margin:20px 12px 0;padding-top:16px;border-top:1px solid #ccc}.site-credits p{margin:8px 0}

.cookie-banner[hidden],iframe[hidden],.map-consent-placeholder[hidden]{display:none!important}.cookie-banner{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:100;width:min(900px,calc(100% - 24px));max-height:50dvh;overflow:auto;background:white;border:2px solid #008020;border-radius:6px;padding:18px 22px;box-shadow:0 4px 28px #0006;font-size:16px;line-height:1.5}.cookie-banner h2{font-size:21px;color:#008020;margin:0 0 8px}.cookie-banner p{margin:0 0 14px}.cookie-buttons{display:flex;gap:12px;flex-wrap:wrap}.cookie-buttons button,.map-consent-placeholder button{font:inherit;font-weight:bold;border:2px solid #008020;border-radius:4px;padding:9px 16px;background:white;color:#00721b;cursor:pointer}.cookie-buttons button{flex:1}.cookie-buttons button:hover,.map-consent-placeholder button:hover{background:#e6f4e9}.cookie-buttons button:focus-visible,.map-consent-placeholder button:focus-visible{outline:3px solid #c00000;outline-offset:2px}.cookie-footer{grid-column:1/-1}.cookie-footer button{font:inherit;padding:0;border:0;background:none;color:white;text-decoration:underline;cursor:pointer}.map-consent-placeholder{padding:26px 20px;border:1px solid #ccc;background:#f3f3f3;min-height:260px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}@media(max-width:540px){.cookie-banner{padding:14px;bottom:8px;width:calc(100% - 16px)}.cookie-buttons{gap:8px}.cookie-buttons button{flex-basis:100%}}

footer{position:relative;padding-right:74px}.guild-logo{position:absolute;right:10px;top:8px;width:50px;height:58px;object-fit:contain}@media(max-width:540px){footer{padding-right:80px;padding-bottom:16px}.guild-logo{top:16px}}

footer{grid-template-columns:1fr 1.4fr}.post-contact{width:100%;padding:8px 12px}.post-contact h1{color:#008020;font-size:28px}.post-contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:32px;margin-top:24px}.post-contact h2{font-size:22px}.contact-form label{display:block;font-weight:bold;margin-bottom:6px}.contact-form input,.contact-form textarea{display:block;width:100%;font:inherit;border:1px solid #888;border-radius:4px;padding:10px;margin-bottom:18px;background:white;color:#111}.contact-form textarea{min-height:180px;resize:vertical}.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:2px solid #008020;outline-offset:2px}.contact-form button{background:#008020;color:white;padding:11px 22px;border:0;border-radius:4px;font:inherit;font-weight:bold;cursor:pointer}.contact-form button:hover{background:#006b1b}.contact-form button:focus-visible{outline:3px solid #c00000;outline-offset:3px}.form-note{font-size:14px;line-height:1.5}.form-feedback{border:1px solid #008020;padding:12px;margin-bottom:16px;background:#e9f6ed}.form-feedback.error{border-color:#c00000;background:#fff0f0}.form-feedback p{margin:0}.form-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:650px){.post-contact-grid{grid-template-columns:1fr;gap:16px}}@media(max-width:540px){footer{grid-template-columns:1fr}}
