/* Visual hierarchy and WordPress navigation. */
.site-header{background:#fffdf7;position:relative;z-index:10}.header-inner{min-height:100px}.primary-menu,.primary-menu .sub-menu{list-style:none;padding:0;margin:0}.header-nav .primary-menu{display:flex;align-items:center;gap:6px}.header-nav .primary-menu>li{position:relative}.header-nav a{display:block!important;padding:12px 13px;border-radius:8px}.header-nav a:hover,.header-nav a:focus-visible{background:#e9efdf}.header-nav .menu-item-has-children>a:after{content:'⌄';margin-left:7px}.header-nav .sub-menu{display:none;position:absolute;top:100%;left:0;width:235px;padding:8px;background:#fffdf7;border:1px solid #d9dfd3;border-radius:12px;box-shadow:0 15px 35px #183d3320}.header-nav li:hover>.sub-menu,.header-nav li:focus-within>.sub-menu{display:block}.header-nav .primary-menu>li:last-child>a{background:#183d33;color:#fffdf7}.header-mobile-menu{display:none}
.portal-home .hero{isolation:isolate;position:relative;overflow:hidden;min-height:310px;margin:28px 0 20px;padding:42px;border-radius:28px;background:#163e34;color:#fffbed;align-items:flex-start;flex-direction:column;justify-content:center;gap:20px}.portal-home .hero:before{content:'';position:absolute;z-index:-1;width:470px;height:470px;right:-40px;top:15px;border:1px solid #a9cba64d;border-radius:50%;box-shadow:0 0 0 40px #a9cba610,0 0 0 80px #a9cba60d,0 0 0 120px #a9cba60a;background:radial-gradient(circle at 46% 16%,#efbc60 0 37px,transparent 38px),linear-gradient(155deg,transparent 40%,#35634b 40% 53%,#71906a 53% 64%,#d0b877 64% 72%,#234c3e 72%)}.portal-home .hero>div{max-width:65%}.portal-home .hero .eyebrow{color:#e5bd77}.portal-home .hero h1{font-size:clamp(48px,6.2vw,82px);margin:14px 0}.portal-home .hero h1 em{color:#f1c775}.portal-home .hero p{color:#e2eddf}.portal-home .date-chip{background:#ffffff12;color:#fffbed;border-color:#ffffff38;font-size:12px}.quick-links{margin-bottom:24px}.quick-links a{background:#fffdf7;border-color:#cbd7ca;font-weight:600}.quick-links a:hover{background:#e0e9d7}
.portal-home .service-grid{align-items:stretch;gap:20px}.portal-home .card{border:0;box-shadow:0 6px 20px #183d3307}.portal-home .weather-card{background:#f6d780;color:#443c20}.weather-card .data-stamp{color:#5f542f}.weather-card .big-number{font-size:80px!important}.weather-card .card-icon{font-size:36px}.portal-home .mobility-card{background:#e0ebf5;color:#183f59;border-top:5px solid #387b9e}.mobility-card .departures li{border-color:#b6cedf}.mobility-card .data-stamp,.mobility-card .departures small{color:#405e73}.portal-home .waste-card{background:#e0eadc;border-top:5px solid #759368}.waste-next{background:#fcfff7;border:1px solid #bbceb0}.portal-home .card-heading{border-color:#183d3326}
.portal-home #fussball{position:relative;overflow:hidden;background:#173e33;color:#fffbed;margin:30px 0 18px;padding:32px;border-radius:24px;border:0;background-image:repeating-linear-gradient(90deg,transparent 0 120px,#ffffff03 120px 240px)}#fussball .section-heading{margin-bottom:12px}#fussball .eyebrow{color:#d8c677}#fussball .section-heading h2{font-size:36px}#fussball .content-card{background:#ffffff09;border-color:#ffffff30;border-radius:12px}#fussball .content-card p,#fussball .data-stamp{color:#dce8d9}#fussball .content-card small{color:#e6cb8f;text-transform:uppercase;letter-spacing:1px}#fussball .content-card p[style]{color:#f3d780;font-size:44px!important;letter-spacing:2px}#fussball .content-card:last-child{background:#dfe8ce;color:#173e33}#fussball .content-card:last-child p{color:#365342}.warning-strip{background:transparent;border:1px solid #d9dfd3;margin-bottom:24px}
.portal-home .section{padding-top:40px;padding-bottom:40px}.portal-home .section-heading h2{font-weight:650;letter-spacing:-.8px}.portal-home .section-heading .eyebrow{color:#9a492c}.portal-home #fussball .eyebrow{color:#e6cb8f}.portal-home #termine{border:0}.portal-home .weekend{background:#f0b69a;color:#552f23;box-shadow:7px 7px 0 #e5a88645}.weekend .data-stamp,.weekend .empty-section{color:#674536}.weekend .weekend-days span{background:#fff2e7}.portal-home #mitmachen{border:0;background:#e8e4f0;margin:15px 0 30px;padding:32px;border-radius:24px}.portal-home #mitmachen .content-card{background:transparent;border:0;border-top:2px solid #a497b6;border-radius:0;padding:18px 0 0}.portal-home #mitmachen h3 a:after{content:' ↗';color:#755c91}.portal-home #presseschau{border-left:5px solid #be794b;padding:24px 30px;background:#f1e8d9;border-top:0;border-radius:0 18px 18px 0;margin-bottom:35px}.portal-home #verkehr .content-card{background:transparent;border:0;border-top:2px solid #7297a9;border-radius:0;padding:18px 0}.portal-home #firmen .content-card{background:#fffdf7;border:0;border-left:3px solid #b8c5a4;border-radius:0 12px 12px 0;box-shadow:0 4px 15px #183d3305}.portal-home #firmen .content-card:first-child{border-color:#bb7934;background:#f3e6cd}.portal-home #firmen .content-card h3 a:hover{text-decoration:underline}.portal-home .internet{background:#253f4a;color:#f8f5e9}.internet .eyebrow{color:#ddbd83}.internet .shop-links a{background:#f8f3e6;color:#183d33}.site-footer{background:#e7eadd}
@media(max-width:1050px){.header-nav a{padding:10px 8px}.header-nav .primary-menu{gap:0}.portal-home .hero:before{right:-145px}.portal-home .hero>div{max-width:70%}}
@media(max-width:1100px){.header-nav{display:none}.header-mobile-menu{display:block}.header-mobile-menu>summary{list-style:none;font-size:14px;font-weight:650;padding:11px 14px;border:1px solid #bbcbbd;border-radius:10px;min-height:44px}.header-mobile-menu>summary::-webkit-details-marker{display:none}.header-mobile-menu summary span{margin-left:7px}.header-mobile-menu[open]>summary{background:#183d33;color:#fff}.header-mobile-menu nav{position:absolute;top:calc(100% - 1px);left:0;right:0;background:#fffdf7;border-bottom:1px solid #cbd7ca;padding:16px 24px 24px;box-shadow:0 20px 25px #183d331c;max-height:70vh;overflow:auto}.header-mobile-menu a{display:block;padding:11px 10px;min-height:44px;text-decoration:none}.header-mobile-menu .primary-menu>li{border-bottom:1px solid #e2e7dc}.header-mobile-menu .primary-menu>li>a{font-weight:700}.header-mobile-menu .sub-menu{display:grid;grid-template-columns:1fr 1fr;padding:0 0 10px 10px}.header-mobile-menu .sub-menu a{font-size:13px;color:#476153}}
@media(max-width:700px){.header-inner{gap:8px;min-height:84px}.brand{font-size:23px;gap:9px}.brand small{font-size:8px;letter-spacing:1.7px}.brand-symbol{width:39px;height:39px}.header-mobile-menu>summary{padding:10px}.portal-home .hero{min-height:315px;padding:28px 24px;margin-top:16px;border-radius:22px}.portal-home .hero>div{max-width:100%}.portal-home .hero:before{width:290px;height:290px;right:-154px;top:150px;opacity:.65}.portal-home .hero h1{font-size:52px;max-width:260px}.portal-home .hero p{font-size:14px}.portal-home .hero .eyebrow{font-size:9px;letter-spacing:1.5px;max-width:230px}.portal-home .date-chip{font-size:10px;margin:0;padding:8px 11px}.portal-home .service-grid{gap:16px}.portal-home .mobility-card{order:0}.portal-home #fussball{padding:26px 20px;border-radius:20px}.portal-home #fussball .section-heading h2{font-size:29px}.portal-home #mitmachen{padding:26px 20px}.portal-home #presseschau{padding:24px 20px}.portal-home .section-heading{flex-wrap:wrap;gap:12px}.portal-home .section-heading h2{font-size:27px}.portal-home .section{padding-top:30px;padding-bottom:30px}.portal-home .internet{padding:28px 23px}.header-mobile-menu .sub-menu{grid-template-columns:1fr}.portal-home .weather-card .big-number{margin:14px 0}}
@media(prefers-reduced-motion:no-preference){.quick-links a,.header-nav a{transition:background .15s ease}}
#fussball .content-card:last-child small{color:#52643d}.internet .data-stamp{color:#d5e0df}

/* Inner pages share the portal identity, with distinct editorial surfaces. */
.subpage{padding-bottom:40px;min-height:65vh;--page-bg:#e8e4f0;--page-ink:#3c3551;--page-accent:#806b99}.subpage-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--page-bg);color:var(--page-ink);padding:40px 44px;margin:28px 0 30px;border-radius:26px;display:block}.subpage-hero:after{content:'';position:absolute;z-index:-1;right:-80px;top:-130px;width:370px;height:370px;border:1px solid currentColor;border-radius:50%;opacity:.09;box-shadow:0 0 0 35px currentColor,0 0 0 70px var(--page-bg),0 0 0 71px currentColor}.subpage-hero h1{max-width:950px;font-size:clamp(36px,4.6vw,62px);letter-spacing:-1.8px;line-height:1.1;margin:15px 0 20px;overflow-wrap:anywhere}.subpage-hero .eyebrow{color:var(--page-ink);margin:0}.subpage-hero p{color:var(--page-ink);max-width:750px;margin-bottom:0}.subpage-hero .back-link{display:inline-block;font-size:12px;text-decoration:none;margin-bottom:26px;border-bottom:1px solid currentColor}.subpage-hero .hero-intro{font-size:18px}.page-contact{--page-bg:#173e33;--page-ink:#fff8e8;--page-accent:#a87632}.page-contact .subpage-hero h1{color:#f3ce84}.page-legal{--page-bg:#dce7e1;--page-ink:#183d33;--page-accent:#658272}.archive-business,.business-detail{--page-bg:#f2dfac;--page-ink:#453b22;--page-accent:#b58338}.archive-events{--page-bg:#efb89f;--page-ink:#522f25;--page-accent:#a66345}.archive-traffic{--page-bg:#dceaf5;--page-ink:#20465f;--page-accent:#5986a3}.reading-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:32px;align-items:start}.reading-panel{background:#fffdf8;border-radius:20px;padding:35px 40px;border-top:4px solid var(--page-accent);font-size:17px;line-height:1.8;overflow-wrap:anywhere;min-width:0}.reading-panel>p:first-child{font-size:18px;color:#4b6055}.reading-panel h2{font-size:25px;line-height:1.3;letter-spacing:-.4px;margin:38px 0 16px;padding-top:24px;border-top:1px solid #dce3d6}.reading-panel h2:first-child{margin-top:0;border-top:0;padding-top:0}.reading-panel h3{font-size:20px;margin-top:28px}.reading-panel img{max-width:100%;height:auto}.reading-panel table{display:block;max-width:100%;overflow:auto}.reading-panel li{margin-bottom:8px}.reading-panel a:not(.button){text-decoration-color:#91a491;text-decoration-thickness:1px}.reading-panel a:hover{text-decoration-color:currentColor}.page-aside{background:#e0e9d5;border-radius:18px;padding:28px;color:#244839;border-bottom:5px solid #abc094}.page-aside h2{font:400 33px/1.15 Georgia,serif;margin:18px 0}.page-aside p{font-size:14px}.page-aside nav{display:flex;flex-direction:column;margin-top:24px}.page-aside a{font-size:14px;text-decoration:none;padding:13px 0;border-top:1px solid #bfcdb8;min-height:44px}.page-legal .reading-layout{grid-template-columns:minmax(0,850px);justify-content:center}.page-legal .page-aside{display:none}.page-legal .reading-panel{font-size:16px}.page-contact .reading-panel{border-color:#c69d54}.page-contact .wpcf7{max-width:none}.page-contact .wpcf7 input:not([type=submit]):not([type=checkbox]),.page-contact .wpcf7 select,.page-contact .wpcf7 textarea{background:#f4f6ee;border-color:#c6d2c1}.page-contact .wpcf7 fieldset{background:#eef2e6;border:0;padding:22px}.page-contact .wpcf7 input[type=submit]{padding:15px 28px;font-weight:700;min-height:48px}.page-contact .wpcf7 input:focus-visible,.page-contact .wpcf7 textarea:focus-visible{outline:3px solid #a87632;outline-offset:3px}
.archive-page .business-filter{background:#fffdf7;padding:24px;border-radius:16px;border-bottom:3px solid #d2b677;gap:18px}.business-filter label{font-size:13px;font-weight:650}.archive-page>.data-stamp{margin:18px 0}.archive-page .content-grid{margin:24px 0;gap:22px}.archive-page .content-card{border:0;border-top:4px solid var(--page-accent);background:#fffdf8;border-radius:0 0 16px 16px;padding:26px;min-width:0;display:flex;flex-direction:column;align-items:start;overflow-wrap:anywhere;box-shadow:0 5px 15px #183d3306}.archive-page .content-card h2{margin:14px 0;font-size:24px;letter-spacing:-.4px}.archive-page .content-card h2 a{text-decoration:none}.archive-page .content-card h2 a:hover{text-decoration:underline}.archive-page .content-card>small{color:#685d40;font-size:11px;text-transform:uppercase;letter-spacing:1px}.archive-page .content-card>a:last-child{margin-top:auto;padding-top:14px;font-size:14px;font-weight:650}.archive-business .content-card:nth-child(3n+2){border-color:#8da782;background:#edf2e6}.archive-business .content-card:nth-child(3n+3){border-color:#9496b2;background:#eeedf4}.archive-traffic .content-card{background:transparent;box-shadow:none;border-radius:0;border-top-width:2px;padding:22px 0}.archive-events>.empty-section,.archive-events>.data-stamp{background:#fff4e9;padding:24px;border-radius:16px}.archive-page>.data-stamp a{font-weight:650}.pagination{margin:35px 0}.pagination .nav-links{display:flex;flex-wrap:wrap;gap:9px}.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 14px;background:#fffdf7;border:1px solid #ccd6c5;border-radius:9px;text-decoration:none}.pagination .current{background:#183d33;color:#fffdf7}.business-body{max-width:900px;margin:0 auto;background:#fffdf7;border-radius:20px;padding:40px;border-top:4px solid #b58338}.business-body .entry-content{font-size:19px;line-height:1.75}.business-detail .business-contact{background:#e9efdf;padding:24px;border-radius:14px;margin:30px 0 20px}.business-detail .business-note{border-left:3px solid #bf9655;padding:8px 18px;background:#f8efdc;font-size:14px}.business-detail .data-stamp{border-top:1px solid #d9dfd3;padding-top:20px;margin:25px 0}.business-detail .subpage-hero h1{max-width:1000px}.generic-page{margin-top:28px;margin-bottom:32px;background:#fffdf7;border-top:7px solid #849e70;border-radius:20px;padding:35px;overflow-wrap:anywhere}.generic-page h1{font-size:clamp(32px,4vw,48px);letter-spacing:-1px}.generic-page h2{line-height:1.3}
@media(max-width:1000px){.reading-layout{grid-template-columns:minmax(0,1fr) 240px;gap:22px}.reading-panel{padding:28px}.page-aside{padding:24px}.archive-business .content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.subpage{padding-bottom:20px}.subpage-hero{margin:16px 0 22px;padding:28px 23px;border-radius:20px}.subpage-hero h1{font-size:36px;letter-spacing:-1px}.subpage-hero .hero-intro{font-size:16px}.subpage-hero .back-link{margin-bottom:20px}.reading-layout,.page-legal .reading-layout{grid-template-columns:minmax(0,1fr);gap:22px}.reading-panel{padding:24px 20px;font-size:16px;line-height:1.75}.reading-panel h2{font-size:23px}.reading-panel>p:first-child{font-size:17px}.page-aside h2 br{display:none}.page-aside h2{font-size:29px}.archive-business .content-grid{grid-template-columns:minmax(0,1fr)}.archive-page .business-filter{padding:20px}.archive-page .content-card{padding:23px}.archive-traffic .content-card{padding:20px 0}.business-body{padding:25px 20px}.business-body .entry-content{font-size:17px}.business-detail .business-contact{padding:18px;display:grid;gap:12px}.business-contact .button{overflow-wrap:anywhere;font-size:14px;text-align:center}.generic-page{padding:25px 20px}.page-contact .wpcf7 fieldset{padding:16px}}
.subpage-hero h1,.reading-panel h2,.archive-page .content-card h2,.archive-page .content-card h3{hyphens:auto}

/* Compact footer signature with a discreet project credit. */
.site-footer{background:#e7eadd;border-top:1px solid #cbd5c3;padding:32px 0;margin-top:40px}.footer-inner{align-items:center;gap:28px}.footer-wordmark{display:inline-block;font-size:21px;font-weight:800;letter-spacing:-.7px;text-decoration:none;line-height:1.3}.footer-wordmark span{font-weight:400}.footer-brand>p{font-size:12px;margin:7px 0 0;color:#4d6255}.footer-brand .footer-credit{font-size:11px;margin-top:15px;color:#596b5e}.footer-credit a{font-size:inherit;font-weight:600;text-decoration:none;color:#314f3e;white-space:nowrap}.footer-credit a:hover{text-decoration:underline}.footer-credit a span{font-size:10px;margin-left:2px}.footer-links{align-items:center;flex-wrap:wrap;gap:8px 22px}.footer-links a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;text-decoration:none}.footer-links a:hover{text-decoration:underline}
@media(max-width:700px){.site-footer{padding:27px 0 calc(96px + env(safe-area-inset-bottom));margin-top:28px}.footer-inner{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.footer-brand{width:100%}.footer-wordmark{font-size:20px}.footer-links{border-top:1px solid #cbd5c3;width:100%;gap:8px 24px;padding-top:7px}.footer-brand .footer-credit{margin-top:12px}}

.week-overview{padding:28px 30px;background:#f1e5c8;border-radius:20px;margin:25px 0}.week-overview h2{font:400 30px/1.2 Georgia,serif}.week-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.week-items article{border-top:1px solid #baa77d;padding-top:16px;min-width:0}.week-items h3{font-size:18px;line-height:1.4;margin:12px 0}.week-items p{font-size:13px}.week-items small{display:block}.week-more{font-size:13px;font-weight:650}.welcome-strip{display:flex;justify-content:space-between;gap:30px;align-items:center;border-top:1px solid #b8c8aa;border-bottom:1px solid #b8c8aa;padding:30px 0;margin:20px 0}.welcome-strip h2{font:400 32px/1.2 Georgia,serif}.welcome-strip p{margin-bottom:8px}.welcome-strip>div:last-child{display:grid;gap:12px;flex-shrink:0}.welcome-strip a{background:#dce6ce;padding:13px 18px;border-radius:10px;text-decoration:none;font-weight:650;font-size:14px}.quiet-rubric{font-size:12px;color:#586b5e;border-top:1px solid #d9dfd3;padding:16px 0;margin:12px 0}.quiet-rubric a{white-space:nowrap}.business-initial{display:grid;place-items:center;width:48px;height:48px;margin:0 0 16px;border-radius:14px;background:#dce5cc;color:#36543e;font:500 27px/1 Georgia,serif}.business-visual{display:block;max-width:100%;width:auto;height:110px;object-fit:contain;margin-bottom:18px}.business-body>.business-visual{height:auto;max-height:320px}.business-body>.business-initial{width:64px;height:64px;font-size:36px}.archive-page .business-initial{margin-bottom:16px}@media(max-width:700px){.week-overview{padding:24px 20px}.week-items{grid-template-columns:1fr;gap:22px}.welcome-strip{display:block}.welcome-strip>div:last-child{margin-top:22px}.quiet-rubric{line-height:1.9}}
.portal-home .quiet-events{padding:18px 0}.portal-home .quiet-events .section-heading{margin-bottom:8px}.portal-home .quiet-events .section-heading h2{font-size:20px}.quiet-events .eyebrow{display:none}.quiet-events>p{font-size:12px;margin-bottom:5px}.quiet-events>.data-stamp{margin-top:0}
.lf-submission label{display:block;font-size:15px;font-weight:600;margin:18px 0}.lf-submission input:not([type=checkbox]),.lf-submission textarea,.lf-submission select{display:block;width:100%;max-width:100%;padding:11px;border:1px solid #bdccba;border-radius:9px;background:#f4f6ee;color:#183d33;font:inherit;margin-top:6px}.lf-submission .check{display:flex;align-items:start;gap:12px;font-size:14px}.lf-submission .check input{margin-top:6px}.lf-submission fieldset{min-width:0;border:1px solid #cbd6c0;border-radius:12px;padding:18px}.lf-submission fieldset p{font-size:13px}.lf-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.market-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.market-gallery img,.market-image{width:100%;height:auto;max-height:350px;object-fit:contain;border-radius:10px}.job-search-links{margin:30px 0;padding:28px;background:#e1e9d5;border-radius:18px}.job-search-links .content-grid>a{padding:18px;background:#fffdf7;border-radius:12px;font-weight:650;font-size:14px}.lf-submission button{min-height:48px}@media(max-width:700px){.market-gallery{grid-template-columns:1fr}.job-search-links{padding:22px}}
.menu-icon{display:inline-block;width:17px;height:17px;vertical-align:-3px;margin-right:6px;flex-shrink:0}.header-nav .primary-menu>li>a{padding-left:10px;padding-right:10px}.header-mobile-menu .menu-icon{width:18px;height:18px;margin-right:10px}
