:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,body,html{box-sizing:border-box;margin:0;padding:0}.sticky-nav{position:fixed;display:none;top:0;left:0;width:100%;background-color:#242424f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;box-shadow:0 2px 10px #0000004d}@media(min-width:1024px){.sticky-nav{display:block}}.sticky-nav ul{display:flex;justify-content:flex-end;list-style:none;margin:0;padding:0;gap:1rem}.sticky-nav li{display:inline-block}.sticky-nav a{display:block;padding:1rem 1.5rem;color:#ffffffde;text-decoration:none;font-weight:500;transition:all .3s ease;position:relative}.sticky-nav a:hover{color:#fff;background-color:#ffffff1a}.sticky-nav a:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:2px;background-color:#fff;transition:width .3s ease}.sticky-nav a:hover:after{width:80%}.sticky-nav a.active{color:#fff;background-color:#ffffff26}.sticky-nav a.active:after{width:80%}p{margin-bottom:1rem}h2{line-height:1.7rem;margin-bottom:1rem}.text-center{text-align:center}.dbom{display:block}@media(min-width:1024px){.dbom{display:inline}}.btn{display:inline-block;padding:.75rem 1.5rem;background-color:#e62228;color:#fff;text-decoration:none;border-radius:.5rem;font-weight:600;transition:background-color .3s ease;margin-top:1rem}.btn:hover{background-color:#b5171f}#smooth-content{display:flex;flex-direction:column;align-items:center;overflow:visible;width:100%;height:4000px}.container{position:relative;display:flex;margin:0 auto;padding:2rem;width:100%}@media(min-width:1024px){.container{padding:4rem 2rem}}.bg{position:absolute;width:100%;height:100%;top:0;left:0;z-index:-1;background-size:cover}#hero{display:flex;flex-direction:column;align-items:center;width:100%;padding-top:2rem;padding-bottom:17rem}@media(min-width:1024px){#hero{padding-top:4rem;padding-bottom:20rem}}#hero .logo{width:200px;filter:drop-shadow(0 0 15px rgba(0,0,0,.7));margin:2rem 0 4rem}#hero .hero--image{max-width:800px;filter:drop-shadow(0 0 15px rgba(0,0,0,.7))}#hero .bg{background-image:url(/assets/ffd-150j-bg--vszC6Tf.jpg)}#highlights{background:linear-gradient(180deg,#fff 0,#fff0 50% 80%,#fff)}#highlights .wrapper{gap:2rem;flex-wrap:wrap;justify-content:space-evenly;display:flex}#highlights .bg{background-image:url(/assets/ffd-150j-highlights-bg-BQLKnB54.jpg);background-size:cover;background-position:center center}#highlights h3{width:100%;text-align:center;font-size:2rem;text-transform:uppercase;color:#fff;text-shadow:0px 0px 15px rgba(0,0,0,.75)}@media(min-width:1024px){#highlights h3{font-size:3rem}}#highlights .day{flex-grow:1;background-color:#ffffffe6;color:#000;padding:1.5rem 1rem 1rem;border-radius:1rem;width:100%;position:relative;box-shadow:0 0 10px #00000080}@media(min-width:1024px){#highlights .day{max-width:calc(100% / 3 - 2rem)}}#highlights .day.tdfw:after{content:"Tag der Feuerwehr";color:#fff;font-size:0;position:absolute;right:-3px;top:-2px;background-image:url(/assets/ffd-150j-tag-der-feuerwehr-badge-DDUhsL1v.png);background-size:contain;background-repeat:no-repeat;width:115px;height:76px}#highlights .day h4{text-transform:uppercase;font-size:1.1rem;margin-bottom:1rem;line-height:1.3rem;border-bottom:1px solid #000;padding-bottom:.5rem;display:flex;align-items:center}#highlights .day h4 span.day--initial{font-size:3rem;line-height:1.5rem;border-right:1px solid #000;padding-right:.5rem;margin-right:.5rem}#highlights .day ul{list-style:none;padding-left:0}#highlights .day ul.schedule{display:flex;flex-direction:column;gap:.5rem}#highlights .day ul.schedule li{display:grid;grid-template-columns:5rem 1fr;gap:1rem;align-items:baseline}#highlights .day ul.schedule li .time{font-weight:700;white-space:nowrap}#highlights .day ul.schedule li .event{padding-left:1rem}#general{color:#000;background:linear-gradient(0deg,#fff 80%,#fff0);margin-top:-20rem;padding-top:10rem}@media(min-width:1024px){#general{background:linear-gradient(0deg,#fff 60%,#fff0);margin-top:-25rem;padding-top:10rem}}.wrapper{width:100%;max-width:1020px;margin:0 auto}.wrapper.twocol{display:flex;flex-direction:column;gap:2rem}@media(min-width:1024px){.wrapper.twocol{flex-direction:row;gap:2rem}}.wrapper.twocol.reverse{flex-direction:column-reverse}@media(min-width:1024px){.wrapper.twocol.reverse{flex-direction:row}}.wrapper.twocol .col{position:relative;display:flex;flex-direction:column;justify-content:center}@media(min-width:1024px){.wrapper.twocol .col.equal{width:50%}}.wrapper.twocol .col.justify-flex-start{justify-content:flex-start}.wrapper.twocol .col img{width:250px;margin-bottom:2rem;align-self:center}@media(min-width:1024px){.wrapper.twocol .col img{align-self:flex-start}}@media(min-width:1024px){.wrapper.twocol .col.two .col--content{columns:2;gap:3rem;text-align:justify;-webkit-hyphens:auto;hyphens:auto}}#invitation{text-align:center;background:linear-gradient(90deg,#e62228,#b96126);box-shadow:0 0 30px #000000bf;z-index:2}#invitation h2{text-transform:uppercase}@media(min-width:1024px){#invitation h2{font-size:2rem}}#invitation h2:after{content:"";display:block;width:5rem;height:2px;background-color:#fff;margin:1rem auto;opacity:.75}#invitation .wrapper{z-index:1}#invitation .flame{background-image:url(/assets/ffd-150j-flamme-GH-rbRrc.png);background-size:contain;background-position:bottom left 90%;background-repeat:no-repeat;opacity:.2;z-index:0}@media(min-width:1024px){#invitation .flame{background-position:bottom 20% left 90%;background-size:40%}}#kreisfeuerwehrtag{padding-top:5rem;padding-bottom:5rem;background:linear-gradient(180deg,#ffe4ce,#fff,#dedede);z-index:1;color:#000}#kreisfeuerwehrtag h2{font-size:2rem}#kreisfeuerwehrtag h2 .small{font-size:1rem}#kreisfeuerwehrtag .bg{background-image:url(/assets/ffd-150-kreisfeuerwehrtag-2026-dietzenbach-txCQNYYR.webp);background-size:contain;background-position:center top;background-repeat:no-repeat;opacity:.1;z-index:0}@media(min-width:1024px){#kreisfeuerwehrtag .bg{background-position:top left;background-size:40%}}#sponsoring{color:#000;flex-direction:column;gap:2rem;padding-top:4rem}@media(min-width:1024px){#sponsoring{gap:2rem}}#sponsoring .wrapper{z-index:1}#sponsoring .wrapper.bg-white{background-color:#fffc;padding:2rem;border-radius:1rem}#sponsoring .bg{z-index:0;background:linear-gradient(0deg,#fff,#7a7a7a,#fff);opacity:1}#sponsoring h3{text-transform:uppercase;text-align:center}#sponsoring h3:after{content:"";display:block;width:5rem;height:2px;background-color:#000;margin:1rem auto;opacity:.25}#sponsoring h4{margin-bottom:1rem}#sponsoring img{width:500px;max-width:100%;margin:0}@media(min-width:1024px){#sponsoring img{max-width:none}}#sponsoring .col.feature{color:#000;padding:2rem;width:100%;border-radius:1rem;background:#fffc}#sponsoring .col.feature h3:after{background-color:#000}#sponsoring .col.feature h4,#sponsoring .col.feature ul{margin-left:auto;margin-right:auto;max-width:600px}#sponsoring .col.bg-white{padding:2rem;border-radius:1rem;background-color:#fffc}#sponsors{background-color:#fff;color:#000;text-transform:uppercase;text-align:center}#sponsors h2{margin-bottom:2rem}#sponsors .logos{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}#sponsors img{display:block;width:80%;height:auto;filter:drop-shadow(0 0 2px rgba(0,0,0,.25))}@media(min-width:1024px){#sponsors img{width:auto;height:120px}}#bands{padding-bottom:4rem;background-color:#fff;color:#000}#bands .wrapper{text-transform:uppercase}#bands .wrapper h3{margin-bottom:2rem}#bands .wrapper h3:after{content:"";display:block;width:5rem;height:2px;background-color:#000;margin:1rem auto;opacity:.25}#bands .wrapper .band-logos{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;align-items:center}#bands .wrapper .band-logos img{width:80%;height:auto;filter:drop-shadow(0 0 2px rgba(0,0,0,.85))}@media(min-width:1024px){#bands .wrapper .band-logos img{max-width:calc((100% - 8rem)/5)}}ul{list-style:disc;padding-left:1.5rem;margin-bottom:1rem}.bg-red{background:linear-gradient(140deg,#e62228,#b96126);opacity:.9}.bg-white{background-color:#fff;box-shadow:0 0 25px #00000040}.text-black{color:#000}ul.nav{list-style:none;padding-left:0;padding:1rem 0;text-align:center}@media(min-width:1024px){ul.nav{display:flex;gap:2rem}}ul.nav a{color:#fff}ul.nav a:hover{color:#e62228}.map-container{position:relative;width:100%;height:500px;margin-top:2rem;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #0000004d}@media(min-width:768px){.map-container{height:600px}}@media(min-width:1024px){.map-container{height:700px}}#poi-map{width:100%;height:100%;z-index:1}.map-controls{position:absolute;top:10px;right:10px;z-index:1000;display:flex;flex-direction:column;gap:8px}.map-btn{width:40px;height:40px;background-color:#fff;border:2px solid rgba(0,0,0,.2);border-radius:4px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0003}.map-btn:hover{background-color:#f4f4f4;border-color:#e62228}.map-btn:focus{outline:2px solid #e62228;outline-offset:2px}.map-btn:active{transform:scale(.95)}.map-btn svg{color:#242424}.poi-marker{background-color:#e62228;border:3px solid #ffffff;border-radius:50% 50% 50% 0;width:35px;height:35px;transform:rotate(-45deg);box-shadow:0 4px 8px #0000004d;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.poi-marker:hover{transform:rotate(-45deg) scale(1.15);background-color:#c8102e}.poi-marker-icon{transform:rotate(45deg);font-size:18px;color:#fff;-webkit-user-select:none;user-select:none}.leaflet-popup-content-wrapper{background-color:#fff;border-radius:8px;box-shadow:0 8px 24px #0000004d;padding:0;overflow:hidden;max-width:320px}@media(min-width:768px){.leaflet-popup-content-wrapper{max-width:380px}}.leaflet-popup-content{margin:0;width:auto!important;min-width:280px}@media(min-width:768px){.leaflet-popup-content{min-width:320px}}.poi-popup{color:#242424}.poi-popup-image{width:100%;height:180px;object-fit:contain;display:block}@media(min-width:768px){.poi-popup-image{height:200px}}.poi-popup-content{padding:1.25rem}.poi-popup-title{font-size:1.25rem;font-weight:700;margin:0 0 .5rem;color:#242424;line-height:1.3}.poi-popup-datetime{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#666;margin-bottom:.75rem;font-weight:500}.poi-popup-datetime svg{width:16px;height:16px;color:#e62228;flex-shrink:0}.poi-popup-description{font-size:.95rem;line-height:1.5;color:#444;margin:0}.leaflet-popup-tip{background-color:#fff}.leaflet-popup-close-button{color:#242424!important;font-size:24px!important;padding:4px 8px!important;right:9px}.leaflet-popup-close-button:hover{color:#e62228!important}.leaflet-popup-close-button:focus{outline:2px solid #e62228;outline-offset:2px}.leaflet-container a.leaflet-popup-close-button{font-weight:700}.leaflet-container a:focus{outline:2px solid #e62228;outline-offset:2px}.map-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fffffff2;padding:1.5rem;border-radius:8px;box-shadow:0 4px 12px #0003;z-index:1001;display:none}.map-loading.active{display:block}@media(max-width:767px){.poi-marker{width:40px;height:40px}.poi-marker-icon{font-size:20px}.leaflet-popup-content-wrapper{max-width:calc(100vw - 40px)}}
