/* BFS Theme 3.9.5 production bundle. Source order preserved for safe cascade. */


:root{--blue:#2496d1;--red:#d60043;--green:#62b32f;--ink:#13233b;--muted:#59657a;--soft:#f6f8fb;--radius:28px;--shadow:0 18px 45px rgba(20,45,75,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:999;background:#fff;padding:.8rem;border:2px solid var(--blue)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.site-header{height:92px;padding:10px clamp(20px,5vw,72px);display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:34px;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);z-index:100;border-bottom:1px solid #e8edf3}.brand img{width:92px;height:72px;object-fit:contain}.main-nav{display:flex;justify-content:center;gap:clamp(15px,2.2vw,34px);font-weight:700}.main-nav a{padding:12px 0;border-bottom:3px solid transparent}.main-nav a:hover,.main-nav a.active{color:var(--blue);border-color:var(--blue)}.header-cta{background:var(--green);color:#fff;font-weight:800;padding:14px 22px;border-radius:999px;transition:transform .22s ease,box-shadow .22s ease}.header-cta:hover,.header-cta:focus-visible{transform:translateY(-2px);box-shadow:0 10px 22px rgba(20,45,75,.16)}.menu-toggle{display:none;background:none;border:0}.hero{min-height:610px;margin:0 clamp(18px,3vw,44px);position:relative;border-radius:0 0 36px 36px;overflow:hidden;background:#fff}.hero-image{position:absolute;inset:0 0 0 26%;border-radius:0 0 36px 120px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.15),transparent 45%)}.hero-copy{position:absolute;z-index:3;left:3.5%;top:11%;width:min(520px,43vw);background:#fff;border-radius:0 180px 180px 0;padding:54px 56px 48px 30px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.78rem;color:var(--blue);margin:0 0 12px}.hero h1{font-size:clamp(3.1rem,5.8vw,6.4rem);line-height:.89;margin:0 0 24px;letter-spacing:-.06em}.hero h1 span{display:block}.hero h1 span:first-child{color:var(--blue)}.hero h1 span:last-child{color:var(--red)}.hero-copy>p:not(.eyebrow){font-size:1.18rem;line-height:1.55}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:20px;border-radius:999px;padding:14px 22px;font-weight:900;font-size:1rem;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,background-color .22s ease}.btn b{transition:transform .22s ease}.btn:hover,.btn:focus-visible{transform:translateY(-2px);box-shadow:0 10px 22px rgba(20,45,75,.18);filter:saturate(1.08)}.btn:hover b,.btn:focus-visible b{transform:translateX(4px)}.btn:active{transform:translateY(0);box-shadow:0 5px 12px rgba(20,45,75,.14)}.btn.outline{border:2px solid currentColor;background:#fff}.btn.white{background:#fff;color:var(--red)}.event-card{position:absolute;z-index:5;right:6%;top:13%;width:min(360px,28vw);background:#fff;padding:28px;border-radius:24px;box-shadow:var(--shadow)}.badge{display:inline-block;background:var(--blue);color:#fff;border-radius:999px;padding:7px 12px;text-transform:uppercase;font-size:.7rem;font-weight:900}.event-meta{margin:22px 0 8px;font-weight:800}.event-card h2{color:var(--red);font-size:1.75rem;margin:.3rem 0}.text-link{border:0;background:none;color:var(--blue);font-weight:900;font-size:1rem;padding:10px 0;cursor:pointer;transition:transform .2s ease,color .2s ease}.text-link:hover,.text-link:focus-visible{transform:translateX(4px);color:var(--red)}.shape{position:absolute;z-index:2;border-radius:50%}.shape-blue{width:160px;height:160px;background:var(--blue);left:-70px;bottom:30px}.shape-green{width:260px;height:260px;border:60px solid var(--green);right:-120px;bottom:-130px}.shape-red{width:58px;height:58px;background:var(--red);right:15%;bottom:28px}.section{padding:60px clamp(24px,6vw,90px)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.section-head h2,.about h2,.join-panel h2{font-size:clamp(2rem,3.5vw,4rem);margin:0;letter-spacing:-.045em}.section-head a{color:var(--blue);font-weight:800;display:inline-block;transition:transform .2s ease,color .2s ease}.section-head a:hover,.section-head a:focus-visible{transform:translateX(4px);color:var(--red)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr) 1.15fr 1.35fr;gap:22px}.project-card,.quote-card,.stats-card,.news-panel{border:1px solid #e7ebf0;border-radius:24px;box-shadow:0 10px 30px rgba(23,44,72,.08);overflow:hidden;background:#fff}.project-card img{width:100%;height:135px;object-fit:cover}.card-body{padding:22px;position:relative}.icon{position:absolute;right:18px;top:-26px;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:1.6rem}.green-bg{background:var(--green)}.blue-bg{background:var(--blue)}.red-bg{background:var(--red)}.project-card h3{font-size:1.25rem;margin:0 0 8px}.project-card p{color:var(--muted);line-height:1.55}.project-card a{font-weight:900;color:var(--blue);display:inline-block;transition:transform .2s ease,filter .2s ease}.project-card a:hover,.project-card a:focus-visible{transform:translateX(4px);filter:brightness(.86)}.project-card:nth-child(1) a{color:var(--green)}.project-card:nth-child(3) a{color:var(--red)}.quote-card{padding:34px;display:flex;flex-direction:column;justify-content:center}.quote-mark{font-size:5rem;line-height:.4;color:var(--green)}blockquote{font-size:1.15rem;line-height:1.65;font-style:italic;margin:18px 0}.quote-card div:last-child{color:var(--red);margin-top:8px}.stats-card{display:grid;grid-template-columns:1fr 1fr;padding:28px}.stats-card div{padding:20px;display:flex;gap:12px;align-items:flex-start}.stats-card div:nth-child(odd){border-right:1px solid #dfe5eb}.stats-card div:nth-child(-n+2){border-bottom:1px solid #dfe5eb}.stats-card strong{font-size:2rem;color:var(--blue)}.stats-card div:nth-child(2) strong,.stats-card div:nth-child(4) strong{color:var(--green)}.stats-card span{font-size:.86rem}.join-news{display:grid;grid-template-columns:1fr 1.45fr;gap:34px;padding:20px 0 70px}.join-panel{min-height:430px;background:var(--red);color:#fff;border-radius:0 220px 220px 0;padding:70px clamp(30px,6vw,100px);display:grid;grid-template-columns:110px 1fr;align-items:center;gap:30px;position:relative;overflow:hidden}.join-panel:after{content:"";position:absolute;width:420px;height:180px;background:var(--blue);bottom:-105px;right:-80px;border-radius:50%}.join-panel h2{font-size:clamp(2.5rem,4vw,5rem);line-height:.95}.join-panel p{font-size:1.12rem;line-height:1.6;max-width:600px}.light{color:#fff}.hand{width:100px;height:100px;border:5px solid #fff;border-radius:50%;display:grid;place-items:center;font-size:3.5rem}.news-panel{padding:30px;margin-right:clamp(24px,6vw,90px)}.compact{align-items:center}.compact h2{font-size:2rem}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-grid img{width:100%;height:125px;object-fit:cover;border-radius:16px}.news-grid small{display:block;margin-top:14px;color:var(--muted)}.news-grid h3{font-size:1.05rem}.news-grid a{color:var(--blue);font-weight:800;display:inline-block;transition:transform .2s ease,color .2s ease}.news-grid a:hover,.news-grid a:focus-visible{transform:translateX(4px);color:var(--red)}.about{background:var(--soft);display:grid;grid-template-columns:1.2fr 1.5fr auto;gap:40px;align-items:center}.about>p{font-size:1.15rem;line-height:1.7;color:var(--muted)}.about-actions{display:flex;gap:12px;flex-direction:column}footer{background:#12243d;color:#fff;padding:50px clamp(24px,6vw,90px);display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}footer img{width:120px;background:#fff;border-radius:50%;padding:6px}footer h2{font-size:1rem}footer a{display:block;margin:.6rem 0;color:#dbe6f2}dialog{border:0;border-radius:26px;padding:36px;max-width:600px;box-shadow:var(--shadow)}dialog::backdrop{background:rgba(8,25,48,.65);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:2rem}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice-grid button{padding:24px;border:2px solid #dce5ee;border-radius:18px;background:#fff;font-weight:800;cursor:pointer}.choice-grid button:hover{border-color:var(--blue);color:var(--blue)}
@media(max-width:1100px){.site-header{grid-template-columns:90px 1fr auto}.main-nav{gap:14px;font-size:.9rem}.hero-copy{width:52vw}.event-card{width:33vw;right:3%}.project-grid{grid-template-columns:repeat(3,1fr)}.quote-card{grid-column:1/2}.stats-card{grid-column:2/4}.join-news{grid-template-columns:1fr}.join-panel{border-radius:0 150px 150px 0}.news-panel{margin:0 clamp(24px,6vw,90px)}.about{grid-template-columns:1fr 1.3fr}.about-actions{grid-column:1/-1;flex-direction:row}}
@media(max-width:820px){.site-header{height:78px;grid-template-columns:70px 1fr auto;padding:8px 18px}.brand img{width:64px;height:60px}.menu-toggle{display:flex;flex-direction:column;gap:5px;justify-self:end}.menu-toggle span:not(.sr-only){width:28px;height:3px;background:var(--ink)}.main-nav{position:fixed;inset:78px 0 auto 0;background:#fff;padding:25px;display:none;flex-direction:column;box-shadow:var(--shadow)}.main-nav.open{display:flex}.header-cta{display:none}.hero{margin:0;min-height:850px;border-radius:0}.hero-image{inset:0 0 auto 0;height:360px;border-radius:0}.hero-copy{position:relative;left:auto;top:auto;width:auto;margin-top:285px;border-radius:50px 50px 0 0;padding:48px 26px 34px}.hero h1{font-size:clamp(3rem,13vw,5rem)}.event-card{position:relative;top:auto;right:auto;width:auto;margin:0 20px 30px}.shape{display:none}.project-grid{grid-template-columns:1fr 1fr}.quote-card,.stats-card{grid-column:auto}.stats-card{grid-template-columns:1fr 1fr}.join-panel{grid-template-columns:1fr;border-radius:0;padding:54px 28px}.hand{display:none}.news-grid{grid-template-columns:1fr}.about{grid-template-columns:1fr}.about-actions{grid-column:auto}.section{padding:45px 20px}footer{grid-template-columns:1fr 1fr}.section-head{align-items:flex-start;gap:15px}.section-head>a{font-size:.85rem}.project-card img{height:150px}}
@media(max-width:560px){.project-grid{grid-template-columns:1fr}.stats-card,.quote-card{grid-column:1}.stats-card{grid-template-columns:1fr 1fr}.actions{flex-direction:column;align-items:stretch}.btn{width:100%}.hero-copy>p:not(.eyebrow){font-size:1rem}.join-panel h2{font-size:2.8rem}.news-panel{margin:0 16px;padding:22px}.compact{align-items:flex-start}.compact a{display:none}.about-actions{flex-direction:column}footer{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Universelles Template für normale Inhaltsseiten */
.page-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f4faff 0%,#fff 55%,#f4faef 100%);padding:56px clamp(24px,8vw,120px) 64px;border-bottom:1px solid #e5ebf1}.page-hero-inner{position:relative;z-index:2;max-width:900px}.breadcrumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin-bottom:40px}.breadcrumbs a{color:var(--blue);font-weight:700}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{text-decoration:underline}.page-hero h1{font-size:clamp(3.4rem,7vw,7rem);line-height:.92;letter-spacing:-.065em;margin:0;color:var(--blue)}.page-intro{font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.55;max-width:760px;margin:24px 0 0;color:var(--ink)}.page-hero-visual{position:absolute;inset:0 0 0 auto;width:42%;pointer-events:none}.page-orbit{position:absolute;border-radius:50%;border-style:solid}.orbit-blue{width:320px;height:320px;border-width:62px;border-color:var(--blue);right:-110px;top:-140px;opacity:.14}.orbit-green{width:230px;height:230px;border-width:45px;border-color:var(--green);right:9%;bottom:-145px;opacity:.14}.page-dot{position:absolute;width:70px;height:70px;border-radius:50%;background:var(--red);right:23%;top:42%;opacity:.1}.content-shell{display:grid;grid-template-columns:minmax(230px,300px) minmax(0,860px);gap:clamp(36px,6vw,90px);align-items:start;max-width:1320px;margin:0 auto;padding:70px clamp(24px,6vw,90px) 90px}.content-sidebar{position:sticky;top:120px;display:grid;gap:24px}.toc-card{border:1px solid #e1e8ef;border-radius:22px;padding:24px;background:#fff;box-shadow:0 10px 30px rgba(23,44,72,.07)}.toc-card h2{font-size:1rem;margin:0 0 16px}.toc-card a{display:block;padding:12px 0;border-top:1px solid #edf1f4;color:var(--muted);font-weight:700;transition:color .2s ease,transform .2s ease}.toc-card a:hover,.toc-card a:focus-visible{color:var(--blue);transform:translateX(4px)}.side-cta{padding:28px;border-radius:24px;background:linear-gradient(145deg,var(--blue),#1478bb);color:#fff;box-shadow:var(--shadow)}.side-cta-icon{display:grid;place-items:center;width:54px;height:54px;border:2px solid #fff;border-radius:50%;font-size:1.8rem}.side-cta h2{font-size:1.5rem;line-height:1.12;margin:20px 0 10px}.side-cta p{line-height:1.55;color:#e8f6ff}.side-cta .btn{width:100%;margin-top:8px}.page-content{min-width:0}.content-section{scroll-margin-top:120px;margin-bottom:72px}.content-section h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.04;letter-spacing:-.045em;margin:0 0 22px}.content-section>p,.content-section li{font-size:1.09rem;line-height:1.78;color:#3f4d61}.content-lead{display:grid;grid-template-columns:130px 1fr;gap:32px;align-items:start}.lead-mark{width:118px;height:118px;border-radius:50%;display:grid;place-items:center;background:var(--red);color:#fff;font-size:2rem;font-weight:900;transform:rotate(-5deg);box-shadow:0 12px 28px rgba(214,0,67,.19)}.content-image{margin:0 0 72px}.wide-image img{width:100%;aspect-ratio:16/8.2;object-fit:cover;border-radius:28px;box-shadow:var(--shadow)}.content-image figcaption{font-size:.9rem;color:var(--muted);padding:12px 6px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.feature-list article{display:grid;grid-template-columns:50px 1fr;gap:18px;padding:24px;border:1px solid #e3e9ef;border-radius:22px;background:#fff;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.feature-list article:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,44,72,.10);border-color:#cfdbe7}.feature-list article>span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#edf8e8;color:var(--green);font-size:1.45rem}.feature-list article:nth-child(2)>span{background:#e8f6fd;color:var(--blue)}.feature-list article:nth-child(3)>span{background:#fff0f5;color:var(--red)}.feature-list h3{font-size:1.1rem;margin:0 0 6px}.feature-list p{margin:0;color:var(--muted);line-height:1.55}.content-quote{margin:0 0 72px;border-radius:28px;background:var(--blue);color:#fff;padding:46px 54px;position:relative;overflow:hidden}.content-quote:after{content:"“";position:absolute;right:22px;bottom:-74px;font-size:16rem;font-family:Georgia,serif;opacity:.12}.content-quote p{font-family:Georgia,serif;font-size:clamp(1.55rem,3vw,2.5rem);line-height:1.35;margin:0;max-width:720px}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}.people-grid article{padding:28px 22px;border-radius:22px;background:var(--soft);text-align:center}.avatar{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:var(--blue);color:#fff;font-size:1.35rem;font-weight:900}.green-avatar{background:var(--green)}.red-avatar{background:var(--red)}.people-grid h3{margin:0 0 4px}.people-grid p{margin:0;color:var(--muted)}.content-accordion{border:1px solid #e1e8ef;border-radius:18px;background:#fff;overflow:hidden}.content-accordion summary{padding:20px 24px;font-weight:900;cursor:pointer;list-style:none}.content-accordion summary::-webkit-details-marker{display:none}.content-accordion summary:after{content:"+";float:right;color:var(--blue);font-size:1.4rem}.content-accordion[open] summary:after{content:"–"}.content-accordion div{padding:0 24px 20px;color:var(--muted);line-height:1.65}.support-box{display:grid;grid-template-columns:1.35fr .85fr;gap:28px;padding:38px;border-radius:30px;background:linear-gradient(135deg,#fff3f7,#fff 52%,#eff9ea);border:1px solid #f0dce4}.support-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn.red{background:var(--red);color:#fff}.bank-card{padding:26px;border-radius:22px;background:#fff;box-shadow:0 10px 28px rgba(23,44,72,.08)}.bank-card h3{margin-top:0}.bank-card dl{margin:0}.bank-card dl div{padding:12px 0;border-top:1px solid #edf1f4}.bank-card dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:900}.bank-card dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}.link-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.link-card-grid>a{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:18px;padding:20px;border:1px solid #e1e8ef;border-radius:20px;background:#fff;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.link-card-grid>a:hover,.link-card-grid>a:focus-visible{transform:translateY(-3px);box-shadow:0 12px 28px rgba(23,44,72,.10);border-color:#cbd8e4}.link-card-grid>a>b{color:var(--blue);transition:transform .2s ease}.link-card-grid>a:hover>b,.link-card-grid>a:focus-visible>b{transform:translateX(4px)}.link-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:900}.link-card-grid strong,.link-card-grid small{display:block}.link-card-grid small{color:var(--muted);line-height:1.45;margin-top:4px}.next-page-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:55px clamp(24px,8vw,120px);background:var(--green);color:#fff}.next-page-cta h2{font-size:clamp(2rem,4vw,4rem);line-height:1;margin:0}.next-page-cta .eyebrow{margin-bottom:10px}
@media(max-width:900px){.content-shell{grid-template-columns:1fr}.content-sidebar{position:static;grid-template-columns:1fr 1fr}.toc-card{order:2}.side-cta{order:1}.content-lead{grid-template-columns:100px 1fr}.lead-mark{width:92px;height:92px}.support-box{grid-template-columns:1fr}.page-hero-visual{width:55%}}
@media(max-width:680px){.page-hero{padding:38px 22px 48px}.breadcrumbs{margin-bottom:28px}.page-hero h1{font-size:3.2rem}.page-hero-visual{display:none}.content-shell{padding:45px 18px 65px}.content-sidebar{grid-template-columns:1fr}.toc-card{order:1}.side-cta{order:2}.content-lead{grid-template-columns:1fr}.lead-mark{width:76px;height:76px;font-size:1.3rem}.feature-list,.people-grid,.link-card-grid{grid-template-columns:1fr}.content-quote{padding:34px 28px}.support-box{padding:25px 20px}.support-actions{flex-direction:column}.support-actions .btn{width:100%}.next-page-cta{align-items:flex-start;flex-direction:column}.next-page-cta .btn{width:100%}}

/* Universelles Landingpage-Template für große Veranstaltungen */
.event-template{background:#fff}.event-hero{position:relative;min-height:720px;overflow:hidden;background:var(--ink);isolation:isolate}.event-hero-photo{position:absolute;inset:0;background:url('../images/event-hero.jpg') center 46%/cover no-repeat;z-index:-3}.event-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,29,52,.92) 0%,rgba(8,29,52,.76) 40%,rgba(8,29,52,.12) 72%,rgba(8,29,52,.18) 100%);z-index:-2}.event-hero:after{content:"";position:absolute;left:-12%;bottom:-175px;width:55%;height:290px;background:var(--red);border-radius:50%;opacity:.94;z-index:-1}.event-hero-content{max-width:760px;padding:74px 0 120px clamp(24px,7vw,110px);color:#fff}.event-breadcrumbs{margin-bottom:80px;color:rgba(255,255,255,.78)}.event-breadcrumbs a{color:#fff}.event-kicker{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid rgba(255,255,255,.45);border-radius:999px;text-transform:uppercase;letter-spacing:.09em;font-size:.78rem;font-weight:900;margin:0 0 22px}.event-hero h1{font-size:clamp(3.5rem,7vw,7.2rem);line-height:.9;letter-spacing:-.065em;margin:0;max-width:850px}.event-hero h1 span{display:block;color:#fff;font-family:Georgia,serif;font-style:italic;font-size:.54em;letter-spacing:-.02em;margin-bottom:12px}.event-lead{font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.58;max-width:680px;color:rgba(255,255,255,.9);margin:28px 0 0}.event-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.event-facts-card{position:absolute;right:clamp(24px,7vw,110px);bottom:58px;width:min(390px,calc(100% - 48px));padding:28px;background:rgba(255,255,255,.97);border-radius:28px;box-shadow:0 25px 60px rgba(3,15,30,.28);display:grid;grid-template-columns:84px 1fr;gap:19px;color:var(--ink)}.event-live-label{grid-column:1/-1;justify-self:start;background:var(--blue);color:#fff;border-radius:999px;padding:7px 12px;font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900}.event-date-badge{width:80px;height:88px;border:2px solid var(--blue);border-radius:17px;display:grid;place-items:center;align-content:center;color:var(--blue)}.event-date-badge strong{font-size:2rem;line-height:1}.event-date-badge span{font-size:.75rem;font-weight:900;letter-spacing:.1em}.event-facts-copy p{margin:0 0 15px;line-height:1.45;color:var(--muted)}.event-facts-copy strong{color:var(--ink)}.event-facts-card .text-link{grid-column:2;color:var(--blue);font-weight:900}.event-jumpbar{position:sticky;top:92px;z-index:70;display:flex;justify-content:center;background:#fff;border-bottom:1px solid #e5ebf0;box-shadow:0 8px 20px rgba(23,44,72,.06);overflow-x:auto}.event-jumpbar a{flex:0 0 auto;padding:18px clamp(16px,3vw,42px);font-weight:800;border-right:1px solid #edf1f5;transition:color .2s ease,background .2s ease}.event-jumpbar a span{color:var(--blue);font-size:.7rem;margin-right:7px}.event-jumpbar a:hover,.event-jumpbar a:focus-visible{color:var(--red);background:#fff7fa}.event-section{max-width:1280px;margin:0 auto;padding:96px clamp(22px,6vw,80px);scroll-margin-top:150px}.event-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(45px,8vw,120px);align-items:start}.event-intro h2,.event-section-heading h2,.event-location h2,.event-supporters h2{font-size:clamp(2.5rem,5vw,5.2rem);line-height:.98;letter-spacing:-.055em;margin:0}.event-intro-copy p{font-size:1.15rem;line-height:1.75;color:#405069;margin:0 0 22px}.event-highlights{padding-top:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.event-highlights article{padding:32px;border:1px solid #e1e8ef;border-radius:26px;transition:transform .22s ease,box-shadow .22s ease}.event-highlights article:hover{transform:translateY(-5px);box-shadow:0 18px 34px rgba(23,44,72,.1)}.highlight-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:1.6rem}.event-highlights h3{font-size:1.3rem;margin:22px 0 9px}.event-highlights p{line-height:1.6;color:var(--muted);margin:0}.event-program{max-width:none;background:var(--soft);padding-left:max(clamp(22px,6vw,80px),calc((100vw - 1280px)/2 + 80px));padding-right:max(clamp(22px,6vw,80px),calc((100vw - 1280px)/2 + 80px))}.event-section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:50px}.event-section-heading>p{max-width:430px;line-height:1.65;color:var(--muted);margin:0}.program-timeline{list-style:none;padding:0;margin:0;display:grid}.program-timeline li{position:relative;display:grid;grid-template-columns:130px 1fr;gap:35px;padding:0 0 42px}.program-timeline li:not(:last-child):before{content:"";position:absolute;left:63px;top:62px;bottom:0;width:2px;background:#d7e3ed}.program-timeline time{width:126px;height:64px;border-radius:18px;display:grid;place-items:center;background:#fff;border:2px solid var(--blue);font-size:1.35rem;font-weight:900;color:var(--blue);box-shadow:0 8px 22px rgba(23,44,72,.08)}.program-timeline div{padding:3px 0 22px;border-bottom:1px solid #dae3eb}.program-type{color:var(--red);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:900;margin:0 0 6px}.program-timeline h3{font-size:clamp(1.35rem,2.3vw,2rem);margin:0 0 8px}.program-timeline div>p:last-child{color:var(--muted);line-height:1.55;margin:0}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.offer-grid article{position:relative;min-height:240px;padding:30px;border-radius:25px;background:#fff;border:1px solid #e1e8ef;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}.offer-grid article:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(23,44,72,.1)}.offer-grid article>span{position:absolute;right:18px;top:12px;font-size:3.5rem;line-height:1;color:#edf3f7;font-weight:900}.offer-grid h3{position:relative;font-size:1.25rem;margin:58px 0 10px}.offer-grid p{position:relative;line-height:1.6;color:var(--muted)}.offer-more{background:linear-gradient(135deg,var(--blue),#1578ba)!important;color:#fff!important}.offer-more>span{color:rgba(255,255,255,.16)!important}.offer-more p{color:#e8f5fc}.offer-more a{color:#fff;font-weight:900}.event-location{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px,7vw,90px);align-items:center}.event-map{position:relative;min-height:520px;border-radius:34px;background:#edf5f1;overflow:hidden;display:grid;place-items:end start;padding:28px;color:var(--muted);font-weight:800}.map-streets{position:absolute;inset:-25%;background:repeating-linear-gradient(28deg,transparent 0 43px,rgba(255,255,255,.95) 44px 54px),repeating-linear-gradient(112deg,transparent 0 65px,rgba(255,255,255,.86) 66px 75px);transform:rotate(-6deg)}.map-pin{position:absolute;left:52%;top:43%;width:70px;height:70px;border-radius:50% 50% 50% 0;background:var(--red);color:#fff;display:grid;place-items:center;transform:rotate(-45deg);font-size:1.8rem;box-shadow:0 15px 30px rgba(214,0,67,.28)}.map-pin::first-letter{transform:rotate(45deg)}.event-map p{position:relative;margin:0;background:#fff;padding:10px 14px;border-radius:12px}.location-facts{margin:28px 0;display:grid}.location-facts div{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid #e1e8ef}.location-facts strong{color:var(--blue)}.location-facts span{color:var(--muted);line-height:1.5}.traffic-note{padding:22px;border-left:5px solid var(--red);background:#fff5f8;border-radius:0 18px 18px 0;margin:24px 0}.traffic-note p{margin:6px 0 0;color:#5c6372;line-height:1.55}.event-volunteer{max-width:1280px;margin:0 auto 40px;padding:65px clamp(28px,7vw,90px);border-radius:40px;background:linear-gradient(130deg,var(--red),#b7003a 58%,#85002d);color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:55px;align-items:center;overflow:hidden;position:relative}.event-volunteer:after{content:"BfS";position:absolute;right:-40px;bottom:-70px;font-size:14rem;font-weight:900;color:rgba(255,255,255,.08);transform:rotate(-8deg)}.event-volunteer h2{font-size:clamp(2.7rem,5vw,5.3rem);line-height:.95;letter-spacing:-.055em;margin:0 0 20px}.event-volunteer p:not(.eyebrow){font-size:1.13rem;line-height:1.65;color:#ffeaf1;max-width:680px}.volunteer-actions{position:relative;z-index:2;display:grid;gap:18px}.volunteer-link{color:#fff;text-align:center;text-decoration:underline;text-underline-offset:5px;font-weight:800}.supporter-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}.supporter-logos span{min-height:110px;border:1px dashed #bdc8d4;border-radius:20px;display:grid;place-items:center;color:#7a8797;font-weight:800;background:#fafbfd}.event-more{padding-top:50px}.event-more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.event-more-grid>a{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:18px;padding:22px;border-radius:22px;border:1px solid #e1e8ef;transition:transform .22s ease,box-shadow .22s ease}.event-more-grid>a:hover,.event-more-grid>a:focus-visible{transform:translateY(-4px);box-shadow:0 15px 30px rgba(23,44,72,.1)}.event-more-grid>a>b{color:var(--blue);transition:transform .2s ease}.event-more-grid>a:hover>b{transform:translateX(4px)}.mini-date{width:62px;height:70px;border:2px solid var(--blue);border-radius:14px;display:grid;place-items:center;align-content:center;color:var(--blue);font-size:.72rem;font-weight:900}.mini-date strong{font-size:1.45rem;line-height:1}.green-date{border-color:var(--green);color:var(--green)}.red-date{border-color:var(--red);color:var(--red)}.event-more-grid strong,.event-more-grid small{display:block}.event-more-grid small{color:var(--muted);line-height:1.4;margin-top:5px}
@media(max-width:1050px){.event-hero{min-height:860px}.event-hero-content{padding-right:30px}.event-facts-card{left:clamp(24px,7vw,110px);right:auto;bottom:40px}.event-intro,.event-location{grid-template-columns:1fr}.offer-grid{grid-template-columns:1fr 1fr}.event-volunteer{margin-left:20px;margin-right:20px}.event-more-grid{grid-template-columns:1fr}.event-highlights{grid-template-columns:1fr 1fr}.supporter-logos{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.event-hero{min-height:940px}.event-hero-overlay{background:linear-gradient(180deg,rgba(8,29,52,.9) 0%,rgba(8,29,52,.72) 58%,rgba(8,29,52,.45) 100%)}.event-hero-content{padding:45px 22px 315px}.event-breadcrumbs{margin-bottom:48px}.event-hero h1{font-size:clamp(3.1rem,14vw,5.2rem)}.event-facts-card{left:20px;bottom:24px;width:calc(100% - 40px)}.event-jumpbar{top:78px;justify-content:flex-start}.event-jumpbar a{padding:15px 18px}.event-section{padding:65px 20px}.event-intro{gap:28px}.event-highlights{grid-template-columns:1fr;padding-top:0}.event-section-heading{align-items:flex-start;flex-direction:column;gap:18px}.program-timeline li{grid-template-columns:90px 1fr;gap:20px}.program-timeline time{width:86px;height:56px;font-size:1.1rem}.program-timeline li:not(:last-child):before{left:42px;top:55px}.offer-grid{grid-template-columns:1fr}.event-map{min-height:370px}.event-location{gap:35px}.event-volunteer{grid-template-columns:1fr;margin:0;border-radius:0;padding:55px 24px}.supporter-logos{grid-template-columns:1fr 1fr}.event-more-grid>a{grid-template-columns:62px 1fr auto}}
@media(max-width:480px){.event-facts-card{grid-template-columns:70px 1fr;padding:20px}.event-date-badge{width:68px;height:78px}.event-actions{flex-direction:column}.event-actions .btn{width:100%}.supporter-logos{grid-template-columns:1fr}.event-more-grid>a{padding:16px;gap:12px}.event-more-grid>a>b{display:none}}

/* Membership landing page */
.membership-hero{max-width:1440px;margin:0 auto;min-height:680px;padding:clamp(45px,7vw,105px) clamp(24px,7vw,105px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px;overflow:hidden;position:relative;background:linear-gradient(135deg,#fff 0%,#fff 63%,#f0f9fd 100%)}
.membership-hero:before{content:"";position:absolute;width:420px;height:420px;border:70px solid var(--green);border-radius:50%;right:-245px;bottom:-230px;opacity:.95}.membership-hero:after{content:"";position:absolute;width:120px;height:120px;background:var(--red);border-radius:50%;right:5%;top:12%;opacity:.95}.membership-hero-copy{position:relative;z-index:2}.membership-hero .breadcrumbs{margin-bottom:45px}.membership-hero h1{font-size:clamp(4rem,7vw,7.4rem);line-height:.88;letter-spacing:-.075em;margin:0 0 28px;color:var(--blue)}.membership-hero h1 span{color:var(--red)}.membership-intro{font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.68;max-width:720px;color:var(--muted)}.membership-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:34px 0}.membership-trust{list-style:none;padding:0;margin:32px 0 0;display:flex;flex-wrap:wrap;gap:20px;color:var(--ink);font-weight:700}.membership-trust span{color:var(--green);font-weight:900;margin-right:5px}.membership-hero-art{min-height:500px;position:relative;z-index:1;border-radius:55% 45% 46% 54%/48% 54% 46% 52%;background:linear-gradient(145deg,var(--blue),#1279bb);box-shadow:var(--shadow);overflow:hidden}.membership-hero-art:before{content:"BfS";position:absolute;right:-30px;top:15px;font-size:15rem;font-weight:900;line-height:1;color:rgba(255,255,255,.1);transform:rotate(8deg)}.membership-people{position:absolute;left:8%;right:8%;bottom:8%;display:flex;align-items:end;justify-content:center;gap:6px}.membership-people span{display:grid;place-items:center;width:88px;height:180px;border-radius:48px 48px 24px 24px;background:#fff;color:var(--blue);font-size:4rem}.membership-people span:nth-child(2),.membership-people span:nth-child(5){height:145px;background:#e8f5fc}.membership-people span:nth-child(3){height:205px;background:var(--green);color:#fff}.membership-people span:nth-child(4){height:165px;background:var(--red);color:#fff}.membership-heart{position:absolute;left:43%;top:12%;font-size:6rem;color:#fff;line-height:1}.member-bubble{position:absolute;padding:13px 18px;border-radius:18px;background:#fff;box-shadow:0 15px 35px rgba(10,40,70,.18);display:grid;min-width:130px}.member-bubble strong{color:var(--ink)}.member-bubble small{color:var(--muted)}.member-bubble-one{left:3%;top:25%;transform:rotate(-5deg)}.member-bubble-two{right:4%;top:31%;transform:rotate(4deg)}.member-bubble-three{right:9%;bottom:8%;transform:rotate(-3deg)}
.membership-quickbar{max-width:1280px;margin:-28px auto 0;padding:0 24px;position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,1fr)}.membership-quickbar a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;background:#fff;border:1px solid #e0e8ef;padding:24px 26px;box-shadow:0 12px 30px rgba(23,44,72,.08);transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.membership-quickbar a:first-child{border-radius:20px 0 0 20px}.membership-quickbar a:last-child{border-radius:0 20px 20px 0}.membership-quickbar a:hover,.membership-quickbar a:focus-visible{transform:translateY(-5px);box-shadow:0 18px 38px rgba(23,44,72,.14);background:#fbfdff}.membership-quickbar span{color:var(--blue);font-weight:900}.membership-quickbar b{color:var(--red);transition:transform .2s ease}.membership-quickbar a:hover b{transform:translateX(5px)}
.membership-section{max-width:1280px;margin:0 auto;padding:100px 28px}.membership-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:48px}.membership-heading h2{font-size:clamp(2.6rem,5vw,5rem);line-height:.98;letter-spacing:-.05em;margin:0}.membership-heading>p{max-width:460px;color:var(--muted);font-size:1.08rem;line-height:1.65;margin:0}.centered-heading{display:block;text-align:center;max-width:850px;margin-left:auto;margin-right:auto}.centered-heading>p{max-width:730px;margin:20px auto 0}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.benefit-grid article{padding:30px;border:1px solid #e1e8ef;border-radius:24px;min-height:280px;background:#fff;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.benefit-grid article:hover{transform:translateY(-6px);box-shadow:0 18px 38px rgba(23,44,72,.1);border-color:#c9d8e4}.benefit-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:1.7rem}.benefit-grid h3{font-size:1.35rem;margin:25px 0 10px}.benefit-grid p{color:var(--muted);line-height:1.65;margin:0}.membership-options{max-width:none;background:var(--soft);padding-left:max(28px,calc((100vw - 1280px)/2 + 28px));padding-right:max(28px,calc((100vw - 1280px)/2 + 28px))}.membership-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1280px;margin:0 auto}.membership-card{position:relative;padding:34px;border-radius:30px;background:#fff;border:1px solid #dfe7ee;display:flex;flex-direction:column;min-height:600px;transition:transform .25s ease,box-shadow .25s ease}.membership-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px rgba(23,44,72,.12)}.featured-member-card{border:3px solid var(--red);box-shadow:0 18px 40px rgba(214,0,67,.1)}.featured-member-card:before{content:"Beliebte Wahl";position:absolute;right:24px;top:-15px;background:var(--red);color:#fff;padding:8px 14px;border-radius:999px;font-size:.78rem;font-weight:900}.member-card-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.member-type-icon{width:62px;height:62px;border-radius:18px;background:#fff0f5;color:var(--red);display:grid;place-items:center;font-size:2rem}.member-tag{font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.membership-card h3{font-size:clamp(1.65rem,2.3vw,2.25rem);line-height:1.05;margin:28px 0 8px}.member-card-subtitle{color:var(--muted);line-height:1.5;min-height:48px}.membership-price{display:flex;align-items:baseline;gap:9px;margin:24px 0}.membership-price strong{font-size:2.4rem;color:var(--ink)}.membership-price span{color:var(--muted)}.membership-card ul{list-style:none;padding:0;margin:0 0 28px;display:grid;gap:13px;flex:1}.membership-card li{position:relative;padding-left:27px;line-height:1.5;color:#465369}.membership-card li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}.member-apply{width:100%;justify-content:center}.membership-card>small{text-align:center;color:#7a8797;margin-top:12px}.btn.green{background:var(--green);color:#fff}.btn.blue{background:var(--blue);color:#fff}.membership-note{max-width:1000px;margin:30px auto 0;display:flex;align-items:flex-start;gap:15px;background:#fff;padding:20px 24px;border-radius:18px;border:1px solid #dfe7ee;color:var(--muted);line-height:1.55}.membership-note span{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900}.membership-note p{margin:2px 0 0}.steps-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.steps-grid li{display:flex;gap:22px;padding:30px;border-top:5px solid var(--blue);background:#fff;box-shadow:0 12px 32px rgba(23,44,72,.07);border-radius:0 0 24px 24px}.steps-grid li:nth-child(2){border-color:var(--red)}.steps-grid li:nth-child(3){border-color:var(--green)}.steps-grid>li>span{flex:0 0 58px;width:58px;height:58px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:1.5rem;font-weight:900}.steps-grid li:nth-child(2)>span{background:var(--red)}.steps-grid li:nth-child(3)>span{background:var(--green)}.steps-grid h3{margin:4px 0 8px;font-size:1.25rem}.steps-grid p{margin:0;color:var(--muted);line-height:1.55}.membership-documents{max-width:1280px;border-radius:38px;background:linear-gradient(135deg,var(--blue),#147ab9);color:#fff;display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center;padding:65px clamp(30px,6vw,80px)}.membership-documents h2{font-size:clamp(2.7rem,4vw,4.6rem);line-height:.98;margin:0 0 18px}.membership-documents p:not(.eyebrow){color:#e7f5fd;line-height:1.65}.document-links{display:grid;gap:14px}.document-links a{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:17px;background:#fff;color:var(--ink);padding:18px;border-radius:18px;transition:transform .22s ease,box-shadow .22s ease}.document-links a:hover{transform:translateX(6px);box-shadow:0 15px 30px rgba(0,0,0,.15)}.document-links a>span{width:52px;height:52px;border-radius:13px;background:#fff0f5;color:var(--red);display:grid;place-items:center;font-size:.74rem;font-weight:900}.document-links strong,.document-links small{display:block}.document-links small{color:var(--muted);margin-top:4px}.document-links b{color:var(--blue);font-size:1.3rem}.membership-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px}.membership-faq h2{font-size:clamp(3rem,5vw,5rem);line-height:.95;margin:0}.faq-intro{color:var(--muted);line-height:1.65}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid #dfe7ee;border-radius:18px;background:#fff;overflow:hidden}.faq-list summary{cursor:pointer;padding:22px 58px 22px 24px;font-size:1.08rem;font-weight:900;position:relative}.faq-list summary:after{content:"+";position:absolute;right:23px;top:17px;font-size:1.7rem;color:var(--blue)}.faq-list details[open] summary:after{content:"−"}.faq-list details p{padding:0 24px 23px;margin:0;color:var(--muted);line-height:1.65}.membership-final-cta{max-width:1280px;margin:0 auto 45px;padding:70px clamp(30px,7vw,90px);border-radius:42px;background:linear-gradient(135deg,var(--red),#a90035);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:50px;position:relative;overflow:hidden}.membership-final-cta:after{content:"♡";position:absolute;right:12%;bottom:-80px;font-size:13rem;color:rgba(255,255,255,.1)}.membership-final-cta>div,.membership-final-cta>a{position:relative;z-index:1}.membership-final-cta h2{font-size:clamp(2.7rem,5vw,5.2rem);line-height:.95;letter-spacing:-.05em;max-width:850px;margin:0 0 15px}.membership-final-cta p:not(.eyebrow){color:#ffe5ee;font-size:1.12rem}.membership-final-cta .btn{white-space:nowrap}
@media(max-width:1050px){.membership-hero{grid-template-columns:1fr;min-height:auto}.membership-hero-art{min-height:470px}.membership-quickbar{grid-template-columns:1fr}.membership-quickbar a:first-child{border-radius:20px 20px 0 0}.membership-quickbar a:last-child{border-radius:0 0 20px 20px}.benefit-grid{grid-template-columns:1fr 1fr}.membership-card-grid{grid-template-columns:1fr}.membership-card{min-height:auto}.steps-grid{grid-template-columns:1fr}.membership-documents,.membership-faq{grid-template-columns:1fr}.membership-final-cta{margin-left:20px;margin-right:20px;align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.membership-hero{padding:42px 22px 65px}.membership-hero .breadcrumbs{margin-bottom:35px}.membership-hero h1{font-size:clamp(3.5rem,16vw,5.5rem)}.membership-hero-actions{flex-direction:column}.membership-hero-actions .btn{width:100%}.membership-trust{display:grid;gap:10px}.membership-hero-art{min-height:350px;border-radius:35px}.membership-people span{width:55px;height:125px;font-size:2.5rem}.membership-people span:nth-child(2),.membership-people span:nth-child(5){height:100px}.membership-people span:nth-child(3){height:145px}.membership-people span:nth-child(4){height:115px}.membership-heart{font-size:4.5rem}.member-bubble{font-size:.8rem;min-width:100px;padding:9px 12px}.membership-quickbar{margin-top:-20px}.membership-section{padding:70px 20px}.membership-heading{align-items:flex-start;flex-direction:column;gap:18px}.benefit-grid{grid-template-columns:1fr}.membership-options{padding-left:20px;padding-right:20px}.membership-card{padding:27px}.membership-documents{border-radius:0;padding:55px 22px}.membership-faq{gap:35px}.membership-final-cta{border-radius:0;margin:0;padding:58px 23px}.membership-final-cta .btn{width:100%}}
@media(max-width:480px){.membership-hero-art{min-height:315px}.member-bubble-two{display:none}.member-bubble-three{right:3%;bottom:3%}.membership-quickbar{padding:0 12px}.membership-quickbar a{padding:19px 16px}.member-card-top{align-items:flex-start;flex-direction:column}.steps-grid li{padding:24px 20px}.steps-grid>li>span{flex-basis:46px;width:46px;height:46px}.document-links a{grid-template-columns:48px 1fr auto;padding:14px}.document-links a>span{width:44px;height:44px}}

/* Blog archive */
.blog-hero{margin:0 clamp(18px,3vw,44px);min-height:430px;border-radius:0 0 38px 38px;background:linear-gradient(125deg,#f5fbff 0%,#fff 54%,#f7fbf3 100%);display:grid;grid-template-columns:1.25fr .75fr;align-items:center;overflow:hidden;position:relative;padding:65px clamp(28px,6vw,90px)}.blog-hero:after{content:"";position:absolute;width:280px;height:280px;border:58px solid var(--green);border-radius:50%;right:-120px;bottom:-150px;opacity:.95}.blog-hero-copy{max-width:790px;position:relative;z-index:2}.breadcrumbs{display:flex;gap:10px;align-items:center;font-size:.9rem;color:var(--muted);margin-bottom:46px}.breadcrumbs a:hover{color:var(--blue)}.blog-hero h1{font-size:clamp(3.4rem,7vw,7rem);line-height:.92;letter-spacing:-.065em;margin:0 0 26px;color:var(--blue)}.blog-hero-copy>p:last-child{font-size:1.2rem;line-height:1.65;max-width:750px;color:var(--muted)}.blog-hero-art{height:290px;position:relative;z-index:1}.blog-hero-art span{position:absolute;border-radius:50%}.blog-hero-art span:nth-child(1){width:210px;height:210px;background:var(--red);right:18%;top:15px}.blog-hero-art span:nth-child(2){width:155px;height:155px;background:var(--blue);right:0;bottom:0}.blog-hero-art span:nth-child(3){width:110px;height:110px;background:var(--green);left:12%;bottom:28px}.blog-controls{padding:34px clamp(24px,6vw,90px) 12px}.blog-filter-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #dfe6ed;padding-bottom:25px}.filter-label{display:flex;align-items:baseline;gap:16px;white-space:nowrap}.filter-label strong{font-size:1.1rem}.filter-label span{color:var(--muted);font-size:.9rem}.filter-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.filter-button{border:1px solid #dce4ec;background:#fff;color:var(--ink);border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer;transition:.2s ease}.filter-button:hover,.filter-button:focus-visible{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}.filter-button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 8px 18px rgba(36,150,209,.22)}.blog-section{padding:36px clamp(24px,6vw,90px) 90px}.blog-card{border:1px solid #e2e8ee;border-radius:25px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(23,44,72,.08);transition:transform .25s ease,box-shadow .25s ease,opacity .2s ease}.blog-card:hover{transform:translateY(-5px);box-shadow:0 22px 45px rgba(23,44,72,.14)}.blog-card.is-hidden{display:none}.featured-post{display:grid;grid-template-columns:1.2fr 1fr;min-height:420px;margin-bottom:38px}.featured-image{min-height:420px;overflow:hidden}.featured-image img,.blog-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.featured-content{padding:clamp(32px,4vw,65px);display:flex;flex-direction:column;justify-content:center}.featured-content h2{font-size:clamp(2rem,3.5vw,4rem);line-height:1.03;letter-spacing:-.045em;margin:18px 0}.featured-content p,.blog-card-content p{line-height:1.65;color:var(--muted)}.post-meta{display:flex;align-items:center;gap:13px;flex-wrap:wrap;color:var(--muted);font-size:.87rem}.post-category{display:inline-block;border-radius:999px;padding:6px 10px;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:900;background:#eef4f8}.post-category.red{color:var(--red);background:#fff0f5}.post-category.blue{color:#0879b2;background:#eaf7fd}.post-category.green{color:#3e8d16;background:#f1f9eb}.post-category.cyan{color:#087e8b;background:#e9f9fa}.read-more{font-weight:900;color:var(--blue);display:inline-flex;align-items:center;gap:10px;margin-top:12px;align-self:flex-start}.read-more b{transition:transform .2s ease}.read-more:hover{color:var(--red)}.read-more:hover b{transform:translateX(5px)}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.blog-card-image{height:220px;display:block;overflow:hidden}.blog-card-content{padding:24px}.blog-card-content h2{font-size:1.35rem;line-height:1.22;margin:15px 0 8px}.empty-state{text-align:center;padding:50px;border:1px dashed #b9c7d4;border-radius:20px;color:var(--muted)}.pagination{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:52px}.pagination a,.pagination span{min-width:42px;height:42px;padding:0 12px;border-radius:999px;display:inline-grid;place-items:center;border:1px solid #dce4eb;font-weight:800}.pagination a:hover{border-color:var(--blue);color:var(--blue)}.pagination-current{background:var(--blue);border-color:var(--blue)!important;color:#fff}.pagination-next{min-width:auto!important}.blog-newsletter{background:var(--blue);color:#fff;margin:0 clamp(20px,4vw,60px) 70px;border-radius:34px;padding:50px clamp(28px,6vw,80px);display:flex;justify-content:space-between;align-items:center;gap:45px}.blog-newsletter h2{font-size:clamp(2.2rem,4vw,4.3rem);line-height:1;margin:0 0 15px}.blog-newsletter p{max-width:650px}.newsletter-form{display:flex;gap:10px;min-width:min(500px,42vw)}.newsletter-form input{flex:1;min-width:0;border:0;border-radius:999px;padding:0 22px;font:inherit}.newsletter-form input:focus{outline:3px solid rgba(255,255,255,.5)}
@media(max-width:1000px){.blog-hero{grid-template-columns:1fr .45fr}.blog-hero-art span:nth-child(1){width:155px;height:155px}.blog-hero-art span:nth-child(2){width:115px;height:115px}.blog-hero-art span:nth-child(3){width:80px;height:80px}.blog-filter-wrap{align-items:flex-start;flex-direction:column}.filter-buttons{justify-content:flex-start}.featured-post{grid-template-columns:1fr}.featured-image{min-height:320px;height:320px}.blog-grid{grid-template-columns:repeat(2,1fr)}.blog-newsletter{align-items:flex-start;flex-direction:column}.newsletter-form{width:100%;min-width:0}}
@media(max-width:700px){.blog-hero{margin:0;padding:45px 22px 80px;min-height:auto;grid-template-columns:1fr}.blog-hero-art{height:130px;margin-top:10px}.blog-hero-art span:nth-child(1){width:105px;height:105px;right:25%;top:0}.blog-hero-art span:nth-child(2){width:78px;height:78px;right:4%;bottom:0}.blog-hero-art span:nth-child(3){width:62px;height:62px;left:20%;bottom:0}.breadcrumbs{margin-bottom:35px}.blog-controls{padding:28px 20px 8px}.filter-buttons{gap:8px}.filter-button{font-size:.86rem;padding:9px 13px}.blog-section{padding:28px 20px 70px}.featured-post{margin-bottom:26px}.featured-image{height:235px;min-height:235px}.featured-content{padding:28px 23px}.blog-grid{grid-template-columns:1fr}.blog-card-image{height:210px}.pagination-next{font-size:.85rem}.blog-newsletter{margin:0;border-radius:0;padding:55px 22px}.newsletter-form{flex-direction:column}.newsletter-form input{height:52px}.newsletter-form .btn{width:100%}}

/* Events archive */
.events-hero{margin:0 clamp(18px,3vw,44px);min-height:470px;border-radius:0 0 38px 38px;background:linear-gradient(135deg,#f4faff 0%,#fff 52%,#f8fbf3 100%);display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:center;padding:65px clamp(28px,6vw,90px);overflow:hidden;position:relative}.events-hero:before{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:var(--green);right:-150px;top:-170px}.events-hero h1{font-size:clamp(3.5rem,7.3vw,7.5rem);line-height:.88;letter-spacing:-.07em;color:var(--blue);margin:0 0 28px}.events-hero>div:first-child{position:relative;z-index:2}.events-hero>div:first-child>p:last-child{max-width:780px;font-size:1.18rem;line-height:1.65;color:var(--muted)}.events-hero-badge{justify-self:center;width:min(330px,30vw);aspect-ratio:1;border-radius:50%;background:var(--red);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-7deg);box-shadow:0 28px 70px rgba(229,39,84,.25);position:relative;z-index:2}.events-hero-badge span{text-transform:uppercase;letter-spacing:.12em;font-size:.85rem;font-weight:900}.events-hero-badge strong{font-size:clamp(1.8rem,3vw,3.2rem);line-height:.95;max-width:230px;text-align:center;margin-top:8px}.events-hero-badge i{font-style:normal;font-size:3rem;margin-top:10px}.events-toolbar{padding:34px clamp(24px,6vw,90px) 12px}.events-toolbar-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid #dfe6ed;padding-bottom:25px}.events-count{display:flex;flex-direction:column;white-space:nowrap}.events-count strong{font-size:1.15rem}.events-count span{font-size:.88rem;color:var(--muted)}.event-filter{border:1px solid #dce4ec;background:#fff;color:var(--ink);border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer;transition:.2s ease}.event-filter:hover,.event-filter:focus-visible{border-color:var(--blue);color:var(--blue);transform:translateY(-2px)}.event-filter.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 8px 18px rgba(36,150,209,.22)}.events-list-section{padding:30px clamp(24px,6vw,90px) 90px}.events-month{display:grid;grid-template-columns:180px minmax(0,1fr);gap:40px;margin-bottom:54px}.events-month.is-empty{display:none}.month-heading{position:sticky;top:105px;align-self:start;border-top:4px solid var(--blue);padding-top:14px}.month-heading span{display:block;font-size:1.6rem;font-weight:900;letter-spacing:-.03em}.month-heading strong{font-size:1rem;color:var(--muted)}.events-stack{display:grid;gap:18px}.event-list-card{display:grid;grid-template-columns:95px minmax(0,1fr) auto;gap:26px;align-items:center;border:1px solid #e1e8ee;background:#fff;border-radius:24px;padding:22px 24px 22px 18px;box-shadow:0 10px 28px rgba(23,44,72,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;position:relative;overflow:hidden}.event-list-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:transparent;transition:.25s}.event-list-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(23,44,72,.13);border-color:#cddae4}.event-list-card:hover:after{background:var(--blue)}.event-list-card.highlight{background:linear-gradient(120deg,#fff9fb,#fff)}.event-list-card.highlight:after{background:var(--red)}.event-list-card.featured{background:linear-gradient(120deg,#f5fbff,#fff)}.event-list-card.featured:after{background:var(--blue)}.event-list-card.is-hidden{display:none}.event-date{width:78px;height:92px;border-radius:18px;background:#eff7fb;color:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.event-date span{text-transform:uppercase;font-size:.7rem;font-weight:900;letter-spacing:.08em}.event-date strong{font-size:2.4rem;letter-spacing:-.06em;margin:4px 0}.event-date small{font-size:.75rem;font-weight:900;text-transform:uppercase}.event-main h2{font-size:clamp(1.4rem,2.1vw,2.15rem);line-height:1.08;letter-spacing:-.035em;margin:9px 0}.event-main p{color:var(--muted);line-height:1.6;margin:0 0 12px;max-width:850px}.event-tags{display:flex;gap:7px;flex-wrap:wrap}.event-tag{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:900;border-radius:999px;padding:5px 9px;background:#edf3f7}.event-tag.blue{color:#0879b2;background:#eaf7fd}.event-tag.green{color:#3e8d16;background:#f1f9eb}.event-tag.red{color:var(--red);background:#fff0f5}.event-tag.cyan{color:#087e8b;background:#e9f9fa}.event-tag.yellow{color:#8b6900;background:#fff8d7}.event-facts{display:flex;gap:16px;flex-wrap:wrap;color:#516171;font-size:.88rem;font-weight:700}.event-link{white-space:nowrap;font-weight:900;color:var(--blue);display:flex;align-items:center;gap:10px;padding:13px 3px}.event-link b{transition:transform .2s ease}.event-link:hover{color:var(--red)}.event-link:hover b{transform:translateX(5px)}.events-empty{text-align:center;padding:55px;border:1px dashed #b9c7d4;border-radius:22px;color:var(--muted)}.events-cta{margin:0 clamp(20px,4vw,60px) 70px;border-radius:34px;background:var(--blue);color:#fff;padding:50px clamp(28px,6vw,80px);display:flex;align-items:center;justify-content:space-between;gap:40px}.events-cta h2{font-size:clamp(2.1rem,4vw,4.2rem);line-height:1;margin:0 0 14px}.events-cta p{max-width:720px;line-height:1.6}.events-cta .btn{white-space:nowrap}
@media(max-width:1050px){.events-hero{grid-template-columns:1fr .45fr}.events-hero-badge{width:230px}.events-toolbar-inner{align-items:flex-start;flex-direction:column}.filter-buttons{justify-content:flex-start}.events-month{grid-template-columns:135px 1fr;gap:25px}.event-list-card{grid-template-columns:80px 1fr}.event-link{grid-column:2;justify-self:start;padding-top:0}}
@media(max-width:720px){.events-hero{margin:0;padding:45px 22px 65px;min-height:auto;grid-template-columns:1fr}.events-hero-badge{width:190px;margin:5px auto 0}.events-toolbar{padding:28px 20px 8px}.events-list-section{padding:28px 20px 70px}.events-month{display:block;margin-bottom:46px}.month-heading{position:static;display:flex;gap:8px;align-items:baseline;margin-bottom:16px;border-top:0;border-left:4px solid var(--blue);padding:0 0 0 12px}.month-heading span{font-size:1.45rem}.event-list-card{grid-template-columns:68px 1fr;gap:16px;padding:18px 18px 18px 12px;border-radius:20px;align-items:start}.event-date{width:62px;height:78px;border-radius:14px}.event-date strong{font-size:2rem}.event-main h2{font-size:1.38rem}.event-main p{font-size:.94rem}.event-facts{gap:8px 12px;font-size:.8rem}.event-link{grid-column:2}.events-cta{margin:0;border-radius:0;padding:55px 22px;align-items:flex-start;flex-direction:column}.events-cta .btn{width:100%}}
@media(max-width:430px){.event-list-card{grid-template-columns:1fr}.event-date{width:100%;height:auto;min-height:55px;flex-direction:row;gap:7px;justify-content:flex-start;padding:10px 14px}.event-date strong{font-size:1.6rem}.event-link{grid-column:1}.event-main h2{font-size:1.28rem}}
/* BFS 2.0 release polish */
.bfs-icon{width:1.2em;height:1.2em;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bfs-social-links .bfs-icon{width:20px;height:20px}.bfs-social-links .bfs-icon path{fill:currentColor;stroke:none}
/* Full-bleed article card media */
.blog-card-image,.featured-image,.bfs-home-card__media,.bfs-project-card__media{width:100%;max-width:none;margin:0;display:block}.blog-card-image img,.featured-image img,.bfs-home-card__media img,.bfs-project-card__media img{width:100%!important;max-width:none!important;height:100%!important;display:block;object-fit:cover}
/* Robust navigation arrows */
.main-nav .menu-item-has-children>a{display:inline-flex!important;align-items:center;gap:10px;padding-right:0!important}.main-nav .menu-item-has-children>a:after{content:""!important;position:static!important;flex:0 0 auto;width:8px!important;height:8px!important;border:0!important;border-right:2px solid currentColor!important;border-bottom:2px solid currentColor!important;transform:translateY(-2px) rotate(45deg)!important;background:none!important}.main-nav .sub-menu .menu-item-has-children>a{display:flex!important;justify-content:space-between;width:100%}.main-nav .sub-menu .menu-item-has-children>a:after{transform:rotate(-45deg)!important}
/* Contact */
.bfs-contact-shell{max-width:1280px;margin:0 auto;padding:80px 28px 100px;display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:70px}.bfs-contact-info h2,.bfs-contact-form h2{font-size:clamp(2rem,4vw,3.8rem);line-height:1.02;margin:.25em 0 .7em}.bfs-contact-cards{display:grid;gap:14px;margin:32px 0}.bfs-contact-cards>a,.bfs-contact-cards>div{display:flex;gap:18px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;text-decoration:none;transition:.2s}.bfs-contact-cards>a:hover{transform:translateY(-3px);border-color:var(--blue);box-shadow:var(--shadow)}.bfs-contact-cards .bfs-icon{width:28px;height:28px;color:var(--blue)}.bfs-contact-cards span{display:grid;gap:3px}.bfs-contact-cards small{color:var(--muted)}.bfs-contact-form{background:var(--cream);padding:38px;border-radius:28px}.bfs-contact-form input,.bfs-contact-form textarea,.bfs-contact-form select{width:100%;border:1px solid #ccd8df;border-radius:12px;padding:13px 15px;background:#fff;font:inherit}.bfs-contact-form textarea{min-height:160px}.bfs-contact-form input[type=submit]{width:auto;background:var(--blue);color:#fff;border:0;border-radius:999px;padding:14px 24px;font-weight:800;cursor:pointer}.bfs-contact-hours{padding:18px 20px;border-left:4px solid var(--green);background:#f2f9ed}
/* Downloads */
.bfs-download-shell{max-width:1150px;margin:0 auto;padding:65px 28px 100px}.bfs-download-intro{font-size:1.1rem;color:var(--muted);max-width:760px;margin-bottom:30px}.bfs-download-content>.bfs-download-card,.bfs-download-group__body>.bfs-download-card,.bfs-download-group__body p>.bfs-download-card{margin:10px 0}.bfs-download-card{display:flex!important;align-items:center;gap:18px;padding:18px 20px;border:1px solid var(--line);border-radius:17px;background:#fff;text-decoration:none!important;color:var(--ink)!important;transition:.2s}.bfs-download-card:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:0 12px 28px rgba(13,46,66,.1)}.bfs-download-card__icon{width:46px;height:46px;border-radius:13px;background:#eaf7fd;color:var(--blue);display:grid;place-items:center;flex:0 0 auto}.bfs-download-card__text{display:grid;gap:4px;flex:1}.bfs-download-card__text small{color:var(--muted);text-transform:uppercase;font-size:.72rem;letter-spacing:.06em}.bfs-download-card__arrow{color:var(--blue)}.bfs-download-group{border:1px solid var(--line);border-radius:20px;background:#fff;margin:15px 0;overflow:hidden}.bfs-download-group summary{cursor:pointer;list-style:none;padding:20px 24px;font-size:1.2rem;font-weight:900;display:flex;justify-content:space-between}.bfs-download-group summary::-webkit-details-marker{display:none}.bfs-download-group[open] summary{border-bottom:1px solid var(--line);color:var(--blue)}.bfs-download-group__body{padding:14px 20px 20px}.bfs-download-content>[class*=shortcode],.bfs-download-content>p:has(.bfs-download-card){margin:0}
/* Supporters */
.supporters-hero{margin:0 clamp(18px,3vw,44px);border-radius:0 0 38px 38px;padding:75px clamp(28px,6vw,90px);background:linear-gradient(125deg,#f5fbff,#fff 55%,#f4faef);display:grid;grid-template-columns:1fr auto;align-items:center;overflow:hidden}.supporters-hero h1{font-size:clamp(3.4rem,7vw,7rem);line-height:.9;color:var(--blue);margin:.15em 0}.supporters-hero p{font-size:1.15rem;max-width:760px;color:var(--muted)}.supporters-hero__mark{width:240px;height:240px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-size:7rem;transform:rotate(-8deg)}.bfs-supporters-shell{max-width:1280px;margin:0 auto;padding:75px 28px 90px}.bfs-supporters-intro{max-width:800px;margin-bottom:40px}.bfs-supporter-grid{display:grid;grid-template-columns:repeat(var(--bfs-supporter-columns,4),minmax(0,1fr));gap:22px}.bfs-supporter-card{border:1px solid var(--line);border-radius:22px;background:#fff;text-align:center;overflow:hidden;transition:.2s}.bfs-supporter-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent}.bfs-supporter-card>a{display:block;padding:26px;text-decoration:none;color:inherit}.bfs-supporter-card__logo{height:130px;display:grid;place-items:center;margin-bottom:18px}.bfs-supporter-card__logo img{width:100%;height:100%;object-fit:contain}.bfs-supporter-card__logo span{width:90px;height:90px;border-radius:50%;background:var(--cream);display:grid;place-items:center;font-size:2.5rem;font-weight:900;color:var(--blue)}.bfs-supporter-card h3{margin:0;font-size:1.25rem}.bfs-supporter-card p{color:var(--muted);margin:.4em 0}.bfs-supporter-card__link{display:inline-flex;gap:8px;align-items:center;margin-top:12px;color:var(--blue);font-weight:800;font-size:.9rem}.bfs-supporters-cta{margin:0 clamp(20px,4vw,60px) 80px;background:var(--blue);color:#fff;border-radius:32px;padding:50px clamp(28px,6vw,75px);display:flex;align-items:center;justify-content:space-between;gap:40px}.bfs-supporters-cta h2{font-size:clamp(2.2rem,4vw,4.2rem);margin:.1em 0}.bfs-supporters-cta p{max-width:720px}
/* Single spacing and quiet comments divider */
.single-post-header,.single-post-hero__inner{padding-left:clamp(28px,7vw,110px)!important;padding-right:clamp(28px,7vw,110px)!important}.single-post-comments{margin-top:70px;padding-top:45px;border-top:1px solid var(--line);background:transparent!important;color:inherit!important;border-radius:0!important}.single-post-footer{background:transparent!important;border-top:1px solid var(--line);padding-top:28px}
/* Footer release polish */
.footer-grid{max-width:1440px!important;width:100%!important;margin:0 auto!important}.footer-navigation{min-width:0}.footer-navigation ul{display:flex!important;flex-wrap:wrap;gap:12px 26px;align-items:center}.footer-navigation li{margin:0}.footer-navigation a{margin:0!important;white-space:nowrap}
@media(max-width:1000px){.bfs-contact-shell{grid-template-columns:1fr}.bfs-supporter-grid{grid-template-columns:repeat(2,1fr)}.supporters-hero__mark{width:170px;height:170px;font-size:5rem}.bfs-supporters-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.bfs-contact-shell,.bfs-download-shell,.bfs-supporters-shell{padding-inline:20px}.bfs-supporter-grid{grid-template-columns:1fr}.supporters-hero{grid-template-columns:1fr;padding-block:55px}.supporters-hero__mark{display:none}.bfs-supporters-cta{margin-inline:16px}.bfs-download-card{align-items:flex-start}.footer-navigation ul{display:grid!important;grid-template-columns:1fr 1fr}}

/* Veranstaltungs-Plugin 2.2: kompakte Fakten, optionale Detailseiten und Kalenderexport */
.event-overview{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.45fr);gap:clamp(34px,5vw,72px);align-items:start;padding:clamp(48px,6vw,86px) clamp(22px,6vw,90px)}
.event-facts-card{position:sticky;top:112px;background:linear-gradient(145deg,#f4faff,#fff);border:1px solid #dbe8f0;border-radius:28px;padding:24px;box-shadow:0 18px 45px rgba(23,44,72,.09)}
.event-facts-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid #dce6ed}
.event-facts-card__head .eyebrow{margin:0 0 4px}.event-facts-card__head h2{margin:0;font-size:clamp(1.55rem,2.3vw,2.15rem);line-height:1}
.event-fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.event-fact{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:18px 0;border-bottom:1px solid #e2eaf0}.event-fact--location{grid-column:1/-1;border-bottom:0;padding-bottom:4px}
.event-fact__icon{width:32px;height:32px;border-radius:10px;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:.67rem;font-weight:900;letter-spacing:.02em}.event-fact small,.event-fact strong,.event-fact em{display:block}.event-fact small{text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;color:var(--muted);font-weight:900}.event-fact strong{font-size:1rem;line-height:1.35;margin-top:3px}.event-fact em{font-style:normal;color:var(--muted);font-size:.88rem;margin-top:3px}
.event-calendar-compact,.event-calendar-link,.bfs-next-event__calendar{display:inline-flex;align-items:center;justify-content:center;border:1px solid #bfd4e1;border-radius:999px;padding:9px 13px;color:var(--blue);background:#fff;font-size:.8rem;font-weight:900;white-space:nowrap;transition:.2s ease}.event-calendar-compact:hover,.event-calendar-link:hover,.bfs-next-event__calendar:hover{background:var(--blue);border-color:var(--blue);color:#fff;transform:translateY(-2px)}
.event-facts-card__registration{width:100%;margin-top:18px}.event-calendar-button{background:#fff;color:var(--blue)!important;border:1px solid rgba(255,255,255,.8)}.event-calendar-button:hover{background:var(--green);border-color:var(--green);color:#fff!important}
.event-list-actions{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.event-calendar-link{padding:8px 12px}.event-link--mobile{display:none}.bfs-next-event__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:14px}.bfs-next-event__actions .bfs-next-event__link{margin:0}.bfs-event-item__actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
html.bfs-dark-mode .event-facts-card{background:linear-gradient(145deg,#132536,#0e1d2a);border-color:#284052}html.bfs-dark-mode .event-facts-card__head,html.bfs-dark-mode .event-fact{border-color:#294152}html.bfs-dark-mode .event-calendar-compact,html.bfs-dark-mode .event-calendar-link,html.bfs-dark-mode .bfs-next-event__calendar{background:#102331;border-color:#39566a;color:#fff}
@media(max-width:980px){.event-overview{grid-template-columns:1fr}.event-facts-card{position:static}.event-list-actions{align-items:flex-start;grid-column:2}}
@media(max-width:720px){.event-facts-card{padding:20px;border-radius:22px}.event-facts-card__head{align-items:center}.event-fact-grid{grid-template-columns:1fr}.event-fact--location{grid-column:auto}.event-list-actions{grid-column:2;flex-direction:row;flex-wrap:wrap}.event-calendar-button{width:100%}}

/* 2.7: Meinungskachel, Galerie-Rand und Unterstützer */
.bfs-home-opinion{max-width:var(--container,1400px);margin:clamp(24px,4vw,52px) auto;padding:clamp(24px,4vw,48px);display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border-radius:30px;background:linear-gradient(125deg,#e40046 0%,#bd003d 100%);color:#fff;overflow:hidden;position:relative}
.bfs-home-opinion:after{content:"";position:absolute;right:-70px;bottom:-90px;width:220px;height:220px;border:34px solid rgba(255,255,255,.13);border-radius:50%}.bfs-home-opinion__icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#d60043;font-size:2.6rem;font-weight:800}.bfs-home-opinion .eyebrow,.bfs-home-opinion h2,.bfs-home-opinion p{color:#fff;margin-top:0}.bfs-home-opinion h2{font-size:clamp(1.55rem,3vw,2.6rem);margin-bottom:.35rem}.bfs-home-opinion p{margin-bottom:0}.bfs-home-opinion .btn{position:relative;z-index:1;background:#fff;color:#b60039}
.bfs-supporter-card h3{margin-bottom:0}.bfs-supporter-card>a{display:block;color:inherit;text-decoration:none}
.entry-content .wp-block-gallery,.entry-content .gallery,.page-content .wp-block-gallery,.page-content .gallery{margin-left:0!important;margin-right:0!important;max-width:100%!important;padding-left:0!important}
@media(max-width:760px){.bfs-home-opinion{grid-template-columns:1fr;text-align:left}.bfs-home-opinion__icon{width:58px;height:58px;font-size:2rem}}

.events-toolbar-inner--filter{display:block}.events-toolbar-inner--filter .blog-filter-disclosure{width:100%}.events-toolbar-inner--filter .blog-filter-disclosure .filter-buttons{justify-content:flex-start}.events-toolbar-inner--filter .filter-button{margin-top:14px}.events-toolbar-inner--filter .filter-button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 8px 18px rgba(36,150,209,.22)}

/* 3.6.6 – Mitgliedschaft: ruhigere Dokumentkarten */
.membership-documents{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(34px,5vw,70px)}
.membership-documents .document-copy h2{margin-bottom:16px}
.document-links{gap:16px}
.document-links a{grid-template-columns:58px minmax(0,1fr) 42px;gap:18px;padding:18px 20px;border:1px solid rgba(255,255,255,.72);border-radius:20px;box-shadow:0 10px 25px rgba(13,46,74,.08);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.document-links a:hover,.document-links a:focus-visible{transform:translateY(-3px);box-shadow:0 17px 32px rgba(13,46,74,.16);border-color:#fff}
.document-links .document-icon{width:52px;height:52px;border-radius:15px;background:#eaf6fc;color:var(--blue);display:grid;place-items:center;font-size:1.35rem;font-weight:900}
.document-links strong{font-size:1.05rem;line-height:1.25}
.document-links small{font-size:.9rem;line-height:1.4;margin-top:5px}
.document-links b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f3f7fa;color:var(--blue);transition:transform .22s ease,background-color .22s ease}
.document-links a:hover b,.document-links a:focus-visible b{transform:translateX(3px);background:#eaf6fc}
@media(max-width:760px){.membership-documents{grid-template-columns:1fr;gap:28px}.document-links a{grid-template-columns:50px minmax(0,1fr) 38px;padding:15px}.document-links .document-icon{width:46px;height:46px}.document-links b{width:38px;height:38px}}
@media(max-width:420px){.document-links a{grid-template-columns:46px minmax(0,1fr);gap:13px}.document-links b{display:none}.document-links .document-icon{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.document-links a,.document-links b{transition:none}.document-links a:hover,.document-links a:focus-visible{transform:none}.document-links a:hover b,.document-links a:focus-visible b{transform:none}}

/* 3.8.1 – Premium Sponsorwand: production rules live in frontend.css. */

/* 3.8.48 – Startseite: mobile News + Mitmachen-CTA */
@media (max-width: 820px) {
  .join-news .news-grid,
  .join-news .news-grid--count-1,
  .join-news .news-grid--count-2,
  .join-news .news-grid--count-3,
  .join-news .news-grid--count-4,
  .join-news .news-grid--count-5,
  .join-news .news-grid--count-6 {display:grid;grid-template-columns:minmax(0,1fr)!important;gap:24px}
  .join-news .home-news-card{width:100%;min-width:0}
  .join-news .home-news-card .card-media-link img,.join-news .home-news-card .placeholder{width:100%!important;height:clamp(190px,58vw,300px)!important;object-fit:cover}
  .join-panel>*{position:relative;z-index:2}
  .join-panel::after{z-index:0;width:360px;height:135px;right:-105px;bottom:-82px}
  .join-panel .btn.white{position:relative;z-index:3;margin-bottom:10px}
}
@media (max-width:560px){.join-news .news-panel{margin-left:16px;margin-right:16px}.join-panel{padding-bottom:74px}.join-panel::after{width:330px;height:120px;right:-115px;bottom:-72px}}

/* 3.8.49 – Startseite: mobiler News-Link + kompakter About-Block */
@media (max-width: 560px) {
  /* Der Link zum News-Blog bleibt auf Smartphones sichtbar und sitzt sauber unter der Überschrift. */
  .join-news .news-panel .section-head.compact {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 22px;
  }
  .join-news .news-panel .section-head.compact > a {
    display: inline-flex !important;
    align-items: center;
    margin: 0;
    font-size: .95rem;
    line-height: 1.3;
  }

  /* "Wir bringen Stadtfeld zusammen": mobile Abstände straffen. */
  .home-about {
    gap: 16px;
  }
  .home-about > div:first-child h2 {
    margin-bottom: 0;
  }
  .home-about > p {
    margin-top: 0;
    margin-bottom: 2px;
  }
  .home-about .about-actions {
    gap: 10px;
    margin-top: 0;
  }
}


/* WordPress adapter – preserves the original HTML prototype while integrating WP/SiteOrigin. */
body.admin-bar .site-header{top:32px}.site-header{padding:10px clamp(20px,5vw,72px)}.header-inner{display:contents}.custom-logo-link{display:block}.custom-logo{width:92px;height:72px;object-fit:contain}.main-nav .menu{display:flex;justify-content:center;gap:clamp(15px,2.2vw,34px);align-items:center;list-style:none;margin:0;padding:0}.main-nav .menu>li{position:relative}.main-nav .menu>li>a{display:block;padding:12px 0;border-bottom:3px solid transparent;font-weight:700}.main-nav .current-menu-item>a,.main-nav .current-menu-ancestor>a{color:var(--blue);border-color:var(--blue)}.main-nav .sub-menu{position:absolute;left:0;top:calc(100% + 8px);min-width:265px;background:#fff;padding:10px;margin:0;list-style:none;border:1px solid #e4eaf0;border-radius:18px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;z-index:150}.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu,.main-nav li.submenu-open>.sub-menu{opacity:1;visibility:visible;transform:none}.main-nav .sub-menu a{display:block;padding:11px 34px 11px 13px;border-radius:10px;white-space:normal;font-weight:700}.main-nav .sub-menu a:hover,.main-nav .sub-menu a:focus{background:var(--soft);color:var(--blue)}.main-nav .sub-menu .sub-menu{left:calc(100% + 8px);top:-10px}.main-nav .menu-item-has-children>a{position:relative;padding-right:18px}.main-nav .menu-item-has-children>a:after{content:"";position:absolute;right:2px;top:50%;width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-65%) rotate(45deg)}.main-nav .sub-menu .menu-item-has-children>a:after{right:13px;transform:translateY(-50%) rotate(-45deg)}.submenu-toggle{display:none}.bfs-social-links{display:flex;gap:8px}.bfs-social-links a{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--soft);color:var(--blue);transition:.2s}.bfs-social-links a:hover{background:var(--blue);color:#fff;transform:translateY(-2px)}.bfs-social-links svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9}.bfs-social-links svg path{fill:currentColor;stroke:none}.site-main>.panel-layout,.site-main>.entry-content>.panel-layout{margin:0}.panel-grid,.so-panel{margin-bottom:0!important}.panel-grid-cell{min-width:0}.textwidget>p:empty{display:none}.textwidget>p:first-child:last-child{margin:0}.hero .event-card .bfs-next-event-shell{display:contents}.hero .event-card .bfs-next-event{display:contents}.hero .event-card .bfs-next-event__date,.hero .event-card .bfs-next-event__image,.hero .event-card .bfs-next-event__kicker{display:none}.hero .event-card .bfs-next-event__content{display:block}.hero .event-card .bfs-next-event__content h2{color:var(--red);font-size:1.75rem;margin:.3rem 0}.hero .event-card .bfs-next-event__content h2 a{text-decoration:none}.hero .event-card .bfs-next-event__meta{margin:22px 0 8px;font-weight:800}.hero .event-card .bfs-next-event__meta span{display:inline}.hero .event-card .bfs-next-event__meta span+span:before{content:" · "}.hero .event-card .bfs-next-event__summary{line-height:1.55}.hero .event-card .bfs-next-event__link{color:var(--blue);font-weight:900}.wp-home-projects .quote-card .bfs-testimonials,.wp-home-projects .quote-card .bfs-testimonials__grid{display:contents}.wp-home-projects .quote-card .bfs-testimonial-card{display:contents}.wp-home-projects .quote-card .bfs-testimonial-card__mark{display:none}.wp-home-projects .quote-card blockquote{margin:18px 0}.wp-home-projects .quote-card figcaption{display:block}.wp-home-projects .quote-card .bfs-testimonial-card__stars{color:var(--red);margin-top:8px}.site-footer{background:#12243d;color:#fff;padding:50px clamp(24px,6vw,90px)}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:40px}.footer-brand img,.footer-brand .custom-logo{width:120px;height:auto;background:#fff;border-radius:50%;padding:6px}.site-footer h2{font-size:1rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer a{display:block;margin:.6rem 0;color:#dbe6f2}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;display:flex;justify-content:space-between}.bfs-social-links--footer{margin-top:16px}.bfs-social-links--footer a{display:grid;margin:0;background:rgba(255,255,255,.12);color:#fff}.entry-content img{height:auto}.page-content .panel-grid{margin-bottom:0}.page-content .panel-grid-cell{padding:0}.page-content .so-panel{margin-bottom:0}.page-content .textwidget{font:inherit}.wp-caption{max-width:100%}.alignwide{max-width:1280px;margin-inline:auto}.alignfull{width:100vw;margin-left:calc(50% - 50vw)}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
/* Original-style dynamic home blocks */
.home-project-card:nth-child(1) .icon{background:var(--green)}.home-project-card:nth-child(2) .icon{background:var(--blue)}.home-project-card:nth-child(3) .icon{background:var(--red)}.home-project-card:nth-child(1) a{color:var(--green)}.home-project-card:nth-child(2) a{color:var(--blue)}.home-project-card:nth-child(3) a{color:var(--red)}.home-project-card img{width:100%;height:135px;object-fit:cover}.home-project-card .placeholder{height:135px;background:linear-gradient(135deg,#dceff8,#eff8e8)}.join-news .news-panel{margin-right:clamp(24px,6vw,90px)}.home-news-card img{width:100%;height:125px;object-fit:cover;border-radius:16px}.home-news-card .placeholder{height:125px;border-radius:16px;background:linear-gradient(135deg,#e5f4fb,#f1f8ed)}.home-about{background:var(--soft)}
/* Blog archive adapters */
.blog-card h2 a,.featured-post h2 a{color:inherit}.post-category{display:inline-block}.blog-card-image img,.featured-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.blog-card:hover img{transform:scale(1.035)}.blog-card-placeholder{height:100%;background:linear-gradient(135deg,#e1f2fb,#f2f8ed)}.nav-links{display:flex;justify-content:center;gap:9px;margin-top:52px}.nav-links .page-numbers{min-width:42px;height:42px;padding:0 12px;border-radius:999px;display:inline-grid;place-items:center;border:1px solid #dce4eb;font-weight:800}.nav-links .current{background:var(--blue);color:#fff;border-color:var(--blue)}
/* Event archive WP adapter */
.event-main h2 a{color:inherit}.event-list-card time.event-date{text-decoration:none}.events-stack .event-list-card{margin:0}.events-month-title{scroll-margin-top:120px}
/* Single event content */
.event-page-content .panel-grid,.event-page-content .so-panel{margin-bottom:0!important}.event-page-content .textwidget{font:inherit}.event-hero-photo img{width:100%;height:100%;object-fit:cover}.event-intro-copy .prose{max-width:none}.event-content-free{max-width:980px;margin:auto;padding:70px clamp(24px,6vw,90px)}
/* Brevo in prototype form */
.newsletter-form .sib_signup_form,.newsletter-form form{display:flex;gap:10px;flex:1}.newsletter-form p{margin:0;display:contents}.newsletter-form input[type=email],.newsletter-form input[type=text]{flex:1;min-width:0;border:0;border-radius:999px;padding:0 22px;font:inherit}.newsletter-form input[type=submit],.newsletter-form button{border:0;background:#fff;color:var(--red);font-weight:900;border-radius:999px;padding:14px 22px;cursor:pointer}.newsletter-message{opacity:.9}
@media(max-width:1180px){.bfs-social-links--header{display:none}.main-nav .menu{gap:12px}.main-nav .menu>li>a{font-size:.9rem}}
@media(max-width:820px){body.admin-bar .site-header{top:46px}.header-inner{display:contents}.custom-logo{width:64px;height:60px}.main-nav{display:none}.main-nav.open,.main-nav.is-open{display:block}.main-nav .menu{display:block}.main-nav .menu>li>a{padding:12px 48px 12px 8px;border:0}.main-nav .sub-menu,.main-nav .sub-menu .sub-menu{position:static;display:none;min-width:0;margin-left:12px;padding:0 0 0 14px;border:0;border-left:2px solid #dfe6ed;border-radius:0;box-shadow:none;opacity:1;visibility:visible;transform:none}.main-nav li.submenu-open>.sub-menu{display:block}.main-nav .menu-item-has-children>a:after{display:none}.submenu-toggle{display:grid;position:absolute;right:4px;top:4px;width:40px;height:40px;border:0;border-radius:9px;background:var(--soft);place-items:center}.submenu-toggle:before{content:"";width:8px;height:8px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:translateY(-2px) rotate(45deg)}.submenu-toggle[aria-expanded=true]:before{transform:translateY(2px) rotate(225deg)}.main-nav li{position:relative}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{display:block}.join-news .news-panel{margin:0 clamp(24px,6vw,90px)}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-bottom{grid-column:auto}.newsletter-form .sib_signup_form,.newsletter-form form{flex-direction:column}.newsletter-form input[type=email],.newsletter-form input[type=text]{height:52px}}

/* BFS 1.5: Header, Untermenüs, Filter und Footer */
.site-header{height:auto;min-height:92px;display:block}
.header-inner{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:clamp(14px,1.7vw,28px)}
.main-nav .menu{gap:clamp(12px,1.45vw,25px)}
.main-nav .menu-item-has-children>a{padding-right:28px}
.main-nav .menu-item-has-children>a:after{right:7px}
.main-nav .sub-menu .menu-item-has-children>a{padding-right:42px}
.main-nav .sub-menu .menu-item-has-children>a:after{right:16px}
.header-cta{white-space:nowrap}

.blog-filter-disclosure{max-width:100%;border:1px solid #dfe6ed;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(23,44,72,.05)}
.blog-filter-disclosure summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 20px;font-weight:900;color:var(--ink)}
.blog-filter-disclosure summary::-webkit-details-marker{display:none}
.blog-filter-disclosure summary span{display:flex;align-items:baseline;gap:14px}
.blog-filter-disclosure summary small{font-weight:600;color:var(--muted)}
.blog-filter-disclosure summary>b{font-size:1.35rem;line-height:1;transition:transform .2s ease}
.blog-filter-disclosure[open] summary>b{transform:rotate(180deg)}
.blog-filter-disclosure .filter-buttons{justify-content:flex-start;padding:4px 20px 20px;border-top:1px solid #edf1f4}
.blog-filter-disclosure .filter-button{margin-top:14px;padding:8px 13px;font-size:.88rem}
.category-posts-section{padding-top:50px}
.category-pagination .page-numbers{list-style:none;display:flex;gap:9px;margin:0;padding:0}

.footer-grid{width:100%;max-width:1480px;margin:0 auto;grid-template-columns:minmax(240px,1.35fr) repeat(3,minmax(180px,1fr));column-gap:clamp(40px,7vw,120px);row-gap:42px;align-items:start}
.footer-grid>div{min-width:0}
.site-footer .footer-widget,.site-footer .menu{max-width:none}

@media(max-width:1180px){.header-inner{grid-template-columns:auto minmax(0,1fr) auto}.bfs-social-links--header{display:none}.main-nav .menu-item-has-children>a{padding-right:25px}}
@media(max-width:820px){.header-inner{display:grid;grid-template-columns:auto 1fr auto auto}.menu-toggle{grid-column:4}.main-nav{grid-column:1/-1}.header-cta{grid-column:3;grid-row:1;padding:11px 16px;font-size:.88rem}.main-nav .menu-item-has-children>a{padding-right:48px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:50px}}
@media(max-width:600px){.header-inner{grid-template-columns:auto 1fr auto}.header-cta{display:none}.menu-toggle{grid-column:3}.blog-filter-disclosure summary span{display:block}.blog-filter-disclosure summary small{display:block;margin-top:3px}.footer-grid{grid-template-columns:1fr}}


/* BFS 1.6: robust navigation arrows, full-width footer and optional dark mode */
@media(min-width:821px){
  .main-nav .menu-item-has-children>a,
  .main-nav .sub-menu .menu-item-has-children>a{display:inline-flex;align-items:center;gap:.75rem;padding-right:0}
  .main-nav .menu-item-has-children>a:after,
  .main-nav .sub-menu .menu-item-has-children>a:after{position:static;flex:0 0 auto;margin:0;transform:rotate(45deg);width:7px;height:7px}
  .main-nav .sub-menu .menu-item-has-children>a{display:flex;justify-content:space-between;width:100%;padding:11px 13px}
  .main-nav .sub-menu .menu-item-has-children>a:after{transform:rotate(-45deg);margin-right:3px}
}
.site-footer{width:100%;padding:54px clamp(24px,5vw,80px)}
.footer-grid{width:100%;max-width:none;margin:0;display:grid;grid-template-columns:minmax(260px,1.15fr) minmax(220px,.85fr) minmax(260px,1fr);gap:clamp(42px,7vw,130px);align-items:start}
.footer-intro,.footer-contact-column,.footer-navigation{min-width:0}
.footer-navigation .menu{columns:2;column-gap:38px}
.footer-navigation .menu li{break-inside:avoid}
.footer-bottom{grid-column:1/-1;width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-bottom-actions{display:flex;align-items:center;gap:22px}
.dark-mode-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:9px 14px;font:inherit;font-weight:700;cursor:pointer;transition:.2s}
.dark-mode-toggle:hover,.dark-mode-toggle:focus-visible{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.category-archive-hero .lead p{margin:0}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-navigation{grid-column:1/-1}.footer-navigation .menu{columns:3}.footer-bottom{grid-column:1/-1}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-navigation{grid-column:auto}.footer-navigation .menu{columns:1}.footer-bottom{grid-column:auto;align-items:flex-start;flex-direction:column}.footer-bottom-actions{width:100%;justify-content:space-between}}

html.bfs-dark-mode{color-scheme:dark;--ink:#edf4fb;--muted:#b5c1cf;--soft:#18283b;--shadow:0 18px 45px rgba(0,0,0,.32)}
html.bfs-dark-mode body{background:#0c1827;color:var(--ink)}
html.bfs-dark-mode .site-header{background:rgba(12,24,39,.96);border-color:#26384d}
html.bfs-dark-mode .main-nav .sub-menu,html.bfs-dark-mode .blog-card,html.bfs-dark-mode .project-card,html.bfs-dark-mode .quote-card,html.bfs-dark-mode .stats-card,html.bfs-dark-mode .news-panel,html.bfs-dark-mode .blog-filter-disclosure,html.bfs-dark-mode .hero-copy,html.bfs-dark-mode .event-card{background:#142438;border-color:#2b3d52;color:var(--ink)}
html.bfs-dark-mode .hero{background:#0c1827}
html.bfs-dark-mode .btn.outline{background:#142438}
html.bfs-dark-mode .about,html.bfs-dark-mode .home-about{background:#111f31}
html.bfs-dark-mode .blog-section,html.bfs-dark-mode .section{color:var(--ink)}
html.bfs-dark-mode .blog-card p,html.bfs-dark-mode .project-card p,html.bfs-dark-mode .about>p{color:var(--muted)}
html.bfs-dark-mode .main-nav .sub-menu a:hover,html.bfs-dark-mode .main-nav .sub-menu a:focus{background:#1c3048}
html.bfs-dark-mode .filter-button{background:#142438;border-color:#33465d;color:var(--ink)}
html.bfs-dark-mode .blog-filter-disclosure .filter-buttons{border-color:#2b3d52}
html.bfs-dark-mode input,html.bfs-dark-mode textarea,html.bfs-dark-mode select{background:#142438;color:var(--ink);border-color:#33465d}
.site-footer{display:block}

/* BFS 1.7 – navigation, dark logo, article template, footer refinements */
@media (min-width:821px){
  .main-nav .menu-item-has-children>a,
  .main-nav .sub-menu .menu-item-has-children>a{
    display:inline-flex;
    align-items:center;
    gap:.65rem;
    padding-right:0;
  }
  .main-nav .menu-item-has-children>a::after,
  .main-nav .sub-menu .menu-item-has-children>a::after{
    content:"";
    position:static;
    flex:0 0 11px;
    width:11px;
    height:7px;
    margin:0;
    border:0;
    background:currentColor;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
    transform:none;
  }
  .main-nav .sub-menu .menu-item-has-children>a{display:flex;justify-content:space-between;width:100%;padding:11px 13px}
  .main-nav .sub-menu .menu-item-has-children>a::after{transform:rotate(-90deg)}
}

html.bfs-dark-mode .custom-logo,
html.bfs-dark-mode .footer-brand img,
html.bfs-dark-mode .site-branding .brand img{
  filter:grayscale(1) brightness(0) invert(1);
  background:transparent;
}
html.bfs-dark-mode .custom-logo-link,
html.bfs-dark-mode .footer-brand{background:transparent}

/* Single post */
.single-post-page{background:#fff}
.single-post-hero{position:relative;overflow:hidden}
.single-post-hero__inner{position:relative;z-index:3;padding-top:clamp(54px,8vw,110px);padding-bottom:clamp(54px,8vw,110px)}
.single-post-hero__copy{max-width:980px}
.single-post-hero h1{font-size:clamp(3rem,7vw,7rem);line-height:.94;letter-spacing:-.06em;margin:18px 0 24px}
.single-post-meta{display:flex;flex-wrap:wrap;gap:9px;color:var(--muted);font-weight:800;font-size:.92rem}
.single-post-meta a{color:inherit}
.single-post-lead{font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.65;max-width:820px;margin:0}
.single-post-hero--image{min-height:650px;display:flex;align-items:flex-end;color:#fff}
.single-post-hero__media,.single-post-hero__overlay{position:absolute;inset:0}
.single-post-hero__media img{width:100%;height:100%;object-fit:cover}
.single-post-hero__overlay{background:linear-gradient(180deg,rgba(7,19,34,.18),rgba(7,19,34,.88))}
.single-post-hero--image .breadcrumbs,.single-post-hero--image .breadcrumbs a,.single-post-hero--image .single-post-meta,.single-post-hero--image .single-post-meta a{color:#fff}
.single-post-hero--plain{background:linear-gradient(135deg,#f2f9fd,#fff 55%,#f7faef);min-height:520px;display:flex;align-items:center}
.single-post-hero--plain h1{color:var(--blue)}
.single-post-hero__decor span{position:absolute;border-radius:50%}
.single-post-hero__decor span:nth-child(1){width:270px;height:270px;background:var(--green);right:-90px;top:-110px}
.single-post-hero__decor span:nth-child(2){width:110px;height:110px;background:var(--red);right:15%;bottom:8%}
.single-post-hero__decor span:nth-child(3){width:70px;height:70px;border:16px solid var(--blue);left:6%;bottom:-15px}
.single-post-body{max-width:1000px;padding-top:clamp(55px,8vw,100px);padding-bottom:90px}
.single-post-content{font-size:1.12rem;line-height:1.8}
.single-post-content>*{max-width:780px;margin-left:auto;margin-right:auto}
.single-post-content>.alignwide{max-width:1100px}
.single-post-content>.alignfull{max-width:none}
.single-post-content h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;margin-top:2.1em}
.single-post-content h3{font-size:clamp(1.45rem,3vw,2.1rem);margin-top:1.8em}
.single-post-content blockquote{border-left:5px solid var(--red);padding:20px 28px;background:var(--soft);border-radius:0 20px 20px 0;font-size:1.25rem}
.single-post-footer{max-width:780px;margin:65px auto 0;border-top:1px solid #dfe6ed;padding-top:28px}
.single-post-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:30px}.single-post-tags span{font-weight:900;margin-right:6px}.single-post-tags a{padding:7px 11px;border-radius:999px;background:var(--soft);font-weight:700}
.post-navigation .nav-links{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:0}.post-navigation a{display:block;padding:22px;border:1px solid #dfe6ed;border-radius:20px;height:100%}.post-navigation .nav-next{text-align:right}.post-nav-label{display:block;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.post-navigation strong{font-size:1.05rem}
.single-post-comments{max-width:780px;margin:65px auto 0;padding-top:55px;border-top:1px solid #dfe6ed}.comments-title,.comment-reply-title{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:25px}.comment-list{list-style:none;padding:0;display:grid;gap:18px}.comment-body{padding:22px;border:1px solid #dfe6ed;border-radius:20px}.comment-meta{margin-bottom:12px}.comment-author img{border-radius:50%;vertical-align:middle;margin-right:10px}.comment-form{display:grid;gap:16px}.comment-form p{margin:0}.comment-form label{display:block;font-weight:800;margin-bottom:6px}.comment-form input:not([type=submit]),.comment-form textarea{width:100%;border:1px solid #cfd9e3;border-radius:14px;padding:13px 15px;font:inherit}.comment-form-cookies-consent{display:flex;gap:10px;align-items:flex-start}.comment-form-cookies-consent input{width:auto!important;margin-top:5px}.comment-form .submit{border:0;cursor:pointer}
@media(max-width:700px){.single-post-hero--image{min-height:560px}.single-post-hero__inner{padding-inline:22px}.single-post-body{padding-inline:22px}.post-navigation .nav-links{grid-template-columns:1fr}.post-navigation .nav-next{text-align:left}}

/* Membership template exact layout protection against SiteOrigin/page content wrappers */
.membership-template>.entry-content{display:none}
.membership-template .membership-quickbar{max-width:1280px;margin:-34px auto 0;position:relative;z-index:5}
html.bfs-dark-mode .membership-hero{background:linear-gradient(135deg,#102034 0%,#102034 63%,#14283d 100%)}
html.bfs-dark-mode .membership-benefits article,
html.bfs-dark-mode .membership-card,
html.bfs-dark-mode .steps-grid li,
html.bfs-dark-mode .faq-list details,
html.bfs-dark-mode .membership-note{background:#142438;border-color:#2b3d52}
html.bfs-dark-mode .membership-options{background:#101f31}

/* Footer one-line navigation and matching controls */
.footer-grid{grid-template-columns:minmax(230px,.95fr) minmax(220px,.75fr) minmax(0,2fr)}
.footer-navigation{align-self:center}
.footer-navigation .menu{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 28px;columns:auto!important;margin:0;padding:0;list-style:none}
.footer-navigation .menu li{margin:0}
.footer-navigation .menu a{margin:0;white-space:nowrap}
.footer-bottom-actions{display:flex;align-items:center;gap:10px}
.footer-action{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff!important;border-radius:999px;padding:9px 14px;font:inherit;font-weight:700;cursor:pointer;transition:.2s;margin:0!important;text-decoration:none}
.footer-action:hover,.footer-action:focus-visible{background:rgba(255,255,255,.18);transform:translateY(-1px)}
.back-to-top-icon{font-size:1.15rem;line-height:1}
@media(max-width:1050px){.footer-grid{grid-template-columns:1fr 1fr}.footer-navigation{grid-column:1/-1}.footer-navigation .menu{justify-content:flex-start}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}.footer-navigation{grid-column:auto}.footer-navigation .menu{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-bottom-actions{width:100%;flex-wrap:wrap}}

html.bfs-dark-mode .single-post-page{background:#0c1827}
html.bfs-dark-mode .single-post-hero--plain{background:linear-gradient(135deg,#102034,#0c1827 55%,#102315)}
html.bfs-dark-mode .single-post-footer,html.bfs-dark-mode .single-post-comments{border-color:#2b3d52}
html.bfs-dark-mode .post-navigation a,html.bfs-dark-mode .comment-body{border-color:#2b3d52;background:#142438}


/* BFS 1.8 */
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}h1,h2,h3,h4,h5,h6{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.card-media-link{display:block;overflow:hidden}.card-media-link img{transition:transform .35s ease}.card-media-link:hover img,.card-media-link:focus-visible img{transform:scale(1.035)}
.join-panel h2{font-size:clamp(2.2rem,3.55vw,4.35rem)}
.bfs-focus-visible :focus-visible{outline:3px solid #ffbf47!important;outline-offset:4px!important;border-radius:4px}
@media (prefers-reduced-motion:reduce){.bfs-respect-reduced-motion *,.bfs-respect-reduced-motion *::before,.bfs-respect-reduced-motion *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.single-post-header{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr);gap:clamp(40px,7vw,100px);align-items:center;padding-top:clamp(70px,9vw,130px);padding-bottom:clamp(45px,7vw,90px);position:relative}.single-post-header:before{content:"";position:absolute;width:190px;height:190px;border:42px solid var(--green);border-radius:50%;left:-145px;top:25px;opacity:.75}.single-post-header__copy{position:relative;z-index:1}.single-post-header h1{font-size:clamp(3rem,6.4vw,6.6rem);line-height:.94;letter-spacing:-.065em;margin:20px 0 24px;color:var(--blue)}.single-post-header__image{margin:0;border-radius:34px 34px 140px 34px;overflow:hidden;box-shadow:var(--shadow);min-height:380px}.single-post-header__image img{width:100%;height:100%;min-height:380px;object-fit:cover}.single-post-body{padding-top:35px}.single-post-content>p:first-child{font-size:1.22rem;line-height:1.75}.single-post-content figure{margin-top:2.5rem;margin-bottom:2.5rem}.single-post-content img{border-radius:20px}.single-post-footer{margin-top:55px}.post-navigation{display:none}
html.bfs-dark-mode .single-post-header h1{color:#72c8f0}html.bfs-dark-mode .single-post-header__image{box-shadow:0 18px 45px rgba(0,0,0,.4)}
.cookie-notice{position:fixed;inset:0;z-index:99999;background:rgba(7,18,31,.72);display:grid;place-items:end center;padding:20px;backdrop-filter:blur(5px)}.cookie-notice[hidden]{display:none}.cookie-notice__inner{width:min(1120px,100%);background:#fff;color:var(--ink);border-radius:26px;box-shadow:0 24px 80px rgba(0,0,0,.3);padding:clamp(24px,4vw,44px);display:grid;grid-template-columns:1fr auto;gap:35px;align-items:end}.cookie-notice h2{font-size:clamp(1.7rem,3vw,2.6rem);margin:.2rem 0 .7rem}.cookie-notice details{margin-top:14px}.cookie-notice summary{cursor:pointer;font-weight:800}.cookie-notice__actions{display:grid;gap:10px;min-width:220px}.cookie-notice__actions a{text-align:center;text-decoration:underline}.cookie-notice .btn{width:100%}html.bfs-dark-mode .cookie-notice__inner{background:#142438;color:var(--ink)}
.site-footer{position:relative;overflow:hidden;background:linear-gradient(135deg,#10243e 0%,#173553 58%,#11283f 100%)}.site-footer:before{content:"";position:absolute;width:390px;height:390px;border:80px solid rgba(98,179,47,.22);border-radius:50%;right:-150px;top:-210px}.site-footer:after{content:"";position:absolute;width:170px;height:170px;background:rgba(214,0,67,.2);border-radius:50%;left:-70px;bottom:-90px}.footer-grid{position:relative;z-index:1;max-width:1560px;margin:0 auto;width:100%;grid-template-columns:minmax(250px,1fr) minmax(210px,.72fr) minmax(420px,1.65fr);gap:clamp(34px,5vw,85px)}.footer-intro{max-width:420px}.footer-claim{font-size:1.22rem;line-height:1.5;max-width:330px}.footer-contact-column{padding-left:clamp(0px,2vw,30px);border-left:1px solid rgba(255,255,255,.18)}.footer-navigation{padding:22px 0}.footer-navigation .menu{justify-content:flex-end;gap:14px 30px}.footer-navigation a{font-weight:800;padding:8px 0;border-bottom:2px solid transparent}.footer-navigation a:hover,.footer-navigation a:focus-visible{border-color:var(--green);color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding-top:24px;margin-top:8px}
@media(max-width:900px){.single-post-header{grid-template-columns:1fr}.single-post-header__image{order:-1;min-height:300px;border-radius:26px 26px 90px 26px}.single-post-header__image img{min-height:300px}.cookie-notice__inner{grid-template-columns:1fr}.cookie-notice__actions{grid-template-columns:1fr 1fr;min-width:0}.cookie-notice__actions a{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-navigation{grid-column:1/-1}.footer-navigation .menu{justify-content:flex-start}}
@media(max-width:620px){.single-post-header{padding-inline:22px}.single-post-header h1{font-size:clamp(2.5rem,13vw,4.1rem)}.cookie-notice{padding:10px}.cookie-notice__actions{grid-template-columns:1fr}.cookie-notice__actions a{grid-column:auto}.footer-grid{grid-template-columns:1fr}.footer-contact-column{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.18);padding-top:25px}.footer-navigation{grid-column:auto}.footer-navigation .menu{align-items:flex-start}}


/* 1.9.0 – lokal gehostete Typografie */
:root{
  --font-heading:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --font-body:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
body{font-family:var(--font-body)}
h1,h2,h3,h4,h5,h6,.site-header,.btn,.eyebrow,.badge{font-family:var(--font-heading)}

/* 1.9.0 – moderne WordPress-Galerien, Classic Gallery und Block Gallery */
.entry-content .gallery,
.entry-content .wp-block-gallery,
.entry-content .blocks-gallery-grid,
.single-article__content .gallery,
.single-article__content .wp-block-gallery,
.single-post-content .gallery,
.single-post-content .wp-block-gallery{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(10px,1.6vw,20px)!important;
  margin:clamp(32px,5vw,58px) 0!important;
  padding:0!important;
  list-style:none!important;
}
.entry-content .gallery-columns-1,.single-post-content .gallery-columns-1{grid-template-columns:1fr}
.entry-content .gallery-columns-2,.single-post-content .gallery-columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.entry-content .gallery-columns-4,.single-post-content .gallery-columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.entry-content .gallery-columns-5,.entry-content .gallery-columns-6,.entry-content .gallery-columns-7,.entry-content .gallery-columns-8,.entry-content .gallery-columns-9,
.single-post-content .gallery-columns-5,.single-post-content .gallery-columns-6,.single-post-content .gallery-columns-7,.single-post-content .gallery-columns-8,.single-post-content .gallery-columns-9{grid-template-columns:repeat(4,minmax(0,1fr))}
.entry-content .gallery-item,
.entry-content .wp-block-gallery .wp-block-image,
.entry-content .blocks-gallery-item,
.single-article__content .gallery-item,
.single-article__content .wp-block-gallery .wp-block-image,
.single-post-content .gallery-item,
.single-post-content .wp-block-gallery .wp-block-image{
  position:relative;
  width:auto!important;
  margin:0!important;
  overflow:hidden;
  border-radius:clamp(14px,2vw,24px);
  background:var(--soft);
  aspect-ratio:4/3;
  box-shadow:0 10px 28px rgba(13,46,66,.10);
}
.entry-content .gallery-item a,
.entry-content .wp-block-gallery .wp-block-image a,
.entry-content .blocks-gallery-item a,
.single-article__content .gallery-item a,
.single-article__content .wp-block-gallery .wp-block-image a,
.single-post-content .gallery-item a,
.single-post-content .wp-block-gallery .wp-block-image a{display:block;width:100%;height:100%;cursor:zoom-in}
.entry-content .gallery img,
.entry-content .wp-block-gallery img,
.entry-content .blocks-gallery-grid img,
.single-article__content .gallery img,
.single-article__content .wp-block-gallery img,
.single-post-content .gallery img,
.single-post-content .wp-block-gallery img{
  width:100%!important;height:100%!important;object-fit:cover!important;border:0!important;
  transition:transform .45s ease,filter .3s ease;
}
.entry-content .gallery-item:hover img,
.entry-content .wp-block-gallery .wp-block-image:hover img,
.entry-content .blocks-gallery-item:hover img,
.single-article__content .gallery-item:hover img,
.single-article__content .wp-block-gallery .wp-block-image:hover img,
.single-post-content .gallery-item:hover img,
.single-post-content .wp-block-gallery .wp-block-image:hover img{transform:scale(1.045);filter:saturate(1.05)}
.entry-content .gallery-icon,.entry-content .gallery-icon a,.single-post-content .gallery-icon,.single-post-content .gallery-icon a{height:100%}
.entry-content .gallery-caption,
.entry-content .wp-element-caption,
.entry-content .blocks-gallery-item__caption,
.single-article__content .gallery-caption,
.single-article__content .wp-element-caption,
.single-post-content .gallery-caption,
.single-post-content .wp-element-caption{
  position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0!important;padding:34px 14px 12px!important;
  color:#fff!important;font-size:.82rem!important;line-height:1.35;text-align:left!important;
  background:linear-gradient(transparent,rgba(5,24,38,.86));
}
.entry-content .wp-block-gallery.has-nested-images figure.wp-block-image figcaption,
.single-post-content .wp-block-gallery.has-nested-images figure.wp-block-image figcaption{max-height:none;overflow:visible}
.entry-content .wp-block-gallery.is-cropped figure.wp-block-image:not(#individual-image),
.single-post-content .wp-block-gallery.is-cropped figure.wp-block-image:not(#individual-image){width:auto;flex-grow:0}
.bfs-lightbox[hidden]{display:none}.bfs-lightbox{position:fixed;inset:0;z-index:99999;display:grid;grid-template-rows:auto 1fr auto;background:rgba(5,18,31,.94);color:#fff;padding:clamp(12px,2vw,26px);backdrop-filter:blur(8px)}
.bfs-lightbox__top{display:flex;justify-content:flex-end;gap:10px}.bfs-lightbox button{width:46px;height:46px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:1.35rem;cursor:pointer;transition:background .2s,transform .2s}.bfs-lightbox button:hover,.bfs-lightbox button:focus-visible{background:var(--blue);transform:translateY(-2px)}
.bfs-lightbox__stage{position:relative;min-height:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(8px,2vw,24px)}.bfs-lightbox__figure{margin:0;min-width:0;min-height:0;display:grid;place-items:center;align-content:center}.bfs-lightbox__image{max-width:100%;max-height:calc(100vh - 170px);width:auto;height:auto;object-fit:contain;border-radius:16px;box-shadow:0 28px 80px rgba(0,0,0,.45)}.bfs-lightbox__caption{max-width:900px;margin:12px auto 0;text-align:center;color:rgba(255,255,255,.82);font-size:.92rem}.bfs-lightbox__counter{text-align:center;color:rgba(255,255,255,.72);font-size:.85rem;padding-top:8px}body.bfs-lightbox-open{overflow:hidden}.bfs-dark-mode .entry-content .gallery-item,.bfs-dark-mode .entry-content .wp-block-gallery .wp-block-image,.bfs-dark-mode .single-post-content .gallery-item,.bfs-dark-mode .single-post-content .wp-block-gallery .wp-block-image{background:#1a3042;box-shadow:none}
@media(max-width:760px){.entry-content .gallery,.entry-content .wp-block-gallery,.entry-content .blocks-gallery-grid,.single-article__content .gallery,.single-article__content .wp-block-gallery,.single-post-content .gallery,.single-post-content .wp-block-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-content .gallery-columns-1,.single-post-content .gallery-columns-1{grid-template-columns:1fr}.bfs-lightbox__stage{grid-template-columns:1fr}.bfs-lightbox__prev,.bfs-lightbox__next{position:absolute;top:50%;z-index:2}.bfs-lightbox__prev{left:0}.bfs-lightbox__next{right:0}}
@media(max-width:480px){.entry-content .gallery,.entry-content .wp-block-gallery,.entry-content .blocks-gallery-grid,.single-article__content .gallery,.single-article__content .wp-block-gallery,.single-post-content .gallery,.single-post-content .wp-block-gallery{gap:8px!important}.entry-content .gallery-item,.entry-content .wp-block-gallery .wp-block-image,.entry-content .blocks-gallery-item,.single-post-content .gallery-item,.single-post-content .wp-block-gallery .wp-block-image{border-radius:12px}}
/* Version 2.0 fixes override older navigation rules. */
.main-nav .menu>li.menu-item-has-children>a{display:inline-flex!important;align-items:center!important;gap:11px!important;padding-right:0!important}.main-nav .menu>li.menu-item-has-children>a:after{position:static!important;display:block!important;content:""!important;width:8px!important;height:8px!important;border:0!important;border-right:2px solid currentColor!important;border-bottom:2px solid currentColor!important;transform:translateY(-2px) rotate(45deg)!important;opacity:1!important}.main-nav .sub-menu li.menu-item-has-children>a:after{transform:rotate(-45deg)!important}

/* BFS 2.1 – launch refinements */
/* Wider navigation with clearly visible submenu indicators. */
.header-inner{max-width:1760px!important;width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(120px,auto) minmax(0,1fr) auto auto;gap:clamp(14px,1.6vw,28px)!important}
.main-nav{min-width:0;width:100%;justify-content:center}
.main-nav>.menu{display:flex;align-items:center;justify-content:center;gap:clamp(15px,1.55vw,28px);min-width:0}
.main-nav>.menu>li>a{white-space:nowrap;font-size:clamp(.85rem,.9vw,1rem)}
@media(min-width:821px){
 .main-nav .menu>li.menu-item-has-children>a{display:inline-flex!important;align-items:center!important;gap:12px!important;padding-right:3px!important}
 .main-nav .menu>li.menu-item-has-children>a::after{content:""!important;display:inline-block!important;flex:0 0 10px!important;width:10px!important;height:10px!important;border-right:3px solid currentColor!important;border-bottom:3px solid currentColor!important;transform:translateY(-3px) rotate(45deg)!important;opacity:1!important;position:static!important;background:none!important}
 .main-nav .sub-menu li.menu-item-has-children>a::after{transform:rotate(-45deg)!important;width:9px!important;height:9px!important}
}
@media(max-width:1280px) and (min-width:821px){.header-inner{grid-template-columns:92px minmax(0,1fr) auto}.bfs-social-links--header{display:none}.main-nav>.menu{gap:12px}.main-nav>.menu>li>a{font-size:.83rem}.header-cta{padding:11px 15px;font-size:.85rem}}

/* Start-page article and project images occupy the complete card width. */
.home-news-card,.project-card{overflow:hidden}
.home-news-card .card-media-link,.project-card .card-media-link{display:block;width:100%;margin:0;padding:0;overflow:hidden}
.home-news-card .card-media-link img,.project-card .card-media-link img,.project-card>img{display:block;width:100%!important;max-width:none!important;height:clamp(160px,16vw,245px)!important;object-fit:cover;border-radius:0!important;margin:0!important}
.home-news-card small,.home-news-card h3,.home-news-card>a:not(.card-media-link){margin-left:20px;margin-right:20px}.home-news-card>a:not(.card-media-link){margin-bottom:22px}

/* Standard pages use the available width while keeping readable line lengths. */
.content-template--standard .page-hero-inner{max-width:1320px;width:100%}
.content-shell--wide{width:min(1460px,calc(100% - 48px));max-width:none;margin:clamp(44px,6vw,90px) auto}
.page-content--wide{max-width:none;width:100%;background:#fff;border:1px solid #e6ebf1;border-radius:32px;padding:clamp(28px,5vw,76px);box-shadow:0 18px 55px rgba(19,35,59,.08)}
.page-content--wide .page-content__inner{max-width:1120px;margin:0 auto;font-size:1.08rem;line-height:1.78}
.page-content--wide .page-content__inner>h2,.page-content--wide .page-content__inner>h3{max-width:900px}
.page-content--wide .alignwide{width:min(1280px,calc(100vw - 70px));max-width:none;margin-left:50%;transform:translateX(-50%)}
.page-content--wide .alignfull{width:100vw;max-width:none;margin-left:50%;transform:translateX(-50%)}
@media(max-width:700px){.content-shell--wide{width:calc(100% - 24px)}.page-content--wide{padding:24px 20px;border-radius:22px}}

/* Contact person appears as a prominent first contact block. */
.bfs-contact-person-shell{width:min(1320px,calc(100% - 48px));margin:clamp(36px,5vw,70px) auto 0}
.bfs-contact-person{display:grid;grid-template-columns:150px minmax(0,1fr);gap:32px;align-items:center;background:linear-gradient(135deg,#eef8fd,#f6fbf2);border:1px solid #dceaf0;border-radius:30px;padding:clamp(24px,4vw,46px);position:relative;overflow:hidden}
.bfs-contact-person::after{content:"";position:absolute;width:160px;height:160px;border:34px solid rgba(98,179,47,.25);border-radius:50%;right:-55px;top:-75px}
.bfs-contact-person__photo{width:150px;height:150px;border-radius:50%;overflow:hidden;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:4rem;font-weight:900;box-shadow:0 12px 30px rgba(19,35,59,.16)}
.bfs-contact-person__photo img{width:100%;height:100%;object-fit:cover}.bfs-contact-person h2{font-size:clamp(2rem,4vw,3.8rem);margin:.15em 0}.bfs-contact-person__role{font-size:1.12rem;color:var(--muted)}.bfs-contact-person__links{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:18px}.bfs-contact-person__links a{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:800}.bfs-contact-person__links svg{width:20px;height:20px}
@media(max-width:640px){.bfs-contact-person-shell{width:calc(100% - 24px)}.bfs-contact-person{grid-template-columns:1fr;text-align:center}.bfs-contact-person__photo{margin:auto}.bfs-contact-person__links{justify-content:center}}

/* Event landing page: readable buttons, richer facts and optional sections. */
.event-actions .event-secondary{background:#fff!important;color:var(--ink)!important;border:2px solid rgba(255,255,255,.95)!important;text-shadow:none!important}
.event-actions .event-secondary:hover,.event-actions .event-secondary:focus-visible{background:var(--green)!important;color:#fff!important;border-color:var(--green)!important}
.event-facts-card{padding:clamp(25px,4vw,42px)!important}.event-fact-grid{display:grid;gap:18px;margin-top:20px}.event-fact{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start;padding:16px 0;border-top:1px solid #e4eaf0}.event-fact:first-child{border-top:0}.event-fact__icon{width:46px;height:46px;border-radius:15px;background:#eaf6fc;color:var(--blue);display:grid;place-items:center;font-size:1.3rem}.event-fact small{display:block;color:var(--muted);font-weight:700;margin-bottom:3px}.event-fact strong{display:block;font-size:1.05rem}.event-fact em{display:block;font-style:normal;color:var(--muted);margin-top:4px}.event-detail-section{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:clamp(35px,7vw,110px);width:min(1320px,calc(100% - 48px));margin:0 auto;padding:clamp(55px,8vw,105px) 0;border-top:1px solid #e3e8ee}.event-detail-section__head h2{font-size:clamp(2.2rem,4.5vw,4.8rem);margin:0;letter-spacing:-.045em}.event-detail-section__content{max-width:850px}.event-jumpbar{overflow-x:auto;justify-content:center}.event-jumpbar a{white-space:nowrap}
@media(max-width:760px){.event-detail-section{grid-template-columns:1fr;width:calc(100% - 28px);gap:18px}.event-jumpbar{justify-content:flex-start}}


/* BFS 2.3 – WordPress Font Library, navigation clarity, wide pages, footer contacts and statistics */
@media (min-width:821px){
  .main-nav .menu>li.menu-item-has-children>a{
    display:inline-flex!important;align-items:center!important;gap:12px!important;white-space:nowrap!important;
  }
  .main-nav .menu>li.menu-item-has-children>a::after{
    content:""!important;display:block!important;position:static!important;flex:0 0 14px!important;
    width:14px!important;height:14px!important;margin:0 1px 4px 0!important;
    border:0!important;border-right:3px solid currentColor!important;border-bottom:3px solid currentColor!important;
    background:transparent!important;transform:rotate(45deg)!important;opacity:1!important;
  }
  .main-nav .sub-menu li.menu-item-has-children>a::after{
    width:12px!important;height:12px!important;flex-basis:12px!important;margin:0 3px 0 0!important;transform:rotate(-45deg)!important;
  }
}
.content-template--standard .content-shell--wide{width:min(1540px,calc(100% - clamp(28px,5vw,96px)));max-width:none;margin:clamp(34px,5vw,72px) auto}
.content-template--standard .page-content--wide{width:100%;max-width:none;margin:0;padding:clamp(32px,5vw,82px) clamp(24px,5.8vw,96px)}
.content-template--standard .page-content--wide .page-content__inner{width:100%;max-width:1240px;margin:0 auto}
.content-template--standard .page-content--wide .page-content__inner>p,
.content-template--standard .page-content--wide .page-content__inner>ul,
.content-template--standard .page-content--wide .page-content__inner>ol,
.content-template--standard .page-content--wide .page-content__inner>blockquote{max-width:1040px}
.content-template--standard .page-content--wide .panel-layout,
.content-template--standard .page-content--wide .panel-grid{width:100%;max-width:none}
.footer-contact-list{list-style:none!important;padding:0!important;margin:18px 0 0!important;display:grid;gap:14px}
.footer-contact-list li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:11px;align-items:start;color:#dbe6f2;line-height:1.55}
.footer-contact-list svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:2;margin-top:2px}
.footer-contact-list a{display:inline!important;margin:0!important;color:inherit!important;overflow-wrap:anywhere}
.stats-card{position:relative;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:0!important;overflow:hidden;background:linear-gradient(145deg,#12243d,#1d385a)!important;color:#fff!important;border:0!important}
.stats-card::before{content:"";position:absolute;width:180px;height:180px;border:42px solid rgba(98,179,47,.22);border-radius:50%;right:-85px;bottom:-90px;pointer-events:none}
.stats-card__item{position:relative;min-height:155px;padding:24px 20px;display:flex;flex-direction:column;justify-content:flex-end;border-right:1px solid rgba(255,255,255,.13);border-bottom:1px solid rgba(255,255,255,.13)}
.stats-card__item:nth-child(2n){border-right:0}.stats-card__item:nth-child(n+3){border-bottom:0}
.stats-card__icon{position:absolute;top:20px;right:18px;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff}
.stats-card__icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2}
.stats-card__item strong{font-family:var(--font-heading);font-size:clamp(2.35rem,4vw,4rem);line-height:.92;letter-spacing:-.06em;color:#fff}
.stats-card__item span:last-child{margin-top:10px;font-size:.88rem;line-height:1.25;font-weight:700;color:rgba(255,255,255,.82)}
.stats-card__item--1 strong{color:#fff}.stats-card__item--2 strong{color:#8fd262}.stats-card__item--3 strong{color:#63bce8}.stats-card__item--4 strong{color:#ff7199}
@media(max-width:700px){.content-template--standard .content-shell--wide{width:calc(100% - 20px);margin:20px auto}.content-template--standard .page-content--wide{padding:28px 20px}.stats-card__item{min-height:140px}}


/* BFS 2.4 – definitive layout and interaction refinements. */
@media (min-width: 821px) {
  .main-nav .menu > li.menu-item-has-children > a::after,
  .main-nav .sub-menu li.menu-item-has-children > a::after { content:none!important;display:none!important; }
  .main-nav .menu > li > a { display:inline-flex!important;align-items:center!important;gap:10px!important;white-space:nowrap; }
  .bfs-menu-arrow { display:inline-flex;flex:0 0 22px;width:22px;height:22px;align-items:center;justify-content:center;margin-left:3px;color:currentColor; }
  .bfs-menu-arrow svg { width:20px;height:20px;overflow:visible; }
  .bfs-menu-arrow path { fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round; }
  .main-nav .sub-menu .bfs-menu-arrow svg { transform:rotate(-90deg); }
}
@media (max-width:820px){.bfs-menu-arrow{display:none}}

/* Standard pages: deliberately use the available viewport rather than inheriting old prose caps. */
body.page-template-default .content-template--standard .content-shell--wide,
body.page-template-default .content-shell,
.content-template--standard .content-shell--wide { width:min(1680px,calc(100% - clamp(24px,4vw,72px)))!important;max-width:none!important; }
body.page-template-default .page-content--wide,
.content-template--standard .page-content--wide { width:100%!important;max-width:none!important;padding:clamp(30px,4.5vw,72px)!important; }
body.page-template-default .page-content__inner,
.content-template--standard .page-content--wide .page-content__inner { width:100%!important;max-width:1420px!important;margin-inline:auto!important; }
body.page-template-default .page-content__inner > :not(.alignwide):not(.alignfull),
.content-template--standard .page-content__inner > :not(.alignwide):not(.alignfull) { max-width:none!important;width:auto; }
body.page-template-default .page-content__inner p,
.content-template--standard .page-content__inner p { max-width:1180px!important; }
body.page-template-default .page-content__inner h2,
body.page-template-default .page-content__inner h3 { max-width:1250px!important; }

/* Event archive badge is fully configurable. */
.events-hero-badge{background:var(--event-badge-color,var(--red))!important}

/* Event one-pager: compact facts and card-like content modules. */
.event-overview{width:min(1420px,calc(100% - 48px));margin:0 auto;padding:clamp(42px,6vw,76px) 0;display:grid;grid-template-columns:minmax(330px,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,72px);align-items:start}
.event-facts-card{padding:24px!important;border-radius:26px!important;background:#f7fafc!important;border:1px solid #dfe8ef!important;box-shadow:none!important;position:sticky;top:118px}
.event-facts-card__head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.event-facts-card__head .eyebrow{display:none}.event-facts-card__head h2{font-size:1.45rem!important;margin:0!important;letter-spacing:-.02em}
.event-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;margin-top:12px!important}.event-fact{display:flex!important;gap:10px!important;align-items:center!important;border:0!important;background:#fff;padding:13px!important;border-radius:16px;min-width:0}.event-fact--location{grid-column:1/-1}.event-fact__icon{width:34px!important;height:34px!important;border-radius:10px!important;font-size:.72rem!important;flex:0 0 34px}.event-fact small{font-size:.69rem;text-transform:uppercase;letter-spacing:.07em}.event-fact strong{font-size:.95rem!important;line-height:1.25}.event-fact em{font-size:.82rem}.event-calendar-compact{border-radius:999px;background:#fff;padding:8px 12px;font-weight:800;color:var(--blue);border:1px solid #d9e5ed}
.event-facts-card__registration{width:100%;margin-top:12px}
.event-detail-section{display:block!important;width:min(1420px,calc(100% - 48px))!important;margin:24px auto!important;padding:0!important;border:0!important;background:#fff;border-radius:28px;box-shadow:0 14px 38px rgba(19,35,59,.08);overflow:hidden}
.event-detail-section__head{display:flex;align-items:center;gap:14px;padding:22px 28px;background:linear-gradient(100deg,#f3f9fc,#fff);border-bottom:1px solid #e3ebf0}.event-detail-section__head h2{font-size:clamp(1.55rem,2.2vw,2.25rem)!important;line-height:1.1;margin:0!important;letter-spacing:-.025em!important}.event-section-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:900}.event-detail-section:nth-of-type(3n+1) .event-section-icon{background:var(--green)}.event-detail-section:nth-of-type(3n+2) .event-section-icon{background:var(--red)}.event-detail-section__content{max-width:none!important;padding:clamp(24px,4vw,46px)!important}
@media(max-width:800px){.event-overview{grid-template-columns:1fr;width:calc(100% - 28px)}.event-facts-card{position:static}.event-detail-section{width:calc(100% - 28px)!important}.event-fact-grid{grid-template-columns:1fr}.event-fact--location{grid-column:auto}}

/* Light, compact figures for the homepage. */
.stats-card{background:#fff!important;color:var(--ink)!important;border:1px solid #e2e9ef!important;box-shadow:0 12px 30px rgba(19,35,59,.07)!important;padding:14px!important;gap:10px!important}
.stats-card::before{display:none!important}.stats-card__item{min-height:104px!important;padding:16px!important;border:0!important;border-radius:17px;background:#f6f9fb;justify-content:center!important}.stats-card__icon{position:static!important;width:30px!important;height:30px!important;border-radius:9px!important;background:#fff!important;color:var(--blue)!important;margin-bottom:7px}.stats-card__icon svg{width:16px!important;height:16px!important}.stats-card__item strong{font-size:clamp(1.75rem,2.6vw,2.65rem)!important;color:var(--blue)!important}.stats-card__item--2 strong{color:var(--green)!important}.stats-card__item--3 strong{color:var(--red)!important}.stats-card__item--4 strong{color:#7b56b5!important}.stats-card__item span:last-child{margin-top:5px!important;color:var(--muted)!important;font-size:.78rem!important;line-height:1.2!important}

/* Linked content images use the same visual language as galleries. */
.entry-content a:has(> img),.page-content__inner a:has(> img),.single-article__content a:has(> img),.single-post-content a:has(> img){display:inline-block;overflow:hidden;border-radius:18px;cursor:zoom-in;vertical-align:top}
.entry-content a:has(> img) img,.page-content__inner a:has(> img) img,.single-article__content a:has(> img) img,.single-post-content a:has(> img) img{transition:transform .35s ease,filter .35s ease}
.entry-content a:has(> img):hover img,.page-content__inner a:has(> img):hover img,.single-article__content a:has(> img):hover img,.single-post-content a:has(> img):hover img{transform:scale(1.035);filter:saturate(1.04)}

/* Classic floated images. */
.entry-content img.alignleft,.page-content__inner img.alignleft,.single-article__content img.alignleft,.single-post-content img.alignleft,
.entry-content .alignleft,.page-content__inner .alignleft,.single-article__content .alignleft,.single-post-content .alignleft{float:left!important;margin:6px clamp(20px,3vw,38px) 22px 0!important;max-width:min(48%,560px)}
.entry-content img.alignright,.page-content__inner img.alignright,.single-article__content img.alignright,.single-post-content img.alignright,
.entry-content .alignright,.page-content__inner .alignright,.single-article__content .alignright,.single-post-content .alignright{float:right!important;margin:6px 0 22px clamp(20px,3vw,38px)!important;max-width:min(48%,560px)}
.entry-content::after,.page-content__inner::after,.single-article__content::after,.single-post-content::after{content:"";display:block;clear:both}
@media(max-width:640px){.entry-content .alignleft,.entry-content .alignright,.page-content__inner .alignleft,.page-content__inner .alignright,.single-article__content .alignleft,.single-article__content .alignright,.single-post-content .alignleft,.single-post-content .alignright{float:none!important;display:block!important;max-width:100%!important;margin:18px 0!important}}

/* Clearly identifiable editorial links. */
.entry-content p a,.entry-content li a,.page-content__inner p a,.page-content__inner li a,.single-article__content p a,.single-article__content li a,.single-post-content p a,.single-post-content li a{color:#087db8;text-decoration:underline;text-decoration-thickness:.09em;text-underline-offset:.18em;text-decoration-color:rgba(8,125,184,.38);font-weight:700;transition:color .18s ease,text-decoration-color .18s ease,background-size .18s ease}
.entry-content p a:hover,.entry-content li a:hover,.page-content__inner p a:hover,.page-content__inner li a:hover,.single-article__content p a:hover,.single-article__content li a:hover,.single-post-content p a:hover,.single-post-content li a:hover{color:var(--red);text-decoration-color:currentColor}
.bfs-dark-mode .entry-content p a,.bfs-dark-mode .entry-content li a,.bfs-dark-mode .page-content__inner p a,.bfs-dark-mode .page-content__inner li a,.bfs-dark-mode .single-article__content p a,.bfs-dark-mode .single-article__content li a{color:#73c7ef}


/* BFS 2.5 – release refinements. */
/* Standard pages deliberately share the calm editorial geometry of single.php. */
.standard-page-template{background:#fff}
.standard-page-header{grid-template-columns:minmax(0,1fr) minmax(300px,.68fr)}
.standard-page-header:not(:has(.standard-page-header__image)){grid-template-columns:minmax(0,1fr)}
.standard-page-header:not(:has(.standard-page-header__image)) .single-post-header__copy{max-width:1120px}
.standard-page-body{padding-top:12px;padding-bottom:clamp(70px,8vw,120px)}
.standard-page-content{width:100%;max-width:none!important}
.standard-page-content>p,.standard-page-content>ul,.standard-page-content>ol,.standard-page-content>blockquote,
.standard-page-content>h2,.standard-page-content>h3,.standard-page-content>h4{max-width:1080px}
.standard-page-content>.panel-layout,.standard-page-content>.wp-block-group,.standard-page-content>.alignwide{max-width:100%;width:100%}
.standard-page-content .panel-grid{max-width:100%;width:100%}
@media(max-width:900px){.standard-page-header{grid-template-columns:1fr}}

/* Event facts use the full content width instead of a cramped sticky sidebar. */
.event-overview{display:grid!important;grid-template-columns:1fr!important;gap:clamp(34px,5vw,66px)!important}
.event-facts-card{position:static!important;width:100%;padding:clamp(18px,2.4vw,28px)!important;border-radius:24px!important;background:#f7fafc!important}
.event-facts-card__head{min-height:0!important;padding:0!important;margin:0 0 12px!important;border:0!important;justify-content:flex-end!important}
.event-fact-grid{display:grid!important;grid-template-columns:minmax(190px,.8fr) minmax(170px,.65fr) minmax(260px,1.25fr)!important;gap:12px!important;margin:0!important}
.event-fact{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:12px!important;align-items:center!important;padding:15px!important;border:1px solid #dfe8ef!important;border-radius:18px!important;background:#fff!important;min-width:0}
.event-fact:first-child{border:1px solid #dfe8ef!important}
.event-fact--location{grid-column:auto!important}
.event-fact__icon{width:42px!important;height:42px!important;border-radius:13px!important;font-size:.72rem!important;font-weight:900}
.event-fact small{font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}
.event-fact strong{font-size:1rem!important;line-height:1.25}
.event-fact em{font-size:.88rem;line-height:1.35}
.event-facts-card__registration{width:auto!important;display:inline-flex!important;margin:14px 0 0 auto!important;float:right}
.event-intro-copy{max-width:1050px}
@media(max-width:920px){.event-fact-grid{grid-template-columns:1fr 1fr!important}.event-fact--location{grid-column:1/-1!important}}
@media(max-width:580px){.event-fact-grid{grid-template-columns:1fr!important}.event-fact--location{grid-column:auto!important}.event-facts-card__registration{float:none;width:100%!important}}

/* Content helper shortcodes. */
.bfs-content-button{margin:.35rem .4rem .35rem 0}
.bfs-content-space{display:block;height:var(--bfs-space,20px);width:100%;clear:both}

/* WordPress image alignment: exactly 20px toward text and below. */
.entry-content img.alignleft,.page-content__inner img.alignleft,.single-article__content img.alignleft,.single-post-content img.alignleft,
.entry-content .alignleft,.page-content__inner .alignleft,.single-article__content .alignleft,.single-post-content .alignleft{float:left!important;margin:0 20px 20px 0!important;max-width:min(48%,560px)}
.entry-content img.alignright,.page-content__inner img.alignright,.single-article__content img.alignright,.single-post-content img.alignright,
.entry-content .alignright,.page-content__inner .alignright,.single-article__content .alignright,.single-post-content .alignright{float:right!important;margin:0 0 20px 20px!important;max-width:min(48%,560px)}

/* Friendly, consistent lists in editorial content. */
.prose ul,.page-content__inner ul,.entry-content ul,.single-post-content ul{list-style:none;padding-left:0;margin:1.4em 0}
.prose ul>li,.page-content__inner ul>li,.entry-content ul>li,.single-post-content ul>li{position:relative;padding-left:1.75rem;margin:.55em 0}
.prose ul>li::before,.page-content__inner ul>li::before,.entry-content ul>li::before,.single-post-content ul>li::before{content:"";position:absolute;left:.15rem;top:.72em;width:.58rem;height:.58rem;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 18%,transparent)}
.prose ul ul>li::before,.page-content__inner ul ul>li::before,.entry-content ul ul>li::before,.single-post-content ul ul>li::before{background:var(--blue);width:.46rem;height:.46rem}

/* Dark-mode logo: use an explicitly uploaded transparent logo; never turn JPGs into white rectangles. */
.bfs-dark-logo-link,.footer-dark-logo{display:none}
html.bfs-dark-mode .custom-logo,html.bfs-dark-mode .footer-brand img,html.bfs-dark-mode .site-branding .brand img{filter:none!important}
html.bfs-dark-mode .site-branding:has(.bfs-dark-logo-link) .custom-logo-link,
html.bfs-dark-mode .site-branding:has(.bfs-dark-logo-link) .brand,
html.bfs-dark-mode .footer-intro:has(.footer-dark-logo) .footer-brand{display:none!important}
html.bfs-dark-mode .bfs-dark-logo-link,html.bfs-dark-mode .footer-dark-logo{display:block}
.bfs-dark-logo-link .bfs-dark-logo{width:92px;height:72px;object-fit:contain}
.footer-dark-logo .bfs-dark-logo{width:120px;height:auto;max-height:88px;object-fit:contain}

/* Keep both hero title lines and actions visible on large displays. */
@media(min-width:1100px){.hero h1{font-size:clamp(3rem,4.75vw,5.35rem)!important}.hero-copy{width:min(560px,45vw);padding-top:46px;padding-bottom:42px}.hero-copy>p:not(.eyebrow){font-size:1.08rem}.hero .actions{margin-top:20px}}


/* BFS 2.6 – editorial spacing, linked floats and opinion landing page. */
.standard-page-header.wrap,.standard-page-body.wrap{padding-left:clamp(22px,4vw,72px)!important;padding-right:clamp(22px,4vw,72px)!important}
.standard-page-content>ul,.standard-page-content>ol,.prose>ul,.prose>ol{margin-left:0!important;padding-left:0!important;max-width:1080px}
.standard-page-content ul>li,.prose ul>li{padding-left:1.9rem!important}
.standard-page-content ul>li::before,.prose ul>li::before{left:.2rem!important}
@media(max-width:640px){.standard-page-header.wrap,.standard-page-body.wrap{padding-left:20px!important;padding-right:20px!important}}

/* Floats also work when the alignment class is on the image inside a link. */
.entry-content a:has(> img.alignleft),.page-content__inner a:has(> img.alignleft),.single-article__content a:has(> img.alignleft),.single-post-content a:has(> img.alignleft),
.entry-content a.alignleft,.page-content__inner a.alignleft,.single-article__content a.alignleft,.single-post-content a.alignleft{float:left!important;margin:0 20px 20px 0!important;max-width:min(48%,560px);display:block!important}
.entry-content a:has(> img.alignright),.page-content__inner a:has(> img.alignright),.single-article__content a:has(> img.alignright),.single-post-content a:has(> img.alignright),
.entry-content a.alignright,.page-content__inner a.alignright,.single-article__content a.alignright,.single-post-content a.alignright{float:right!important;margin:0 0 20px 20px!important;max-width:min(48%,560px);display:block!important}
.entry-content a:has(> img.alignleft) img,.entry-content a:has(> img.alignright) img,.page-content__inner a:has(> img.alignleft) img,.page-content__inner a:has(> img.alignright) img,.single-post-content a:has(> img.alignleft) img,.single-post-content a:has(> img.alignright) img{float:none!important;margin:0!important;max-width:100%!important;width:100%;height:auto}
@media(max-width:640px){.entry-content a:has(> img.alignleft),.entry-content a:has(> img.alignright),.page-content__inner a:has(> img.alignleft),.page-content__inner a:has(> img.alignright),.single-post-content a:has(> img.alignleft),.single-post-content a:has(> img.alignright){float:none!important;max-width:100%!important;margin:18px 0!important}}

.bfs-opinion-page{overflow:hidden;background:#f5f8fb}.bfs-opinion-landing{max-width:1480px;margin:0 auto;padding:clamp(24px,4vw,64px) clamp(20px,4vw,64px) clamp(70px,9vw,130px)}
.bfs-opinion-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);align-items:center;min-height:390px;padding:clamp(34px,6vw,88px);border-radius:38px;background:linear-gradient(135deg,var(--blue),#064a73);color:#fff;overflow:hidden}
.bfs-opinion-hero::before,.bfs-opinion-hero::after{content:"";position:absolute;border-radius:50%;opacity:.9}.bfs-opinion-hero::before{width:260px;height:260px;background:var(--green);right:-80px;top:-110px}.bfs-opinion-hero::after{width:150px;height:150px;background:var(--red);left:48%;bottom:-90px}
.bfs-opinion-hero__copy{position:relative;z-index:2;max-width:830px}.bfs-opinion-hero h1{margin:.1em 0 .24em;font-size:clamp(3rem,7vw,7.5rem);line-height:.92;letter-spacing:-.055em}.bfs-opinion-hero__copy>p:last-child{font-size:clamp(1.08rem,1.8vw,1.45rem);max-width:720px}
.bfs-opinion-hero__symbol{position:relative;z-index:2;justify-self:center;width:clamp(150px,20vw,270px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--red);box-shadow:0 25px 70px rgba(0,0,0,.2);transform:rotate(7deg)}.bfs-opinion-hero__symbol span{font:900 clamp(6rem,13vw,12rem)/1 var(--font-heading);transform:rotate(-7deg)}
.bfs-opinion-vote{position:relative;z-index:3;max-width:1060px;margin:clamp(-48px,-4vw,-28px) auto 0}.bfs-opinion-vote .bfs-voting{box-shadow:0 25px 65px rgba(18,45,66,.16);border-radius:28px}
.bfs-opinion-share{display:flex;align-items:center;justify-content:space-between;gap:35px;margin:clamp(38px,6vw,80px) auto 0;padding:clamp(26px,4vw,48px);max-width:1160px;border:1px solid #dfe8ef;border-radius:28px;background:#fff}.bfs-opinion-share h2{margin:.1em 0 .25em}.bfs-opinion-share p{margin:0}.bfs-opinion-share__actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:800px){.bfs-opinion-hero{grid-template-columns:1fr;min-height:0}.bfs-opinion-hero__symbol{display:none}.bfs-opinion-share{align-items:flex-start;flex-direction:column}.bfs-opinion-share__actions{justify-content:flex-start}.bfs-opinion-hero h1{font-size:clamp(3.2rem,16vw,5.5rem)}}


/* Calendar subscription CTA. */
.events-calendar-cta{align-items:center}.bfs-events-subscription{display:flex;flex-direction:column;align-items:flex-end;gap:9px;min-width:220px}.bfs-events-subscription__primary{white-space:nowrap}.bfs-events-subscription__download{color:#fff!important;text-decoration:underline;text-underline-offset:.2em;font-weight:700;font-size:.9rem}.bfs-events-subscription__download:hover{color:#dff7e7!important}.bfs-events-subscription__primary span{margin-left:.35em}
@media(max-width:760px){.events-calendar-cta{align-items:flex-start}.bfs-events-subscription{align-items:stretch;width:100%}.bfs-events-subscription__primary{text-align:center}}

/* 2.9.5: legacy paired-logo rules removed; one image source is swapped by JavaScript. */


/* BFS 2.8: conversation comments, robust gallery gutters and footer logo cleanup */
.single-post-comments.bfs-conversation{max-width:920px;margin:72px auto 0;padding:0;border:0;background:transparent}.bfs-conversation__header{max-width:680px;margin:0 auto 30px;text-align:center}.bfs-conversation__kicker{margin:0;color:var(--red);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.bfs-conversation .comments-title{margin:6px 0 8px;font-size:clamp(2rem,4.5vw,3.8rem)}.bfs-conversation__header>p:last-child{color:var(--muted);margin:0}.bfs-message-list{display:grid;gap:24px;margin:0;padding:0;list-style:none}.bfs-message-list .comment{list-style:none}.bfs-message-list .comment-body{position:relative;max-width:720px;padding:20px 24px;margin-right:auto;border:1px solid #dce6ed;border-radius:8px 24px 24px 24px;background:#f3f8fb;box-shadow:0 8px 24px rgba(17,49,74,.06)}.bfs-message-list>li:nth-child(even)>.comment-body{margin-right:0;margin-left:auto;border-radius:24px 8px 24px 24px;background:#eaf7e3}.bfs-message-list .comment-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.bfs-message-list .comment-author{display:flex;align-items:center;gap:9px;font-weight:900}.bfs-message-list .comment-author img{width:44px;height:44px;margin:0;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 12px rgba(17,49,74,.14)}.bfs-message-list .comment-metadata{font-size:.82rem;color:var(--muted)}.bfs-message-list .comment-content p:last-child{margin-bottom:0}.bfs-message-list .reply{margin-top:10px}.bfs-message-list .reply a{font-size:.86rem;font-weight:900;color:var(--blue)}.bfs-message-list .children{display:grid;gap:16px;margin:18px 0 0 clamp(18px,6vw,70px);padding:0;list-style:none}.bfs-reply-panel{margin-top:45px;padding:clamp(24px,5vw,46px);border:1px solid #dce6ed;border-radius:28px;background:#fff;box-shadow:0 18px 50px rgba(17,49,74,.08)}.bfs-reply-panel .comment-reply-title{margin:0 0 8px;font-size:clamp(1.8rem,4vw,3rem)}.bfs-reply-intro{margin:0 0 24px;color:var(--muted)}.bfs-reply-panel .comment-form{grid-template-columns:1fr 1fr;gap:17px}.bfs-reply-panel .comment-form-comment,.bfs-reply-panel .comment-notes,.bfs-reply-panel .logged-in-as,.bfs-reply-panel .comment-form-cookies-consent,.bfs-reply-panel .form-submit{grid-column:1/-1}.bfs-reply-panel textarea{min-height:150px;resize:vertical}.bfs-reply-panel .submit{justify-self:start}.single-post-content .gallery,.single-post-content .wp-block-gallery,.entry-content .gallery,.entry-content .wp-block-gallery{box-sizing:border-box;width:100%!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:20px!important;padding-right:20px!important}.single-post-content .gallery .gallery-item,.entry-content .gallery .gallery-item{box-sizing:border-box}.single-post-content .wp-block-gallery.has-nested-images,.entry-content .wp-block-gallery.has-nested-images{padding-inline:20px!important}.site-footer:after{display:none!important}.site-footer .footer-brand img,.site-footer .footer-brand .custom-logo,.site-footer .footer-dark-logo img{background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important}.site-footer .footer-brand,.site-footer .footer-dark-logo{background:transparent!important;border-radius:0!important}.site-footer .footer-brand+.footer-dark-logo{position:static}
html.bfs-dark-mode .bfs-message-list .comment-body{background:#14283d;border-color:#2d465c}html.bfs-dark-mode .bfs-message-list>li:nth-child(even)>.comment-body{background:#173827}html.bfs-dark-mode .bfs-reply-panel{background:#142438;border-color:#2d465c}
@media(max-width:650px){.single-post-comments.bfs-conversation{padding-inline:18px}.bfs-message-list .comment-body,.bfs-message-list>li:nth-child(even)>.comment-body{max-width:94%}.bfs-message-list .children{margin-left:18px}.bfs-reply-panel .comment-form{grid-template-columns:1fr}.single-post-content .gallery,.single-post-content .wp-block-gallery,.entry-content .gallery,.entry-content .wp-block-gallery{padding-inline:16px!important}}

/* BFS 2.8.5 – refined conversation UI, reliable gallery gutters and one-logo footer. */
.single-post-comments.bfs-conversation{max-width:1040px;margin-top:78px}
.bfs-conversation__shell{position:relative;padding:clamp(28px,5vw,58px);border:1px solid #dbe6ed;border-radius:34px;background:linear-gradient(180deg,#f7fbfd 0,#fff 46%);box-shadow:0 24px 70px rgba(17,49,74,.08);overflow:hidden}
.bfs-conversation__shell::before{content:"";position:absolute;width:180px;height:180px;border:42px solid rgba(98,180,47,.15);border-radius:50%;right:-92px;top:-95px;pointer-events:none}
.bfs-conversation__header{position:relative;z-index:1;margin-bottom:38px}
.bfs-message-stream{position:relative;z-index:1;padding:clamp(18px,3vw,30px);border:1px solid #e0e9ef;border-radius:26px;background:#fff}
.bfs-message-stream::before{content:"Kommentarverlauf";display:inline-flex;margin:0 0 20px;padding:6px 11px;border-radius:999px;background:#eaf5fb;color:#1a6d9e;font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.bfs-message-list{gap:28px}
.bfs-message-list .comment-body{isolation:isolate;padding:18px 22px 16px;border-radius:8px 24px 24px 24px;background:#edf7fc;box-shadow:none}
.bfs-message-list .comment-body::before{content:"";position:absolute;left:-9px;top:0;width:18px;height:18px;background:#edf7fc;clip-path:polygon(100% 0,100% 100%,0 0);z-index:-1}
.bfs-message-list>li:nth-child(even)>.comment-body{background:#eef8e9;border-radius:24px 8px 24px 24px}
.bfs-message-list>li:nth-child(even)>.comment-body::before{left:auto;right:-9px;background:#eef8e9;clip-path:polygon(0 0,100% 0,0 100%)}
.bfs-message-list .comment-author .says{display:none}
.bfs-message-list .comment-author cite{font-style:normal}
.bfs-message-list .comment-metadata a{color:#6a7e8c!important;text-decoration:none!important;font-weight:700}
.bfs-message-list .comment-content{font-size:1.02rem;line-height:1.7}
.bfs-message-list .reply a{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#fff;border:1px solid #d4e2eb;text-decoration:none!important}
.bfs-message-list .reply a::before{content:"↩";font-size:1rem}
.bfs-reply-panel{position:relative;z-index:1;margin-top:30px;border-radius:26px;background:#fff;box-shadow:none}
.bfs-reply-panel::before{content:"";display:block;width:52px;height:5px;margin:0 0 22px;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--green),var(--red))}
.bfs-reply-panel .comment-form input:not([type=submit]),.bfs-reply-panel .comment-form textarea{background:#f8fbfd;border-color:#cfdde6}
.bfs-reply-panel .comment-form input:focus,.bfs-reply-panel .comment-form textarea:focus{background:#fff;border-color:var(--blue);box-shadow:0 0 0 4px rgba(52,152,207,.12);outline:0}

/* Old gallery markup sometimes carries inline widths and negative margins. Keep every gallery inside the editorial gutter. */
.single-post-content>.gallery,.single-post-content>.wp-block-gallery,.single-post-content>.blocks-gallery-grid,
.entry-content>.gallery,.entry-content>.wp-block-gallery,.entry-content>.blocks-gallery-grid,
.page-content__inner>.gallery,.page-content__inner>.wp-block-gallery,.page-content__inner>.blocks-gallery-grid{
  box-sizing:border-box!important;width:calc(100% - 40px)!important;max-width:calc(100% - 40px)!important;
  margin-left:20px!important;margin-right:20px!important;padding-left:0!important;padding-right:0!important;clear:both
}
.single-post-content .gallery,.entry-content .gallery,.page-content__inner .gallery{left:auto!important;right:auto!important;transform:none!important}
.single-post-content .gallery-item,.entry-content .gallery-item,.page-content__inner .gallery-item{margin-left:0!important;margin-right:0!important}

/* Footer contains one link and two theme variants; only one image is ever visible. */
.site-footer .footer-brand{position:relative;display:block!important;width:max-content;max-width:100%}

html.bfs-dark-mode .bfs-conversation__shell{background:linear-gradient(180deg,#102338,#0d1d2e);border-color:#2a4358}
html.bfs-dark-mode .bfs-message-stream,html.bfs-dark-mode .bfs-reply-panel{background:#13263a;border-color:#2d465c}
html.bfs-dark-mode .bfs-message-list .comment-body,html.bfs-dark-mode .bfs-message-list .comment-body::before{background:#19334a}
html.bfs-dark-mode .bfs-message-list>li:nth-child(even)>.comment-body,html.bfs-dark-mode .bfs-message-list>li:nth-child(even)>.comment-body::before{background:#1d3a2d}
html.bfs-dark-mode .bfs-message-list .reply a{background:#102438;border-color:#355067}
@media(max-width:650px){
 .bfs-conversation__shell{padding:22px 16px;border-radius:24px}.bfs-message-stream{padding:16px 12px}
 .single-post-content>.gallery,.single-post-content>.wp-block-gallery,.single-post-content>.blocks-gallery-grid,
 .entry-content>.gallery,.entry-content>.wp-block-gallery,.entry-content>.blocks-gallery-grid,
 .page-content__inner>.gallery,.page-content__inner>.wp-block-gallery,.page-content__inner>.blocks-gallery-grid{width:calc(100% - 32px)!important;max-width:calc(100% - 32px)!important;margin-left:16px!important;margin-right:16px!important}
}


/* BFS 3.2.2 – preserve image proportions and request sharp responsive previews. */
.single-post-content .bfs-gallery .gallery-item,
.entry-content .bfs-gallery .gallery-item,
.page-content__inner .bfs-gallery .gallery-item,
.single-post-content .wp-block-gallery figure.wp-block-image,
.entry-content .wp-block-gallery figure.wp-block-image,
.page-content__inner .wp-block-gallery figure.wp-block-image,
.single-post-content .blocks-gallery-grid .blocks-gallery-item,
.entry-content .blocks-gallery-grid .blocks-gallery-item {
  aspect-ratio: var(--bfs-image-ratio, 4 / 3) !important;
  align-self: start;
}
.single-post-content .bfs-gallery .gallery-item img,
.entry-content .bfs-gallery .gallery-item img,
.page-content__inner .bfs-gallery .gallery-item img,
.single-post-content .wp-block-gallery:not(.is-cropped) figure.wp-block-image img,
.entry-content .wp-block-gallery:not(.is-cropped) figure.wp-block-image img,
.page-content__inner .wp-block-gallery:not(.is-cropped) figure.wp-block-image img,
.single-post-content .blocks-gallery-grid img,
.entry-content .blocks-gallery-grid img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
/* A Gutenberg gallery explicitly set to crop keeps its intentional uniform tiles. */
.single-post-content .wp-block-gallery.is-cropped figure.wp-block-image,
.entry-content .wp-block-gallery.is-cropped figure.wp-block-image,
.page-content__inner .wp-block-gallery.is-cropped figure.wp-block-image {
  aspect-ratio: 4 / 3 !important;
}


/* BFS 3.2.4 – unified modern pagination and resilient contact-form styling. */
.bfs-pagination{
  display:flex;
  justify-content:center;
  width:100%;
  margin:clamp(42px,6vw,72px) auto 0;
  padding:0;
}
.bfs-pagination__links{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  padding:8px;
  border:1px solid #dce6ed;
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 14px 38px rgba(21,54,78,.09);
}
.bfs-pagination .page-numbers{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-width:44px;
  height:44px;
  margin:0;
  padding:0 14px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  font-weight:900;
  line-height:1;
  text-decoration:none!important;
  transition:background-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.bfs-pagination a.page-numbers:hover,
.bfs-pagination a.page-numbers:focus-visible{
  background:#eaf6fc;
  color:var(--blue-dark,var(--blue));
  transform:translateY(-2px);
}
.bfs-pagination .page-numbers.current{
  background:var(--blue);
  color:#fff;
  box-shadow:0 8px 18px rgba(36,150,209,.25);
}
.bfs-pagination .page-numbers.prev,
.bfs-pagination .page-numbers.next{
  min-width:auto;
  padding-inline:17px;
  background:#f3f7fa;
}
.bfs-pagination .dots{color:var(--muted);min-width:28px;padding:0 5px}

/* Reset inherited legacy form positioning before applying the modern contact UI. */
.bfs-contact-form form,
.bfs-contact-form form *{box-sizing:border-box}
.bfs-contact-form form{
  display:grid;
  gap:18px;
  margin:0;
}
.bfs-contact-form form p,
.bfs-contact-form form>div,
.bfs-contact-form .wpcf7-form-control-wrap,
.bfs-contact-form .wpforms-field,
.bfs-contact-form .forminator-row,
.bfs-contact-form .forminator-field,
.bfs-contact-form .gfield,
.bfs-contact-form .nf-field-container,
.bfs-contact-form .quform-element{
  position:relative!important;
  float:none!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  transform:none!important;
}
.bfs-contact-form label,
.bfs-contact-form .wpforms-field-label,
.bfs-contact-form .forminator-label,
.bfs-contact-form .gfield_label,
.bfs-contact-form .nf-field-label label,
.bfs-contact-form .quform-label-text{
  position:static!important;
  inset:auto!important;
  display:block!important;
  float:none!important;
  width:auto!important;
  height:auto!important;
  margin:0 0 8px!important;
  padding:0!important;
  transform:none!important;
  background:transparent!important;
  color:var(--ink)!important;
  font-size:.94rem!important;
  font-weight:800!important;
  line-height:1.35!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.bfs-contact-form input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
.bfs-contact-form textarea,
.bfs-contact-form select,
.bfs-contact-form .wpforms-field input,
.bfs-contact-form .wpforms-field textarea,
.bfs-contact-form .forminator-input,
.bfs-contact-form .forminator-textarea,
.bfs-contact-form .ginput_container input,
.bfs-contact-form .ginput_container textarea,
.bfs-contact-form .nf-field-element input:not([type=button]):not([type=submit]),
.bfs-contact-form .nf-field-element textarea,
.bfs-contact-form .quform-field-text,
.bfs-contact-form .quform-field-email,
.bfs-contact-form .quform-field-textarea{
  position:static!important;
  display:block!important;
  width:100%!important;
  min-height:52px;
  margin:0!important;
  padding:14px 16px!important;
  border:1px solid #c9d7e0!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--ink)!important;
  font:inherit!important;
  line-height:1.45!important;
  box-shadow:0 1px 2px rgba(20,52,76,.035)!important;
  transform:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.bfs-contact-form textarea,
.bfs-contact-form .wpforms-field textarea,
.bfs-contact-form .forminator-textarea,
.bfs-contact-form .ginput_container textarea,
.bfs-contact-form .nf-field-element textarea,
.bfs-contact-form .quform-field-textarea{min-height:170px;resize:vertical}
.bfs-contact-form input:focus,
.bfs-contact-form textarea:focus,
.bfs-contact-form select:focus{
  outline:0!important;
  border-color:var(--blue)!important;
  box-shadow:0 0 0 4px rgba(36,150,209,.14)!important;
}
.bfs-contact-form input[type=checkbox],
.bfs-contact-form input[type=radio]{width:20px!important;height:20px!important;min-height:0;margin:.15em 9px 0 0!important;accent-color:var(--blue);flex:0 0 auto}
.bfs-contact-form .wpcf7-list-item,
.bfs-contact-form .wpforms-field-checkbox li,
.bfs-contact-form .forminator-checkbox,
.bfs-contact-form .gchoice,
.bfs-contact-form .nf-field-element li{
  display:flex!important;
  align-items:flex-start!important;
  gap:0;
  margin:0 0 9px!important;
}
.bfs-contact-form .wpcf7-list-item label,
.bfs-contact-form .wpforms-field-checkbox label,
.bfs-contact-form .forminator-checkbox__label,
.bfs-contact-form .gchoice label{
  display:flex!important;
  align-items:flex-start!important;
  margin:0!important;
  font-weight:600!important;
}
.bfs-contact-form input[type=submit],
.bfs-contact-form button[type=submit],
.bfs-contact-form .wpforms-submit,
.bfs-contact-form .forminator-button-submit,
.bfs-contact-form .gform_button,
.bfs-contact-form .nf-element[type=button],
.bfs-contact-form .quform-submit{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  width:auto!important;
  min-height:50px;
  margin:4px 0 0!important;
  padding:13px 24px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--blue)!important;
  color:#fff!important;
  font:inherit!important;
  font-weight:900!important;
  line-height:1.2!important;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(36,150,209,.22)!important;
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.bfs-contact-form input[type=submit]:hover,
.bfs-contact-form button[type=submit]:hover{background:var(--red)!important;transform:translateY(-2px);box-shadow:0 14px 28px rgba(220,54,83,.22)!important}
.bfs-contact-form .wpcf7-not-valid-tip,
.bfs-contact-form .wpforms-error,
.bfs-contact-form .forminator-error-message,
.bfs-contact-form .validation_message,
.bfs-contact-form .nf-error-msg,
.bfs-contact-form .quform-error-text{display:block;margin-top:6px;color:#a51f38;font-size:.86rem;font-weight:700}
.bfs-contact-form .wpcf7-response-output,
.bfs-contact-form .wpforms-confirmation-container,
.bfs-contact-form .forminator-response-message,
.bfs-contact-form .gform_confirmation_message,
.bfs-contact-form .nf-response-msg,
.bfs-contact-form .quform-success-message{
  margin:18px 0 0!important;
  padding:16px 18px!important;
  border:1px solid #b8dba9!important;
  border-radius:14px!important;
  background:#f1faed!important;
  color:#285f20!important;
}
.bfs-contact-form [aria-hidden=true],
.bfs-contact-form input[type=hidden]{display:none!important}

html.bfs-dark-mode .bfs-pagination__links{background:#12263a;border-color:#31495d}
html.bfs-dark-mode .bfs-pagination .page-numbers{color:#edf5fa}
html.bfs-dark-mode .bfs-pagination a.page-numbers:hover{background:#1d3c56;color:#fff}
html.bfs-dark-mode .bfs-pagination .page-numbers.prev,
html.bfs-dark-mode .bfs-pagination .page-numbers.next{background:#193249}
html.bfs-dark-mode .bfs-contact-form label,
html.bfs-dark-mode .bfs-contact-form .wpforms-field-label,
html.bfs-dark-mode .bfs-contact-form .forminator-label,
html.bfs-dark-mode .bfs-contact-form .gfield_label{color:#f2f7fa!important}
html.bfs-dark-mode .bfs-contact-form input:not([type=submit]):not([type=checkbox]):not([type=radio]),
html.bfs-dark-mode .bfs-contact-form textarea,
html.bfs-dark-mode .bfs-contact-form select{background:#102438!important;border-color:#385168!important;color:#fff!important}

@media(max-width:640px){
  .bfs-pagination__links{width:100%;border-radius:22px;padding:7px;gap:5px}
  .bfs-pagination .page-numbers{min-width:40px;height:40px;padding-inline:11px}
  .bfs-pagination__label{display:none}
  .bfs-contact-form{padding:26px 18px}
  .bfs-contact-form input[type=submit],.bfs-contact-form button[type=submit]{width:100%!important}
}

/* 3.3 Event ↔ editorial story connections */
.bfs-event-relation-badge{display:inline-flex;align-items:center;gap:7px;max-width:100%;margin:.55rem 0 .2rem;padding:6px 10px;border-radius:999px;background:#eaf6fb;color:#075f91;font-size:.76rem;font-weight:800;line-height:1.25}.bfs-event-relation-badge>span{color:var(--red);font-size:.65rem}
.bfs-related-event-card{width:min(1180px,calc(100% - 40px));margin:28px auto 0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px 24px;border:1px solid #cfe5f0;border-radius:22px;background:linear-gradient(135deg,#f5fbfe,#fff);box-shadow:0 10px 28px rgba(0,62,92,.07)}.bfs-related-event-card__icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--blue);color:#fff;font-size:1.1rem}.bfs-related-event-card__content small{display:block;color:var(--green-dark);font-weight:800;text-transform:uppercase;letter-spacing:.055em}.bfs-related-event-card__content h2{font-size:clamp(1.25rem,2vw,1.7rem);margin:.15rem 0}.bfs-related-event-card__content p{margin:0;color:var(--muted)}.bfs-related-event-card__link{display:inline-flex;align-items:center;gap:9px;padding:11px 15px;border-radius:999px;background:var(--blue);color:#fff!important;text-decoration:none!important;font-weight:800;white-space:nowrap}.bfs-related-event-card__link:hover{background:var(--red);transform:translateY(-2px)}
.bfs-event-stories{width:min(1180px,calc(100% - 40px));margin:44px auto}.bfs-event-stories__head{display:flex;gap:15px;align-items:center;margin-bottom:25px}.bfs-event-stories__head>span{display:grid;place-items:center;width:52px;height:52px;border-radius:18px;background:var(--green);color:#fff;font-size:1.25rem}.bfs-event-stories__head small{color:var(--green-dark);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.bfs-event-stories__head h2{margin:.1rem 0 0;font-size:clamp(1.7rem,3vw,2.45rem)}.bfs-event-stories__timeline{position:relative;display:grid;gap:22px;padding-left:34px}.bfs-event-stories__timeline:before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:3px;border-radius:3px;background:linear-gradient(var(--blue),var(--green),var(--red))}.bfs-event-story{position:relative}.bfs-event-story__marker{position:absolute;left:-34px;top:26px;width:21px;height:21px;border:5px solid #fff;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px #9ccfe8}.bfs-event-story--review .bfs-event-story__marker{background:var(--green)}.bfs-event-story--press .bfs-event-story__marker{background:var(--red)}.bfs-event-story__card{display:grid;grid-template-columns:minmax(160px,240px) 1fr;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 9px 24px rgba(0,42,65,.06)}.bfs-event-story__image{min-height:190px}.bfs-event-story__image img{display:block;width:100%;height:100%;object-fit:cover}.bfs-event-story__body{padding:22px 24px}.bfs-event-story__meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:.78rem}.bfs-event-story__meta span{padding:5px 9px;border-radius:999px;background:#eaf6fb;color:#075f91;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.bfs-event-story__meta time{color:var(--muted)}.bfs-event-story h3{font-size:1.4rem;margin:.55rem 0}.bfs-event-story h3 a{text-decoration:none}.bfs-event-story p{margin:0 0 12px;color:var(--muted)}.bfs-event-story__more{font-weight:900;text-decoration:none!important;color:var(--blue)!important}.bfs-event-story__more:hover{color:var(--red)!important}
.event-impressions-teaser{width:min(1180px,calc(100% - 40px));margin:38px auto;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;border-radius:26px;background:var(--blue-dark);color:#fff}.event-impressions-teaser__copy{padding:clamp(26px,4vw,48px)}.event-impressions-teaser small{color:#bfe7f7;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.event-impressions-teaser h2{color:#fff;margin:.3rem 0;font-size:clamp(1.8rem,3vw,2.6rem)}.event-impressions-teaser p{color:#e7f5fb}.event-impressions-teaser a{color:#fff!important;font-weight:900}.event-impressions-teaser__image{min-height:250px;overflow:hidden}.event-impressions-teaser__image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.event-impressions-teaser__image:hover img{transform:scale(1.04)}
html.bfs-dark-mode .bfs-related-event-card,html.bfs-dark-mode .bfs-event-story__card{background:#14232d;border-color:#29414f}.bfs-dark-mode .bfs-event-relation-badge{background:#183544;color:#bfe7f7}
@media(max-width:760px){.bfs-related-event-card{grid-template-columns:auto 1fr;width:min(100% - 28px,1180px);padding:17px}.bfs-related-event-card__link{grid-column:1/-1;justify-content:center}.bfs-event-stories{width:min(100% - 28px,1180px)}.bfs-event-stories__timeline{padding-left:27px}.bfs-event-story__marker{left:-27px}.bfs-event-story__card{grid-template-columns:1fr}.bfs-event-story__image{min-height:190px;max-height:250px}.event-impressions-teaser{width:min(100% - 28px,1180px);grid-template-columns:1fr}.event-impressions-teaser__image{min-height:210px;order:-1}}

/* 3.3.1 Event ↔ editorial: cleaner public context, stronger ticket card */
.bfs-related-event-card{
  position:relative;
  width:min(1040px,calc(100% - 40px));
  margin:30px auto 6px;
  display:grid;
  grid-template-columns:94px minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  padding:18px 20px 18px 18px;
  overflow:hidden;
  border:1px solid #d9e8ef;
  border-radius:26px;
  background:
    radial-gradient(circle at 88% 16%,rgba(128,190,58,.14) 0 52px,transparent 53px),
    linear-gradient(115deg,#f6fbfd 0%,#fff 55%,#f8fbf4 100%);
  box-shadow:0 14px 34px rgba(0,55,83,.09);
}
.bfs-related-event-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:linear-gradient(180deg,var(--red) 0 34%,var(--blue) 34% 68%,var(--green) 68%);
}
.bfs-related-event-card__date{
  position:relative;
  display:grid;
  grid-template-rows:auto 1fr auto;
  place-items:center;
  min-height:94px;
  overflow:hidden;
  border-radius:18px;
  background:#fff;
  border:1px solid #e3e8ec;
  box-shadow:0 7px 18px rgba(0,45,70,.10);
  color:var(--blue-dark);
}
.bfs-related-event-card__month{
  width:100%;
  padding:6px 6px 5px;
  background:var(--red);
  color:#fff;
  text-align:center;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.bfs-related-event-card__date strong{font-size:2rem;line-height:1;margin-top:4px}.bfs-related-event-card__year{padding-bottom:7px;color:var(--muted);font-size:.7rem;font-weight:800}
.bfs-related-event-card__date--icon{display:grid;place-items:center;background:var(--blue);color:#fff;font-size:1.5rem}
.bfs-related-event-card__content{min-width:0}
.bfs-related-event-card__eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:4px;color:var(--green-dark);font-size:.72rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.bfs-related-event-card__eyebrow::before{content:"";width:20px;height:3px;border-radius:3px;background:var(--green)}
.bfs-related-event-card__content h2{margin:0 0 8px;font-size:clamp(1.22rem,2.1vw,1.72rem);line-height:1.12;color:var(--blue-dark)}
.bfs-related-event-card__facts{display:flex;align-items:center;gap:8px 16px;flex-wrap:wrap;color:#51636c;font-size:.92rem;font-weight:700}
.bfs-related-event-card__facts>span{display:inline-flex;align-items:center;gap:6px}.bfs-related-event-card__facts>span>span{color:var(--blue);font-size:1.05rem}
.bfs-related-event-card__address{margin:5px 0 0!important;color:var(--muted);font-size:.86rem}
.bfs-related-event-card__link{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 15px 12px 18px;border-radius:15px;background:var(--blue);color:#fff!important;text-decoration:none!important;font-weight:900;white-space:nowrap;box-shadow:0 8px 18px rgba(0,105,155,.18);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.bfs-related-event-card__link:hover,.bfs-related-event-card__link:focus-visible{background:var(--red);transform:translateY(-2px);box-shadow:0 11px 22px rgba(199,44,52,.20)}
.bfs-related-event-card__arrow{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.15);font-size:1.05rem}
/* Editorial type is backend metadata only; public relation badges stay neutral. */
.bfs-event-relation-badge{background:#edf7fb;color:#075f91}.bfs-event-relation-badge>span{color:var(--green)}
.bfs-event-story__meta time{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#f0f5f7;color:#53666f;font-weight:800}
.bfs-event-story__meta span{display:none!important}
html.bfs-dark-mode .bfs-related-event-card{background:linear-gradient(115deg,#102637,#132f3e 58%,#172d24);border-color:#315066;box-shadow:0 14px 34px rgba(0,0,0,.18)}
html.bfs-dark-mode .bfs-related-event-card__date{background:#0f2230;border-color:#3b5363;color:#fff}
html.bfs-dark-mode .bfs-related-event-card__content h2{color:#fff}
html.bfs-dark-mode .bfs-related-event-card__facts{color:#d4e1e7}
html.bfs-dark-mode .bfs-related-event-card__address{color:#b8c8d0}
html.bfs-dark-mode .bfs-related-event-card__eyebrow{color:#b8e48a}
html.bfs-dark-mode .bfs-event-story__meta time{background:#1e3543;color:#d9e8ef}
@media(max-width:760px){
  .bfs-related-event-card{width:min(100% - 28px,1040px);grid-template-columns:78px minmax(0,1fr);gap:15px;padding:15px;border-radius:21px}
  .bfs-related-event-card__date{min-height:82px;border-radius:15px}.bfs-related-event-card__date strong{font-size:1.7rem}
  .bfs-related-event-card__link{grid-column:1/-1;width:100%;justify-content:space-between;border-radius:14px}
}
@media(max-width:480px){
  .bfs-related-event-card{grid-template-columns:68px minmax(0,1fr);gap:12px}
  .bfs-related-event-card__date{min-height:74px}.bfs-related-event-card__date strong{font-size:1.5rem}.bfs-related-event-card__month{font-size:.58rem}
  .bfs-related-event-card__content h2{font-size:1.14rem}.bfs-related-event-card__facts{font-size:.82rem}
}

html.bfs-dark-mode .events-toolbar-inner--filter .blog-filter-disclosure{background:#142438;border-color:#2b3d52}.events-toolbar-inner--filter .blog-filter-disclosure summary{font-weight:900}.events-toolbar-inner--filter .blog-filter-disclosure .filter-buttons{border-top:1px solid #edf1f4}.events-toolbar-inner--filter .blog-filter-disclosure[open] .filter-buttons{padding-top:4px}.events-toolbar-inner--filter .filter-button{font-size:.88rem;padding:8px 13px}
html.bfs-dark-mode .events-toolbar-inner--filter .blog-filter-disclosure .filter-buttons{border-color:#2b3d52}


/* 3.6.3 native BFS contact form */
.bfs-native-contact{width:100%}.bfs-contact-form-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:18px!important}.bfs-contact-form-grid label{display:block!important;margin:0!important}.bfs-contact-form-wide{grid-column:1/-1}.bfs-native-contact label>span{display:block;margin:0 0 8px;font-weight:800}.bfs-native-contact em{color:var(--red);font-style:normal}.bfs-contact-privacy{display:flex!important;align-items:flex-start!important;gap:10px;margin:2px 0!important;padding:14px 16px;border-radius:14px;background:#f5f9fb}.bfs-contact-privacy span{margin:0!important;font-size:.9rem;font-weight:600!important;line-height:1.5}.bfs-contact-privacy a{color:var(--blue);text-decoration:underline}.bfs-form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.bfs-contact-form-status{min-height:0;color:#a51f38;font-size:.9rem;font-weight:800}.bfs-contact-form-status.is-success{padding:12px 14px;border-radius:12px;background:#f1faed;color:#285f20}.bfs-native-contact button[disabled]{opacity:.55;cursor:wait;transform:none!important}@media(max-width:760px){.bfs-contact-form-grid{grid-template-columns:1fr}.bfs-contact-form-wide{grid-column:auto}.bfs-contact-privacy{padding:13px}.bfs-native-contact button[type=submit]{width:100%!important}}html.bfs-dark-mode .bfs-contact-privacy{background:#132b3d}

/* 3.6.4 – aufgeräumte Kontaktseite */
.bfs-contact-shell--clean{align-items:start;gap:clamp(36px,5vw,72px);padding-top:clamp(48px,6vw,78px)}
.bfs-contact-shell--clean .bfs-contact-info{display:grid;gap:30px;min-width:0}
.bfs-contact-person--compact{grid-template-columns:92px minmax(0,1fr);gap:20px;padding:22px;border-radius:24px;box-shadow:none}
.bfs-contact-person--compact::after{width:110px;height:110px;border-width:24px;right:-48px;top:-50px}
.bfs-contact-person--compact .bfs-contact-person__photo{width:92px;height:92px;font-size:2.7rem;box-shadow:0 8px 22px rgba(19,35,59,.13)}
.bfs-contact-person--compact h2{font-size:clamp(1.55rem,2.5vw,2.25rem);margin:.08em 0}.bfs-contact-person--compact .bfs-contact-person__role{margin:.15rem 0 0}
.bfs-contact-details>h2{font-size:clamp(1.9rem,3.2vw,3rem);max-width:620px}.bfs-contact-form__intro{margin:-.45rem 0 1.4rem;color:var(--muted);line-height:1.55}
.bfs-contact-shell--clean .bfs-contact-cards{margin:22px 0}.bfs-contact-shell--clean .bfs-contact-cards>a,.bfs-contact-shell--clean .bfs-contact-cards>div{padding:16px 18px}
@media(max-width:1000px){.bfs-contact-shell--clean{gap:34px}.bfs-contact-person--compact{max-width:none}}
@media(max-width:620px){.bfs-contact-person--compact{grid-template-columns:72px minmax(0,1fr);text-align:left;padding:17px}.bfs-contact-person--compact .bfs-contact-person__photo{width:72px;height:72px;margin:0;font-size:2rem}.bfs-contact-person--compact .eyebrow{margin-bottom:5px}.bfs-contact-person--compact h2{font-size:1.5rem}}

/* 3.6.6 – Startseite: quadratische Projektmotive mit ruhigem Hover */
.wp-home-projects .home-project-card{transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.wp-home-projects .home-project-card:hover,.wp-home-projects .home-project-card:focus-within{transform:translateY(-5px);box-shadow:0 18px 38px rgba(23,44,72,.13);border-color:transparent}
.wp-home-projects .home-project-card .card-media-link{aspect-ratio:1/1;background:#f4f7f9;overflow:hidden}
.wp-home-projects .home-project-card .card-media-link img{width:100%!important;height:100%!important;aspect-ratio:1/1;object-fit:cover!important;object-position:center;transition:transform .4s ease}
.wp-home-projects .home-project-card:hover .card-media-link img,.wp-home-projects .home-project-card:focus-within .card-media-link img{transform:scale(1.035)}
.wp-home-projects .home-project-card .placeholder{width:100%;height:100%;aspect-ratio:1/1}
@media (prefers-reduced-motion:reduce){.wp-home-projects .home-project-card,.wp-home-projects .home-project-card .card-media-link img{transition:none}.wp-home-projects .home-project-card:hover,.wp-home-projects .home-project-card:focus-within{transform:none}.wp-home-projects .home-project-card:hover .card-media-link img,.wp-home-projects .home-project-card:focus-within .card-media-link img{transform:none}}

/* 3.6.7 – Startseite: ruhigere Projektsektion und verlustarme 1:1-Motive */
.wp-home-projects .section-head--projects{
  display:block;
  margin-bottom:clamp(24px,3vw,34px);
}
.wp-home-projects .project-grid--simplified{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(20px,2.2vw,28px);
}
.wp-home-projects .home-project-card .card-media-link{
  aspect-ratio:1/1;
  background:#f4f7f9;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.wp-home-projects .home-project-card .card-media-link img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(.985);
  transition:transform .34s ease,filter .34s ease;
}
.wp-home-projects .home-project-card:hover .card-media-link img,
.wp-home-projects .home-project-card:focus-within .card-media-link img{
  transform:scale(1);
  filter:saturate(1.035);
}
.wp-home-projects .quote-card{
  grid-column:1/-1;
  min-height:0;
  margin-top:2px;
  padding:clamp(26px,3vw,40px);
}
@media(max-width:820px){
  .wp-home-projects .project-grid--simplified{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wp-home-projects .quote-card{grid-column:1/-1}
}
@media(max-width:560px){
  .wp-home-projects .project-grid--simplified{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .wp-home-projects .home-project-card .card-media-link img{transition:none;transform:none}
  .wp-home-projects .home-project-card:hover .card-media-link img,
  .wp-home-projects .home-project-card:focus-within .card-media-link img{transform:none;filter:none}
}


/* 3.6.8 – flexiblere Startseite und eigenständiger Testimonial-Bereich */
.wp-home-projects .project-grid--simplified{
  display:grid;
  gap:clamp(18px,1.7vw,28px);
  align-items:stretch;
}
.wp-home-projects .project-grid--count-1{grid-template-columns:minmax(0,420px)}
.wp-home-projects .project-grid--count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.wp-home-projects .project-grid--count-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.wp-home-projects .project-grid--count-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.wp-home-projects .project-grid--count-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.wp-home-projects .project-grid--count-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.wp-home-projects .home-project-card{min-width:0}
.wp-home-projects .home-project-card .card-media-link{display:block;aspect-ratio:1/1;overflow:hidden;background:#f4f7f9}
.wp-home-projects .home-project-card .card-media-link img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .28s ease,filter .28s ease}
.wp-home-projects .home-project-card{transition:transform .25s ease,box-shadow .25s ease}
.wp-home-projects .home-project-card:hover,.wp-home-projects .home-project-card:focus-within{transform:translateY(-4px);box-shadow:0 16px 34px rgba(23,44,72,.12)}
.wp-home-projects .home-project-card:hover .card-media-link img,.wp-home-projects .home-project-card:focus-within .card-media-link img{transform:scale(1.025);filter:saturate(1.03)}

.home-testimonials{margin-top:clamp(38px,5vw,72px);padding:clamp(28px,3.6vw,52px);background:linear-gradient(135deg,#f2f8fc 0%,#fbfdf8 100%);border:1px solid #deebf2;border-radius:30px;box-shadow:0 12px 36px rgba(23,44,72,.06)}
.home-testimonials__head{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:clamp(22px,4vw,64px);align-items:end;margin-bottom:clamp(24px,3vw,38px)}
.home-testimonials__head h3{margin:0;font-size:clamp(1.9rem,3vw,3.2rem);letter-spacing:-.04em;line-height:1.02;color:var(--ink)}
.home-testimonials__head>p{margin:0;color:var(--muted);font-size:1.04rem;line-height:1.65;max-width:620px}
.home-testimonials__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:20px}
.home-testimonial-card{position:relative;margin:0;padding:30px 28px 26px;background:#fff;border:1px solid #e3eaf0;border-radius:22px;box-shadow:0 8px 24px rgba(23,44,72,.06);overflow:hidden;min-width:0;transition:transform .22s ease,box-shadow .22s ease}
.home-testimonial-card:hover,.home-testimonial-card:focus-within{transform:translateY(-3px);box-shadow:0 14px 30px rgba(23,44,72,.1)}
.home-testimonial-card__mark{position:absolute;right:20px;top:-16px;font:800 7rem/1 Georgia,serif;color:rgba(36,150,209,.10);pointer-events:none}
.home-testimonial-card blockquote{position:relative;margin:0 0 24px;font-size:1.08rem;line-height:1.62;font-style:italic;color:var(--ink)}
.home-testimonial-card blockquote p{margin:0}
.home-testimonial-card figcaption{display:flex;flex-direction:column;gap:3px;padding-top:17px;border-top:1px solid #edf1f4}
.home-testimonial-card figcaption strong{font-size:.98rem;color:var(--ink)}
.home-testimonial-card figcaption>span:not(.home-testimonial-card__stars){font-size:.9rem;color:var(--muted)}
.home-testimonial-card__stars{margin-top:7px;color:var(--green);letter-spacing:.08em;font-size:.9rem}

.news-grid{grid-template-columns:repeat(min(3,var(--bfs-news-count,3)),minmax(0,1fr))}
.news-grid--count-1{--bfs-news-count:1}.news-grid--count-2{--bfs-news-count:2}.news-grid--count-3{--bfs-news-count:3}.news-grid--count-4,.news-grid--count-5,.news-grid--count-6{--bfs-news-count:3}

@media(max-width:1400px){
 .wp-home-projects .project-grid--count-5,.wp-home-projects .project-grid--count-6{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1120px){
 .wp-home-projects .project-grid--simplified{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-testimonials__head{grid-template-columns:1fr;gap:12px}
}
@media(max-width:640px){
 .wp-home-projects .project-grid--simplified{grid-template-columns:1fr}
 .home-testimonials{margin-inline:-4px;padding:26px 18px;border-radius:24px}
 .home-testimonials__grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;gap:14px;-webkit-overflow-scrolling:touch}
 .home-testimonial-card{flex:0 0 min(86vw,330px);scroll-snap-align:start}
}
@media(prefers-reduced-motion:reduce){
 .wp-home-projects .home-project-card,.wp-home-projects .home-project-card .card-media-link img,.home-testimonial-card{transition:none!important}
 .wp-home-projects .home-project-card:hover,.wp-home-projects .home-project-card:focus-within,.home-testimonial-card:hover,.home-testimonial-card:focus-within{transform:none}
}


/* 3.7.1 – Startseite: „Gerade in Stadtfeld“ als farbiger Fokusblock */
.bfs-home-now{padding:clamp(34px,4vw,56px) clamp(24px,6vw,90px);background:transparent}
.bfs-home-now__shell{padding:clamp(28px,4vw,46px);border-radius:34px;box-shadow:0 18px 44px rgba(22,48,80,.12);overflow:hidden}
.bfs-home-now--multicolor .bfs-home-now__shell{background:linear-gradient(135deg,#0f79b8 0%,#1f9ad7 38%,#47b649 72%,#d81b60 100%)}
.bfs-home-now--blue .bfs-home-now__shell{background:linear-gradient(135deg,#0d5d95 0%,#1188d0 45%,#6dc6f2 100%)}
.bfs-home-now--dark .bfs-home-now__shell{background:linear-gradient(145deg,#10243d 0%,#17395c 54%,#245985 100%)}
.bfs-home-now__head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(16px,4vw,40px);align-items:end;margin-bottom:clamp(22px,3vw,32px)}
.bfs-home-now__heading .eyebrow{margin-bottom:10px;color:#dff3ff}
.bfs-home-now__head h2{margin:0;color:#fff;font-size:clamp(2.25rem,4vw,4rem);line-height:.98;letter-spacing:-.045em}
.bfs-home-now__intro{margin:0;color:rgba(255,255,255,.92);font-size:1.04rem;line-height:1.65;max-width:640px}
.bfs-home-now__layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.9fr);gap:18px;align-items:stretch}
.bfs-home-now__layout--single{grid-template-columns:minmax(0,1fr)}
.bfs-home-now__side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bfs-home-now__side--1{grid-template-columns:1fr}
.bfs-home-now-card{--now-accent:var(--blue);position:relative;display:flex;flex-direction:column;height:100%;padding:24px;border-radius:24px;background:#fff;border:1px solid rgba(255,255,255,.32);box-shadow:0 10px 28px rgba(18,41,67,.12);transition:transform .22s ease,box-shadow .22s ease}
.bfs-home-now-card--green{--now-accent:var(--green)}
.bfs-home-now-card--red{--now-accent:var(--red)}
.bfs-home-now-card:hover,.bfs-home-now-card:focus-within{transform:translateY(-4px);box-shadow:0 16px 36px rgba(18,41,67,.18)}
.bfs-home-now-card__top{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.bfs-home-now-card__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:color-mix(in srgb,var(--now-accent) 12%,white);color:var(--now-accent);flex:0 0 44px}
.bfs-home-now-card__icon .bfs-icon{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}
.bfs-home-now-card__badge{font-size:.78rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--now-accent)}
.bfs-home-now-card__body{display:flex;flex-direction:column;gap:10px}
.bfs-home-now-card h3{margin:0;color:var(--ink);line-height:1.18;letter-spacing:-.025em}
.bfs-home-now-card__meta{margin:0;color:var(--now-accent);font-weight:800;font-size:.94rem}
.bfs-home-now-card__text{margin:0;color:var(--muted);line-height:1.58}
.bfs-home-now-card__link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;padding-top:18px;color:var(--now-accent);text-decoration:none;font-weight:900}
.bfs-home-now-card__link span{display:inline-block;transition:transform .18s ease}
.bfs-home-now-card__link:hover span,.bfs-home-now-card__link:focus-visible span{transform:translateX(4px)}
.bfs-home-now-card__link--button{padding:14px 18px;border-radius:14px;background:var(--now-accent);color:#fff;align-self:flex-start}
.bfs-home-now-card__link--button:hover,.bfs-home-now-card__link--button:focus-visible{color:#fff}
.bfs-home-now-card--featured{padding:28px 28px 26px;min-height:100%;background:linear-gradient(180deg,#fff 0%,#f9fcff 100%)}
.bfs-home-now-card--featured h3{font-size:clamp(1.55rem,2.1vw,2.2rem)}
.bfs-home-now-card--featured .bfs-home-now-card__text{font-size:1.02rem;max-width:58ch}
.bfs-home-now-card--featured .bfs-home-now-card__icon{width:52px;height:52px;border-radius:16px;flex-basis:52px}
.bfs-home-now-card--featured .bfs-home-now-card__icon .bfs-icon{width:26px;height:26px}
.bfs-home-now-card--compact{min-height:200px}
.bfs-home-now-card--compact h3{font-size:1.18rem}
@media(max-width:1040px){
 .bfs-home-now__head,.bfs-home-now__layout{grid-template-columns:1fr}
 .bfs-home-now__side{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 .bfs-home-now__shell{padding:22px 18px;border-radius:28px}
 .bfs-home-now__head h2{font-size:clamp(2rem,10vw,3rem)}
 .bfs-home-now__side{grid-template-columns:1fr}
}
@media(max-width:620px){
 .bfs-home-now{padding-inline:24px}
 .bfs-home-now__layout{display:flex;flex-direction:column;gap:14px}
 .bfs-home-now__side{display:flex;overflow-x:auto;gap:14px;padding:2px 2px 10px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
 .bfs-home-now-card--compact{flex:0 0 min(82vw,300px);scroll-snap-align:start}
 .bfs-home-now-card--featured{min-height:auto}
}
@media(prefers-reduced-motion:reduce){
 .bfs-home-now-card,.bfs-home-now-card__link span{transition:none!important}
 .bfs-home-now-card:hover,.bfs-home-now-card:focus-within{transform:none}
}


/* BFS 3.8.5 – responsive Justified Gallery + optional Editorial mode. */
.bfs-gallery--justified,
.wp-block-gallery.bfs-gallery--justified,
.gallery.bfs-gallery--justified{
  --bfs-gallery-gap:10px;
  --bfs-gallery-row:190px;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  gap:var(--bfs-gallery-gap)!important;
  grid-template-columns:none!important;
}
.bfs-gallery--justified::after{
  content:"";
  flex-grow:999999;
  flex-basis:calc(var(--bfs-gallery-row) * 2.5);
}
.bfs-gallery--justified>.gallery-item,
.wp-block-gallery.bfs-gallery--justified>figure.wp-block-image,
.wp-block-gallery.bfs-gallery--justified>.blocks-gallery-grid>.blocks-gallery-item{
  flex-grow:var(--bfs-image-ratio-num,1.5)!important;
  flex-basis:calc(var(--bfs-image-ratio-num,1.5) * var(--bfs-gallery-row))!important;
  width:auto!important;
  min-width:0!important;
  height:var(--bfs-gallery-row)!important;
  aspect-ratio:auto!important;
  margin:0!important;
}
.wp-block-gallery.bfs-gallery--justified>.blocks-gallery-grid{display:contents!important}
.bfs-gallery--justified .gallery-icon,
.bfs-gallery--justified .gallery-icon a,
.bfs-gallery--justified figure>a,
.bfs-gallery--justified figure>img,
.bfs-gallery--justified .blocks-gallery-item>a{height:100%!important;width:100%!important}
.bfs-gallery--justified img{
  width:100%!important;height:100%!important;object-fit:cover!important;
}

/* Editorial: one strong lead image, two supporting images, then justified flow. */
.bfs-gallery--editorial,
.wp-block-gallery.bfs-gallery--editorial,
.gallery.bfs-gallery--editorial,
.wp-block-gallery.is-style-bfs-editorial{
  --bfs-gallery-gap:12px;
  --bfs-gallery-row:178px;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  gap:var(--bfs-gallery-gap)!important;
  grid-template-columns:none!important;
}
.bfs-gallery--editorial::after,
.wp-block-gallery.is-style-bfs-editorial::after{
  content:"";flex-grow:999999;flex-basis:calc(var(--bfs-gallery-row) * 2.5)
}
.bfs-gallery--editorial>.gallery-item,
.wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image,
.wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image{
  flex-grow:var(--bfs-image-ratio-num,1.5)!important;
  flex-basis:calc(var(--bfs-image-ratio-num,1.5) * var(--bfs-gallery-row))!important;
  width:auto!important;min-width:0!important;height:var(--bfs-gallery-row)!important;
  aspect-ratio:auto!important;margin:0!important;
}
.bfs-gallery--editorial>.gallery-item:nth-child(1),
.wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(1),
.wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(1){
  flex:0 0 100%!important;height:clamp(320px,48vw,520px)!important;
}
.bfs-gallery--editorial>.gallery-item:nth-child(2),
.bfs-gallery--editorial>.gallery-item:nth-child(3),
.wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(2),
.wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(3),
.wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(2),
.wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(3){
  flex:1 1 calc(50% - 6px)!important;height:clamp(220px,28vw,330px)!important;
}
.bfs-gallery--editorial .gallery-icon,
.bfs-gallery--editorial .gallery-icon a,
.bfs-gallery--editorial figure>a,
.wp-block-gallery.is-style-bfs-editorial figure>a{height:100%!important;width:100%!important}
.bfs-gallery--editorial img,
.wp-block-gallery.is-style-bfs-editorial img{width:100%!important;height:100%!important;object-fit:cover!important}

/* Gallery polish shared by both modes. */
.bfs-gallery--justified .gallery-item,
.bfs-gallery--justified figure.wp-block-image,
.bfs-gallery--editorial .gallery-item,
.bfs-gallery--editorial figure.wp-block-image,
.wp-block-gallery.is-style-bfs-editorial figure.wp-block-image{
  position:relative;overflow:hidden;border-radius:16px!important;background:var(--soft);
  box-shadow:0 7px 20px rgba(13,46,66,.08)!important;
}
.bfs-gallery--justified img,
.bfs-gallery--editorial img,
.wp-block-gallery.is-style-bfs-editorial img{transition:transform .35s ease,filter .3s ease}
.bfs-gallery--justified figure:hover img,
.bfs-gallery--justified .gallery-item:hover img,
.bfs-gallery--editorial figure:hover img,
.bfs-gallery--editorial .gallery-item:hover img,
.wp-block-gallery.is-style-bfs-editorial figure:hover img{transform:scale(1.025);filter:saturate(1.03)}

@media(max-width:760px){
  .bfs-gallery--justified,.wp-block-gallery.bfs-gallery--justified,.gallery.bfs-gallery--justified,
  .bfs-gallery--editorial,.wp-block-gallery.bfs-gallery--editorial,.gallery.bfs-gallery--editorial,
  .wp-block-gallery.is-style-bfs-editorial{--bfs-gallery-row:145px;--bfs-gallery-gap:8px}
  .bfs-gallery--editorial>.gallery-item:nth-child(1),
  .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(1),
  .wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(1){height:300px!important}
  .bfs-gallery--editorial>.gallery-item:nth-child(2),.bfs-gallery--editorial>.gallery-item:nth-child(3),
  .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(2),
  .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(3),
  .wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(2),
  .wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(3){height:190px!important}
}
@media(max-width:520px){
  .bfs-gallery--justified,.wp-block-gallery.bfs-gallery--justified,.gallery.bfs-gallery--justified,
  .bfs-gallery--editorial,.wp-block-gallery.bfs-gallery--editorial,.gallery.bfs-gallery--editorial,
  .wp-block-gallery.is-style-bfs-editorial{--bfs-gallery-row:118px;--bfs-gallery-gap:7px}
  .bfs-gallery--editorial>.gallery-item:nth-child(1),
  .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(1),
  .wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(1){height:250px!important}
  .bfs-gallery--editorial>.gallery-item:nth-child(2),.bfs-gallery--editorial>.gallery-item:nth-child(3),
  .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(2),
  .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(3),
  .wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(2),
  .wp-block-gallery.is-style-bfs-editorial>figure.wp-block-image:nth-child(3){flex-basis:100%!important;height:210px!important}
}


/* BFS 3.8.6 – photo essays in category "Impressionen". */
.bfs-impressions-body{
  max-width:1360px!important;
  width:min(1360px,calc(100% - 32px));
}
.bfs-impressions-content{
  --bfs-impressions-gallery-width:min(1240px,calc(100vw - 48px));
}
/* Keep editorial copy comfortably readable while galleries can breathe. */
.bfs-impressions-content>p,
.bfs-impressions-content>h2,
.bfs-impressions-content>h3,
.bfs-impressions-content>h4,
.bfs-impressions-content>h5,
.bfs-impressions-content>h6,
.bfs-impressions-content>ul,
.bfs-impressions-content>ol,
.bfs-impressions-content>blockquote,
.bfs-impressions-content>.wp-block-quote,
.bfs-impressions-content>.wp-block-list,
.bfs-impressions-content>.wp-block-buttons,
.bfs-impressions-content>.wp-block-group:not(:has(.wp-block-gallery)){
  max-width:780px;
  margin-left:auto;
  margin-right:auto;
}
.bfs-impressions-content>.gallery,
.bfs-impressions-content>.bfs-gallery,
.bfs-impressions-content>.wp-block-gallery,
.bfs-impressions-content>.blocks-gallery-grid,
.bfs-impressions-content>.kad-wp-gallery,
.bfs-impressions-content>.kadence-blocks-gallery,
.bfs-impressions-content>.kt-gallery{
  width:var(--bfs-impressions-gallery-width)!important;
  max-width:var(--bfs-impressions-gallery-width)!important;
  margin-left:50%!important;
  margin-right:0!important;
  transform:translateX(-50%);
}
/* The automatic category mode is deliberately more cinematic than the manual default. */
.bfs-impressions-content .bfs-gallery--editorial,
.bfs-impressions-content .wp-block-gallery.bfs-gallery--editorial,
.bfs-impressions-content .gallery.bfs-gallery--editorial{
  --bfs-gallery-gap:14px;
  --bfs-gallery-row:205px;
}
.bfs-impressions-content .bfs-gallery--editorial>.gallery-item:nth-child(1),
.bfs-impressions-content .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(1){
  height:clamp(420px,55vw,680px)!important;
}
.bfs-impressions-content .bfs-gallery--editorial>.gallery-item:nth-child(2),
.bfs-impressions-content .bfs-gallery--editorial>.gallery-item:nth-child(3),
.bfs-impressions-content .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(2),
.bfs-impressions-content .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(3){
  height:clamp(260px,31vw,390px)!important;
}
@media(max-width:900px){
  .bfs-impressions-body{width:100%;}
  .bfs-impressions-content{--bfs-impressions-gallery-width:calc(100vw - 36px)}
  .bfs-impressions-content .bfs-gallery--editorial{--bfs-gallery-gap:10px;--bfs-gallery-row:160px}
  .bfs-impressions-content .bfs-gallery--editorial>.gallery-item:nth-child(1),
  .bfs-impressions-content .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(1){height:clamp(320px,58vw,500px)!important}
}
@media(max-width:520px){
  .bfs-impressions-content{--bfs-impressions-gallery-width:calc(100vw - 28px)}
  .bfs-impressions-content .bfs-gallery--editorial{--bfs-gallery-gap:7px;--bfs-gallery-row:118px}
  .bfs-impressions-content .bfs-gallery--editorial>.gallery-item:nth-child(1),
  .bfs-impressions-content .wp-block-gallery.bfs-gallery--editorial>figure.wp-block-image:nth-child(1){height:270px!important}
}


/* BFS 3.8.7 – center full-width Impressionen galleries reliably.
 * Overrides the older generic gallery gutter guard only inside photo essays. */
.bfs-impressions-content>.gallery,
.bfs-impressions-content>.bfs-gallery,
.bfs-impressions-content>.wp-block-gallery,
.bfs-impressions-content>.blocks-gallery-grid,
.bfs-impressions-content>.kad-wp-gallery,
.bfs-impressions-content>.kadence-blocks-gallery,
.bfs-impressions-content>.kt-gallery{
  box-sizing:border-box!important;
  width:min(1240px,calc(100vw - 64px))!important;
  max-width:min(1240px,calc(100vw - 64px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  clear:both;
}
/* The content column itself is full width; prose elements remain centered separately. */
.bfs-impressions-content{
  width:100%!important;
  max-width:none!important;
}
@media(max-width:900px){
  .bfs-impressions-content>.gallery,
  .bfs-impressions-content>.bfs-gallery,
  .bfs-impressions-content>.wp-block-gallery,
  .bfs-impressions-content>.blocks-gallery-grid,
  .bfs-impressions-content>.kad-wp-gallery,
  .bfs-impressions-content>.kadence-blocks-gallery,
  .bfs-impressions-content>.kt-gallery{
    width:calc(100% - 16px)!important;
    max-width:calc(100% - 16px)!important;
  }
}
@media(max-width:520px){
  .bfs-impressions-content>.gallery,
  .bfs-impressions-content>.bfs-gallery,
  .bfs-impressions-content>.wp-block-gallery,
  .bfs-impressions-content>.blocks-gallery-grid,
  .bfs-impressions-content>.kad-wp-gallery,
  .bfs-impressions-content>.kadence-blocks-gallery,
  .bfs-impressions-content>.kt-gallery{
    width:100%!important;
    max-width:100%!important;
  }
}

/* BFS 3.8.10 – Impressionen return to the regular left content axis.
 * Copy begins at the same left edge as the surrounding article body; only
 * galleries are allowed to extend further to the right. */
.bfs-impressions-body{
  width:var(--wrap)!important;
  max-width:1000px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.bfs-impressions-content{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  overflow:visible!important;
}
.bfs-impressions-content>p,
.bfs-impressions-content>h2,
.bfs-impressions-content>h3,
.bfs-impressions-content>h4,
.bfs-impressions-content>h5,
.bfs-impressions-content>h6,
.bfs-impressions-content>ul,
.bfs-impressions-content>ol,
.bfs-impressions-content>blockquote,
.bfs-impressions-content>.wp-block-quote,
.bfs-impressions-content>.wp-block-list,
.bfs-impressions-content>.wp-block-buttons,
.bfs-impressions-content>.wp-block-group:not(:has(.wp-block-gallery)){
  width:100%!important;
  max-width:780px!important;
  margin-left:0!important;
  margin-right:0!important;
}
.bfs-impressions-content :is(
  .gallery,.bfs-gallery,.wp-block-gallery,.blocks-gallery-grid,
  .kad-wp-gallery,.kadence-blocks-gallery,.kt-gallery
){
  width:min(980px,100%)!important;
  max-width:980px!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:none!important;
}
@media(max-width:900px){
  .bfs-impressions-body{padding-left:22px!important;padding-right:22px!important}
  .bfs-impressions-content :is(.gallery,.bfs-gallery,.wp-block-gallery,.blocks-gallery-grid,.kad-wp-gallery,.kadence-blocks-gallery,.kt-gallery){
    width:100%!important;max-width:100%!important;
  }
}

/* Compact automatic photo credit generated from a standalone (Fotos: …) line. */
.bfs-photo-credit{
  display:inline-flex;
  align-items:center;
  gap:11px;
  width:auto!important;
  max-width:100%!important;
  margin:22px 0 30px!important;
  padding:10px 14px 10px 11px;
  border:1px solid rgba(8,125,184,.16);
  border-radius:14px;
  background:color-mix(in srgb,var(--soft) 74%,#fff);
  box-shadow:0 5px 16px rgba(13,46,66,.06);
  color:var(--text);
}
.bfs-photo-credit__icon{
  width:34px;height:34px;flex:0 0 34px;
  display:grid;place-items:center;
  border-radius:10px;
  background:var(--blue);
  color:#fff;
}
.bfs-photo-credit__icon svg{width:19px;height:19px;fill:currentColor;display:block}
.bfs-photo-credit__copy{display:flex;align-items:baseline;gap:7px;min-width:0}
.bfs-photo-credit__copy small{
  margin:0;color:var(--muted);font-size:.72rem;font-weight:900;
  text-transform:uppercase;letter-spacing:.075em;
}
.bfs-photo-credit__copy strong{font-size:.92rem;line-height:1.25;color:var(--blue-dark);font-weight:800}
.bfs-dark-mode .bfs-photo-credit{background:#152b3c;border-color:rgba(255,255,255,.12);box-shadow:none;color:#fff}
.bfs-dark-mode .bfs-photo-credit__copy small{color:#a8bac7}
.bfs-dark-mode .bfs-photo-credit__copy strong{color:#fff}
@media(max-width:520px){
  .bfs-photo-credit{margin:18px 0 24px!important;padding:9px 12px 9px 9px;gap:9px}
  .bfs-photo-credit__copy{display:block}
  .bfs-photo-credit__copy small,.bfs-photo-credit__copy strong{display:block}
  .bfs-photo-credit__copy small{margin-bottom:1px}
}

/* BFS 3.8.11 – Impressionen use the regular site-wide left content axis.
 * The whole article body now spans the normal 1280px wrap instead of a
 * centered 1000px sub-column. Text and galleries share the same left edge. */
.single-post-body.bfs-impressions-body{
  width:var(--wrap)!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.bfs-impressions-content{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.bfs-impressions-content>p,
.bfs-impressions-content>h2,
.bfs-impressions-content>h3,
.bfs-impressions-content>h4,
.bfs-impressions-content>h5,
.bfs-impressions-content>h6,
.bfs-impressions-content>ul,
.bfs-impressions-content>ol,
.bfs-impressions-content>blockquote,
.bfs-impressions-content>.wp-block-quote,
.bfs-impressions-content>.wp-block-list,
.bfs-impressions-content>.wp-block-buttons,
.bfs-impressions-content>.wp-block-group:not(:has(.wp-block-gallery)),
.bfs-impressions-content>.bfs-photo-credit{
  max-width:780px!important;
  margin-left:0!important;
  margin-right:0!important;
}
.bfs-impressions-content :is(
  .gallery,.bfs-gallery,.wp-block-gallery,.blocks-gallery-grid,
  .kad-wp-gallery,.kadence-blocks-gallery,.kt-gallery
){
  width:min(980px,100%)!important;
  max-width:980px!important;
  margin-left:0!important;
  margin-right:0!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
@media(max-width:700px){
  .single-post-body.bfs-impressions-body{
    width:100%!important;
    max-width:none!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
  .bfs-impressions-content :is(
    .gallery,.bfs-gallery,.wp-block-gallery,.blocks-gallery-grid,
    .kad-wp-gallery,.kadence-blocks-gallery,.kt-gallery
  ){
    width:100%!important;
    max-width:100%!important;
  }
}

/* BFS 3.8.12 – Impressionen layout: active bundle sync + true left site axis.
 * Important: frontend.css is the enqueued stylesheet since 3.8.0. */
.single-post-body.bfs-impressions-body{
  width:var(--wrap)!important;
  max-width:none!important;
  margin-inline:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.single-post-body.bfs-impressions-body .bfs-impressions-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.single-post-body.bfs-impressions-body .bfs-impressions-content > :not(.wp-block-gallery):not(.gallery):not(.bfs-gallery):not(.blocks-gallery-grid):not(.kad-wp-gallery):not(.kadence-blocks-gallery):not(.kt-gallery){
  margin-left:0!important;
  margin-right:0!important;
}
.single-post-body.bfs-impressions-body .bfs-impressions-content > p,
.single-post-body.bfs-impressions-body .bfs-impressions-content > h2,
.single-post-body.bfs-impressions-body .bfs-impressions-content > h3,
.single-post-body.bfs-impressions-body .bfs-impressions-content > h4,
.single-post-body.bfs-impressions-body .bfs-impressions-content > h5,
.single-post-body.bfs-impressions-body .bfs-impressions-content > h6,
.single-post-body.bfs-impressions-body .bfs-impressions-content > ul,
.single-post-body.bfs-impressions-body .bfs-impressions-content > ol,
.single-post-body.bfs-impressions-body .bfs-impressions-content > blockquote,
.single-post-body.bfs-impressions-body .bfs-impressions-content > .wp-block-quote,
.single-post-body.bfs-impressions-body .bfs-impressions-content > .wp-block-list,
.single-post-body.bfs-impressions-body .bfs-impressions-content > .wp-block-buttons,
.single-post-body.bfs-impressions-body .bfs-impressions-content > .bfs-photo-credit{
  width:100%!important;
  max-width:780px!important;
}
.single-post-body.bfs-impressions-body .bfs-impressions-content :is(
  .gallery,.bfs-gallery,.wp-block-gallery,.blocks-gallery-grid,
  .kad-wp-gallery,.kadence-blocks-gallery,.kt-gallery
){
  width:min(980px,100%)!important;
  max-width:980px!important;
  margin-left:0!important;
  margin-right:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
}
@media(max-width:700px){
  .single-post-body.bfs-impressions-body{
    width:100%!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
}

/* BFS 3.8.13 – Impressionen: align to the normal inner content axis.
 * Keep the wider photo lane, but restore the same visual gutter used by article headers/site content. */
.single-post-body.bfs-impressions-body{
  padding-left:clamp(28px,7vw,110px)!important;
  padding-right:clamp(28px,7vw,110px)!important;
}
.single-post-body.bfs-impressions-body .bfs-impressions-content{
  box-sizing:border-box!important;
}
.single-post-body.bfs-impressions-body .bfs-impressions-content :is(
  .gallery,.bfs-gallery,.wp-block-gallery,.blocks-gallery-grid,
  .kad-wp-gallery,.kadence-blocks-gallery,.kt-gallery
){
  width:min(980px,100%)!important;
  max-width:980px!important;
  margin-left:0!important;
  margin-right:auto!important;
}
@media(max-width:700px){
  .single-post-body.bfs-impressions-body{
    width:100%!important;
    padding-left:22px!important;
    padding-right:22px!important;
  }
}


/* 3.8.16 – Wir über uns: editorial association page */
.bfs-about-page{background:linear-gradient(180deg,#fff 0,#fff 420px,#f5f8fa 420px,#f5f8fa 100%)}
.bfs-about-hero{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:end;padding-bottom:clamp(34px,5vw,64px)}
.bfs-about-intro{max-width:820px}.bfs-about-intro p:first-child{font-size:clamp(1.12rem,1.6vw,1.35rem);line-height:1.55;color:#29465c}.bfs-about-intro p{max-width:780px}
.bfs-about-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.bfs-about-stats>div{min-height:128px;padding:20px;border-radius:20px;background:#fff;border:1px solid rgba(12,111,184,.12);box-shadow:0 12px 34px rgba(20,49,69,.08);display:flex;flex-direction:column;justify-content:flex-end}.bfs-about-stats>div:nth-child(2){background:#0b6fb8;color:#fff}.bfs-about-stats>div:nth-child(3){background:#d60043;color:#fff}.bfs-about-stats>div:nth-child(4){background:#69b32d;color:#fff}.bfs-about-stats strong{font-family:var(--font-heading);font-size:clamp(2rem,4vw,3.2rem);line-height:.9}.bfs-about-stats span{font-size:.84rem;font-weight:800;margin-top:8px}
.bfs-about-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding-top:0!important;padding-bottom:0!important;background:#dfe8ee;border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(20,49,69,.08);transform:translateY(50%);position:relative;z-index:2}.bfs-about-nav a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;background:#fff;color:#173b54;font-weight:900;text-decoration:none}.bfs-about-nav a:hover,.bfs-about-nav a:focus-visible{background:#edf6fb;color:#0b6fb8}.bfs-about-nav span{color:#d60043}
.bfs-about-body{padding-top:clamp(72px,8vw,110px)!important;padding-bottom:clamp(70px,8vw,120px)!important}.bfs-about-section{margin-bottom:clamp(60px,8vw,110px);scroll-margin-top:120px}.bfs-about-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:40px;align-items:end;margin-bottom:30px}.bfs-about-section-head h2{font-size:clamp(2.2rem,5vw,4.5rem);line-height:.94;margin:0}.bfs-about-section-head>p{font-size:1.04rem;line-height:1.6;color:#526b7b;margin:0}
.bfs-about-what-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.bfs-about-what-card{min-height:300px;padding:26px;border-radius:24px;background:#fff;border:1px solid #dfe7ec;box-shadow:0 12px 34px rgba(20,49,69,.07);position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.bfs-about-what-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(20,49,69,.12)}.bfs-about-what-card:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:6px;background:#0b6fb8}.bfs-about-what-card--2:after{background:#d60043}.bfs-about-what-card--3:after{background:#69b32d}.bfs-about-what-card--4:after{background:#0b6fb8}.bfs-about-icon{width:52px;height:52px;border-radius:16px;background:#edf6fb;color:#0b6fb8;display:grid;place-items:center;margin-bottom:50px}.bfs-about-what-card--2 .bfs-about-icon{background:#fff0f4;color:#d60043}.bfs-about-what-card--3 .bfs-about-icon{background:#eff8e8;color:#4d8d20}.bfs-about-icon .bfs-icon{width:25px;height:25px}.bfs-about-what-card h3{font-size:1.28rem;margin:0 0 10px}.bfs-about-what-card p{margin:0;color:#4f6878;line-height:1.55}.bfs-about-what-note{margin-top:18px;padding:16px 20px;border-radius:14px;background:#edf6fb;color:#29465c}.bfs-about-what-note p{margin:0}
.bfs-about-section--board{padding:clamp(30px,5vw,60px);border-radius:32px;background:#173b54;color:#fff;box-shadow:0 22px 55px rgba(20,49,69,.16)}.bfs-about-section--board .eyebrow{color:#92cce9}.bfs-about-section--board .bfs-about-section-head>p{color:#d4e2eb}.bfs-about-board-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.bfs-about-board-card{background:#fff;color:#18394f;border-radius:20px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.16)}.bfs-about-board-card.is-lead{grid-column:span 2}.bfs-about-board-photo{aspect-ratio:4/3;background:#e7eef3;overflow:hidden}.bfs-about-board-card.is-lead .bfs-about-board-photo{aspect-ratio:2/1}.bfs-about-board-photo img{display:block;width:100%;height:100%;object-fit:cover}.bfs-about-board-placeholder{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:10px;background:linear-gradient(145deg,#dfeaf2,#f8fbfd);color:#527184}.bfs-about-placeholder-person .bfs-icon{width:52px;height:52px;opacity:.45}.bfs-about-board-placeholder b{font-size:1.7rem;letter-spacing:.06em}.bfs-about-board-copy{padding:18px 20px 22px}.bfs-about-board-copy p{margin:0 0 5px;color:#d60043;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.bfs-about-board-copy h3{margin:0;font-size:1.18rem}
.bfs-about-documents{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center;padding:clamp(28px,5vw,58px);border-radius:28px;background:#fff;border:1px solid #dfe7ec;box-shadow:0 18px 50px rgba(20,49,69,.08)}.bfs-about-document-copy h2{font-size:clamp(2rem,4vw,3.6rem);line-height:.98;margin:0 0 15px}.bfs-about-document-copy p:last-child{color:#536c7c;line-height:1.6}.bfs-about-document-links{display:grid;gap:12px}.bfs-about-document-links>a{display:grid;grid-template-columns:50px 1fr auto;gap:15px;align-items:center;padding:18px 20px;border-radius:17px;background:#f4f8fa;color:#173b54;text-decoration:none;border:1px solid transparent;transition:.2s ease}.bfs-about-document-links>a:hover{background:#edf6fb;border-color:#b9d9eb;transform:translateY(-2px)}.bfs-about-document-links>a>span{width:46px;height:46px;border-radius:14px;background:#0b6fb8;color:#fff;display:grid;place-items:center}.bfs-about-document-links .bfs-icon{width:23px;height:23px}.bfs-about-document-links strong,.bfs-about-document-links small{display:block}.bfs-about-document-links small{color:#67808f;margin-top:3px}.bfs-about-document-links b{color:#d60043;font-size:1.2rem}
.bfs-about-support{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.6fr);gap:48px;align-items:center;padding:clamp(34px,6vw,70px);border-radius:32px;background:linear-gradient(135deg,#d60043 0%,#bf003b 58%,#9f0032 100%);color:#fff;overflow:hidden;position:relative}.bfs-about-support:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-170px;top:-160px;border:70px solid rgba(255,255,255,.07)}.bfs-about-support h2{font-size:clamp(2.3rem,5vw,4.5rem);line-height:.94;margin:0 0 20px}.bfs-about-support .prose{color:#fff;max-width:760px}.bfs-about-support .prose p{color:#fff}.bfs-about-support-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}.bfs-about-support-actions .btn{display:inline-flex;align-items:center;gap:9px}.bfs-about-support-actions .bfs-icon{width:18px;height:18px}.bfs-about-textlink{color:#fff;font-weight:900;text-decoration:none}.bfs-about-textlink:hover{text-decoration:underline}.bfs-about-support-mark{position:relative;z-index:1;min-height:230px;border-radius:26px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);display:flex;flex-direction:column;justify-content:flex-end;padding:28px;backdrop-filter:blur(8px)}.bfs-about-support-mark>span{width:56px;height:56px;border-radius:18px;background:#fff;color:#d60043;display:grid;place-items:center;margin-bottom:auto}.bfs-about-support-mark .bfs-icon{width:28px;height:28px}.bfs-about-support-mark strong{font-size:2rem;line-height:1}.bfs-about-support-mark b{font-size:1rem;margin-top:8px;font-weight:700}
html.bfs-dark-mode .bfs-about-page{background:linear-gradient(180deg,#0e1d28 0,#0e1d28 420px,#112532 420px,#112532 100%)}html.bfs-dark-mode .bfs-about-stats>div{background:#162d3d;border-color:#294657;color:#fff}html.bfs-dark-mode .bfs-about-nav{background:#294657}html.bfs-dark-mode .bfs-about-nav a{background:#162d3d;color:#fff}html.bfs-dark-mode .bfs-about-what-card,html.bfs-dark-mode .bfs-about-documents{background:#162d3d;border-color:#294657;color:#fff}html.bfs-dark-mode .bfs-about-what-card p,html.bfs-dark-mode .bfs-about-document-copy p:last-child,html.bfs-dark-mode .bfs-about-section-head>p{color:#bfd0da}html.bfs-dark-mode .bfs-about-document-links>a{background:#112532;color:#fff}html.bfs-dark-mode .bfs-about-board-card{background:#f7fafc}
@media(max-width:980px){.bfs-about-hero,.bfs-about-section-head,.bfs-about-documents,.bfs-about-support{grid-template-columns:1fr}.bfs-about-nav{grid-template-columns:repeat(2,1fr);transform:none;margin-top:20px}.bfs-about-body{padding-top:50px!important}.bfs-about-what-grid,.bfs-about-board-grid{grid-template-columns:repeat(2,1fr)}.bfs-about-board-card.is-lead{grid-column:span 1}.bfs-about-board-card.is-lead .bfs-about-board-photo{aspect-ratio:4/3}}
@media(max-width:620px){.bfs-about-stats,.bfs-about-nav,.bfs-about-what-grid,.bfs-about-board-grid{grid-template-columns:1fr}.bfs-about-stats>div{min-height:100px}.bfs-about-section--board{padding:24px 18px}.bfs-about-documents,.bfs-about-support{padding:28px 20px}.bfs-about-document-links>a{grid-template-columns:44px 1fr auto;padding:15px}.bfs-about-what-card{min-height:240px}.bfs-about-icon{margin-bottom:30px}}

/* 3.8.17 – Wir über uns: harmonischer Seitenrahmen wie auf den übrigen Landingpages */
.bfs-about-hero,.bfs-about-nav,.bfs-about-body{width:100%;max-width:1280px;margin-left:auto!important;margin-right:auto!important}
.bfs-about-hero,.bfs-about-body{padding-left:clamp(22px,4vw,56px)!important;padding-right:clamp(22px,4vw,56px)!important}
.bfs-about-nav{max-width:calc(1280px - (2 * clamp(22px,4vw,56px)));}
.bfs-about-section--board,.bfs-about-documents,.bfs-about-support{overflow:hidden}
@media(max-width:620px){.bfs-about-hero,.bfs-about-body{padding-left:20px!important;padding-right:20px!important}.bfs-about-nav{max-width:calc(100% - 40px)}}

/* 3.8.18 – Wir über uns: ruhiger Introtext mit Vereinslogo + Kontoverbindung */
.bfs-about-hero{display:block!important;grid-template-columns:none!important;align-items:initial!important}
.bfs-about-hero .single-post-header__copy{max-width:none}
.bfs-about-intro{max-width:920px!important;font-size:inherit;line-height:inherit}
.bfs-about-intro p,.bfs-about-intro p:first-child{max-width:none;font-size:1rem!important;line-height:1.68!important;color:inherit!important}
.bfs-about-intro-logo{float:right;width:clamp(180px,22vw,270px);margin:2px 0 24px clamp(28px,5vw,64px);padding:0}
.bfs-about-intro-logo__img{display:block;width:100%;height:auto;object-fit:contain}
.bfs-about-intro:after{content:"";display:block;clear:both}
.bfs-about-stats{clear:both;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(26px,4vw,42px);max-width:100%}
.bfs-about-stats>div{min-height:108px}
.bfs-about-bank{max-width:720px;margin-top:24px;padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);box-shadow:0 12px 28px rgba(91,0,28,.15);backdrop-filter:blur(7px)}
.bfs-about-bank__head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.bfs-about-bank__head>span{width:42px;height:42px;border-radius:13px;background:#fff;color:#d60043;display:grid;place-items:center;flex:0 0 auto}.bfs-about-bank__head .bfs-icon{width:20px;height:20px}.bfs-about-bank__head small,.bfs-about-bank__head strong{display:block}.bfs-about-bank__head small{font-size:.7rem;line-height:1;text-transform:uppercase;letter-spacing:.08em;font-weight:900;opacity:.78;margin-bottom:4px}.bfs-about-bank__head strong{font-size:1.06rem}
.bfs-about-bank dl{margin:0;display:grid;gap:1px;border-radius:13px;overflow:hidden}.bfs-about-bank dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;padding:10px 13px;background:rgba(255,255,255,.10)}.bfs-about-bank dt{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.045em;opacity:.76}.bfs-about-bank dd{margin:0;font-weight:700;letter-spacing:.015em;overflow-wrap:anywhere}
@media(max-width:760px){.bfs-about-intro-logo{width:170px;margin-left:24px}.bfs-about-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.bfs-about-intro-logo{float:none;width:min(210px,64%);margin:18px 0 24px}.bfs-about-stats{grid-template-columns:1fr}.bfs-about-bank dl>div{grid-template-columns:1fr;gap:2px}.bfs-about-bank{padding:16px}.bfs-about-bank__head{align-items:flex-start}}


/* 3.8.19 – About page: true body typography + lightweight bank details */
.bfs-about-intro{
  max-width:980px!important;
  font-size:1.12rem!important;
  line-height:1.8!important;
  color:var(--ink)!important;
}
.bfs-about-intro p,
.bfs-about-intro p:first-child{
  max-width:none!important;
  margin:0 0 1.35em!important;
  font-size:1em!important;
  line-height:inherit!important;
  font-weight:400!important;
  letter-spacing:normal!important;
  color:inherit!important;
}
.bfs-about-intro p:last-child{margin-bottom:0!important}
.bfs-about-intro a{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.bfs-about-intro-logo{float:right;width:clamp(180px,21vw,260px);margin:6px 0 26px clamp(30px,5vw,64px)}

.bfs-about-bank{
  max-width:760px;
  margin:28px 0 0;
  padding:20px 0 0;
  border:0;
  border-top:1px solid rgba(255,255,255,.34);
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}
.bfs-about-bank__label{display:flex;align-items:center;gap:9px;margin:0 0 11px;color:#fff}
.bfs-about-bank__label>span{display:grid;place-items:center;width:26px;height:26px;border-radius:9px;background:rgba(255,255,255,.16);color:#fff}
.bfs-about-bank__label .bfs-icon{width:14px;height:14px}
.bfs-about-bank__label strong{font-size:.78rem;line-height:1;text-transform:uppercase;letter-spacing:.09em;font-weight:900}
.bfs-about-bank dl{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,2.25fr) minmax(0,1fr);gap:0;margin:0}
.bfs-about-bank dl>div{display:block;padding:8px 18px 7px 0;background:transparent;border:0}
.bfs-about-bank dl>div+div{padding-left:18px;border-left:1px solid rgba(255,255,255,.22)}
.bfs-about-bank dt{margin:0 0 4px;font-size:.67rem;line-height:1;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:rgba(255,255,255,.68)}
.bfs-about-bank dd{margin:0;font-size:.92rem;line-height:1.35;font-weight:700;letter-spacing:.005em;color:#fff;overflow-wrap:anywhere}
@media(max-width:760px){
  .bfs-about-intro{font-size:1.06rem!important;line-height:1.76!important}
  .bfs-about-bank dl{grid-template-columns:1fr}
  .bfs-about-bank dl>div{padding:9px 0!important}
  .bfs-about-bank dl>div+div{border-left:0;border-top:1px solid rgba(255,255,255,.17)}
}
@media(max-width:520px){
  .bfs-about-intro-logo{float:none;width:min(210px,64%);margin:18px 0 24px}
  .bfs-about-bank{padding-top:17px}
}


/* BFS 3.8.21 – Kontaktformular an die globale Formular- und Buttonsprache angleichen */
.bfs-contact-form .bfs-native-contact{gap:20px}
.bfs-contact-form .bfs-contact-form-grid{gap:18px 16px!important}
.bfs-contact-form .bfs-contact-form-grid label>span{margin:0 0 7px!important;color:var(--ink)!important;font-size:.94rem!important;font-weight:800!important;line-height:1.35!important}
.bfs-contact-form .bfs-native-contact input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]):not([type=hidden]),
.bfs-contact-form .bfs-native-contact textarea,
.bfs-contact-form .bfs-native-contact select{border-radius:13px!important;border-color:#c7d6df!important;box-shadow:0 1px 2px rgba(20,52,76,.035)!important}
.bfs-contact-form .bfs-native-contact input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]):not([type=hidden]):hover,
.bfs-contact-form .bfs-native-contact textarea:hover,
.bfs-contact-form .bfs-native-contact select:hover{border-color:#a9c3d1!important}
.bfs-contact-form .bfs-contact-privacy{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  align-items:start!important;
  column-gap:11px!important;
  width:100%!important;
  margin:2px 0 0!important;
  padding:15px 16px!important;
  border:1px solid #d7e3e9!important;
  border-radius:13px!important;
  background:#f7fafb!important;
  color:var(--ink)!important;
  cursor:pointer;
}
.bfs-contact-form .bfs-contact-privacy>input[type=checkbox]{
  position:static!important;
  display:block!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  margin:2px 0 0!important;
  padding:0!important;
  align-self:start!important;
  accent-color:var(--blue);
  box-shadow:none!important;
  transform:none!important;
}
.bfs-contact-form .bfs-contact-privacy>span{
  display:block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  color:var(--ink)!important;
  font-size:.9rem!important;
  font-weight:600!important;
  line-height:1.55!important;
}
.bfs-contact-form .bfs-contact-privacy>span a{font-weight:700;color:var(--blue)!important;text-decoration-thickness:1px;text-underline-offset:2px}
.bfs-contact-form .bfs-contact-privacy:focus-within{border-color:var(--blue)!important;box-shadow:0 0 0 4px rgba(36,150,209,.12)!important}
.bfs-contact-form .bfs-native-contact button[type=submit]{
  min-height:50px!important;
  padding:13px 24px!important;
  border-radius:15px!important;
  background:var(--blue)!important;
  color:#fff!important;
  box-shadow:0 7px 16px rgba(15,63,92,.18)!important;
  font-weight:900!important;
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease!important;
}
.bfs-contact-form .bfs-native-contact button[type=submit]:hover,
.bfs-contact-form .bfs-native-contact button[type=submit]:focus-visible{background:var(--red)!important;transform:translateY(-2px);box-shadow:0 10px 20px rgba(125,25,48,.22)!important}
.bfs-contact-form .bfs-native-contact button[type=submit] b{display:inline-block;margin-left:8px;transition:transform .18s ease}
.bfs-contact-form .bfs-native-contact button[type=submit]:hover b{transform:translateX(3px)}
html.bfs-dark-mode .bfs-contact-form .bfs-contact-privacy{background:#132b3d!important;border-color:#314b5e!important;color:#eef5f8!important}
html.bfs-dark-mode .bfs-contact-form .bfs-contact-privacy>span{color:#eef5f8!important}
@media(max-width:760px){
  .bfs-contact-form .bfs-contact-privacy{grid-template-columns:22px minmax(0,1fr)!important;padding:14px!important;column-gap:10px!important}
}

/* Stadtfeld-Inhalte frontend styles are bundled in frontend.css (3.8.39). */

/* 3.8.46 – Titelbereiche der Service-/Rechteseiten wie „Wir über uns“ zentrieren. */
.bfs-contact-page>.standard-page-header,
.bfs-supporters-page>.standard-page-header,
.bfs-imprint-page>.standard-page-header,
.bfs-privacy-page>.standard-page-header{width:100%;max-width:1280px;margin-left:auto!important;margin-right:auto!important;padding-left:clamp(22px,4vw,56px)!important;padding-right:clamp(22px,4vw,56px)!important}
.bfs-contact-page>.standard-page-header .single-post-header__copy,
.bfs-supporters-page>.standard-page-header .single-post-header__copy,
.bfs-imprint-page>.standard-page-header .single-post-header__copy,
.bfs-privacy-page>.standard-page-header .single-post-header__copy{max-width:none}
@media(max-width:620px){.bfs-contact-page>.standard-page-header,.bfs-supporters-page>.standard-page-header,.bfs-imprint-page>.standard-page-header,.bfs-privacy-page>.standard-page-header{padding-left:20px!important;padding-right:20px!important}}

/* 3.8.47 – Einheitlicher Abstand zwischen Titelbereich und Inhalt */
.bfs-contact-page>.standard-page-header,
.bfs-supporters-page>.standard-page-header,
.bfs-imprint-page>.standard-page-header,
.bfs-privacy-page>.standard-page-header{padding-bottom:clamp(30px,4vw,50px)!important}
.bfs-contact-page>.bfs-contact-shell,
.bfs-contact-page>.bfs-contact-shell--clean,
.bfs-supporters-page>.bfs-supporters-shell{padding-top:clamp(24px,3vw,34px)!important}
@media(max-width:620px){
.bfs-contact-page>.standard-page-header,
.bfs-supporters-page>.standard-page-header,
.bfs-imprint-page>.standard-page-header,
.bfs-privacy-page>.standard-page-header{padding-bottom:26px!important}
.bfs-contact-page>.bfs-contact-shell,
.bfs-contact-page>.bfs-contact-shell--clean,
.bfs-supporters-page>.bfs-supporters-shell{padding-top:20px!important}}


/* 3.8.51 – Veranstaltungsarchiv: kompakter Hero auf Smartphones */
@media (max-width:720px){
  .events-hero{
    display:block;
    position:relative;
    margin:0;
    padding:34px 22px 42px;
    min-height:0;
    border-radius:0 0 28px 28px;
    overflow:hidden;
  }
  .events-hero:before{
    width:190px;
    height:190px;
    right:-88px;
    top:-96px;
  }
  .events-hero>div:first-child{
    position:relative;
    z-index:2;
  }
  .events-hero h1{
    font-size:clamp(2.65rem,11.3vw,3.05rem);
    line-height:.94;
    letter-spacing:-.055em;
    margin:0 0 24px;
    max-width:100%;
  }
  .events-hero>div:first-child>p:last-child{
    width:calc(100% - 150px);
    max-width:none;
    min-height:138px;
    margin:0;
    font-size:1.02rem;
    line-height:1.55;
  }
  .events-hero-badge{
    position:absolute;
    right:20px;
    bottom:34px;
    width:126px;
    margin:0;
    transform:rotate(-6deg);
    box-shadow:0 18px 40px rgba(229,39,84,.2);
  }
  .events-hero-badge span{font-size:.61rem;letter-spacing:.1em}
  .events-hero-badge strong{font-size:1.25rem;line-height:.98;max-width:96px;margin-top:5px}
  .events-hero-badge i{font-size:1.7rem;margin-top:6px}
}
@media (max-width:390px){
  .events-hero h1{font-size:2.5rem}
  .events-hero>div:first-child>p:last-child{width:calc(100% - 126px);font-size:.98rem}
  .events-hero-badge{width:110px;right:16px;bottom:38px}
  .events-hero-badge strong{font-size:1.08rem;max-width:86px}
}


/* 3.8.52 – Veranstaltungsarchiv mobil: Badge höher, Hero kompakter */
@media (max-width:720px){
  .events-hero{padding-bottom:26px}
  .events-hero>div:first-child>p:last-child{min-height:118px}
  .events-hero-badge{bottom:58px}
  .events-toolbar{padding-top:18px}
}
@media (max-width:390px){
  .events-hero{padding-bottom:24px}
  .events-hero>div:first-child>p:last-child{min-height:112px}
  .events-hero-badge{bottom:56px}
  .events-toolbar{padding-top:16px}
}

/* 4.4.7 — Mobile event cards: final calm hierarchy */
.event-link--mobile{display:none}
@media (max-width:720px){
  .event-list-card{
    position:relative!important;
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr)!important;
    grid-template-areas:"date actions" "main main"!important;
    gap:18px 12px!important;
    align-items:start!important;
    padding:18px!important;
    overflow:hidden!important;
  }
  .event-list-card .event-date{
    grid-area:date!important;
    width:72px!important;
    max-width:72px!important;
    height:72px!important;
    min-height:72px!important;
    margin:0!important;
    padding:8px 5px!important;
    border-radius:16px!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
    overflow:hidden!important;
  }
  .event-list-card .event-date span{
    font-size:.64rem!important;
    line-height:1!important;
  }
  .event-list-card .event-date strong{
    font-size:1.75rem!important;
    line-height:.95!important;
    margin:2px 0!important;
  }
  .event-list-card .event-date small{
    font-size:.63rem!important;
    line-height:1!important;
  }
  .event-list-card .event-list-actions{
    grid-area:actions!important;
    min-width:0!important;
    width:100%!important;
    margin:0!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-end!important;
  }
  .event-list-card .event-list-actions .event-link--desktop{display:none!important}
  .event-list-card .event-list-actions .bfs-event-calendar-action,
  .event-list-card .event-list-actions .event-calendar-link{
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .event-list-card .event-list-actions .bfs-event-calendar-action{
    min-height:54px!important;
    padding:.52rem .72rem!important;
    gap:.55rem!important;
    border-radius:16px!important;
    justify-content:flex-start!important;
    box-shadow:0 5px 15px rgba(16,47,80,.07)!important;
  }
  .event-list-card .event-list-actions .bfs-event-calendar-action__icon{
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
  }
  .event-list-card .event-list-actions .bfs-event-calendar-action__icon svg{
    width:19px!important;
    height:19px!important;
  }
  /* Visually shorter on smartphones; the full accessible name remains on the link. */
  .event-list-card .event-list-actions .bfs-event-calendar-action__text strong{
    font-size:0!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .event-list-card .event-list-actions .bfs-event-calendar-action__text strong::after{
    content:"Termin speichern";
    font-size:.84rem!important;
    line-height:1.05!important;
    font-weight:900!important;
    letter-spacing:0!important;
  }
  .event-list-card .event-main{
    grid-area:main!important;
    min-width:0!important;
    width:100%!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .event-list-card .event-main h2{
    order:1!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 10px!important;
    font-size:clamp(1.35rem,6vw,1.7rem)!important;
    line-height:1.08!important;
    overflow-wrap:anywhere!important;
  }
  .event-list-card .event-main p{
    order:2!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 16px!important;
    font-size:.96rem!important;
    line-height:1.55!important;
  }
  .event-list-card .event-main .event-facts{
    order:3!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
    margin:0!important;
    font-size:.82rem!important;
    line-height:1.35!important;
  }
  .event-list-card .event-main .event-facts span{
    display:block!important;
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }
  .event-list-card .event-main .event-link--mobile{
    display:inline-flex!important;
    order:4!important;
    align-self:flex-start!important;
    margin:12px 0 0!important;
    padding:5px 0!important;
    font-size:.86rem!important;
  }
  .event-list-card .event-main .event-tags{
    position:static!important;
    order:5!important;
    width:100%!important;
    max-width:none!important;
    margin:14px 0 0!important;
    padding:12px 0 0!important;
    border-top:1px solid #e3ebf0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    flex-wrap:wrap!important;
    text-align:left!important;
  }
  .event-list-card .event-main .event-tag,
  .event-list-card .event-main .event-tag.blue,
  .event-list-card .event-main .event-tag.green,
  .event-list-card .event-main .event-tag.red,
  .event-list-card .event-main .event-tag.cyan,
  .event-list-card .event-main .event-tag.yellow{
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    max-width:100%!important;
    padding:4px 8px!important;
    margin:0!important;
    border:0!important;
    border-radius:999px!important;
    background:#eaf7fd!important;
    box-shadow:none!important;
    color:#0879b2!important;
    font-size:.59rem!important;
    line-height:1.2!important;
    font-weight:850!important;
    letter-spacing:.075em!important;
    text-transform:uppercase!important;
    white-space:normal!important;
  }
  html.bfs-dark-mode .event-list-card .event-main .event-tags{
    border-top-color:#30495d!important;
  }
  html.bfs-dark-mode .event-list-card .event-main .event-tag,
  html.bfs-dark-mode .event-list-card .event-main .event-tag.blue,
  html.bfs-dark-mode .event-list-card .event-main .event-tag.green,
  html.bfs-dark-mode .event-list-card .event-main .event-tag.red,
  html.bfs-dark-mode .event-list-card .event-main .event-tag.cyan,
  html.bfs-dark-mode .event-list-card .event-main .event-tag.yellow{
    background:#213a4f!important;
    color:#c0deef!important;
  }
}
@media (max-width:390px){
  .event-list-card{
    grid-template-columns:66px minmax(0,1fr)!important;
    gap:16px 10px!important;
    padding:16px!important;
  }
  .event-list-card .event-date{
    width:66px!important;
    max-width:66px!important;
    height:68px!important;
    min-height:68px!important;
  }
  .event-list-card .event-date strong{font-size:1.58rem!important}
  .event-list-card .event-list-actions .bfs-event-calendar-action{
    padding:.48rem .62rem!important;
    gap:.45rem!important;
  }
  .event-list-card .event-list-actions .bfs-event-calendar-action__icon{
    flex-basis:32px!important;
    width:32px!important;
    height:32px!important;
  }
  .event-list-card .event-list-actions .bfs-event-calendar-action__text strong::after{
    font-size:.78rem!important;
  }
  .event-list-card .event-main h2{font-size:1.3rem!important}
}


/* 3.8.57 – Urban Sticker event badge */
.events-hero-badge--urban_sticker{border-radius:51% 49% 48% 52%/49% 52% 48% 51%!important;background:var(--event-badge-color,#2451b2)!important;border:5px solid rgba(255,255,255,.96);box-shadow:0 16px 34px color-mix(in srgb,var(--event-badge-color,#2451b2) 18%,transparent),0 2px 0 rgba(16,35,63,.06);transform:rotate(-2deg);align-items:flex-start;justify-content:center;padding:clamp(34px,3.2vw,50px);overflow:hidden}
.events-hero-badge--urban_sticker:after{content:"";position:absolute;right:-2px;bottom:7%;width:14%;height:14%;background:linear-gradient(135deg,rgba(255,255,255,.98) 0 48%,rgba(226,233,239,.96) 49% 100%);border-radius:0 0 72% 0;transform:rotate(5deg);box-shadow:3px 5px 8px rgba(16,35,63,.10);pointer-events:none}
.events-hero-badge--urban_sticker .events-hero-badge__line1,.events-hero-badge--urban_sticker .events-hero-badge__line2,.events-hero-badge--urban_sticker .events-hero-badge__line3{display:block;text-align:left;text-transform:uppercase;line-height:.9;max-width:100%;margin:0;font-style:normal;font-weight:900;white-space:nowrap}
.events-hero-badge--urban_sticker .events-hero-badge__line1{color:var(--event-badge-line1,#fff);font-size:clamp(1.05rem,1.8vw,2rem);letter-spacing:-.015em}
.events-hero-badge--urban_sticker .events-hero-badge__line2{color:var(--event-badge-line2,#62b52f);font-size:clamp(1.45rem,2.55vw,2.85rem);letter-spacing:-.035em;margin-top:4px}
.events-hero-badge--urban_sticker .events-hero-badge__line3row{display:flex;align-items:baseline;gap:.28em;max-width:100%;margin-top:4px;position:relative;z-index:2}
.events-hero-badge--urban_sticker .events-hero-badge__line3{color:var(--event-badge-line3,#e40046);font-size:clamp(1.55rem,2.75vw,3rem);letter-spacing:-.035em}
.events-hero-badge--urban_sticker .events-hero-badge__icon{color:var(--event-badge-line3,#e40046);font-size:clamp(.9rem,1.55vw,1.55rem);line-height:1;margin:0;position:relative;z-index:2}
.events-hero-badge--classic .events-hero-badge__line3row{display:flex;align-items:center;justify-content:center;gap:.3em}.events-hero-badge--classic .events-hero-badge__line3{display:block;font-size:clamp(1.4rem,2.4vw,2.5rem);font-weight:900;line-height:1;color:var(--event-badge-line3,#fff);text-align:center}.events-hero-badge--classic .events-hero-badge__icon{color:var(--event-badge-line3,#fff);font-style:normal}
@media(max-width:720px){.events-hero-badge--urban_sticker{padding:24px 22px;border-width:4px;transform:rotate(-2deg)}.events-hero-badge--urban_sticker .events-hero-badge__line1{font-size:.82rem!important}.events-hero-badge--urban_sticker .events-hero-badge__line2{font-size:1.16rem!important;line-height:.9}.events-hero-badge--urban_sticker .events-hero-badge__line3{font-size:1.22rem!important;line-height:.9}.events-hero-badge--urban_sticker .events-hero-badge__icon{font-size:.8rem!important}.events-hero-badge--urban_sticker:after{width:12%;height:12%}}
@media(prefers-reduced-motion:no-preference) and (hover:hover){.events-hero-badge--urban_sticker{transition:transform .25s ease,box-shadow .25s ease}.events-hero-badge--urban_sticker:hover{transform:rotate(-1deg) translateY(-3px);box-shadow:0 20px 42px color-mix(in srgb,var(--event-badge-color,#2451b2) 22%,transparent),0 2px 0 rgba(16,35,63,.06)}}

/* Testimonials landing page CTA – Theme 3.8.59 */

.home-testimonials__cta{display:flex;justify-content:flex-end;margin-top:clamp(20px,2.5vw,30px)}
.home-testimonials__cta-link{display:inline-flex;align-items:center;gap:.55rem;padding:.78rem 1.08rem;border:1px solid rgba(36,150,209,.24);border-radius:999px;background:#fff;color:var(--blue,#2496d1);font-weight:700;line-height:1.2;text-decoration:none;box-shadow:0 7px 20px rgba(23,44,72,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.home-testimonials__cta-link:hover,.home-testimonials__cta-link:focus-visible{transform:translateY(-2px);border-color:rgba(36,150,209,.46);box-shadow:0 11px 25px rgba(23,44,72,.1);text-decoration:none}
@media(max-width:640px){
 .home-testimonials__cta{justify-content:flex-start;margin-top:18px}
 .home-testimonials__cta-link{width:100%;justify-content:center;text-align:center}
}
@media(prefers-reduced-motion:reduce){
 .home-testimonials__cta-link{transition:none!important}
 .home-testimonials__cta-link:hover,.home-testimonials__cta-link:focus-visible{transform:none}
}


/* 3.8.60 – einheitliche Startseiten-CTAs */
.home-section-cta{display:flex;justify-content:flex-end;margin-top:clamp(20px,2.5vw,30px)}
.home-section-cta-link{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:.78rem 1.08rem;border:1px solid rgba(36,150,209,.24);border-radius:999px;background:#fff;color:var(--blue,#2496d1);font-weight:700;line-height:1.2;text-decoration:none;box-shadow:0 7px 20px rgba(23,44,72,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.home-section-cta-link:hover,.home-section-cta-link:focus-visible{transform:translateY(-2px);border-color:rgba(36,150,209,.46);box-shadow:0 11px 25px rgba(23,44,72,.1);text-decoration:none}
.news-panel .section-head.compact .home-section-cta-link--news{flex:0 0 auto;width:auto;margin-left:auto}
@media(max-width:640px){
 .home-section-cta{justify-content:flex-start;margin-top:18px}
 .home-section-cta-link{width:100%;text-align:center}
 .news-panel .section-head.compact .home-section-cta-link--news{width:100%;margin-left:0;margin-top:10px}
}
@media(prefers-reduced-motion:reduce){
 .home-section-cta-link{transition:none!important}
 .home-section-cta-link:hover,.home-section-cta-link:focus-visible{transform:none}
}


/* 3.8.61 – plakativer Hero für Veranstaltungen */
.events-hero.events-hero--poster{
  min-height:540px;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:clamp(34px,5vw,86px);
  padding:clamp(54px,6vw,82px) clamp(28px,6vw,92px);
  background:
    radial-gradient(circle at 86% 14%,rgba(124,179,66,.25) 0 105px,transparent 106px),
    radial-gradient(circle at 73% 84%,rgba(229,39,84,.10) 0 155px,transparent 156px),
    linear-gradient(128deg,#eef8ff 0%,#ffffff 48%,#f3f9ed 100%);
}
.events-hero.events-hero--poster:before{
  width:470px;
  height:470px;
  right:-260px;
  top:-245px;
  background:var(--green);
  opacity:.96;
}
.events-hero--poster .events-hero__content{
  position:relative;
  z-index:2;
  max-width:900px;
}
.events-hero--poster .events-hero__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin-bottom:16px;
  color:var(--red);
  font-size:.86rem;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.events-hero--poster .events-hero__eyebrow:before{
  content:"";
  width:34px;
  height:4px;
  border-radius:999px;
  background:var(--green);
}
.events-hero--poster h1{
  max-width:900px;
  margin-bottom:20px;
  font-size:clamp(4rem,7.7vw,8.4rem);
  color:var(--blue);
}
.events-hero--poster .events-hero__lead{
  max-width:690px!important;
  margin:0;
  color:#43576b!important;
  font-size:clamp(1.08rem,1.55vw,1.3rem)!important;
  line-height:1.58!important;
  font-weight:600;
}
.events-hero__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:14px;
  margin-top:32px;
}
.events-hero__stat{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:210px;
  padding:14px 19px;
  border:1px solid rgba(36,150,209,.17);
  border-radius:18px;
  background:rgba(255,255,255,.78);
  box-shadow:0 12px 34px rgba(23,44,72,.07);
  backdrop-filter:blur(8px);
}
.events-hero__stat strong{
  color:var(--red);
  font-size:clamp(2rem,3vw,3rem);
  line-height:1;
  letter-spacing:-.06em;
}
.events-hero__stat span{
  max-width:92px;
  color:var(--ink);
  font-size:.88rem;
  font-weight:900;
  line-height:1.14;
}
.events-hero__calendar{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:min(100%,320px);
  padding:12px 14px;
  border:1px solid rgba(36,150,209,.18);
  border-radius:18px;
  background:var(--blue);
  color:#fff!important;
  text-decoration:none!important;
  box-shadow:0 14px 34px rgba(36,150,209,.18);
  transition:transform .2s ease,box-shadow .2s ease;
}
.events-hero__calendar:hover,
.events-hero__calendar:focus-visible{
  color:#fff!important;
  transform:translateY(-2px);
  box-shadow:0 18px 40px rgba(36,150,209,.25);
}
.events-hero__calendar-icon{
  flex:0 0 39px;
  width:39px;
  height:39px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--green);
  color:#fff;
  font-size:1.4rem;
  font-weight:900;
}
.events-hero__calendar>span:nth-child(2){
  display:flex;
  flex:1;
  min-width:0;
  flex-direction:column;
}
.events-hero__calendar strong{
  font-size:.95rem;
  line-height:1.05;
}
.events-hero__calendar small{
  margin-top:3px;
  color:rgba(255,255,255,.78);
  font-size:.72rem;
  line-height:1.2;
}
.events-hero__calendar b{
  font-size:1.2rem;
}
@media(max-width:1050px){
  .events-hero.events-hero--poster{
    min-height:500px;
    grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);
    gap:28px;
  }
  .events-hero--poster h1{font-size:clamp(3.5rem,7.4vw,6.5rem)}
}
@media(max-width:720px){
  .events-hero.events-hero--poster{
    padding:36px 20px 34px;
    grid-template-columns:1fr;
    min-height:auto;
    background:
      radial-gradient(circle at 112% 4%,rgba(124,179,66,.22) 0 100px,transparent 101px),
      linear-gradient(145deg,#eef8ff 0%,#fff 58%,#f5faef 100%);
  }
  .events-hero.events-hero--poster:before{display:none}
  .events-hero--poster h1{
    margin-bottom:16px;
    font-size:clamp(3.05rem,14.5vw,4.65rem);
  }
  .events-hero--poster .events-hero__lead{
    font-size:.98rem!important;
    line-height:1.52!important;
  }
  .events-hero__meta{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:20px;
  }
  .events-hero__stat{
    min-width:0;
    width:100%;
    padding:12px 14px;
  }
  .events-hero__stat strong{font-size:2rem}
  .events-hero__stat span{max-width:none}
  .events-hero__calendar{
    width:100%;
    min-width:0;
  }
  /* Der Sticker wird vom Veranstaltungsplugin mobil weiterhin neben den Introtext gesetzt. */
  .events-hero--poster .bfsx-mobile-intro-row-3629{
    align-items:center!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .events-hero__calendar{transition:none!important}
  .events-hero__calendar:hover,.events-hero__calendar:focus-visible{transform:none}
}


/* 3.8.62 – alternative Hero-Variante „Knallig“ */
.events-hero.events-hero--poster.events-hero--bold{
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 10%,rgba(255,255,255,.20) 0 90px,transparent 91px),
    radial-gradient(circle at 70% 82%,rgba(255,255,255,.11) 0 150px,transparent 151px),
    linear-gradient(125deg,#082d52 0%,#0b4f86 44%,#1f8fc8 68%,#7cb342 100%);
  color:#fff;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.16);
}
.events-hero.events-hero--poster.events-hero--bold:before{
  display:block;
  width:520px;
  height:520px;
  right:-235px;
  top:-260px;
  background:#e52754;
  opacity:.95;
}
.events-hero.events-hero--poster.events-hero--bold:after{
  content:"";
  position:absolute;
  left:-110px;
  bottom:-190px;
  width:390px;
  height:390px;
  border-radius:50%;
  border:78px solid rgba(124,179,66,.34);
  transform:rotate(-12deg);
  pointer-events:none;
}
.events-hero--bold .breadcrumbs,
.events-hero--bold .breadcrumbs a{
  color:rgba(255,255,255,.78)!important;
}
.events-hero--bold .events-hero__eyebrow{
  color:#fff;
}
.events-hero--bold .events-hero__eyebrow:before{
  background:#e52754;
}
.events-hero--bold h1{
  color:#fff;
  text-shadow:0 5px 28px rgba(0,0,0,.15);
}
.events-hero--bold .events-hero__lead{
  color:rgba(255,255,255,.88)!important;
  max-width:720px!important;
}
.events-hero--bold .events-hero__stat{
  border-color:rgba(255,255,255,.3);
  background:rgba(255,255,255,.94);
  box-shadow:10px 12px 0 rgba(229,39,84,.88),0 18px 40px rgba(0,0,0,.14);
  transform:rotate(-1.2deg);
}
.events-hero--bold .events-hero__stat strong{
  color:#e52754;
}
.events-hero--bold .events-hero__calendar{
  border:2px solid rgba(255,255,255,.72);
  background:#7cb342;
  box-shadow:10px 12px 0 rgba(8,45,82,.72),0 18px 40px rgba(0,0,0,.15);
  transform:rotate(1deg);
}
.events-hero--bold .events-hero__calendar:hover,
.events-hero--bold .events-hero__calendar:focus-visible{
  transform:translateY(-2px) rotate(1deg);
  box-shadow:13px 15px 0 rgba(8,45,82,.72),0 23px 44px rgba(0,0,0,.18);
}
.events-hero--bold .events-hero__calendar-icon{
  background:#e52754;
}
.events-hero--bold .events-hero-badge{
  filter:drop-shadow(12px 16px 0 rgba(8,45,82,.27)) drop-shadow(0 24px 35px rgba(0,0,0,.18));
}
@media(min-width:721px){
  .events-hero--bold h1{
    font-size:clamp(4.6rem,8.8vw,9.7rem);
    letter-spacing:-.065em;
  }
  .events-hero--bold .events-hero__meta{
    margin-top:36px;
  }
}
@media(max-width:720px){
  .events-hero.events-hero--poster.events-hero--bold{
    background:
      radial-gradient(circle at 112% 0%,rgba(229,39,84,.52) 0 92px,transparent 93px),
      linear-gradient(155deg,#082d52 0%,#0c5d98 62%,#7cb342 100%);
  }
  .events-hero.events-hero--poster.events-hero--bold:after{
    width:250px;
    height:250px;
    left:-155px;
    bottom:-145px;
    border-width:54px;
  }
  .events-hero--bold h1{
    color:#fff;
  }
  .events-hero--bold .events-hero__lead{
    color:rgba(255,255,255,.9)!important;
  }
  .events-hero--bold .events-hero__stat{
    transform:none;
    box-shadow:6px 7px 0 rgba(229,39,84,.86),0 12px 28px rgba(0,0,0,.12);
  }
  .events-hero--bold .events-hero__calendar{
    transform:none;
    box-shadow:6px 7px 0 rgba(8,45,82,.7),0 12px 28px rgba(0,0,0,.12);
  }
  .events-hero--bold .events-hero__calendar:hover,
  .events-hero--bold .events-hero__calendar:focus-visible{
    transform:translateY(-2px);
  }
}


/*
 * BFS 2.9.1 quality hotfix.
 *
 * The first 2.9.0 quality layer used global layout containment and
 * overflow-wrap:anywhere. Both declarations can change an existing page's
 * formatting context and caused full-width sections, menus and text to render
 * differently. This file intentionally contains only non-invasive additions.
 */
html { scroll-padding-top: 7rem; }

/* Preserve normal word wrapping. Only genuinely unbreakable content may wrap. */
.entry-content a,
.single-article__content a,
.page-content__inner a,
.footer-contact-list a {
    overflow-wrap: break-word;
    word-break: normal;
}

/* One physical logo element per location. JavaScript only swaps its source. */
.bfs-brand-link,
.footer-brand { display: block; position: relative; }
.bfs-theme-logo { display: block !important; max-width: 100%; object-fit: contain; background: transparent !important; border-radius: 0 !important; padding: 0 !important; filter: none !important; }
.bfs-theme-logo--header { width: 92px !important; height: 76px !important; }
.bfs-theme-logo--footer { width: 122px !important; height: 98px !important; }
/* Legacy paired-logo elements must never appear if stale markup survives a cache layer. */
.bfs-light-logo,
.bfs-dark-logo,
.bfs-dark-logo-link,
.footer-dark-logo { display: none !important; }

/* Strong keyboard focus, without changing normal control dimensions. */
:where(a, button, input, select, textarea, summary):focus-visible {
    outline: 3px solid #f45126 !important;
    outline-offset: 3px !important;
}

/* Minimum touch targets only where they do not alter text links or compact UI. */
:where(.btn, .header-cta, .menu-toggle, .submenu-toggle, .footer-action, input[type="submit"], button[type="submit"]) {
    min-height: 44px;
}

img, video, iframe { max-width: 100%; height: auto; }
.entry-content iframe,
.single-article__content iframe { max-width: 100%; }
.entry-content table,
.single-article__content table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}
.entry-content pre,
.single-article__content pre { max-width: 100%; overflow: auto; }

/* SVG menu indicators retain their designed size without forcing text wrapping. */
.bfs-menu-arrow {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 1.25rem !important;
    height: 1.25rem !important;
    flex: 0 0 1.25rem !important;
    margin-inline-start: .65rem !important;
}
.bfs-menu-arrow svg {
    display: block;
    width: 100% !important;
    height: 100% !important;
    stroke: currentColor !important;
    stroke-width: 2.75 !important;
    fill: none !important;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 1100px) {
    .header-inner { gap: .6rem; }
    .main-nav .menu > li > a { line-height: 1.2; }
    .header-cta { white-space: nowrap; }
}

@media (max-width: 782px) {
    html { scroll-padding-top: 5rem; }
    .entry-content,
    .page-content__inner,
    .single-article__content {
        padding-inline: max(18px, env(safe-area-inset-left)) !important;
    }
    .bfs-lightbox__stage { padding-inline: 8px; }
    .bfs-lightbox__prev,
    .bfs-lightbox__next { position: absolute; z-index: 2; }
    .bfs-lightbox__prev { left: 8px; }
    .bfs-lightbox__next { right: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}

@media (prefers-contrast: more) {
    :where(a, button, input, select, textarea, summary) { outline-offset: 4px; }
    .btn, .header-cta { border-width: 2px !important; }
}


/* BFS 2.9.4 definitive single-logo fix. */
.site-header .bfs-theme-logo--header,
.site-footer .bfs-theme-logo--footer {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
html.bfs-dark-mode .site-footer .bfs-theme-logo--footer,
html.bfs-dark-mode .site-header .bfs-theme-logo--header {
    display: block !important;
}
@media (max-width: 782px) {
    .bfs-theme-logo--header { width: 64px !important; height: 60px !important; }
    .bfs-theme-logo--footer { width: 104px !important; height: 84px !important; }
}

/* BFS 2.9.5: footer logo must remain visible in both color modes.
 * Older theme generations hid .footer-brand in dark mode because they used
 * two separate logo links. The current markup has one link and one image;
 * JavaScript swaps only the src attribute. */
html .site-footer .footer-brand,
html.bfs-dark-mode .site-footer .footer-brand {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
html .site-footer .footer-brand .bfs-theme-logo--footer,
html.bfs-dark-mode .site-footer .footer-brand .bfs-theme-logo--footer {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}



/* BFS 3.0 */
.bfs-selected-supporters{margin:clamp(44px,7vw,90px) 0 20px;padding:clamp(26px,4vw,44px);border:1px solid #dce7ef;border-radius:30px;background:linear-gradient(135deg,#f3f9ff,#fff 55%,#f2faed)}
.bfs-selected-supporters__head{display:flex;align-items:center;gap:16px;margin-bottom:24px}.bfs-selected-supporters__head>span{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:#d60043;color:#fff}.bfs-selected-supporters__head svg{width:27px;height:27px}.bfs-selected-supporters__head p{margin:0;color:#5c6b7e;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.bfs-selected-supporters__head h2{margin:3px 0 0;font-size:clamp(1.45rem,2.6vw,2.3rem)}
.bfs-selected-supporters__grid{display:grid;grid-template-columns:repeat(var(--bfs-supporter-columns,4),minmax(0,1fr));gap:14px}.bfs-selected-supporters__item{display:grid;place-items:center;gap:12px;min-height:150px;padding:20px;border:1px solid #e0e8ef;border-radius:20px;background:#fff;color:#10233d;text-align:center;transition:.2s ease}.bfs-selected-supporters__item:hover{transform:translateY(-3px);border-color:#3598cc;box-shadow:0 12px 28px rgba(22,53,83,.1)}.bfs-selected-supporters__item img{width:100%;height:72px;object-fit:contain}.bfs-selected-supporters__item span{font-weight:800}
.event-template-v3 .event-date-ticket{position:absolute;right:clamp(24px,7vw,110px);top:50%;transform:translateY(-50%) rotate(2deg);display:grid;place-items:center;width:170px;min-height:210px;padding:18px;border-radius:28px;background:#fff;color:#10233d;box-shadow:0 26px 65px rgba(0,0,0,.28);border:6px solid rgba(255,255,255,.55)}.event-date-ticket span{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:900;color:#3598cc}.event-date-ticket strong{font-size:5rem;line-height:.9;color:#d60043}.event-date-ticket small{font-size:1.25rem;font-weight:900}.event-date-ticket em{font-style:normal;font-weight:900;color:#63b331;margin-top:7px}
.event-jumpbar-v3{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;padding:18px clamp(20px,5vw,70px);background:#fff;border-bottom:1px solid #dce5ed;box-shadow:0 12px 30px rgba(12,36,61,.08);position:sticky;top:0;z-index:20}.event-jumpbar-v3 a{display:flex;align-items:center;gap:11px;padding:14px 17px;border-radius:17px;background:#f4f8fb;color:#10233d;border:1px solid #e0e9f0}.event-jumpbar-v3 a:hover{background:#3598cc;color:#fff;transform:translateY(-2px)}.event-jumpbar-v3 span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#fff;color:#3598cc}.event-jumpbar-v3 svg{width:20px;height:20px}.event-jumpbar-v3 a:hover span{color:#d60043}
.event-overview-v3{display:block;max-width:1320px;margin:auto;padding:70px clamp(20px,5vw,70px)}.event-facts-strip{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:12px;margin-bottom:50px}.event-facts-strip>div,.event-facts-calendar{display:flex;align-items:center;gap:13px;padding:18px;border:1px solid #dfe8ef;border-radius:19px;background:#fff;box-shadow:0 8px 24px rgba(20,48,76,.06)}.event-facts-strip svg{width:25px;height:25px;color:#3598cc}.event-facts-strip small,.event-facts-strip strong,.event-facts-strip em{display:block}.event-facts-strip small{color:#718093;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.event-facts-strip strong{margin-top:2px}.event-facts-strip em{font-style:normal;color:#66758a;font-size:.9rem}.event-facts-calendar{justify-content:center;background:#63b331;color:#fff;font-weight:900}.event-intro-copy{max-width:980px;margin:auto}.event-intro-copy>h2{font-size:clamp(2rem,4vw,4.2rem);line-height:1.02;margin-bottom:26px}
.event-detail-section-v3{max-width:1240px;margin:0 auto 34px;padding:0 clamp(20px,4vw,50px)}.event-detail-section-v3 .event-detail-section__head{display:flex;align-items:center;gap:18px;padding:22px 26px;border-radius:25px 25px 0 0;background:#102f50;color:#fff}.event-detail-section-v3 .event-section-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#fff;color:#3598cc}.event-detail-section-v3 .event-section-icon svg{width:30px;height:30px}.event-detail-section-v3 .event-detail-section__head small{text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#b9d6e8}.event-detail-section-v3 .event-detail-section__head h2{margin:2px 0 0;font-size:clamp(1.7rem,3vw,2.8rem)}.event-detail-section-v3 .event-detail-section__content{padding:clamp(25px,4vw,46px);border:1px solid #dce6ed;border-top:0;border-radius:0 0 25px 25px;background:#fff}.event-detail-section--program .event-detail-section__head,.event-detail-section--downloads .event-detail-section__head,.event-detail-section--directions .event-detail-section__head,.event-detail-section--supporters .event-detail-section__head,.event-detail-section--registration .event-detail-section__head{background:#102f50}
@media(max-width:900px){.event-template-v3 .event-date-ticket{right:24px;top:auto;bottom:34px;transform:none;width:145px;min-height:170px}.event-date-ticket strong{font-size:4rem}.event-facts-strip{grid-template-columns:1fr 1fr}.event-facts-strip>div:nth-child(3){grid-column:1/-1}.event-facts-calendar{grid-column:1/-1}}
@media(max-width:620px){.event-template-v3 .event-date-ticket{position:relative;right:auto;bottom:auto;margin:24px 20px 0;width:auto;min-height:auto;grid-template-columns:auto auto auto auto;gap:12px;transform:none}.event-date-ticket strong{font-size:2.6rem}.event-jumpbar-v3{position:relative;grid-template-columns:1fr 1fr}.event-facts-strip{grid-template-columns:1fr}.event-facts-strip>div:nth-child(3),.event-facts-calendar{grid-column:auto}.bfs-selected-supporters__grid{grid-template-columns:1fr 1fr}}

/* 3.1 — Save-the-Date badge and horizontal event date ticket */
.bfs-save-the-date-badge{
  display:inline-flex;align-items:center;gap:.48rem;width:max-content;max-width:100%;
  margin:0 0 .75rem;padding:.48rem .78rem;border-radius:999px;
  background:#d60043;color:#fff;font-size:.72rem;line-height:1;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 20px rgba(214,0,67,.2)
}
.bfs-save-the-date-badge span{font-size:.78rem;color:#fff}
.event-list-card .bfs-save-the-date-badge{margin-bottom:.7rem}
.bfs-next-event__content>.bfs-save-the-date-badge{margin-bottom:.45rem}
.hero .event-card .bfs-save-the-date-badge{margin:.75rem 0 .1rem}
.bfs-event-item .bfs-save-the-date-badge{margin:.3rem 0 .55rem}

.event-template-v3 .event-date-ticket.event-date-ticket--horizontal{
  position:relative;inset:auto;transform:none;display:inline-grid;
  grid-template-columns:auto auto auto;align-items:center;justify-items:start;gap:14px;
  width:auto;min-height:0;margin:6px 0 22px;padding:10px 16px 10px 11px;
  border:1px solid rgba(255,255,255,.42);border-left:5px solid #d60043;border-radius:16px;
  background:rgba(255,255,255,.94);color:#10233d;
  box-shadow:0 14px 34px rgba(0,0,0,.18);backdrop-filter:blur(8px)
}
.event-template-v3 .event-date-ticket--horizontal>strong{
  display:grid;place-items:center;width:58px;height:58px;border-radius:12px;
  background:#d60043;color:#fff;font-size:2rem;line-height:1;font-weight:900
}
.event-template-v3 .event-date-ticket--horizontal>span{display:flex;flex-direction:column;line-height:1.08;text-transform:none;letter-spacing:0;font-size:inherit;color:#10233d}
.event-template-v3 .event-date-ticket--horizontal>span b{font-size:1rem;font-weight:900}
.event-template-v3 .event-date-ticket--horizontal>span small{font-size:.78rem;font-weight:800;color:#66758a;margin-top:4px}
.event-template-v3 .event-date-ticket--horizontal>em{
  margin:0 0 0 2px;padding-left:14px;border-left:1px solid #d8e0e7;
  color:#4c9b2a;font-size:.92rem;font-style:normal;font-weight:900;white-space:nowrap
}
@media(max-width:620px){
  .event-template-v3 .event-date-ticket.event-date-ticket--horizontal{
    margin:4px 0 18px;grid-template-columns:auto 1fr;padding:9px 12px 9px 9px;gap:11px
  }
  .event-template-v3 .event-date-ticket--horizontal>strong{width:50px;height:50px;font-size:1.7rem}
  .event-template-v3 .event-date-ticket--horizontal>em{grid-column:2;border:0;padding:0;margin-top:-3px;font-size:.82rem}
}
html.bfs-dark-mode .bfs-save-the-date-badge{background:#ef3f70;color:#fff}
html.bfs-dark-mode .event-template-v3 .event-date-ticket--horizontal{background:rgba(20,36,56,.94);color:#fff;border-color:rgba(255,255,255,.18);border-left-color:#ef3f70}
html.bfs-dark-mode .event-template-v3 .event-date-ticket--horizontal>span{color:#fff}
html.bfs-dark-mode .event-template-v3 .event-date-ticket--horizontal>span small{color:#b8c7d8}
html.bfs-dark-mode .event-template-v3 .event-date-ticket--horizontal>em{border-left-color:#42536a;color:#8fd45c}

/* 3.1.1 — calendar-sheet date card in event hero */
.event-template-v3 .event-hero{
  min-height:clamp(620px,78vh,780px);
}
.event-template-v3 .event-hero-layout{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,760px) minmax(220px,320px);
  align-items:center;
  justify-content:space-between;
  gap:clamp(48px,8vw,140px);
  width:min(100%,1600px);
  min-height:inherit;
  margin:0 auto;
  padding:74px clamp(24px,7vw,110px) 110px;
}
.event-template-v3 .event-hero-content{
  max-width:none;
  padding:0;
}
.event-template-v3 .event-calendar-sheet{
  position:relative;
  justify-self:end;
  width:min(100%,286px);
  overflow:visible;
  border-radius:24px;
  background:#fff;
  color:#10233d;
  text-align:center;
  box-shadow:0 30px 80px rgba(0,0,0,.32);
  border:1px solid rgba(255,255,255,.7);
}
.event-template-v3 .event-calendar-sheet::before{
  content:"";
  position:absolute;
  inset:-10px 14px auto;
  height:22px;
  border-radius:14px 14px 5px 5px;
  background:#d60043;
  z-index:-1;
}
.event-template-v3 .event-calendar-sheet__rings{
  position:absolute;
  left:0;
  right:0;
  top:-12px;
  display:flex;
  justify-content:space-around;
  padding:0 30px;
  pointer-events:none;
}
.event-template-v3 .event-calendar-sheet__rings i{
  display:block;
  width:11px;
  height:28px;
  border:3px solid #10233d;
  border-radius:999px;
  background:#f1f5f8;
  box-shadow:0 2px 0 rgba(255,255,255,.7) inset;
}
.event-template-v3 .event-calendar-sheet__month{
  padding:27px 18px 15px;
  border-radius:24px 24px 0 0;
  background:#d60043;
  color:#fff;
  font-size:1rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.event-template-v3 .event-calendar-sheet__day{
  padding:23px 16px 3px;
  color:#10233d;
  font-size:clamp(5.4rem,8vw,7.2rem);
  font-weight:900;
  line-height:.86;
  letter-spacing:-.08em;
}
.event-template-v3 .event-calendar-sheet__year{
  padding:6px 16px 20px;
  color:#718093;
  font-size:1rem;
  font-weight:900;
  letter-spacing:.18em;
}
.event-template-v3 .event-calendar-sheet__time{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:16px 18px 18px;
  border-top:1px dashed #ccd7df;
  color:#438f24;
}
.event-template-v3 .event-calendar-sheet__time span{
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  border-radius:50%;
  background:#eef8e8;
}
.event-template-v3 .event-calendar-sheet__time svg{width:19px;height:19px}
.event-template-v3 .event-calendar-sheet__time strong{font-size:1.05rem;font-weight:900}

@media (max-width:1050px){
  .event-template-v3 .event-hero-layout{
    grid-template-columns:minmax(0,1fr) 230px;
    gap:38px;
  }
  .event-template-v3 .event-calendar-sheet{width:230px}
  .event-template-v3 .event-calendar-sheet__day{font-size:5.4rem}
}
@media (max-width:780px){
  .event-template-v3 .event-hero-layout{
    grid-template-columns:1fr;
    align-items:end;
    gap:32px;
    padding-top:58px;
    padding-bottom:52px;
  }
  .event-template-v3 .event-calendar-sheet{
    justify-self:start;
    width:min(100%,390px);
    display:grid;
    grid-template-columns:1.1fr .9fr;
    text-align:left;
  }
  .event-template-v3 .event-calendar-sheet::before{inset:-8px 12px auto;height:18px}
  .event-template-v3 .event-calendar-sheet__rings{padding:0 54px}
  .event-template-v3 .event-calendar-sheet__rings i{height:24px}
  .event-template-v3 .event-calendar-sheet__month{
    grid-column:1/-1;
    padding:24px 18px 12px;
    text-align:center;
  }
  .event-template-v3 .event-calendar-sheet__day{
    grid-row:2/4;
    align-self:center;
    padding:21px 10px 22px 24px;
    font-size:5rem;
    text-align:center;
  }
  .event-template-v3 .event-calendar-sheet__year{
    align-self:end;
    padding:25px 18px 2px;
    text-align:left;
  }
  .event-template-v3 .event-calendar-sheet__time{
    justify-content:flex-start;
    padding:7px 18px 20px;
    border-top:0;
  }
}
@media (max-width:480px){
  .event-template-v3 .event-calendar-sheet{width:100%}
  .event-template-v3 .event-calendar-sheet__day{font-size:4.25rem}
}
html.bfs-dark-mode .event-template-v3 .event-calendar-sheet{
  background:#172b42;
  color:#fff;
  border-color:rgba(255,255,255,.16);
}
html.bfs-dark-mode .event-template-v3 .event-calendar-sheet__day{color:#fff}
html.bfs-dark-mode .event-template-v3 .event-calendar-sheet__year{color:#bdcada}
html.bfs-dark-mode .event-template-v3 .event-calendar-sheet__time{border-top-color:#41536a;color:#8fd45c}
html.bfs-dark-mode .event-template-v3 .event-calendar-sheet__time span{background:#243e59}




/* Version 3.1.4 – gallery compatibility for legacy Virtue/Kadence content. */
.single-post-content > .gallery,
.single-post-content > .bfs-gallery,
.single-post-content > .wp-block-gallery,
.single-post-content > .blocks-gallery-grid,
.single-post-content > .kad-wp-gallery,
.single-post-content > .kadence-blocks-gallery,
.single-post-content > .kt-gallery,
.entry-content > .gallery,
.entry-content > .bfs-gallery,
.entry-content > .wp-block-gallery,
.entry-content > .blocks-gallery-grid,
.page-content__inner > .gallery,
.page-content__inner > .bfs-gallery,
.page-content__inner > .wp-block-gallery,
.page-content__inner > .blocks-gallery-grid {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 780px !important;
  margin: clamp(32px, 5vw, 58px) auto !important;
  padding: 0 !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  clear: both;
}

.single-post-content .gallery,
.single-post-content .bfs-gallery,
.single-post-content .wp-block-gallery,
.single-post-content .blocks-gallery-grid,
.entry-content .gallery,
.entry-content .bfs-gallery,
.entry-content .wp-block-gallery,
.entry-content .blocks-gallery-grid {
  box-sizing: border-box !important;
}

.single-post-content .gallery-item,
.single-post-content .bfs-gallery .gallery-item,
.entry-content .gallery-item,
.entry-content .bfs-gallery .gallery-item {
  min-width: 0;
}

.single-post-content .gallery-item img,
.single-post-content .bfs-gallery .gallery-item img,
.entry-content .gallery-item img,
.entry-content .bfs-gallery .gallery-item img {
  image-rendering: auto;
}

@media (max-width: 700px) {
  .single-post-content > .gallery,
  .single-post-content > .bfs-gallery,
  .single-post-content > .wp-block-gallery,
  .single-post-content > .blocks-gallery-grid,
  .entry-content > .gallery,
  .entry-content > .bfs-gallery,
  .entry-content > .wp-block-gallery,
  .entry-content > .blocks-gallery-grid,
  .page-content__inner > .gallery,
  .page-content__inner > .bfs-gallery,
  .page-content__inner > .wp-block-gallery,
  .page-content__inner > .blocks-gallery-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }
}

/* Version 3.2.0 – advanced galleries and lightbox. */
.bfs-gallery,
.single-post-content .gallery,
.single-post-content .wp-block-gallery,
.entry-content .gallery,
.entry-content .wp-block-gallery,
.page-content__inner .gallery,
.page-content__inner .wp-block-gallery {
  --bfs-gallery-gap: clamp(10px, 1.8vw, 18px);
  gap: var(--bfs-gallery-gap) !important;
}

.bfs-gallery--grid,
.bfs-gallery[data-bfs-layout="grid"] {
  display: grid !important;
}

.bfs-gallery--magazine {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-flow: dense;
}
.bfs-gallery--magazine .gallery-item:first-child {
  grid-column: 1 / -1;
  min-height: clamp(280px, 45vw, 520px);
}
.bfs-gallery--magazine .gallery-item:first-child img { aspect-ratio: 16 / 8; }

.bfs-gallery--masonry {
  display: block !important;
  columns: 3;
  column-gap: var(--bfs-gallery-gap);
}
.bfs-gallery--masonry .gallery-item {
  display: inline-block !important;
  width: 100% !important;
  margin: 0 0 var(--bfs-gallery-gap) !important;
  break-inside: avoid;
}
.bfs-gallery--masonry .gallery-item img { aspect-ratio: auto !important; height: auto !important; }

.single-post-content .gallery-item,
.single-post-content .wp-block-gallery figure,
.entry-content .gallery-item,
.entry-content .wp-block-gallery figure {
  position: relative;
  overflow: hidden;
}

.single-post-content .gallery-item.is-portrait img,
.single-post-content [data-bfs-orientation="portrait"] img,
.entry-content .gallery-item.is-portrait img,
.entry-content [data-bfs-orientation="portrait"] img {
  object-position: center 35%;
}

.bfs-image-lightbox-link {
  position: relative;
  display: block;
  overflow: hidden;
  cursor: zoom-in;
  border-radius: inherit;
  isolation: isolate;
}
.bfs-image-lightbox-link::after {
  content: "Vergrößern";
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 3;
  padding: 7px 38px 7px 12px;
  border-radius: 999px;
  background: rgba(10, 36, 59, .86);
  color: #fff;
  font-size: .76rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .01em;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .2s ease, transform .2s ease, background .2s ease;
  pointer-events: none;
}
.bfs-gallery-zoom {
  position: absolute;
  right: 20px;
  bottom: 17px;
  z-index: 4;
  width: 15px;
  height: 15px;
  border: 2px solid #fff;
  border-radius: 50%;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .2s ease, transform .2s ease;
  pointer-events: none;
}
.bfs-gallery-zoom::after {
  content: "";
  position: absolute;
  width: 7px;
  height: 2px;
  right: -5px;
  bottom: -3px;
  border-radius: 2px;
  background: #fff;
  transform: rotate(45deg);
  transform-origin: left center;
}
.bfs-image-lightbox-link:hover::after,
.bfs-image-lightbox-link:focus-visible::after,
.bfs-image-lightbox-link:hover .bfs-gallery-zoom,
.bfs-image-lightbox-link:focus-visible .bfs-gallery-zoom {
  opacity: 1;
  transform: translateY(0);
}
.bfs-image-lightbox-link:hover img,
.bfs-image-lightbox-link:focus-visible img {
  transform: scale(1.045);
  filter: saturate(1.06) contrast(1.02);
}

.bfs-lightbox {
  background: rgba(4, 17, 29, .96) !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
}
.bfs-lightbox__top {
  align-items: center;
  justify-content: space-between !important;
  min-height: 48px;
}
.bfs-lightbox__tools { display: flex; align-items: center; gap: 8px; }
.bfs-lightbox__counter { padding: 0 !important; font-size: .9rem !important; }
.bfs-lightbox__zoom-reset { width: auto !important; min-width: 58px; padding-inline: 12px; border-radius: 999px !important; font-size: .78rem !important; font-weight: 800; }
.bfs-lightbox__stage { min-height: 0; }
.bfs-lightbox__figure { width: 100%; height: 100%; min-height: 0; }
.bfs-lightbox__media {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  min-height: min(60vh, 520px);
  max-height: calc(100vh - 150px);
  overflow: hidden;
  touch-action: pan-y;
}
.bfs-lightbox__media.is-zoomed { cursor: grab; touch-action: none; }
.bfs-lightbox__media.is-zoomed:active { cursor: grabbing; }
.bfs-lightbox__image {
  opacity: 0;
  transform-origin: center center;
  transition: opacity .24s ease, transform .18s ease;
  will-change: transform, opacity;
  user-select: none;
  -webkit-user-drag: none;
}
.bfs-lightbox__image.is-loaded { opacity: 1; }
.bfs-lightbox.is-loading .bfs-lightbox__image { opacity: .48; filter: blur(1px); }
.bfs-lightbox__loader,
.bfs-lightbox__error {
  position: absolute;
  inset: 0;
  z-index: 5;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  color: rgba(255,255,255,.88);
  font-size: .9rem;
  font-weight: 700;
  pointer-events: none;
}
.bfs-lightbox__loader[hidden], .bfs-lightbox__error[hidden] { display: none !important; }
.bfs-lightbox__spinner {
  width: 42px;
  height: 42px;
  border: 4px solid rgba(255,255,255,.22);
  border-top-color: #fff;
  border-radius: 50%;
  animation: bfs-gallery-spin .78s linear infinite;
}
@keyframes bfs-gallery-spin { to { transform: rotate(360deg); } }
.bfs-lightbox__caption {
  width: min(900px, 100%);
  margin-top: 10px !important;
  padding: 10px 16px;
  border-radius: 12px;
  background: rgba(255,255,255,.07);
  line-height: 1.45;
}
.bfs-lightbox:fullscreen { padding: clamp(12px, 2vw, 28px); }

@media (hover: none) {
  .bfs-image-lightbox-link::after,
  .bfs-gallery-zoom { opacity: 1; transform: none; }
  .bfs-image-lightbox-link::after { content: ""; width: 38px; height: 38px; padding: 0; }
  .bfs-gallery-zoom { right: 23px; bottom: 22px; }
}

@media (max-width: 760px) {
  .bfs-gallery--masonry { columns: 2; }
  .bfs-lightbox { padding: 10px !important; }
  .bfs-lightbox__top { gap: 8px; }
  .bfs-lightbox__tools { gap: 5px; }
  .bfs-lightbox__tools button { width: 42px; height: 42px; }
  .bfs-lightbox__zoom-reset { min-width: 52px !important; }
  .bfs-lightbox__media { min-height: 54vh; max-height: calc(100vh - 135px); }
  .bfs-lightbox__caption { font-size: .84rem; padding: 8px 12px; }
  .bfs-gallery--magazine { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
  .bfs-gallery--masonry { columns: 1; }
  .bfs-gallery--magazine { grid-template-columns: 1fr !important; }
  .bfs-gallery--magazine .gallery-item:first-child { min-height: 240px; }
  .bfs-lightbox__counter { font-size: .78rem !important; }
  .bfs-lightbox__zoom-out,
  .bfs-lightbox__zoom-in { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .bfs-lightbox__image,
  .bfs-image-lightbox-link img,
  .bfs-image-lightbox-link::after,
  .bfs-gallery-zoom { transition: none !important; }
  .bfs-lightbox__spinner { animation-duration: 1.4s; }
}


/* BFS 3.2.3 – align legacy and current content buttons with the editorial text column. */
.single-post-content { --bfs-editorial-edge: 780px; }
.standard-page-content,
.page-content__inner,
.entry-content { --bfs-editorial-edge: 1080px; }

/* Old Virtue/Kadence button wrappers and current WordPress button blocks. */
.single-post-content > :is(.wp-block-buttons,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button),
.standard-page-content > :is(.wp-block-buttons,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button),
.page-content__inner > :is(.wp-block-buttons,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button),
.entry-content > :is(.wp-block-buttons,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button) {
  width: min(100%, var(--bfs-editorial-edge));
  max-width: var(--bfs-editorial-edge) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left;
}

/* Some old shortcodes output the anchor directly, without a wrapper. */
.single-post-content > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button),
.standard-page-content > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button),
.page-content__inner > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button),
.entry-content > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button) {
  width: fit-content;
  max-width: min(100%, var(--bfs-editorial-edge)) !important;
  margin-left: max(0px, calc((100% - var(--bfs-editorial-edge)) / 2)) !important;
  margin-right: auto !important;
  float: none !important;
}

/* Buttons nested in an already aligned paragraph or wrapper need no extra offset. */
.single-post-content :is(p,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button) > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button),
.standard-page-content :is(p,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button) > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button),
.page-content__inner :is(p,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button) > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button),
.entry-content :is(p,.wp-block-button,.kt-btn-wrap,.kad-btn-wrap,.kadence-button-wrapper,.btn-shortcode,.button-wrap,.so-widget-sow-button) > :is(a.btn,a.button,a.kad-btn,a.kt-button,a.kadence-button,a.sowb-button) {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 820px) {
  .single-post-content,
  .standard-page-content,
  .page-content__inner,
  .entry-content { --bfs-editorial-edge: 100%; }
}

/* 3.3.3 — Editorial lists: keep list text aligned with paragraph edge while bullets sit in the gutter. */
.single-post-content > ul,
.single-post-content > ol,
.entry-content > ul,
.entry-content > ol,
.page-content__inner > ul,
.page-content__inner > ol,
.standard-page-content > ul,
.standard-page-content > ol {
  box-sizing: border-box;
}

.single-post-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid),
.entry-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid),
.page-content__inner ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid),
.standard-page-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) {
  padding-left: 0 !important;
}

.single-post-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li,
.entry-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li,
.page-content__inner ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li,
.standard-page-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.single-post-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
.entry-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
.page-content__inner ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
.standard-page-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before {
  left: -1.25rem !important;
}

/* Nested lists keep a readable hierarchy without pushing the first level away from the text column. */
.single-post-content ul ul,
.entry-content ul ul,
.page-content__inner ul ul,
.standard-page-content ul ul {
  margin-left: 1.35rem !important;
}

@media (max-width: 640px) {
  .single-post-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
  .entry-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
  .page-content__inner ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
  .standard-page-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before {
    left: -1rem !important;
  }
}

/* 3.3.4 — Legacy editorial lists: constrain the list container itself to the article text column.
   Older Virtue/Kadence content can carry full-width/alignment styles on UL/OL. The previous
   fix aligned LI text inside that wide container, which still left the entire list at the viewport edge. */
.single-post-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid),
.single-post-content ol:not(.menu):not(.sub-menu) {
  box-sizing: border-box;
  width: 100% !important;
  max-width: var(--bfs-editorial-edge, 780px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* First-level unordered lists: text starts exactly on the paragraph edge; marker lives in the gutter. */

.single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li,
.single-post-content > .wp-block-list > li,
.single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li {
  position: relative;
  padding-left: 0 !important;
  margin-left: 0 !important;
}
.single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
.single-post-content > .wp-block-list > li::before,
.single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before {
  left: -1.25rem !important;
}

/* Ordered lists get the same content width. Keep browser numbering readable but contained. */
.single-post-content > ol {
  padding-left: 1.55rem !important;
}

/* Nested lists remain indented relative to their parent item instead of being re-centered globally. */
.single-post-content li > ul,
.single-post-content li > ol {
  width: auto !important;
  max-width: none !important;
  margin-left: 1.35rem !important;
  margin-right: 0 !important;
}

@media (max-width: 820px) {
  .single-post-content ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid),
  .single-post-content ol:not(.menu):not(.sub-menu) {
    max-width: 100% !important;
  }
  .single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
  .single-post-content > .wp-block-list > li::before,
  .single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before {
    left: -.95rem !important;
  }
}

/* 3.3.5 — Editorial list markers align with the paragraph edge.
   The bullet itself now starts on the normal text edge; list copy is indented to the right. */
.single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid),
.single-post-content > .wp-block-list,
.single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) {
  padding-left: 0 !important;
}
.single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li,
.single-post-content > .wp-block-list > li,
.single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li {
  position: relative;
  padding-left: 1.75rem !important;
  margin-left: 0 !important;
}
.single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
.single-post-content > .wp-block-list > li::before,
.single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before {
  left: .15rem !important;
}
@media (max-width: 820px) {
  .single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li,
  .single-post-content > .wp-block-list > li,
  .single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li {
    padding-left: 1.6rem !important;
  }
  .single-post-content > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before,
  .single-post-content > .wp-block-list > li::before,
  .single-post-content > div > ul:not(.menu):not(.sub-menu):not(.blocks-gallery-grid) > li::before {
    left: .1rem !important;
  }
}

/* 3.4: responsive supporter columns controlled via theme settings */
@media(max-width:1000px){.bfs-selected-supporters__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.bfs-supporter-grid,.bfs-selected-supporters__grid{grid-template-columns:1fr}}


/* BFS 3.4.1 – One editorial edge for automatic embeds.
   Voting and supporter modules inserted via the_content must follow the exact
   same left/right edge as normal article copy instead of inheriting full wrap width. */
.single-post-content > .bfs-editorial-embed,
.single-post-content > .bfs-voting,
.single-post-content > .bfs-selected-supporters {
  box-sizing: border-box !important;
  width: min(100%, var(--bfs-editorial-edge, 780px)) !important;
  max-width: var(--bfs-editorial-edge, 780px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Normal pages use their wider editorial measure, but stay aligned to page copy. */
.standard-page-content > .bfs-editorial-embed,
.page-content__inner > .bfs-editorial-embed,
.entry-content > .bfs-editorial-embed,
.standard-page-content > .bfs-selected-supporters,
.page-content__inner > .bfs-selected-supporters,
.entry-content > .bfs-selected-supporters {
  box-sizing: border-box !important;
  width: min(100%, var(--bfs-editorial-edge, 1080px)) !important;
  max-width: var(--bfs-editorial-edge, 1080px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Inside a dedicated event section the section itself already defines the edge. */
.event-detail-section__content > .bfs-selected-supporters {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 820px) {
  .single-post-content > .bfs-editorial-embed,
  .single-post-content > .bfs-voting,
  .single-post-content > .bfs-selected-supporters,
  .standard-page-content > .bfs-editorial-embed,
  .page-content__inner > .bfs-editorial-embed,
  .entry-content > .bfs-editorial-embed,
  .standard-page-content > .bfs-selected-supporters,
  .page-content__inner > .bfs-selected-supporters,
  .entry-content > .bfs-selected-supporters {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* 3.5.2 — canonical calendar action; presentation is identical in all event contexts. */
.event-actions .bfs-event-calendar-action,.event-facts-strip .bfs-event-calendar-action,.event-list-actions .bfs-event-calendar-action,.event-card__actions .bfs-event-calendar-action,.bfs-next-event__actions .bfs-event-calendar-action{margin:0!important;width:auto;align-self:auto}
.event-facts-strip .bfs-event-calendar-action{height:100%;align-self:stretch}
@media(max-width:620px){.event-actions .bfs-event-calendar-action,.event-facts-strip .bfs-event-calendar-action,.event-card__actions .bfs-event-calendar-action,.bfs-next-event__actions .bfs-event-calendar-action{width:100%!important}.event-list-actions .bfs-event-calendar-action{width:auto!important}}


/* BFS 3.7.4 – simple editor class \"button\": render ordinary content links like the blue theme CTA. */
.single-post-content a.button,
.standard-page-content a.button,
.page-content__inner a.button,
.entry-content a.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55em;
  width: fit-content;
  max-width: 100%;
  padding: 14px 22px;
  border: 0;
  border-radius: 999px;
  background: var(--blue);
  color: #fff !important;
  text-decoration: none !important;
  font-family: var(--font-heading, inherit);
  font-weight: 850;
  line-height: 1.2;
  cursor: pointer;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease, background-color .22s ease;
}
.single-post-content a.button:hover,
.single-post-content a.button:focus-visible,
.standard-page-content a.button:hover,
.standard-page-content a.button:focus-visible,
.page-content__inner a.button:hover,
.page-content__inner a.button:focus-visible,
.entry-content a.button:hover,
.entry-content a.button:focus-visible {
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(20,45,75,.18);
  filter: saturate(1.08);
}
.single-post-content a.button:active,
.standard-page-content a.button:active,
.page-content__inner a.button:active,
.entry-content a.button:active {
  transform: translateY(0);
  box-shadow: 0 5px 12px rgba(20,45,75,.14);
}
@media (prefers-reduced-motion: reduce) {
  .single-post-content a.button,
  .standard-page-content a.button,
  .page-content__inner a.button,
  .entry-content a.button { transition: none; }
}

/* BFS 3.8.14 – Impressionen: gallery meta and refined lightbox credit. */
.bfs-gallery-meta{
  display:flex;align-items:center;justify-content:flex-start;gap:16px;flex-wrap:wrap;
  width:min(980px,100%);margin:8px 0 14px!important;padding:0;
  color:var(--muted);font-size:.82rem;line-height:1.3;
}
.bfs-gallery-meta__count,.bfs-gallery-meta__credit{display:inline-flex;align-items:center;gap:7px}
.bfs-gallery-meta__count svg{width:19px;height:19px;fill:var(--blue);flex:0 0 19px}
.bfs-gallery-meta strong{color:var(--blue-dark);font-weight:900}
.bfs-gallery-meta__credit{padding-left:16px;border-left:1px solid rgba(21,55,77,.16)}
.bfs-dark-mode .bfs-gallery-meta{color:#a8bac7}
.bfs-dark-mode .bfs-gallery-meta strong{color:#fff}
.bfs-dark-mode .bfs-gallery-meta__credit{border-left-color:rgba(255,255,255,.16)}

/* Keep the already mature lightbox intact; only enrich its information layer. */
.bfs-lightbox__meta{display:flex;align-items:baseline;gap:12px;min-width:0}
.bfs-lightbox__credit{color:rgba(255,255,255,.62);font-size:.78rem;font-weight:700;white-space:nowrap}
.bfs-lightbox__counter{color:#fff;font-weight:800}

@media(max-width:620px){
  .bfs-gallery-meta{gap:10px;margin-bottom:12px!important}.bfs-gallery-meta__credit{padding-left:10px}
  .bfs-lightbox__meta{display:block}.bfs-lightbox__credit{margin-top:2px;font-size:.7rem}
}

/* 3.9.2 – Typografie: Archivo + Source Sans 3 final abgestimmt. */
/* Archivo bleibt plakativ, ohne in Richtung Archivo Black zu kippen. */
h1,h2{font-weight:800}
h3,h4,h5,h6{font-weight:700}

.hero h1,
.page-hero h1,
.event-hero h1,
.membership-hero h1,
.blog-hero h1,
.events-hero h1,
.supporters-hero h1,
.single-post-hero h1,
.single-post-header h1,
.bfs-opinion-hero h1,
.bfs-share-hero h1{
  font-weight:800!important;
  line-height:.95!important;
  letter-spacing:-.03em!important;
}

/* Kleine plakative Ebenen und Bedienelemente bewusst leichter. */
.main-nav,
.main-nav .menu>li>a,
.main-nav .sub-menu a,
.header-cta,
.btn,
.text-link,
.event-link,
.section-head a,
.project-card a,
.news-grid a,
.bfs-about-nav a,
.bfs-about-textlink{
  font-weight:700!important;
  font-variation-settings:normal;
}

.eyebrow,.badge{
  font-weight:700!important;
}

/* Kennzahlen dürfen kräftig bleiben, brauchen mit Archivo aber mehr Luft. */
.stats-card strong,.bfs-about-stats strong{
  font-family:var(--font-heading)!important;
  font-weight:800!important;
  line-height:.94!important;
  letter-spacing:-.03em!important;
}

/* Source Sans 3: redaktionelle Texte kompakt und ruhig lesbar. */
.single-post-content,
.page-content--wide .page-content__inner{
  line-height:1.65;
}
.bfs-about-intro{
  line-height:1.65!important;
}

/* 3.9.3 – Typografie-Konsolidierung nach visuellem Seitentest.
   Ziel: Startseite/„Wir über uns“ als Referenz, normale Inhalte ruhiger,
   expressive Tool-Landingpages weiterhin bewusst plakativ. */

/* Standard-H2 nur dort vereinheitlichen, wo das Theme die redaktionelle
   Hierarchie kontrolliert. Plugin-Landingpages behalten ihre eigene Skala. */
.section-head h2,
.about h2,
.join-panel h2,
.single-post-content h2,
.standard-page-content h2,
.page-content__inner h2,
.bfs-about-body h2,
.bfs-opinion-share h2{
  font-weight:800!important;
  line-height:1.03!important;
  letter-spacing:-.022em!important;
}

/* Redaktionelle Artikel: deutlich unterhalb der Kampagnen-/Landingpage-Skala. */
.single-post-page .single-post-header h1{
  max-width:920px;
  font-size:clamp(3.15rem,5.35vw,5.65rem)!important;
  line-height:.97!important;
  letter-spacing:-.03em!important;
}
.single-post-page .single-post-hero h1{
  font-size:clamp(3.2rem,5.75vw,6.15rem)!important;
  line-height:.96!important;
  letter-spacing:-.03em!important;
}
.single-post-page .single-post-content>p:first-child{
  font-size:1.16rem;
  line-height:1.67;
}
@media(min-width:641px){
  /* 3.9.5: Floats get one editorial width. For linked images the width belongs
     to the link wrapper only; the image itself fills that wrapper. This avoids
     the accidental 42% × 42% double reduction introduced in 3.9.3. */
  .single-post-page .single-post-content .alignright,
  .single-post-page .single-post-content a:has(> img.alignright){
    width:min(42%,500px)!important;
    max-width:min(42%,500px)!important;
    margin-left:28px!important;
  }
  .single-post-page .single-post-content .alignleft,
  .single-post-page .single-post-content a:has(> img.alignleft){
    width:min(42%,500px)!important;
    max-width:min(42%,500px)!important;
    margin-right:28px!important;
  }
  .single-post-page .single-post-content a:has(> img.alignright)>img,
  .single-post-page .single-post-content a:has(> img.alignleft)>img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    margin:0!important;
  }
}
@media(max-width:700px){
  .single-post-page .single-post-header h1,
  .single-post-page .single-post-hero h1{
    font-size:clamp(2.55rem,12.5vw,4.15rem)!important;
    line-height:.98!important;
  }
}

/* Veranstaltungen: Standard-Poster beruhigen; die bewusst knallige Alternative
   bleibt als eigene, größere Gestaltungsvariante unangetastet. */
.events-hero--poster:not(.events-hero--bold) h1{
  font-size:clamp(3.8rem,6.7vw,7.2rem)!important;
  line-height:.96!important;
  letter-spacing:-.028em!important;
}
.events-hero__stat strong{
  letter-spacing:-.035em;
}
.events-hero--poster .events-hero__eyebrow,
.events-hero__stat span{
  font-weight:700;
}
@media(max-width:1050px){
  .events-hero--poster:not(.events-hero--bold) h1{
    font-size:clamp(3.35rem,7vw,6rem)!important;
  }
}
@media(max-width:720px){
  .events-hero--poster:not(.events-hero--bold) h1{
    font-size:clamp(2.8rem,13vw,4.15rem)!important;
    letter-spacing:-.025em!important;
  }
}

/* Meinung: Hero eine Ebene ruhiger; eigentliche Abstimmungsfrage klar darunter. */
.bfs-opinion-hero h1{
  font-size:clamp(3rem,6.15vw,6.6rem)!important;
  line-height:.96!important;
  letter-spacing:-.028em!important;
}
@media(max-width:800px){
  .bfs-opinion-hero h1{font-size:clamp(3rem,14.5vw,5rem)!important}
}

/* 3.9.4 – zweite visuelle Typografie-Runde.
   Referenz bleiben Startseite/Wir über uns; übergroße Spezial-H1 werden nur moderat nachgeführt. */

/* Startseite: mehr Luft zur rechten Rundung der weißen Copy-Fläche. */
body.home .hero h1,
body.front-page .hero h1{
  font-size:clamp(2.95rem,5.1vw,5.55rem)!important;
  line-height:.96!important;
  letter-spacing:-.028em!important;
}

/* Redaktionelle Artikel noch eine Stufe unter den Kampagnen-Landingpages. */
.single-post-page .single-post-header h1{
  max-width:900px;
  font-size:clamp(2.95rem,4.65vw,5rem)!important;
  line-height:.98!important;
  letter-spacing:-.027em!important;
}
.single-post-page .single-post-hero h1{
  font-size:clamp(3rem,5vw,5.35rem)!important;
  line-height:.97!important;
  letter-spacing:-.028em!important;
}

/* Veranstaltungen: weiterhin plakativ, aber weniger dominant als in 3.9.3. */
.events-hero--poster:not(.events-hero--bold) h1{
  font-size:clamp(3.55rem,5.9vw,6.35rem)!important;
  line-height:.97!important;
  letter-spacing:-.026em!important;
}

/* Meinung: leichte Reduktion, damit die Abstimmungsfrage mehr Raum bekommt. */
.bfs-opinion-hero h1{
  font-size:clamp(2.9rem,5.65vw,6rem)!important;
  line-height:.97!important;
  letter-spacing:-.026em!important;
}

@media(max-width:720px){
  body.home .hero h1,body.front-page .hero h1{font-size:clamp(2.7rem,12vw,4rem)!important}
  .single-post-page .single-post-header h1,.single-post-page .single-post-hero h1{font-size:clamp(2.45rem,11.6vw,3.85rem)!important}
  .events-hero--poster:not(.events-hero--bold) h1{font-size:clamp(2.7rem,12.4vw,3.95rem)!important}
  .bfs-opinion-hero h1{font-size:clamp(2.75rem,13vw,4.45rem)!important}
}



/* 3.9.5 – Inter Tight + Source Sans 3 test baseline.
   The visual scale from 3.9.4 is intentionally retained after the font switch;
   only the article float regression is corrected here. */


/* 4.4.2 – navigation boot guard: stale BFCache/restored classes must never paint an open drawer before JS resets state. */
html.bfs-nav-booting .main-nav{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
html.bfs-nav-booting .mobile-nav-backdrop{display:none!important;opacity:0!important}

/* BFS 3.6.1 – mobile navigation: full-width app-like navigation rows. */
.mobile-nav-head,.mobile-nav-footer,.mobile-nav-backdrop{display:none}
@media (max-width:1050px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body.menu-is-open{overflow:hidden!important;touch-action:none}
  .site-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .header-inner{transform:none!important;filter:none!important;contain:none!important}
  .site-header{z-index:1000!important}
  .header-inner{position:relative;z-index:1002}
  .menu-toggle{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:5px!important;width:52px!important;height:52px!important;padding:11px!important;margin-left:auto!important;border:1px solid rgba(19,35,59,.08)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(19,35,59,.08)!important;position:relative!important;z-index:1004!important}
  .menu-toggle span:not(.screen-reader-text){display:block!important;width:28px!important;height:3px!important;margin:0!important;border-radius:999px!important;background:var(--ink)!important;transition:transform .22s ease,opacity .18s ease!important}
  .menu-toggle[aria-expanded="true"]{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

  .mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:1000;background:rgba(8,23,39,.45);backdrop-filter:blur(4px);opacity:0;transition:opacity .25s ease}
  .mobile-nav-backdrop[hidden]{display:none!important}.mobile-nav-backdrop.is-open{opacity:1}

  .main-nav{
    display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;justify-content:stretch!important;align-content:stretch!important;
    position:fixed!important;inset:0 0 0 auto!important;z-index:1003!important;
    width:min(92vw,640px)!important;height:100dvh!important;height:100svh!important;max-height:none!important;
    padding:0!important;margin:0!important;overflow:hidden!important;
    background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%)!important;
    border-radius:30px 0 0 30px!important;
    box-shadow:-24px 0 70px rgba(9,30,48,.22)!important;
    transform:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    transition:opacity .2s ease,visibility 0s linear .2s!important;
  }
  .main-nav.is-open{transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transition:opacity .2s ease!important}
  .mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:max(22px,env(safe-area-inset-top)) 22px 18px;border-bottom:1px solid #e7edf2}
  .mobile-nav-head>div{display:grid;gap:2px}.mobile-nav-kicker{color:var(--blue);font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.mobile-nav-head strong{font-size:1.35rem;letter-spacing:-.03em;color:var(--ink)}
  .mobile-nav-close{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border:0;border-radius:15px;background:#edf6fb;color:var(--blue);font-size:2rem;line-height:1;cursor:pointer}.mobile-nav-close:hover,.mobile-nav-close:focus-visible{background:var(--blue);color:#fff}
  .mobile-nav-scroll{min-width:0;min-height:0;width:100%;overflow-y:auto;overscroll-behavior:contain;padding:14px 18px 20px;-webkit-overflow-scrolling:touch}

  .main-nav .menu{display:grid!important;grid-template-columns:minmax(0,1fr)!important;justify-content:stretch!important;width:100%!important;max-width:none!important;gap:6px!important;margin:0!important;padding:0!important;list-style:none!important}
  .main-nav .menu>li{position:relative!important;width:100%!important;max-width:none!important;margin:0!important;border:0!important}
  .main-nav .menu>li>a{display:flex!important;align-items:center!important;width:100%!important;max-width:none!important;min-height:54px!important;padding:13px 58px 13px 18px!important;border:1px solid #e6edf2!important;border-radius:17px!important;background:#fff!important;color:var(--ink)!important;font-size:1.04rem!important;font-weight:800!important;line-height:1.2!important;text-decoration:none!important;white-space:normal!important;box-shadow:0 4px 14px rgba(19,35,59,.035)!important}
  .main-nav .menu>li>a:hover,.main-nav .menu>li>a:focus-visible{background:#eef7fb!important;border-color:#cfe5ef!important;color:var(--blue)!important;box-shadow:0 7px 18px rgba(19,80,110,.07)!important}
  .main-nav .menu>.current-menu-item>a,.main-nav .menu>.current-menu-ancestor>a{background:linear-gradient(135deg,#eaf7fd,#f3faed)!important;border-color:#d5e8ef!important;color:#0d6f9f!important;box-shadow:0 8px 22px rgba(19,80,110,.08)!important}
  .main-nav .bfs-menu-arrow{display:none!important}
  .main-nav .submenu-toggle{display:grid!important;place-items:center!important;position:absolute!important;right:6px!important;top:6px!important;width:42px!important;height:42px!important;padding:0!important;border:0!important;border-radius:12px!important;background:#f0f4f7!important;color:var(--ink)!important;cursor:pointer!important}
  .main-nav .submenu-toggle:before{content:""!important;width:8px!important;height:8px!important;border-right:2px solid currentColor!important;border-bottom:2px solid currentColor!important;transform:translateY(-2px) rotate(45deg)!important;transition:transform .2s ease!important}
  .main-nav .submenu-toggle[aria-expanded="true"]{background:#e4f3fa!important;color:var(--blue)!important}.main-nav .submenu-toggle[aria-expanded="true"]:before{transform:translateY(2px) rotate(225deg)!important}

  .main-nav .sub-menu,.main-nav .sub-menu .sub-menu{position:static!important;display:none!important;opacity:1!important;visibility:visible!important;transform:none!important;width:calc(100% - 12px)!important;min-width:0!important;margin:4px 0 8px 12px!important;padding:5px 0 4px 12px!important;border:0!important;border-left:2px solid #dce9ef!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  .main-nav li.submenu-open>.sub-menu{display:grid!important;gap:4px!important}
  .main-nav .sub-menu li{position:relative!important}
  .main-nav .sub-menu a{display:flex!important;align-items:center!important;width:100%!important;min-height:44px!important;padding:10px 46px 10px 13px!important;border:1px solid transparent!important;border-radius:13px!important;color:#415367!important;font-size:.94rem!important;font-weight:700!important;line-height:1.25!important;text-decoration:none!important;white-space:normal!important}
  .main-nav .sub-menu a:hover,.main-nav .sub-menu a:focus-visible{background:#f1f6f8!important;color:var(--blue)!important}
  .main-nav .sub-menu .submenu-toggle{top:3px!important;right:3px!important;width:38px!important;height:38px!important;border-radius:11px!important}

  .mobile-nav-footer{display:grid;gap:11px;padding:14px 18px max(16px,env(safe-area-inset-bottom));border-top:1px solid #e7edf2;background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}
  .mobile-nav-cta{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 18px;border-radius:16px;background:var(--green);color:#fff!important;font-weight:900;text-decoration:none!important;box-shadow:0 10px 24px rgba(74,143,36,.2)}.mobile-nav-cta span{font-size:1.25rem}
  .bfs-social-links--mobile{display:flex!important;justify-content:center;gap:10px!important}.bfs-social-links--mobile a{display:grid!important;place-items:center!important;width:42px!important;height:42px!important;margin:0!important;border-radius:13px!important;background:#f0f5f8!important;color:var(--blue)!important}
  .bfs-social-links--mobile a:hover,.bfs-social-links--mobile a:focus-visible{background:var(--blue)!important;color:#fff!important;transform:none!important}
  .bfs-social-links--header{display:none!important}
}
@media(max-width:1050px) and (pointer:coarse){
  .main-nav{width:min(96vw,720px)!important}
}
@media(max-width:600px){
  .main-nav{width:100vw!important;border-radius:0!important}
  .mobile-nav-head{padding-top:max(18px,env(safe-area-inset-top))}
}
@media(max-width:560px){
  .main-nav{width:100vw!important;border-radius:0!important}
  .mobile-nav-head{padding-left:18px;padding-right:16px}.mobile-nav-scroll{padding:12px 16px 18px}
  .main-nav .menu>li>a{font-size:1rem!important;min-height:52px!important;padding-left:16px!important}
}
@media(prefers-reduced-motion:reduce){.main-nav,.mobile-nav-backdrop,.menu-toggle span:not(.screen-reader-text){transition:none!important}}
@media(max-width:1050px){
  html.bfs-dark-mode .main-nav{background:linear-gradient(180deg,#122235,#101d2c 100%)!important;box-shadow:-24px 0 70px rgba(0,0,0,.4)!important}
  html.bfs-dark-mode .mobile-nav-head,html.bfs-dark-mode .mobile-nav-footer{border-color:#2c4053;background:#122235;color:#fff}
  html.bfs-dark-mode .mobile-nav-head strong,html.bfs-dark-mode .main-nav .menu>li>a{color:#f5f8fa!important}
  html.bfs-dark-mode .main-nav .menu>li>a{background:#15283a!important;border-color:#294052!important;box-shadow:none!important}
  html.bfs-dark-mode .mobile-nav-close,html.bfs-dark-mode .main-nav .submenu-toggle,html.bfs-dark-mode .bfs-social-links--mobile a{background:#1d3448!important;color:#a9dff5!important}
  html.bfs-dark-mode .menu-toggle{background:#ffffff!important;border-color:rgba(19,35,59,.12)!important;color:#13233b!important}
  html.bfs-dark-mode .menu-toggle span:not(.screen-reader-text){background:#13233b!important}
  html.bfs-dark-mode .menu-toggle:hover,html.bfs-dark-mode .menu-toggle:focus-visible{background:#f4f8fb!important;border-color:rgba(36,150,209,.32)!important}
  html.bfs-dark-mode .menu-toggle:hover span:not(.screen-reader-text),html.bfs-dark-mode .menu-toggle:focus-visible span:not(.screen-reader-text){background:#0f2b46!important}
  html.bfs-dark-mode .main-nav .menu>li>a:hover,html.bfs-dark-mode .main-nav .menu>li>a:focus-visible,html.bfs-dark-mode .main-nav .menu>.current-menu-item>a,html.bfs-dark-mode .main-nav .menu>.current-menu-ancestor>a{background:#19364a!important;border-color:#2d5269!important;color:#b6e6f8!important}
  html.bfs-dark-mode .main-nav .sub-menu{border-color:#31485a!important}
  html.bfs-dark-mode .main-nav .sub-menu a{color:#c8d5df!important}
  html.bfs-dark-mode .main-nav .sub-menu a:hover,html.bfs-dark-mode .main-nav .sub-menu a:focus-visible{background:#1a3041!important;color:#b6e6f8!important}
}

/* BFS 3.7.5 – universal content/editor button class.
   Deliberately loaded last so generic content/link styles cannot override it. */
a.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: .55em;
  width: fit-content;
  max-width: 100%;
  margin: .35rem .4rem .35rem 0;
  padding: 14px 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--blue) !important;
  color: #fff !important;
  text-decoration: none !important;
  font-family: var(--font-heading, inherit);
  font-weight: 850 !important;
  line-height: 1.2;
  cursor: pointer;
  box-shadow: none;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease, background-color .22s ease;
}
a.button:visited { color:#fff !important; }
a.button:hover,
a.button:focus-visible {
  background: var(--blue) !important;
  color: #fff !important;
  text-decoration: none !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 22px rgba(20,45,75,.18);
  filter: saturate(1.08);
}
a.button:active {
  transform: translateY(0);
  box-shadow: 0 5px 12px rgba(20,45,75,.14);
}
html.bfs-dark-mode a.button,
html.bfs-dark-mode a.button:visited,
html.bfs-dark-mode a.button:hover,
html.bfs-dark-mode a.button:focus-visible { color:#fff !important; }
@media (prefers-reduced-motion: reduce) { a.button { transition:none; } }

/* 3.7.6 – universelle Inhaltsklasse "button"
 * Die Klasse kann entweder direkt am <a> oder am umgebenden Editor-/PageBuilder-Block sitzen.
 */
body:not(.wp-admin) a.button,
body:not(.wp-admin) .button > a,
body:not(.wp-admin) .button a {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.45em !important;
  width:auto !important;
  max-width:100% !important;
  min-height:44px !important;
  margin:.35rem 0 !important;
  padding:.72rem 1.15rem !important;
  border:1px solid #075c99 !important;
  border-radius:12px !important;
  background:#0b6fb8 !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  box-shadow:0 2px 0 #064a7b,0 8px 20px rgba(11,111,184,.14) !important;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,border-color .18s ease !important;
}
body:not(.wp-admin) a.button:visited,
body:not(.wp-admin) .button > a:visited,
body:not(.wp-admin) .button a:visited { color:#fff !important; }
body:not(.wp-admin) a.button:hover,
body:not(.wp-admin) a.button:focus-visible,
body:not(.wp-admin) .button > a:hover,
body:not(.wp-admin) .button > a:focus-visible,
body:not(.wp-admin) .button a:hover,
body:not(.wp-admin) .button a:focus-visible {
  background:#095f9e !important;
  border-color:#064f84 !important;
  color:#fff !important;
  text-decoration:none !important;
  transform:translateY(-2px) !important;
  box-shadow:0 3px 0 #064a7b,0 11px 24px rgba(11,111,184,.22) !important;
}
body:not(.wp-admin) a.button:focus-visible,
body:not(.wp-admin) .button > a:focus-visible,
body:not(.wp-admin) .button a:focus-visible {
  outline:3px solid rgba(11,111,184,.28) !important;
  outline-offset:3px !important;
}
body:not(.wp-admin) a.button:active,
body:not(.wp-admin) .button > a:active,
body:not(.wp-admin) .button a:active {
  transform:translateY(0) !important;
  box-shadow:0 1px 0 #064a7b,0 5px 12px rgba(11,111,184,.16) !important;
}
html.bfs-dark-mode body:not(.wp-admin) a.button,
html.bfs-dark-mode body:not(.wp-admin) .button > a,
html.bfs-dark-mode body:not(.wp-admin) .button a { color:#fff !important; }
@media (prefers-reduced-motion:reduce){
  body:not(.wp-admin) a.button,
  body:not(.wp-admin) .button > a,
  body:not(.wp-admin) .button a { transition:none !important; }
}

/* BFS 3.9.4 – canonical manual content button + clean desktop dark navigation. */
body:not(.wp-admin) a.button,
body:not(.wp-admin) .button > a,
body:not(.wp-admin) .button a {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:12px!important;
  width:auto!important;
  max-width:100%!important;
  min-height:48px!important;
  margin:.4rem .35rem .4rem 0!important;
  padding:12px 18px!important;
  border:0!important;
  border-radius:15px!important;
  background:var(--blue,#2496d1)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-family:var(--font-heading,inherit)!important;
  font-size:1rem!important;
  font-weight:700!important;
  line-height:1.15!important;
  cursor:pointer!important;
  box-shadow:0 8px 18px rgba(0,105,155,.18)!important;
  transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease,color .18s ease!important;
}
body:not(.wp-admin) a.button:visited,
body:not(.wp-admin) .button > a:visited,
body:not(.wp-admin) .button a:visited{color:#fff!important}
body:not(.wp-admin) a.button:hover,
body:not(.wp-admin) a.button:focus-visible,
body:not(.wp-admin) .button > a:hover,
body:not(.wp-admin) .button > a:focus-visible,
body:not(.wp-admin) .button a:hover,
body:not(.wp-admin) .button a:focus-visible{
  background:var(--red,#d60043)!important;
  color:#fff!important;
  border:0!important;
  text-decoration:none!important;
  transform:translateY(-2px)!important;
  box-shadow:0 11px 22px rgba(199,44,52,.20)!important;
}
body:not(.wp-admin) a.button:focus-visible,
body:not(.wp-admin) .button > a:focus-visible,
body:not(.wp-admin) .button a:focus-visible{outline:3px solid rgba(36,150,209,.30)!important;outline-offset:3px!important}
body:not(.wp-admin) a.button:active,
body:not(.wp-admin) .button > a:active,
body:not(.wp-admin) .button a:active{transform:translateY(0)!important;box-shadow:0 5px 12px rgba(20,45,75,.15)!important}

@media(min-width:1051px){
  html.bfs-dark-mode .main-nav{background:transparent!important;box-shadow:none!important}
  html.bfs-dark-mode .main-nav>.menu>li>a{
    background:transparent!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    text-decoration:none!important;
    color:#f5f8fa!important;
  }
  html.bfs-dark-mode .main-nav>.menu>li>a:hover,
  html.bfs-dark-mode .main-nav>.menu>li>a:focus-visible,
  html.bfs-dark-mode .main-nav>.menu>.current-menu-item>a,
  html.bfs-dark-mode .main-nav>.menu>.current-menu-ancestor>a{
    background:transparent!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    color:var(--blue,#2496d1)!important;
  }
}


/* 3.9.6 – Editorial Hero for normal blog posts without the full-photo hero.
   Keeps the article clearly editorial while giving title, meta and image one stage. */
.single-post-page .single-post-header--editorial{
  width:min(1480px,calc(100% - 48px))!important;
  max-width:none;
  margin:clamp(28px,3.5vw,54px) auto 0;
  padding:clamp(44px,5vw,74px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.16fr) minmax(330px,.84fr)!important;
  gap:clamp(38px,5.5vw,86px)!important;
  align-items:center;
  min-height:clamp(470px,38vw,585px);
  overflow:hidden;
  border:1px solid rgba(36,150,209,.10);
  border-radius:clamp(24px,2.4vw,36px);
  background:linear-gradient(135deg,#eef8fd 0%,#fff 54%,#f3f9ed 100%);
  box-shadow:0 18px 54px rgba(20,45,75,.075);
  isolation:isolate;
}
.single-post-page .single-post-header--editorial:before{
  content:"";
  position:absolute;
  z-index:-1;
  width:310px;
  height:310px;
  left:-145px;
  top:-150px;
  border:62px solid rgba(98,179,47,.32);
  border-radius:50%;
  opacity:1;
}
.single-post-page .single-post-header--editorial:after{
  content:"";
  position:absolute;
  z-index:-1;
  width:84px;
  height:84px;
  left:54%;
  bottom:-38px;
  border-radius:50%;
  background:rgba(214,0,67,.92);
}
.single-post-page .single-post-header--editorial .single-post-header__copy{
  z-index:2;
  max-width:820px;
}
.single-post-page .single-post-header--editorial .eyebrow{
  display:flex;
  align-items:center;
  gap:11px;
  margin:0 0 11px;
  letter-spacing:.13em!important;
}
.single-post-page .single-post-header--editorial .eyebrow:before{
  content:"";
  width:30px;
  height:4px;
  flex:0 0 30px;
  border-radius:999px;
  background:var(--green);
}
.single-post-page .single-post-header--editorial .single-post-meta{
  gap:8px 10px;
  font-size:.88rem;
  line-height:1.35;
}
.single-post-page .single-post-header--editorial h1{
  max-width:850px!important;
  margin:clamp(17px,2vw,25px) 0 0!important;
  font-size:clamp(3.2rem,4.75vw,5.45rem)!important;
  font-weight:800!important;
  line-height:.96!important;
  letter-spacing:-.026em!important;
  text-wrap:balance;
}
.single-post-page .single-post-header--editorial .single-post-lead{
  max-width:720px;
  margin-top:24px;
  color:var(--ink);
}
.single-post-page .single-post-header--editorial .single-post-header__image{
  position:relative;
  z-index:2;
  width:100%;
  min-height:0!important;
  aspect-ratio:4/3;
  margin:0;
  overflow:hidden;
  border-radius:28px 28px 112px 28px;
  box-shadow:0 22px 52px rgba(20,45,75,.16);
  transform:rotate(.35deg);
}
.single-post-page .single-post-header--editorial .single-post-header__image img{
  width:100%;
  height:100%;
  min-height:0!important;
  object-fit:cover;
}
.single-post-page .single-post-header--editorial.no-image{
  grid-template-columns:1fr!important;
  min-height:430px;
}
.single-post-page .single-post-header--editorial.no-image .single-post-header__copy{
  max-width:1040px;
}
.single-post-page .single-post-header--editorial.no-image h1{
  max-width:1040px!important;
}
.single-post-page .single-post-header--editorial + .single-post-body{
  padding-top:clamp(42px,5vw,68px);
}
html.bfs-dark-mode .single-post-header--editorial{
  background:linear-gradient(135deg,#13283d 0%,#102034 56%,#162b23 100%);
  border-color:rgba(114,200,240,.12);
  box-shadow:0 20px 56px rgba(0,0,0,.24);
}
html.bfs-dark-mode .single-post-header--editorial .single-post-meta,
html.bfs-dark-mode .single-post-header--editorial .single-post-meta a{color:#b8c7d3}
html.bfs-dark-mode .single-post-header--editorial .single-post-lead{color:#e7eef5}
html.bfs-dark-mode .single-post-header--editorial .single-post-header__image{box-shadow:0 22px 52px rgba(0,0,0,.38)}

@media(max-width:900px){
  .single-post-page .single-post-header--editorial{
    grid-template-columns:1fr!important;
    min-height:0;
    gap:32px!important;
    padding:clamp(34px,6vw,54px)!important;
  }
  .single-post-page .single-post-header--editorial .single-post-header__image{
    order:initial!important;
    width:min(100%,720px);
    aspect-ratio:16/10;
    min-height:0!important;
    border-radius:24px 24px 78px 24px;
    transform:none;
  }
  .single-post-page .single-post-header--editorial .single-post-header__image img{min-height:0!important}
  .single-post-page .single-post-header--editorial:after{left:auto;right:11%;bottom:-34px}
}
@media(max-width:620px){
  .single-post-page .single-post-header--editorial{
    width:calc(100% - 24px)!important;
    margin-top:14px;
    padding:28px 22px 24px!important;
    border-radius:22px;
    gap:26px!important;
  }
  .single-post-page .single-post-header--editorial:before{
    width:190px;height:190px;left:-105px;top:-100px;border-width:38px;
  }
  .single-post-page .single-post-header--editorial:after{width:58px;height:58px;right:8%;bottom:-28px}
  .single-post-page .single-post-header--editorial .eyebrow{font-size:.72rem}
  .single-post-page .single-post-header--editorial .single-post-meta{font-size:.82rem}
  .single-post-page .single-post-header--editorial h1{
    font-size:clamp(2.55rem,12.2vw,4rem)!important;
    line-height:.97!important;
    letter-spacing:-.023em!important;
  }
  .single-post-page .single-post-header--editorial .single-post-header__image{
    aspect-ratio:16/10;
    border-radius:20px 20px 58px 20px;
  }
  .single-post-page .single-post-header--editorial + .single-post-body{padding-top:38px}
}


/* 3.9.7 – Selectable article-header system: Editorial, Magazine, Poster and Photo Hero. */

/* Magazine: quiet editorial composition with a wide image stage below the copy. */
.single-post-page .single-post-header--magazine{
  width:min(1480px,calc(100% - 48px))!important;
  max-width:none;
  margin:clamp(30px,3.6vw,58px) auto 0;
  padding:clamp(38px,4.5vw,64px) clamp(40px,5vw,76px) clamp(34px,4vw,58px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(32px,4vw,52px)!important;
  min-height:0!important;
  overflow:hidden;
  border:0;
  border-top:5px solid var(--blue);
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.single-post-page .single-post-header--magazine:before,
.single-post-page .single-post-header--magazine:after{display:none!important}
.single-post-page .single-post-header--magazine .single-post-header__copy{
  width:min(100%,1080px);
  max-width:1080px;
  padding:0!important;
}
.single-post-page .single-post-header--magazine .eyebrow{
  margin:0 0 10px;
  color:var(--green);
  letter-spacing:.14em!important;
}

.single-post-page .single-post-header--magazine h1{
  max-width:1080px!important;
  margin:clamp(18px,2vw,26px) 0 0!important;
  font-size:clamp(3.3rem,5.15vw,6rem)!important;
  font-weight:780!important;
  line-height:.95!important;
  letter-spacing:-.027em!important;
  color:var(--blue)!important;
  text-wrap:balance;
}
.single-post-page .single-post-header--magazine .single-post-lead{max-width:820px;margin:24px 0 0;color:var(--ink)}
.single-post-page .single-post-header--magazine .single-post-header__image{
  width:100%;
  min-height:0!important;
  aspect-ratio:16/6.6;
  margin:0;
  overflow:hidden;
  border-radius:18px 18px 82px 18px;
  box-shadow:0 18px 44px rgba(20,45,75,.12);
  transform:none!important;
}
.single-post-page .single-post-header--magazine .single-post-header__image img{width:100%;height:100%;min-height:0!important;object-fit:cover}
.single-post-page .single-post-header--magazine.no-image{padding-bottom:clamp(48px,5vw,72px)!important}
.single-post-page .single-post-header--magazine + .single-post-body{padding-top:clamp(42px,5vw,66px)}
html.bfs-dark-mode .single-post-header--magazine{border-top-color:#72c8f0;border-bottom-color:rgba(255,255,255,.13)}
html.bfs-dark-mode .single-post-header--magazine h1{color:#72c8f0!important}
html.bfs-dark-mode .single-post-header--magazine .single-post-lead{color:#e7eef5}
html.bfs-dark-mode .single-post-header--magazine .single-post-header__image{box-shadow:0 20px 46px rgba(0,0,0,.32)}

/* Poster: campaign-like, high-contrast stage for strong statements. */
.single-post-page .single-post-header--poster{
  width:min(1480px,calc(100% - 48px))!important;
  max-width:none;
  margin:clamp(28px,3.5vw,54px) auto 0;
  padding:clamp(46px,5.2vw,78px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.22fr) minmax(300px,.68fr)!important;
  gap:clamp(36px,5vw,76px)!important;
  align-items:center;
  min-height:clamp(500px,39vw,620px)!important;
  overflow:hidden;
  border:0;
  border-radius:clamp(26px,2.5vw,38px);
  background:linear-gradient(132deg,#0e3457 0%,#0b2947 62%,#123a5c 100%);
  box-shadow:0 22px 58px rgba(12,35,60,.18);
  isolation:isolate;
  color:#fff;
}
.single-post-page .single-post-header--poster:before{
  content:"";
  position:absolute;
  z-index:-1;
  width:420px;height:420px;
  right:-170px;top:-205px;
  border:78px solid rgba(98,179,47,.92);
  border-radius:50%;
}
.single-post-page .single-post-header--poster:after{
  content:"";
  position:absolute;
  z-index:-1;
  width:112px;height:112px;
  left:49%;bottom:-48px;
  border-radius:50%;
  background:var(--red);
}
.single-post-page .single-post-header--poster .single-post-header__copy{z-index:2;max-width:900px;padding:0!important}
.single-post-page .single-post-header--poster .eyebrow{margin:0 0 12px;color:#8bd843;letter-spacing:.15em!important}
.single-post-page .single-post-header--poster .single-post-meta,
.single-post-page .single-post-header--poster .single-post-meta a{color:#c8d7e4!important}
.single-post-page .single-post-header--poster h1{
  max-width:930px!important;
  margin:clamp(18px,2vw,26px) 0 0!important;
  font-size:clamp(3.4rem,5.2vw,6rem)!important;
  font-weight:800!important;
  line-height:.94!important;
  letter-spacing:-.03em!important;
  color:#fff!important;
  text-wrap:balance;
}
.single-post-page .single-post-header--poster .single-post-lead{max-width:760px;margin:24px 0 0;color:#edf5fb!important}
.single-post-page .single-post-header--poster .single-post-header__image{
  position:relative;z-index:2;
  width:100%;min-height:0!important;
  aspect-ratio:4/4.7;
  margin:0;
  overflow:hidden;
  border:8px solid #fff;
  border-radius:32px 32px 116px 32px;
  box-shadow:14px 16px 0 rgba(36,150,209,.9), -10px -10px 0 rgba(98,179,47,.88);
  transform:rotate(1.4deg)!important;
}
.single-post-page .single-post-header--poster .single-post-header__image img{width:100%;height:100%;min-height:0!important;object-fit:cover}
.single-post-page .single-post-header--poster.no-image{grid-template-columns:1fr!important}
.single-post-page .single-post-header--poster.no-image .single-post-header__copy{max-width:1120px}
.single-post-page .single-post-header--poster + .single-post-body{padding-top:clamp(44px,5vw,68px)}
html.bfs-dark-mode .single-post-header--poster{background:linear-gradient(132deg,#0b2844 0%,#071c30 64%,#102f4c 100%);box-shadow:0 22px 58px rgba(0,0,0,.3)}

@media(max-width:900px){
  .single-post-page .single-post-header--magazine{width:calc(100% - 32px)!important;padding:34px 30px 36px!important;gap:30px!important}
  .single-post-page .single-post-header--magazine .single-post-header__image{aspect-ratio:16/9;border-radius:18px 18px 64px 18px}
  .single-post-page .single-post-header--poster{grid-template-columns:1fr!important;min-height:0!important;padding:clamp(36px,6vw,56px)!important;gap:36px!important}
  .single-post-page .single-post-header--poster .single-post-header__image{width:min(100%,720px);aspect-ratio:16/10;border-width:6px;border-radius:26px 26px 80px 26px;transform:none!important;box-shadow:10px 12px 0 rgba(36,150,209,.85),-7px -7px 0 rgba(98,179,47,.78)}
  .single-post-page .single-post-header--poster:after{left:auto;right:12%;bottom:-42px}
}
@media(max-width:620px){
  .single-post-page .single-post-header--magazine{width:calc(100% - 24px)!important;margin-top:14px;padding:28px 20px 26px!important;border-top-width:4px;gap:24px!important}
  .single-post-page .single-post-header--magazine h1{font-size:clamp(2.65rem,12vw,4.1rem)!important;line-height:.97!important;letter-spacing:-.022em!important}
  .single-post-page .single-post-header--magazine .single-post-meta{font-size:.82rem}
  .single-post-page .single-post-header--magazine .single-post-header__image{aspect-ratio:16/10;border-radius:16px 16px 48px 16px}
  .single-post-page .single-post-header--poster{width:calc(100% - 24px)!important;margin-top:14px;padding:30px 22px 28px!important;border-radius:22px;gap:28px!important}
  .single-post-page .single-post-header--poster:before{width:230px;height:230px;right:-120px;top:-115px;border-width:44px}
  .single-post-page .single-post-header--poster:after{width:64px;height:64px;right:8%;bottom:-30px}
  .single-post-page .single-post-header--poster .eyebrow{font-size:.72rem}
  .single-post-page .single-post-header--poster .single-post-meta{font-size:.82rem}
  .single-post-page .single-post-header--poster h1{font-size:clamp(2.65rem,12.4vw,4.15rem)!important;line-height:.96!important;letter-spacing:-.024em!important}
  .single-post-page .single-post-header--poster .single-post-header__image{aspect-ratio:16/10;border-width:4px;border-radius:18px 18px 52px 18px;box-shadow:7px 8px 0 rgba(36,150,209,.8),-5px -5px 0 rgba(98,179,47,.7)}
}


/* 3.9.8 – Full-width article stages + Dossier + Zine.
   All non-photo article heads now use the same edge-to-edge stage width as the photo hero. */
.single-post-page .single-post-header--editorial,
.single-post-page .single-post-header--magazine,
.single-post-page .single-post-header--poster,
.single-post-page .single-post-header--zine{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border-radius:0!important;
  box-sizing:border-box;
}

/* Editorial keeps its balanced card composition, but the stage itself runs edge to edge. */
.single-post-page .single-post-header--editorial{
  min-height:clamp(500px,39vw,620px);
  padding-block:clamp(50px,5.4vw,82px)!important;
  padding-inline:clamp(34px,7vw,120px)!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
}
.single-post-page .single-post-header--editorial .single-post-header__copy{max-width:880px}
.single-post-page .single-post-header--editorial .single-post-header__image{max-width:660px;justify-self:end}

/* Dossier replaces the former Magazine variant: a sharp editorial split with the image cut to the viewport edge. */
.single-post-page .single-post-header--magazine{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr)!important;
  gap:0!important;
  align-items:stretch;
  min-height:clamp(520px,40vw,650px)!important;
  padding:0!important;
  overflow:hidden;
  border:0!important;
  background:linear-gradient(90deg,#f1f8fc 0%,#fff 47%,#fff 100%)!important;
  box-shadow:none!important;
  isolation:isolate;
}
.single-post-page .single-post-header--magazine:before{
  display:block!important;
  content:"";
  position:absolute;
  z-index:0;
  left:0;top:0;bottom:0;
  width:12px;
  background:linear-gradient(180deg,var(--blue) 0 34%,var(--green) 34% 68%,var(--red) 68% 100%);
}
.single-post-page .single-post-header--magazine:after{
  display:block!important;
  content:"";
  position:absolute;
  z-index:0;
  width:230px;height:230px;
  left:41%;bottom:-150px;
  border:46px solid rgba(98,179,47,.18);
  border-radius:50%;
}
.single-post-page .single-post-header--magazine .single-post-header__copy{
  position:relative;
  z-index:2;
  width:auto;
  max-width:920px;
  align-self:center;
  padding:clamp(50px,6vw,90px) clamp(42px,7vw,120px)!important;
}
.single-post-page .single-post-header--magazine .eyebrow{
  color:var(--red)!important;
  letter-spacing:.14em!important;
  margin:0 0 10px;
}
.single-post-page .single-post-header--magazine .single-post-meta{font-size:.9rem;gap:8px 10px}
.single-post-page .single-post-header--magazine h1{
  max-width:900px!important;
  margin:clamp(18px,2vw,26px) 0 0!important;
  font-size:clamp(3.35rem,5.15vw,6rem)!important;
  font-weight:780!important;
  line-height:.95!important;
  letter-spacing:-.026em!important;
  color:var(--blue-dark)!important;
  text-wrap:balance;
}
.single-post-page .single-post-header--magazine .single-post-lead{max-width:720px;margin:24px 0 0;color:var(--ink)}
.single-post-page .single-post-header--magazine .single-post-header__image{
  position:relative;
  z-index:1;
  width:calc(100% + 72px);
  height:100%;
  min-height:clamp(520px,40vw,650px)!important;
  aspect-ratio:auto!important;
  margin:0 -72px 0 0!important;
  overflow:hidden;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
  clip-path:polygon(10% 0,100% 0,100% 100%,0 100%);
}
.single-post-page .single-post-header--magazine .single-post-header__image img{width:100%;height:100%;min-height:100%!important;object-fit:cover}
.single-post-page .single-post-header--magazine.no-image{grid-template-columns:1fr!important;min-height:470px!important}
.single-post-page .single-post-header--magazine.no-image .single-post-header__copy{max-width:1160px}
.single-post-page .single-post-header--magazine + .single-post-body{padding-top:clamp(44px,5vw,68px)}
html.bfs-dark-mode .single-post-header--magazine{background:linear-gradient(90deg,#10263a 0%,#0d1e30 52%,#102338 100%)!important}
html.bfs-dark-mode .single-post-header--magazine h1{color:#eef7fb!important}
html.bfs-dark-mode .single-post-header--magazine .single-post-lead{color:#dce8ef}

/* Poster becomes edge-to-edge too, retaining its campaign character. */
.single-post-page .single-post-header--poster{
  padding-block:clamp(50px,5.5vw,86px)!important;
  padding-inline:clamp(34px,7vw,120px)!important;
  box-shadow:none!important;
  min-height:clamp(520px,40vw,650px)!important;
}
.single-post-page .single-post-header--poster .single-post-header__image{max-width:610px;justify-self:end}

/* Zine: deliberately unexpected – a warm paper collage with a sticker headline and tilted photo. */
.single-post-page .single-post-header--zine{
  position:relative;
  display:grid!important;
  grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr)!important;
  gap:clamp(46px,6vw,100px)!important;
  align-items:center;
  min-height:clamp(560px,43vw,700px)!important;
  overflow:hidden;
  padding-block:clamp(58px,6vw,96px)!important;
  padding-inline:clamp(34px,7vw,120px)!important;
  border:0!important;
  background:
    radial-gradient(circle,rgba(15,52,87,.12) 1.2px,transparent 1.3px) 0 0/18px 18px,
    linear-gradient(118deg,#f4f0e5 0%,#fffaf0 58%,#eef8e8 100%);
  box-shadow:none!important;
  isolation:isolate;
}
.single-post-page .single-post-header--zine:before{
  content:"";
  position:absolute;
  z-index:0;
  width:300px;height:300px;
  right:-95px;top:-145px;
  border:58px solid var(--green);
  border-radius:50%;
  opacity:.95;
}
.single-post-page .single-post-header--zine:after{
  content:"";
  position:absolute;
  z-index:0;
  width:190px;height:46px;
  left:47%;top:10%;
  background:rgba(255,216,74,.72);
  transform:rotate(-7deg);
  box-shadow:0 2px 1px rgba(0,0,0,.05);
}
.single-post-page .single-post-header--zine .single-post-header__copy{
  position:relative;
  z-index:3;
  grid-column:2;
  grid-row:1;
  max-width:920px;
  padding:0!important;
}
.single-post-page .single-post-header--zine .eyebrow{
  display:inline-flex;
  margin:0 0 12px;
  padding:8px 12px 7px;
  background:var(--green);
  color:#0b2947!important;
  letter-spacing:.12em!important;
  transform:rotate(-1.5deg);
}
.single-post-page .single-post-header--zine .single-post-meta,
.single-post-page .single-post-header--zine .single-post-meta a{color:#405367!important}
.single-post-page .single-post-header--zine h1{
  display:inline-block;
  max-width:940px!important;
  margin:clamp(18px,2vw,26px) 0 0!important;
  padding:.18em .24em .22em!important;
  background:var(--blue-dark);
  color:#fff!important;
  font-size:clamp(3.25rem,5vw,5.9rem)!important;
  font-weight:800!important;
  line-height:.94!important;
  letter-spacing:-.027em!important;
  text-wrap:balance;
  box-shadow:14px 14px 0 var(--red);
  transform:rotate(-.7deg);
}
.single-post-page .single-post-header--zine .single-post-lead{
  max-width:760px;
  margin:34px 0 0;
  padding-left:16px;
  border-left:5px solid var(--blue);
  color:#20364b!important;
}
.single-post-page .single-post-header--zine .single-post-header__image{
  position:relative;
  z-index:2;
  grid-column:1;
  grid-row:1;
  width:min(100%,590px);
  min-height:0!important;
  aspect-ratio:4/4.7;
  justify-self:center;
  margin:0;
  overflow:hidden;
  border:12px solid #fff;
  border-radius:4px!important;
  box-shadow:15px 16px 0 var(--blue),-11px -10px 0 var(--green),26px 3px 0 rgba(214,0,67,.82);
  transform:rotate(-2.4deg)!important;
}
.single-post-page .single-post-header--zine .single-post-header__image img{width:100%;height:100%;min-height:0!important;object-fit:cover}
.single-post-page .single-post-header--zine.no-image{grid-template-columns:1fr!important}
.single-post-page .single-post-header--zine.no-image .single-post-header__copy{grid-column:1;max-width:1120px}
.single-post-page .single-post-header--zine + .single-post-body{padding-top:clamp(48px,5vw,72px)}
html.bfs-dark-mode .single-post-header--zine{
  background:
    radial-gradient(circle,rgba(255,255,255,.08) 1.2px,transparent 1.3px) 0 0/18px 18px,
    linear-gradient(118deg,#182638 0%,#102033 58%,#172a20 100%);
}
html.bfs-dark-mode .single-post-header--zine .single-post-meta,
html.bfs-dark-mode .single-post-header--zine .single-post-meta a{color:#c5d2dc!important}
html.bfs-dark-mode .single-post-header--zine .single-post-lead{color:#edf4f8!important}

@media(max-width:1000px){
  .single-post-page .single-post-header--editorial,
  .single-post-page .single-post-header--poster,
  .single-post-page .single-post-header--zine{
    grid-template-columns:1fr!important;
    gap:34px!important;
  }
  .single-post-page .single-post-header--magazine{grid-template-columns:1fr!important}
  .single-post-page .single-post-header--magazine .single-post-header__copy{padding-bottom:38px!important}
  .single-post-page .single-post-header--magazine .single-post-header__image{
    width:100%;height:auto;min-height:0!important;aspect-ratio:16/8!important;margin:0!important;clip-path:none;
  }
  .single-post-page .single-post-header--zine .single-post-header__copy{grid-column:1;grid-row:1}
  .single-post-page .single-post-header--zine .single-post-header__image{grid-column:1;grid-row:2;width:min(100%,720px);aspect-ratio:16/10;justify-self:start;transform:rotate(-1deg)!important}
}
@media(max-width:620px){
  .single-post-page .single-post-header--editorial,
  .single-post-page .single-post-header--poster,
  .single-post-page .single-post-header--zine{
    width:100%!important;
    margin:0!important;
    border-radius:0!important;
    padding:32px 22px 34px!important;
  }
  .single-post-page .single-post-header--magazine{width:100%!important;margin:0!important;border-radius:0!important}
  .single-post-page .single-post-header--magazine .single-post-header__copy{padding:34px 22px 30px!important}
  .single-post-page .single-post-header--magazine h1,
  .single-post-page .single-post-header--zine h1{font-size:clamp(2.6rem,12vw,4.1rem)!important;line-height:.96!important}
  .single-post-page .single-post-header--magazine .single-post-header__image{aspect-ratio:16/10!important}
  .single-post-page .single-post-header--zine:after{width:120px;height:34px;left:auto;right:14%;top:9%}
  .single-post-page .single-post-header--zine h1{box-shadow:8px 9px 0 var(--red);transform:none}
  .single-post-page .single-post-header--zine .single-post-header__image{border-width:7px;box-shadow:8px 9px 0 var(--blue),-6px -6px 0 var(--green),14px 2px 0 rgba(214,0,67,.78);transform:none!important}
}


/* 3.9.9 – Article header polish after screenshot review. */
/* Dossier: remove the inherited/combined decorative marker on the far left. */
.single-post-page .single-post-header--magazine:before{
  display:none!important;
  content:none!important;
}
/* Zine: readable paper-sticker headline instead of low-contrast white type. */
.single-post-page .single-post-header--zine h1{
  background:#fffdf7!important;
  color:#0b2947!important;
  border:2px solid rgba(11,41,71,.08);
  box-shadow:14px 14px 0 var(--red);
}
html.bfs-dark-mode .single-post-header--zine h1{
  background:#fffdf7!important;
  color:#0b2947!important;
}
@media(max-width:620px){
  .single-post-page .single-post-header--zine h1{box-shadow:8px 9px 0 var(--red)}
}

/* 3.10.2 – Unterstützer-Fokus geschärft, Wirkungsblock entfernt, Logos großzügiger. */
.bfs-supporters-landing{overflow:hidden;background:#fff}
.supporter-landing-hero{position:relative;overflow:hidden;isolation:isolate;background:#12395d;color:#fff;min-height:660px}
.supporter-landing-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.10) 1.5px,transparent 1.5px);background-size:23px 23px;opacity:.45;z-index:-1}
.supporter-landing-hero__inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:clamp(40px,7vw,110px);align-items:center;max-width:1500px;margin:0 auto;padding:clamp(78px,9vw,130px) clamp(28px,7vw,110px) 120px}
.supporter-landing-hero__copy{max-width:790px}.supporter-landing-hero__eyebrow{color:#98dc4e!important;letter-spacing:.14em!important;margin:0 0 24px}
.supporter-landing-hero h1{margin:0;font-family:var(--font-heading);font-size:clamp(4.7rem,8vw,8.3rem);font-weight:800;line-height:.84;letter-spacing:-.045em;color:#fff}
.supporter-landing-hero h1 span{color:#fff}.supporter-landing-hero h1 em{font-style:normal;color:#7cc534}
.supporter-landing-hero__lead{max-width:720px;margin:34px 0 0;font-size:clamp(1.15rem,1.8vw,1.42rem);line-height:1.55;color:#e9f4fb}
.supporter-landing-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.supporter-landing-hero__ghost{background:transparent!important;border:1px solid rgba(255,255,255,.5)!important;color:#fff!important;box-shadow:none!important}.supporter-landing-hero__ghost:hover{background:#fff!important;color:#12395d!important;border-color:#fff!important}

.supporter-landing-hero__visual{position:relative;min-height:470px}.supporter-orbit{position:absolute;border-radius:50%;border-style:solid;pointer-events:none}.supporter-orbit--blue{width:470px;height:470px;border-width:76px;border-color:#2b9bd2;right:-160px;top:-155px;opacity:.19}.supporter-orbit--green{width:390px;height:390px;border-width:62px;border-color:#71bd2c;right:20px;bottom:-175px;opacity:.4}
.supporter-landing-card{position:absolute;font-family:var(--font-heading);font-weight:800;box-shadow:18px 22px 0 rgba(0,0,0,.12)}.supporter-landing-card--main{left:3%;top:12%;width:min(330px,68%);aspect-ratio:1/1;border-radius:48% 52% 45% 55%;display:flex;flex-direction:column;justify-content:center;padding:44px;background:#fff;color:#12395d;transform:rotate(-6deg);border:7px solid #fff;outline:2px dashed rgba(18,57,93,.22);outline-offset:-18px}.supporter-landing-card--main small{font-size:.9rem;letter-spacing:.1em;color:#d90045}.supporter-landing-card--main strong{margin-top:8px;font-size:clamp(2.1rem,3.6vw,4rem);line-height:.9;letter-spacing:-.045em}
.supporter-landing-card--red{right:2%;top:11%;display:grid;place-items:center;width:145px;height:145px;border-radius:30px;background:#e50046;color:#fff;font-size:1.55rem;transform:rotate(9deg);box-shadow:10px 12px 0 #2b9bd2}.supporter-landing-card--blue{right:8%;bottom:4%;display:grid;place-items:center;width:160px;height:160px;border-radius:50%;background:#2b9bd2;color:#fff;text-align:center;font-size:2rem;line-height:.82;transform:rotate(7deg);box-shadow:10px 12px 0 #71bd2c}.supporter-star{position:absolute;font-size:3rem;color:#ffe56b}.supporter-star--one{left:2%;bottom:1%}.supporter-star--two{right:37%;top:3%;color:#ff6680;font-size:2rem}
.supporter-landing-wave{position:absolute;z-index:1;left:-4%;right:-4%;bottom:-78px;height:140px;border-radius:50% 50% 0 0 / 70% 70% 0 0;background:#fff}
.supporter-custom-intro{padding:42px clamp(24px,6vw,80px) 0}.supporter-custom-intro__inner{max-width:900px;margin:0 auto;padding:28px 34px;border-left:6px solid #2b9bd2;border-radius:0 22px 22px 0;background:#f4f9fc;font-size:1.12rem;line-height:1.65}.supporter-custom-intro__inner>*:first-child{margin-top:0}.supporter-custom-intro__inner>*:last-child{margin-bottom:0}
.supporter-partners{max-width:none!important;margin:0!important;padding:clamp(72px,8vw,120px) clamp(24px,6vw,90px)!important;background:#f3f7fa}.supporter-partners__intro{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.7fr);gap:clamp(30px,7vw,100px);align-items:end;max-width:1370px;margin:0 auto 50px}.supporter-partners__intro .eyebrow{color:#2b9bd2}.supporter-partners__intro h2{max-width:800px;margin:.1em 0 0;font-size:clamp(3rem,5vw,5.25rem);line-height:.94;letter-spacing:-.035em}.supporter-partners__intro>p{margin:0 0 .6em;color:#526277;font-size:1.08rem;line-height:1.65}
.bfs-sponsor-wall{max-width:1370px;margin:0 auto}.bfs-sponsor-wall__primary{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:clamp(28px,5vw,70px);align-items:center;margin-bottom:60px;padding:clamp(30px,5vw,58px);border-radius:34px;background:#12395d;color:#fff;overflow:hidden;position:relative}.bfs-sponsor-wall__primary:after{content:"";position:absolute;width:310px;height:310px;border:58px solid #71bd2c;border-radius:50%;right:-130px;bottom:-185px;opacity:.34}.bfs-sponsor-wall__primary-head{position:relative;z-index:1}.bfs-sponsor-wall__primary-head .eyebrow{color:#9edc58}.bfs-sponsor-wall__primary-head h2{margin:.1em 0 .25em;font-size:clamp(2.15rem,3.25vw,3.7rem);line-height:.96;letter-spacing:-.025em;color:#fff}.bfs-sponsor-wall__primary-head>p:last-child{color:#d8e6ef;line-height:1.6}.bfs-sponsor-primary-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.bfs-sponsor-primary{min-width:0}.bfs-sponsor-primary>a,.bfs-sponsor-primary>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;min-height:360px;padding:34px 36px;border-radius:28px;background:#fff;text-decoration:none;color:#12395d;box-shadow:0 18px 50px rgba(0,0,0,.16);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.bfs-sponsor-primary>a:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(0,0,0,.22)}.bfs-sponsor-primary__logo{display:flex;align-items:center;justify-content:center;width:100%;height:235px;min-height:235px;margin:0;padding:10px 14px;overflow:hidden}.bfs-sponsor-primary__logo img,.bfs-sponsor-primary__logo .bfs-supporter-logo-image{display:block;max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;object-position:center!important;margin:auto!important}.bfs-sponsor-primary h3{margin:0;text-align:center;font-size:1.28rem;line-height:1.2}.bfs-sponsor-card__visit{display:none!important}
.bfs-sponsor-wall__others{padding-top:12px}.bfs-sponsor-wall__others-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:40px;align-items:end;margin-bottom:28px}.bfs-sponsor-wall__others-head .eyebrow{color:#e50046}.bfs-sponsor-wall__others-head h2{margin:.1em 0 0;font-size:clamp(2.4rem,4vw,4rem);letter-spacing:-.03em}.bfs-sponsor-wall__others-head>p{margin:0;color:#56667a;line-height:1.6}.bfs-supporter-grid--wall{gap:18px!important}.bfs-supporter-grid--wall .bfs-supporter-card{border:1px solid #dce6ed;border-radius:24px;background:#fff;box-shadow:0 8px 25px rgba(20,52,78,.04)}.bfs-supporter-grid--wall .bfs-supporter-card>a,.bfs-supporter-grid--wall .bfs-supporter-card>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;height:100%;min-height:310px;padding:30px 28px;text-decoration:none;color:#12395d;overflow:hidden}.bfs-supporter-grid--wall .bfs-supporter-card__logo{display:flex;align-items:center;justify-content:center;width:100%;height:190px;min-height:190px;margin:0;padding:10px 8px;overflow:hidden}.bfs-supporter-grid--wall .bfs-supporter-card__logo img,.bfs-supporter-grid--wall .bfs-supporter-card__logo .bfs-supporter-logo-image{display:block;max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;object-position:center!important;margin:auto!important}.bfs-supporter-grid--wall .bfs-supporter-card h3{margin:0;font-size:1.08rem;line-height:1.22;text-align:center}.bfs-supporter-grid--wall .bfs-sponsor-card__visit{display:none!important}.bfs-supporter-grid--wall .bfs-supporter-card:hover{transform:translateY(-4px);border-color:#b9d8e9;box-shadow:0 16px 36px rgba(20,52,78,.10)}
.supporter-partner-cta{position:relative;overflow:hidden;background:#e50046;color:#fff}.supporter-partner-cta:before{content:"";position:absolute;width:460px;height:460px;border:82px solid rgba(255,255,255,.12);border-radius:50%;right:-140px;top:-220px}.supporter-partner-cta__inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.65fr);gap:70px;align-items:center;padding:clamp(70px,8vw,120px) clamp(24px,7vw,100px)}.supporter-partner-cta__copy{max-width:850px}.supporter-partner-cta .eyebrow{color:#fff}.supporter-partner-cta h2{margin:.08em 0 .25em;font-size:clamp(3.5rem,6vw,6.8rem);line-height:.86;letter-spacing:-.045em;color:#fff}.supporter-partner-cta h2 span{color:#ffe46b}.supporter-partner-cta__copy>p:not(.eyebrow){max-width:720px;font-size:1.14rem;line-height:1.6;color:#fff}.supporter-partner-cta .btn{margin-top:18px}.supporter-partner-cta__stamp{justify-self:end;display:grid;align-content:center;justify-items:center;justify-content:center;gap:8px;text-align:center;width:min(350px,30vw);aspect-ratio:1;border-radius:48% 52% 53% 47%;padding:44px 40px 38px;background:#fff;color:#12395d;transform:rotate(5deg);box-shadow:16px 18px 0 #71bd2c;font-family:var(--font-heading);overflow:visible}.supporter-partner-cta__stamp > *{transform:rotate(-5deg)}.supporter-partner-cta__stamp span{display:block;width:100%;color:#e50046;font-weight:800;font-size:.84rem;letter-spacing:.11em;line-height:1.05;text-align:center;margin:0 auto 2px}.supporter-partner-cta__stamp strong{display:block;width:100%;max-width:100%;font-size:clamp(2.15rem,3.7vw,3.95rem);line-height:.84;letter-spacing:-.05em;text-align:center;text-wrap:balance}.supporter-partner-cta__stamp b{display:block;width:100%;margin-top:10px;color:#e50046;font-size:1.95rem;line-height:1;text-align:center}
.bfs-dark-mode .bfs-supporters-landing{background:#0d1f31}.bfs-dark-mode .supporter-landing-wave{background:#0d1f31}.bfs-dark-mode .supporter-partners{background:#10263a}.bfs-dark-mode .supporter-partners__intro h2,.bfs-dark-mode .bfs-sponsor-wall__others-head h2{color:#fff}.bfs-dark-mode .supporter-partners__intro>p,.bfs-dark-mode .bfs-sponsor-wall__others-head>p{color:#b9c9d6}.bfs-dark-mode .bfs-supporter-grid--wall .bfs-supporter-card{border-color:#29445a;background:#fff;color:#12395d}.bfs-dark-mode .supporter-custom-intro__inner{background:#122a40;color:#d8e5ee}
@media(max-width:1050px){.supporter-landing-hero__inner{grid-template-columns:1fr minmax(330px,.72fr);gap:30px}.supporter-landing-hero h1{font-size:clamp(4rem,8vw,6.2rem)}.supporter-landing-card--main{left:0}.bfs-sponsor-wall__primary{grid-template-columns:1fr}.supporter-partner-cta__inner{grid-template-columns:1fr auto}.supporter-partner-cta__stamp{width:250px}}
@media(max-width:760px){.supporter-landing-hero{min-height:0}.supporter-landing-hero__inner{grid-template-columns:1fr;padding:68px 22px 105px}.supporter-landing-hero h1{font-size:clamp(3.9rem,18vw,6rem);line-height:.85}.supporter-landing-hero__lead{font-size:1.08rem}.supporter-landing-hero__visual{min-height:330px;margin-top:8px}.supporter-landing-card--main{width:245px;padding:34px}.supporter-landing-card--red{width:105px;height:105px;font-size:1.15rem}.supporter-landing-card--blue{width:115px;height:115px;font-size:1.45rem}.supporter-partners__intro,.bfs-sponsor-wall__others-head{grid-template-columns:1fr;gap:16px}.bfs-sponsor-wall__primary{padding:28px 20px;border-radius:28px}.bfs-sponsor-primary>a,.bfs-sponsor-primary>div{min-height:300px}.bfs-sponsor-primary__logo{height:200px;min-height:200px}.bfs-supporter-grid--wall .bfs-supporter-card>a,.bfs-supporter-grid--wall .bfs-supporter-card>div{min-height:280px}.bfs-supporter-grid--wall .bfs-supporter-card__logo{height:175px;min-height:175px}.supporter-partner-cta__inner{grid-template-columns:1fr;padding-inline:22px}.supporter-partner-cta h2{font-size:clamp(3.4rem,15vw,5.4rem)}.supporter-partner-cta__stamp{justify-self:start;width:230px;padding:34px 28px 30px}.supporter-custom-intro{padding-inline:20px}.supporter-custom-intro__inner{padding:22px 24px}}
@media(max-width:520px){.supporter-landing-hero__actions{display:grid}.supporter-landing-hero__actions .btn{width:100%;justify-content:center}.supporter-partners__intro{padding-inline:20px}.supporter-partners{padding-inline:20px!important}.bfs-supporter-grid--wall{grid-template-columns:1fr!important}.supporter-partner-cta__stamp{width:200px;padding:30px 24px 26px}}


/* 4.0.0 – stabilisierte Typografie- und Lesbarkeitsbasis.
   Inter Tight bleibt für plakative Ebenen, Source Sans 3 für Inhalte.
   Die Basisgröße längerer Fließtexte ist über Design → BFS Theme-Einstellungen
   → Typografie steuerbar; Standard: 18px. UI, Navigation und Headlines bleiben separat. */
:root{--bfs-copy-size:18px;--bfs-copy-leading:1.68}
.single-post-content,
.standard-page-content,
.page-content--wide .page-content__inner,
.bfs-download-content,
.event-content-free,
.event-detail-section__content,
.bfs-imprint-content,
.bfs-privacy-content{
  font-size:var(--bfs-copy-size)!important;
  line-height:var(--bfs-copy-leading)!important;
}
.single-post-content p,
.standard-page-content p,
.page-content--wide .page-content__inner p,
.bfs-download-content p,
.event-content-free p,
.event-detail-section__content p,
.bfs-imprint-content p,
.bfs-privacy-content p{
  line-height:var(--bfs-copy-leading);
  text-wrap:pretty;
}
.single-post-page .single-post-content>p:first-child{
  font-size:calc(var(--bfs-copy-size) + 1px)!important;
  line-height:1.64!important;
}
.bfs-about-intro,
.bfs-about-intro p,
.bfs-about-intro p:first-child{
  font-size:var(--bfs-copy-size)!important;
  line-height:var(--bfs-copy-leading)!important;
}
.bfs-about-intro p:first-child{font-size:calc(var(--bfs-copy-size) + 1px)!important}
.bfs-privacy-section p,.bfs-privacy-section li{font-size:var(--bfs-copy-size)!important;line-height:var(--bfs-copy-leading)!important}
.event-intro-copy p{
  font-size:var(--bfs-copy-size)!important;
  line-height:var(--bfs-copy-leading)!important;
}
.supporter-partners__intro>p,
.supporter-partner-cta__copy>p:not(.eyebrow){
  font-size:var(--bfs-copy-size);
  line-height:var(--bfs-copy-leading);
}
.project-card p,.bfs-about-what-card p,.bfs-related-event-card__content p,.bfs-event-story p{
  font-size:1.02rem;
  line-height:1.62;
}
@media(max-width:720px){
  .single-post-content,
  .standard-page-content,
  .page-content--wide .page-content__inner,
  .bfs-download-content,
  .event-content-free,
  .event-detail-section__content,
  .bfs-imprint-content,
  .bfs-privacy-content,
  .bfs-about-intro,
  .event-intro-copy p{
    line-height:1.66!important;
  }
}

/* 4.2.0 – global gallery system: Standard, Impressionen, Slideshow, Carousel, Masonry, Collage, Photo Stack. */
.bfs-gallery[data-bfs-gallery="true"]{
  position:relative;
  isolation:isolate;
}
.bfs-gallery[data-bfs-gallery="true"] :is(.gallery-item,.wp-block-image,.blocks-gallery-item){
  box-sizing:border-box;
}
.bfs-gallery[data-bfs-gallery="true"] :is(.gallery-icon,a){
  box-sizing:border-box;
}

/* Slideshow: one uncropped stage, manually navigated for calm/accessibility. */
.bfs-gallery--slideshow{
  display:block!important;
  overflow:visible!important;
  --bfs-gallery-stage:clamp(340px,58vw,620px);
}
.bfs-gallery--slideshow::after{display:none!important;content:none!important}
.bfs-gallery--slideshow > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--slideshow > .blocks-gallery-grid > .blocks-gallery-item{
  display:none!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  overflow:hidden;
  border-radius:20px!important;
  background:#102d44;
  box-shadow:0 14px 34px rgba(14,45,67,.12)!important;
}
.bfs-gallery--slideshow > .is-bfs-slide-active,
.bfs-gallery--slideshow > .blocks-gallery-grid > .is-bfs-slide-active{display:block!important}
.bfs-gallery--slideshow :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){display:block;width:100%!important;height:var(--bfs-gallery-stage)!important}
.bfs-gallery--slideshow img{display:block;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;background:#102d44}
.bfs-gallery--slideshow figcaption,.bfs-gallery--slideshow .gallery-caption{position:static!important;padding:11px 15px!important;background:#fff!important;color:#385064!important;text-align:center}

/* Carousel: native horizontal scrolling + buttons, also works by touch/trackpad. */
.bfs-gallery--carousel{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:thin;
  padding:4px 3px 14px!important;
  grid-template-columns:none!important;
}
.bfs-gallery--carousel::after{display:none!important;content:none!important}
.bfs-gallery--carousel > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--carousel > .blocks-gallery-grid > .blocks-gallery-item{
  flex:0 0 min(78%,680px)!important;
  width:min(78%,680px)!important;
  min-width:280px!important;
  height:clamp(300px,48vw,500px)!important;
  margin:0!important;
  scroll-snap-align:start;
  overflow:hidden;
  border-radius:19px!important;
  background:#edf3f6;
  box-shadow:0 8px 24px rgba(13,46,66,.09)!important;
}
.bfs-gallery--carousel > .blocks-gallery-grid{display:contents!important}
.bfs-gallery--carousel :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){display:block;width:100%!important;height:100%!important}
.bfs-gallery--carousel img{width:100%!important;height:100%!important;object-fit:cover!important}

/* Masonry: source proportions remain visible instead of being cropped. */
.bfs-gallery--masonry{
  display:block!important;
  columns:3;
  column-gap:14px!important;
  grid-template-columns:none!important;
}
.bfs-gallery--masonry::after{display:none!important;content:none!important}
.bfs-gallery--masonry > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--masonry > .blocks-gallery-grid > .blocks-gallery-item{
  display:inline-block!important;
  width:100%!important;
  height:auto!important;
  margin:0 0 14px!important;
  break-inside:avoid;
  overflow:hidden;
  border-radius:16px!important;
  background:#edf3f6;
  box-shadow:0 7px 20px rgba(13,46,66,.08)!important;
}
.bfs-gallery--masonry > .blocks-gallery-grid{display:contents!important}
.bfs-gallery--masonry :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){display:block;width:100%!important;height:auto!important}
.bfs-gallery--masonry img{display:block;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}

/* Collage: varied editorial cells. Repeats safely for galleries with many images. */
.bfs-gallery--collage{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  grid-auto-rows:88px;
  gap:11px!important;
}
.bfs-gallery--collage::after{display:none!important;content:none!important}
.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item{
  grid-column:span 4;
  grid-row:span 3;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  overflow:hidden;
  border-radius:17px!important;
  background:#edf3f6;
  box-shadow:0 8px 22px rgba(13,46,66,.08)!important;
}
.bfs-gallery--collage > .blocks-gallery-grid{display:contents!important}
.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+1){grid-column:span 7;grid-row:span 5}
.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+2){grid-column:span 5;grid-row:span 3}
.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+3){grid-column:span 5;grid-row:span 2}
.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+4){grid-column:span 4;grid-row:span 4}
.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+5){grid-column:span 8;grid-row:span 4}
.bfs-gallery--collage :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){display:block;width:100%!important;height:100%!important}
.bfs-gallery--collage img{width:100%!important;height:100%!important;object-fit:cover!important}

/* Photo stack: a playful deck; full images remain available in the lightbox. */
.bfs-gallery--stack{
  display:grid!important;
  place-items:center;
  padding:45px 0 70px!important;
  overflow:visible!important;
  grid-template-columns:1fr!important;
}
.bfs-gallery--stack::after{display:none!important;content:none!important}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item{
  grid-area:1/1;
  width:min(72%,560px)!important;
  aspect-ratio:4/3;
  height:auto!important;
  margin:0!important;
  padding:9px 9px 34px!important;
  overflow:hidden;
  border:1px solid rgba(22,54,78,.11)!important;
  border-radius:4px!important;
  background:#fff!important;
  box-shadow:0 17px 38px rgba(13,46,66,.18)!important;
  transform-origin:center;
  transition:transform .22s ease,box-shadow .22s ease;
}
.bfs-gallery--stack > .blocks-gallery-grid{display:contents!important}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(6n+1){transform:translate(-6%,-2%) rotate(-8deg);z-index:1}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(6n+2){transform:translate(7%,2%) rotate(7deg);z-index:2}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(6n+3){transform:translate(-2%,4%) rotate(-3deg);z-index:3}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(6n+4){transform:translate(5%,-3%) rotate(4deg);z-index:4}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(6n+5){transform:translate(-4%,2%) rotate(-1deg);z-index:5}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(6n){transform:translate(2%,0) rotate(2deg);z-index:6}
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):hover,
.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):focus-within{z-index:20;transform:translateY(-10px) rotate(0);box-shadow:0 24px 48px rgba(13,46,66,.24)!important}
.bfs-gallery--stack :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){display:block;width:100%!important;height:100%!important}
.bfs-gallery--stack img{width:100%!important;height:100%!important;object-fit:cover!important}
.bfs-gallery--stack figcaption,.bfs-gallery--stack .gallery-caption{position:absolute!important;left:12px;right:12px;bottom:8px;padding:0!important;background:transparent!important;color:#526575!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Shared controls for slideshow / carousel. */
.bfs-gallery-controls{display:flex;align-items:center;justify-content:center;gap:10px;margin:-34px auto 44px;position:relative;z-index:5}
.bfs-gallery-controls--carousel{justify-content:flex-end;margin:-2px auto 42px}
.bfs-gallery-controls button{appearance:none;width:42px;height:42px;border:1px solid #d2e0e8;border-radius:50%;display:grid;place-items:center;background:#fff;color:#173b54;font:800 19px/1 var(--font-heading);cursor:pointer;box-shadow:0 7px 18px rgba(13,46,66,.08);transition:.18s}
.bfs-gallery-controls button:hover,.bfs-gallery-controls button:focus-visible{background:#173b54;color:#fff;border-color:#173b54;transform:translateY(-2px)}
.bfs-gallery-controls__status{min-width:68px;text-align:center;color:#5d7080;font-size:.86rem;font-weight:800}

html.bfs-dark-mode .bfs-gallery-controls button{background:#15344c;color:#fff;border-color:#34556b}
html.bfs-dark-mode .bfs-gallery-controls__status{color:#b9ccd8}
html.bfs-dark-mode .bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item){background:#f9fbfc!important}

@media(max-width:760px){
  .bfs-gallery--slideshow{--bfs-gallery-stage:clamp(280px,72vw,480px)}
  .bfs-gallery--carousel > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),.bfs-gallery--carousel > .blocks-gallery-grid > .blocks-gallery-item{flex-basis:86%!important;width:86%!important;height:clamp(260px,64vw,420px)!important;min-width:240px!important}
  .bfs-gallery--masonry{columns:2}
  .bfs-gallery--collage{grid-template-columns:repeat(6,minmax(0,1fr))!important;grid-auto-rows:72px;gap:8px!important}
  .bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item{grid-column:span 3;grid-row:span 3}
  .bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+1){grid-column:span 6;grid-row:span 4}
  .bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+2),.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+3){grid-column:span 3;grid-row:span 3}
  .bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+4),.bfs-gallery--collage > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+5){grid-column:span 6;grid-row:span 3}
  .bfs-gallery--stack{padding:35px 0 58px!important}.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item{width:78%!important;padding:7px 7px 28px!important}
  .bfs-gallery-controls{margin-top:-24px}.bfs-gallery-controls--carousel{margin-top:0}
}
@media(max-width:480px){
  .bfs-gallery--masonry{columns:1}
  .bfs-gallery--carousel > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),.bfs-gallery--carousel > .blocks-gallery-grid > .blocks-gallery-item{flex-basis:91%!important;width:91%!important}
  .bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item{width:84%!important}
}
@media(prefers-reduced-motion:reduce){.bfs-gallery--carousel{scroll-behavior:auto}.bfs-gallery--stack > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),.bfs-gallery-controls button{transition:none}}
/* 4.2 compatibility: older Gutenberg .blocks-gallery-grid wrappers. */
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+1){grid-column:span 7;grid-row:span 5}
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+2){grid-column:span 5;grid-row:span 3}
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+3){grid-column:span 5;grid-row:span 2}
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+4){grid-column:span 4;grid-row:span 4}
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+5){grid-column:span 8;grid-row:span 4}
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item:nth-child(6n+1){transform:translate(-6%,-2%) rotate(-8deg);z-index:1}
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item:nth-child(6n+2){transform:translate(7%,2%) rotate(7deg);z-index:2}
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item:nth-child(6n+3){transform:translate(-2%,4%) rotate(-3deg);z-index:3}
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item:nth-child(6n+4){transform:translate(5%,-3%) rotate(4deg);z-index:4}
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item:nth-child(6n+5){transform:translate(-4%,2%) rotate(-1deg);z-index:5}
.bfs-gallery--stack > .blocks-gallery-grid > .blocks-gallery-item:nth-child(6n){transform:translate(2%,0) rotate(2deg);z-index:6}
@media(max-width:760px){
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+1){grid-column:span 6;grid-row:span 4}
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+2),.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+3){grid-column:span 3;grid-row:span 3}
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+4),.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+5){grid-column:span 6;grid-row:span 3}
}


/* 4.2.2 – slideshow reliability: exactly one full, sharp image at a time. */
.bfs-gallery--slideshow > .blocks-gallery-grid{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
}
/* Progressive enhancement: without JS only the first image is shown. */
.bfs-gallery--slideshow > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--slideshow > .blocks-gallery-grid > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item){
  display:none!important;
}
.bfs-gallery--slideshow > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):first-child,
.bfs-gallery--slideshow > .blocks-gallery-grid > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item):first-child{
  display:block!important;
}
/* Once JS is active, the active slide is the sole source of truth. */
.bfs-gallery--slideshow.is-bfs-gallery-enhanced > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--slideshow.is-bfs-gallery-enhanced > .blocks-gallery-grid > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item){
  display:none!important;
}
.bfs-gallery--slideshow.is-bfs-gallery-enhanced > .is-bfs-slide-active,
.bfs-gallery--slideshow.is-bfs-gallery-enhanced > .blocks-gallery-grid > .is-bfs-slide-active{
  display:block!important;
}
.bfs-gallery--slideshow.is-bfs-gallery-enhanced > [hidden],
.bfs-gallery--slideshow.is-bfs-gallery-enhanced > .blocks-gallery-grid > [hidden]{
  display:none!important;
}
.bfs-gallery--slideshow .bfs-gallery-slide-item{
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  flex:none!important;
}
/* The stage keeps a calm size, but the photo itself is never cropped. */
.bfs-gallery--slideshow .bfs-gallery-slide-item :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
.bfs-gallery--slideshow .bfs-gallery-slide-item > a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:var(--bfs-gallery-stage)!important;
  overflow:hidden!important;
  background:#102d44!important;
}
.bfs-gallery--slideshow .bfs-gallery-slide-item img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  filter:none!important;
}

/* Modern galleries use the gallery itself as track; older Gutenberg galleries use .blocks-gallery-grid. */
.bfs-gallery--carousel.bfs-gallery-carousel-track,
.bfs-gallery--carousel.has-bfs-nested-track > .blocks-gallery-grid.bfs-gallery-carousel-track{
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:stretch!important;
  gap:14px!important;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:thin;
  padding:4px 3px 14px!important;
  margin:0!important;
}
.bfs-gallery--carousel.has-bfs-nested-track{
  display:block!important;
  overflow:visible!important;
  padding:0!important;
}
.bfs-gallery-carousel-track > .bfs-gallery-carousel-item{
  display:block!important;
  flex:0 0 min(78%,680px)!important;
  width:min(78%,680px)!important;
  max-width:min(78%,680px)!important;
  min-width:280px!important;
  height:clamp(300px,48vw,500px)!important;
  margin:0!important;
  scroll-snap-align:start;
  scroll-snap-stop:normal;
}
.bfs-gallery-carousel-track > .bfs-gallery-carousel-item :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
.bfs-gallery-carousel-track > .bfs-gallery-carousel-item > a{
  display:block!important;
  width:100%!important;
  height:100%!important;
}
.bfs-gallery-carousel-track > .bfs-gallery-carousel-item img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:cover!important;
}
@media(max-width:760px){
  .bfs-gallery-carousel-track > .bfs-gallery-carousel-item{
    flex-basis:86%!important;
    width:86%!important;
    max-width:86%!important;
    min-width:240px!important;
    height:clamp(260px,64vw,420px)!important;
  }
}
@media(max-width:480px){
  .bfs-gallery-carousel-track > .bfs-gallery-carousel-item{
    flex-basis:91%!important;
    width:91%!important;
    max-width:91%!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .bfs-gallery-carousel-track{scroll-behavior:auto!important}
}


/* 4.2.3 – Classic Editor slideshow hardening. */
.bfs-legacy-gallery.bfs-gallery--slideshow > .gallery-item[hidden]{
  display:none!important;
}
.bfs-legacy-gallery.bfs-gallery--slideshow > .gallery-item:not([hidden]){
  display:block!important;
  width:100%!important;
  max-width:100%!important;
}
.bfs-legacy-gallery.bfs-gallery--slideshow > .gallery-item:not([hidden]) .gallery-icon,
.bfs-legacy-gallery.bfs-gallery--slideshow > .gallery-item:not([hidden]) .gallery-icon > a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:var(--bfs-gallery-stage)!important;
}
.bfs-legacy-gallery.bfs-gallery--slideshow > .gallery-item:not([hidden]) img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
}


/* 4.2.4 – Dedicated Classic Editor slideshow stage.
   Classic galleries historically inherit tile/grid rules from several theme generations.
   The slideshow deliberately uses its own markup and opts out of those legacy selectors. */
.bfs-legacy-slideshow.bfs-gallery--slideshow{
  display:block!important;
  width:100%!important;
  max-width:980px!important;
  margin:clamp(34px,5vw,62px) auto!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.bfs-legacy-slideshow .bfs-slideshow-stage{
  display:block!important;
  position:relative;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
}
.bfs-legacy-slideshow .bfs-slideshow-slide{
  display:none!important;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  float:none!important;
}
.bfs-legacy-slideshow .bfs-slideshow-slide:first-child,
.bfs-legacy-slideshow .bfs-slideshow-slide.is-bfs-slide-active,
.bfs-legacy-slideshow.is-bfs-gallery-enhanced .bfs-slideshow-slide.is-bfs-slide-active{
  display:block!important;
}
.bfs-legacy-slideshow.is-bfs-gallery-enhanced .bfs-slideshow-slide[hidden],
.bfs-legacy-slideshow .bfs-slideshow-slide[hidden]{
  display:none!important;
}
.bfs-legacy-slideshow .bfs-slideshow-media{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  height:clamp(420px,57vw,680px)!important;
  min-height:0!important;
  margin:0!important;
  padding:clamp(8px,1.2vw,14px)!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#f1f5f7!important;
  box-shadow:0 16px 38px rgba(13,46,66,.11)!important;
  cursor:zoom-in;
}
.entry-content .bfs-legacy-slideshow .bfs-slideshow-media img,
.single-post-content .bfs-legacy-slideshow .bfs-slideshow-media img,
.page-content__inner .bfs-legacy-slideshow .bfs-slideshow-media img,
.bfs-legacy-slideshow .bfs-slideshow-media img{
  display:block!important;
  position:static!important;
  width:auto!important;
  max-width:100%!important;
  height:auto!important;
  max-height:100%!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:auto!important;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
}
.bfs-legacy-slideshow .bfs-slideshow-caption{
  position:static!important;
  display:block!important;
  width:100%!important;
  margin:10px 0 0!important;
  padding:0 8px!important;
  background:transparent!important;
  color:#536577!important;
  font-size:.92rem!important;
  line-height:1.5!important;
  text-align:center!important;
}
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow{
  margin:18px auto 44px!important;
}
html.bfs-dark-mode .bfs-legacy-slideshow .bfs-slideshow-media{background:#173047!important}
html.bfs-dark-mode .bfs-legacy-slideshow .bfs-slideshow-caption{color:#c4d3de!important}
@media(max-width:760px){
  .bfs-legacy-slideshow.bfs-gallery--slideshow{max-width:100%!important;margin:30px auto 44px!important}
  .bfs-legacy-slideshow .bfs-slideshow-media{height:clamp(300px,72vw,500px)!important;padding:7px!important;border-radius:18px!important}
}
@media(max-width:480px){
  .bfs-legacy-slideshow .bfs-slideshow-media{height:clamp(260px,78vw,420px)!important}
}


/* 4.2.5 – Stable slideshow stage follows the first photo.
   The first Classic Editor image defines the aspect ratio for every slide.
   Images fill the entire stage edge-to-edge; later ratios are cropped calmly
   instead of changing the gallery height while navigating. */
.bfs-legacy-slideshow .bfs-slideshow-stage{
  position:relative!important;
  width:100%!important;
  aspect-ratio:var(--bfs-slideshow-first-ratio,3/2)!important;
  height:auto!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#102d44!important;
  box-shadow:0 16px 38px rgba(13,46,66,.11)!important;
}
.bfs-legacy-slideshow .bfs-slideshow-slide,
.bfs-legacy-slideshow .bfs-slideshow-slide:first-child,
.bfs-legacy-slideshow .bfs-slideshow-slide.is-bfs-slide-active,
.bfs-legacy-slideshow.is-bfs-gallery-enhanced .bfs-slideshow-slide.is-bfs-slide-active{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important;
}
.bfs-legacy-slideshow .bfs-slideshow-slide[hidden],
.bfs-legacy-slideshow.is-bfs-gallery-enhanced .bfs-slideshow-slide[hidden]{display:none!important}
.bfs-legacy-slideshow .bfs-slideshow-media{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:#102d44!important;
  box-shadow:none!important;
}
.entry-content .bfs-legacy-slideshow .bfs-slideshow-media img,
.single-post-content .bfs-legacy-slideshow .bfs-slideshow-media img,
.page-content__inner .bfs-legacy-slideshow .bfs-slideshow-media img,
.bfs-legacy-slideshow .bfs-slideshow-media img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  max-height:none!important;
  margin:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
}
.bfs-legacy-slideshow .bfs-slideshow-caption{
  position:absolute!important;
  z-index:3;
  left:18px;
  right:18px;
  bottom:16px;
  width:auto!important;
  margin:0!important;
  padding:9px 13px!important;
  border-radius:10px;
  background:rgba(8,34,54,.78)!important;
  color:#fff!important;
  backdrop-filter:blur(5px);
}
html.bfs-dark-mode .bfs-legacy-slideshow .bfs-slideshow-stage,
html.bfs-dark-mode .bfs-legacy-slideshow .bfs-slideshow-media{background:#173047!important}
@media(max-width:760px){
  .bfs-legacy-slideshow .bfs-slideshow-stage{border-radius:18px!important}
  .bfs-legacy-slideshow .bfs-slideshow-media{height:100%!important;padding:0!important;border-radius:0!important}
}
@media(max-width:480px){
  .bfs-legacy-slideshow .bfs-slideshow-media{height:100%!important}
}


/* 4.2.6 – Slideshow polish: true edge-to-edge image, attached control dock,
   and touch-friendly interaction. The first image still defines the stable stage ratio. */
.bfs-legacy-slideshow.bfs-gallery--slideshow{
  margin-bottom:0!important;
}
.bfs-legacy-slideshow .bfs-slideshow-stage{
  background:transparent!important;
}
.bfs-legacy-slideshow .bfs-slideshow-slide,
.bfs-legacy-slideshow .bfs-slideshow-slide.is-bfs-slide-active{
  background:transparent!important;
}
.bfs-legacy-slideshow .bfs-slideshow-media{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  background:transparent!important;
  touch-action:pan-y pinch-zoom;
}
.entry-content .bfs-legacy-slideshow .bfs-slideshow-media img,
.single-post-content .bfs-legacy-slideshow .bfs-slideshow-media img,
.page-content__inner .bfs-legacy-slideshow .bfs-slideshow-media img,
.bfs-legacy-slideshow .bfs-slideshow-media img{
  position:absolute!important;
  inset:-1px!important;
  width:calc(100% + 2px)!important;
  height:calc(100% + 2px)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
}
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow{
  display:flex!important;
  width:max-content;
  max-width:calc(100% - 24px);
  align-items:center;
  gap:7px!important;
  margin:-18px auto 48px!important;
  padding:7px!important;
  border:1px solid #d8e5ec;
  border-radius:999px;
  background:rgba(255,255,255,.98);
  box-shadow:0 12px 30px rgba(13,46,66,.13);
  backdrop-filter:blur(10px);
}
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow button{
  width:44px;
  height:44px;
  border:0;
  background:#eef5f8;
  color:#12395d;
  box-shadow:none;
  font-size:20px;
}
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow button:hover,
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow button:focus-visible{
  background:#12395d;
  color:#fff;
  transform:none;
}
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow .bfs-gallery-controls__status{
  min-width:74px;
  padding:8px 10px;
  border-radius:999px;
  background:#f6f9fb;
  color:#36536a;
  font-size:.84rem;
  font-variant-numeric:tabular-nums;
}
html.bfs-dark-mode .bfs-legacy-slideshow .bfs-slideshow-stage,
html.bfs-dark-mode .bfs-legacy-slideshow .bfs-slideshow-media{background:transparent!important}
html.bfs-dark-mode .bfs-legacy-slideshow + .bfs-gallery-controls--slideshow{
  border-color:#315168;
  background:rgba(17,43,63,.97);
}
html.bfs-dark-mode .bfs-legacy-slideshow + .bfs-gallery-controls--slideshow button{
  background:#1d4058;
  color:#fff;
}
html.bfs-dark-mode .bfs-legacy-slideshow + .bfs-gallery-controls--slideshow .bfs-gallery-controls__status{
  background:#18374e;
  color:#d4e2eb;
}
@media(max-width:760px){
  .bfs-legacy-slideshow + .bfs-gallery-controls--slideshow{
    margin:-15px auto 40px!important;
    padding:6px!important;
  }
  .bfs-legacy-slideshow + .bfs-gallery-controls--slideshow button{width:41px;height:41px}
  .bfs-legacy-slideshow + .bfs-gallery-controls--slideshow .bfs-gallery-controls__status{min-width:68px;padding:7px 9px}
}


/* 4.2.7 – Final slideshow desktop polish.
   Override the older generic slideshow anchor height with enough specificity,
   so the media always fills the first-photo stage without a white footer strip. */
.bfs-gallery--slideshow.bfs-legacy-slideshow .bfs-slideshow-slide > .bfs-slideshow-media{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  line-height:0!important;
}
.bfs-gallery--slideshow.bfs-legacy-slideshow .bfs-slideshow-slide > .bfs-slideshow-media > img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
}
.bfs-legacy-slideshow + .bfs-gallery-controls--slideshow{
  position:relative!important;
  left:auto!important;
  transform:none!important;
  float:none!important;
  clear:both!important;
  width:max-content!important;
  margin-left:auto!important;
  margin-right:auto!important;
}


/* 4.2.9 – Stable slideshow control centering.
   The controls live in their own full-width host so content-width/margin rules
   can no longer push the pill to the left or right. */
.bfs-gallery-controls-host--slideshow{
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  margin:-18px auto 48px!important;
  padding:0!important;
  text-align:center!important;
}
.bfs-gallery-controls-host--slideshow > .bfs-gallery-controls--slideshow{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  float:none!important;
  flex:0 0 auto!important;
  width:max-content!important;
  max-width:calc(100% - 24px)!important;
  margin:0!important;
  padding:7px!important;
  border:1px solid #d8e5ec;
  border-radius:999px;
  background:rgba(255,255,255,.98);
  box-shadow:0 12px 30px rgba(13,46,66,.13);
  backdrop-filter:blur(10px);
}
html.bfs-dark-mode .bfs-gallery-controls-host--slideshow > .bfs-gallery-controls--slideshow{
  border-color:#315168;
  background:rgba(17,43,63,.97);
}
@media(max-width:760px){
  .bfs-gallery-controls-host--slideshow{margin:-15px auto 40px!important}
  .bfs-gallery-controls-host--slideshow > .bfs-gallery-controls--slideshow{padding:6px!important}
}


/* 4.2.10 – Slideshow controls are hosted inside the gallery itself.
   This removes every dependency on the article's desktop grid/flex layout. */
.bfs-legacy-slideshow > .bfs-gallery-controls-host--slideshow{
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  position:relative!important;
  z-index:8!important;
  float:none!important;
  clear:both!important;
  grid-column:1 / -1!important;
  justify-self:stretch!important;
  align-self:stretch!important;
  width:100%!important;
  max-width:none!important;
  margin:-18px 0 48px!important;
  padding:0!important;
  text-align:center!important;
}
.bfs-legacy-slideshow > .bfs-gallery-controls-host--slideshow > .bfs-gallery-controls--slideshow{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  float:none!important;
  flex:0 0 auto!important;
  width:max-content!important;
  max-width:calc(100% - 24px)!important;
  margin:0!important;
}
/* The zoom icon is painted into the label itself; no separately positioned
   magnifier can overlap the word "Vergrößern" anymore. */
.bfs-legacy-slideshow .bfs-slideshow-media.bfs-image-lightbox-link::after{
  content:"Vergrößern"!important;
  box-sizing:border-box!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  padding:8px 12px 8px 35px!important;
  background-color:rgba(10,36,59,.88)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:12px center!important;
  background-size:15px 15px!important;
  white-space:nowrap!important;
}
.bfs-legacy-slideshow .bfs-slideshow-media .bfs-gallery-zoom{display:none!important}
@media(max-width:760px){
  .bfs-legacy-slideshow > .bfs-gallery-controls-host--slideshow{margin:-15px 0 40px!important}
}
@media(hover:none){
  .bfs-legacy-slideshow .bfs-slideshow-media.bfs-image-lightbox-link::after{
    content:""!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    background-position:center!important;
  }
}

/* 4.2.11 – unify zoom overlay across galleries/single images and center carousel controls. */
.bfs-image-lightbox-link::after{
  content:"Vergrößern"!important;
  box-sizing:border-box!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  padding:8px 14px 8px 37px!important;
  background-color:rgba(10,36,59,.88)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:14px center!important;
  background-size:15px 15px!important;
  white-space:nowrap!important;
}
.bfs-gallery-zoom{display:none!important}

.bfs-gallery-carousel-track{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.bfs-gallery-carousel-track::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}

.bfs-gallery-controls-host--carousel{
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  position:relative!important;
  z-index:8!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:none!important;
  margin:12px 0 42px!important;
  padding:0!important;
  text-align:center!important;
}
.bfs-gallery-controls-host--carousel > .bfs-gallery-controls--carousel{
  justify-content:center!important;
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  float:none!important;
  flex:0 0 auto!important;
  width:max-content!important;
  max-width:calc(100% - 24px)!important;
  margin:0 auto!important;
  padding:7px!important;
  border:1px solid #d8e5ec!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 12px 30px rgba(13,46,66,.13)!important;
  backdrop-filter:blur(10px)!important;
}
.bfs-gallery-controls-host--carousel > .bfs-gallery-controls--carousel .bfs-gallery-controls__status{
  min-width:72px!important;
}
html.bfs-dark-mode .bfs-gallery-controls-host--carousel > .bfs-gallery-controls--carousel{
  border-color:#315168!important;
  background:rgba(17,43,63,.97)!important;
}
@media(max-width:760px){
  .bfs-gallery-controls-host--carousel{margin:10px 0 36px!important}
  .bfs-gallery-controls-host--carousel > .bfs-gallery-controls--carousel{padding:6px!important}
}
@media(hover:none){
  .bfs-image-lightbox-link::after{
    content:""!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    background-position:center!important;
  }
}


/* 4.2.12 – carousel shell isolates centering from editorial desktop layout. */
.bfs-gallery-carousel-shell{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:780px!important;
  margin:clamp(32px,5vw,58px) auto!important;
  padding:0!important;
  clear:both!important;
}
.bfs-gallery-carousel-shell > .bfs-gallery--carousel{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}
.bfs-gallery-carousel-shell > .bfs-gallery-controls-host--carousel{
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%!important;
  max-width:none!important;
  margin:12px 0 0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
}
.bfs-gallery-carousel-shell > .bfs-gallery-controls-host--carousel > .bfs-gallery-controls--carousel{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:max-content!important;
  max-width:calc(100% - 24px)!important;
  margin:0 auto!important;
}
@media(max-width:700px){
  .bfs-gallery-carousel-shell{max-width:100%!important;margin:clamp(26px,5vw,44px) auto!important}
}


/* 4.2.13 – robust Masonry for Classic Editor and block galleries. */
.bfs-gallery--masonry{
  display:block!important;
  column-count:3!important;
  column-width:auto!important;
  column-gap:clamp(12px,1.6vw,18px)!important;
  column-fill:balance!important;
  grid-template-columns:none!important;
  grid-auto-flow:unset!important;
  align-items:initial!important;
}
.bfs-gallery--masonry.bfs-legacy-masonry{
  overflow:visible!important;
}
.bfs-gallery--masonry > .bfs-masonry-item,
.bfs-gallery--masonry > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--masonry > .blocks-gallery-grid > .blocks-gallery-item{
  box-sizing:border-box!important;
  display:inline-block!important;
  float:none!important;
  clear:none!important;
  vertical-align:top!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 clamp(12px,1.6vw,18px)!important;
  padding:0!important;
  break-inside:avoid!important;
  page-break-inside:avoid!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:18px!important;
  background:#edf3f6!important;
  box-shadow:0 8px 24px rgba(13,46,66,.10)!important;
}
.bfs-gallery--masonry .bfs-masonry-media,
.bfs-gallery--masonry :is(.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.bfs-gallery--masonry .bfs-masonry-media img,
.bfs-gallery--masonry img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
}
.bfs-gallery--masonry .bfs-masonry-caption,
.bfs-gallery--masonry .gallery-caption,
.bfs-gallery--masonry figcaption{
  position:static!important;
  display:block!important;
  margin:0!important;
  padding:10px 12px 11px!important;
  background:#fff!important;
  color:#526575!important;
  font-size:.84rem!important;
  line-height:1.35!important;
  text-align:left!important;
}
html.bfs-dark-mode .bfs-gallery--masonry > .bfs-masonry-item,
html.bfs-dark-mode .bfs-gallery--masonry > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item){
  background:#173047!important;
  box-shadow:none!important;
}
html.bfs-dark-mode .bfs-gallery--masonry :is(.bfs-masonry-caption,.gallery-caption,figcaption){
  background:#173047!important;
  color:#c7d6e0!important;
}
@media(max-width:900px){
  .bfs-gallery--masonry{column-count:2!important}
}
@media(max-width:520px){
  .bfs-gallery--masonry{column-count:1!important}
}

/* 4.2.14 – Masonry must follow the real image height, never a reserved gallery ratio. */
.bfs-gallery--masonry > .bfs-masonry-item,
.bfs-gallery--masonry > :is(.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--masonry > .blocks-gallery-grid > .blocks-gallery-item,
.single-post-content .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image,
.entry-content .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image,
.page-content__inner .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image{
  display:inline-block!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  align-self:auto!important;
  justify-self:auto!important;
  flex:none!important;
  float:none!important;
  clear:none!important;
  vertical-align:top!important;
  line-height:0!important;
}
.bfs-gallery--masonry .bfs-masonry-media,
.single-post-content .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image > a,
.entry-content .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image > a,
.page-content__inner .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image > a{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  line-height:0!important;
}
.bfs-gallery--masonry .bfs-masonry-media > img,
.single-post-content .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image img,
.entry-content .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image img,
.page-content__inner .wp-block-gallery.bfs-gallery--masonry figure.wp-block-image img,
.bfs-gallery--masonry > .blocks-gallery-grid > .blocks-gallery-item img{
  display:block!important;
  position:static!important;
  inset:auto!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  padding:0!important;
}
.bfs-gallery--masonry :is(.bfs-masonry-caption,.gallery-caption,figcaption){
  line-height:1.35!important;
}

/* 4.2.15 – Masonry media height follows each photo, not legacy gallery tile height. */
.bfs-gallery--masonry.is-bfs-masonry-enhanced > .bfs-gallery-masonry-item,
.bfs-gallery--masonry.is-bfs-masonry-enhanced > .blocks-gallery-grid > .bfs-gallery-masonry-item{
  display:inline-block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:fit-content!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  align-self:start!important;
  vertical-align:top!important;
  overflow:hidden!important;
}
.bfs-gallery--masonry.is-bfs-masonry-enhanced .bfs-gallery-masonry-item :is(.gallery-icon,.bfs-masonry-media),
.bfs-gallery--masonry.is-bfs-masonry-enhanced .bfs-gallery-masonry-item :is(.gallery-icon,.bfs-masonry-media) > a,
.bfs-gallery--masonry.is-bfs-masonry-enhanced .bfs-gallery-masonry-item > a{
  box-sizing:border-box!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
}
.bfs-gallery--masonry.is-bfs-masonry-enhanced .bfs-gallery-masonry-item img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}

/* 4.2.16 – controlled editorial collage. Classic Editor gets isolated markup;
   block galleries receive the same collision-proof grid behaviour. */
.bfs-gallery--collage{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  grid-auto-rows:clamp(64px,5.2vw,86px)!important;
  grid-auto-flow:dense!important;
  align-items:stretch!important;
  gap:12px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.bfs-gallery--collage > .blocks-gallery-grid{
  display:contents!important;
}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item{
  box-sizing:border-box!important;
  position:relative!important;
  inset:auto!important;
  float:none!important;
  clear:none!important;
  display:block!important;
  min-width:0!important;
  max-width:none!important;
  min-height:0!important;
  max-height:none!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:18px!important;
  background:#eaf2f6!important;
  box-shadow:0 8px 24px rgba(13,46,66,.09)!important;
  transform:none!important;
  isolation:isolate;
}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item{
  grid-column:span 4!important;
  grid-row:span 3!important;
}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+1),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+1){grid-column:span 7!important;grid-row:span 5!important}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+2),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+2){grid-column:span 5!important;grid-row:span 3!important}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+3),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+3){grid-column:span 5!important;grid-row:span 2!important}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+4),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+4){grid-column:span 4!important;grid-row:span 4!important}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+5),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+5){grid-column:span 8!important;grid-row:span 4!important}
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+6),
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+7),
.bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+8),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+6),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+7),
.bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+8){grid-column:span 4!important;grid-row:span 3!important}

.bfs-gallery--collage :is(.bfs-collage-media,.gallery-icon,.gallery-icon>a,figure>a,.blocks-gallery-item>a){
  box-sizing:border-box!important;
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:inherit!important;
}
.bfs-gallery--collage :is(.bfs-collage-media,.gallery-icon,.gallery-icon>a,figure>a,.blocks-gallery-item>a) > img,
.bfs-gallery--collage img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:inherit!important;
}
.bfs-gallery--collage .bfs-collage-caption,
.bfs-gallery--collage figcaption,
.bfs-gallery--collage .gallery-caption{
  box-sizing:border-box!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:3!important;
  margin:0!important;
  padding:28px 14px 12px!important;
  border:0!important;
  background:linear-gradient(180deg,transparent,rgba(6,25,39,.76))!important;
  color:#fff!important;
  font-size:.82rem!important;
  line-height:1.3!important;
  text-align:left!important;
  pointer-events:none!important;
}

@media(max-width:760px){
  .bfs-gallery--collage{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    grid-auto-rows:clamp(58px,11vw,78px)!important;
    gap:9px!important;
  }
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item{grid-column:span 3!important;grid-row:span 3!important;border-radius:15px!important}
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+1),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+1){grid-column:span 6!important;grid-row:span 4!important}
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+2),
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+3),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+2),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+3){grid-column:span 3!important;grid-row:span 3!important}
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+4),
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item):nth-child(8n+5),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+4),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item:nth-child(8n+5){grid-column:span 6!important;grid-row:span 3!important}
}
@media(max-width:480px){
  .bfs-gallery--collage{gap:8px!important;grid-auto-rows:clamp(54px,17vw,72px)!important}
  .bfs-gallery--collage > :is(.bfs-collage-item,.gallery-item,figure.wp-block-image,.blocks-gallery-item),
  .bfs-gallery--collage > .blocks-gallery-grid > .blocks-gallery-item{border-radius:13px!important}
}

/* 4.2.17 – navigable photo stack with intact Polaroid paper edge. */
.bfs-gallery--stack.bfs-legacy-stack,
.bfs-gallery--stack.is-bfs-stack-enhanced{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:18px 0 0!important;
  overflow:visible!important;
}
.bfs-gallery--stack .bfs-stack-stage{
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  isolation:isolate!important;
  width:100%!important;
  min-height:clamp(390px,50vw,550px)!important;
  margin:0!important;
  padding:30px 0 38px!important;
  overflow:visible!important;
}
.bfs-gallery--stack .bfs-stack-item{
  box-sizing:border-box!important;
  display:block!important;
  position:relative!important;
  grid-area:1/1!important;
  align-self:center!important;
  justify-self:center!important;
  width:min(72%,560px)!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:9px 9px 34px!important;
  overflow:visible!important;
  border:1px solid rgba(22,54,78,.11)!important;
  border-radius:8px!important;
  background:#fff!important;
  box-shadow:0 17px 38px rgba(13,46,66,.18)!important;
  opacity:var(--bfs-stack-opacity,1)!important;
  z-index:var(--bfs-stack-z,1)!important;
  transform:translate(var(--bfs-stack-x,0),var(--bfs-stack-y,0)) rotate(var(--bfs-stack-r,0deg))!important;
  transform-origin:center!important;
  transition:transform .28s ease,opacity .22s ease,box-shadow .22s ease!important;
}
.bfs-gallery--stack .bfs-stack-item.is-bfs-stack-active{
  box-shadow:0 22px 48px rgba(13,46,66,.22)!important;
}
.bfs-gallery--stack .bfs-stack-media,
.bfs-gallery--stack .bfs-stack-item > a,
.bfs-gallery--stack .bfs-stack-item .gallery-icon,
.bfs-gallery--stack .bfs-stack-item .gallery-icon > a{
  box-sizing:border-box!important;
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:4/3!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:12px!important;
  background:#eaf1f5!important;
}
.bfs-gallery--stack .bfs-stack-item img{
  display:block!important;
  position:static!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  object-fit:cover!important;
  object-position:center!important;
}
.bfs-gallery--stack .bfs-stack-caption,
.bfs-gallery--stack .bfs-stack-item .gallery-caption,
.bfs-gallery--stack .bfs-stack-item figcaption{
  position:absolute!important;
  left:14px!important;
  right:14px!important;
  bottom:8px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:transparent!important;
  color:#526575!important;
  font-size:.72rem!important;
  line-height:1.25!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.bfs-gallery--stack > .bfs-gallery-controls-host--stack{
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  position:relative!important;
  z-index:30!important;
  width:100%!important;
  max-width:none!important;
  margin:-12px 0 44px!important;
  padding:0!important;
}
.bfs-gallery--stack > .bfs-gallery-controls-host--stack > .bfs-gallery-controls--stack{
  position:relative!important;
  inset:auto!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:max-content!important;
  max-width:calc(100% - 24px)!important;
  margin:0!important;
  padding:7px!important;
  border:1px solid #d8e5ec!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 12px 30px rgba(13,46,66,.13)!important;
  backdrop-filter:blur(10px)!important;
  transform:none!important;
}
.bfs-gallery--stack > .bfs-gallery-controls-host--stack .bfs-gallery-controls__status{
  min-width:72px!important;
}
html.bfs-dark-mode .bfs-gallery--stack .bfs-stack-item{
  background:#f9fbfc!important;
}
html.bfs-dark-mode .bfs-gallery--stack > .bfs-gallery-controls-host--stack > .bfs-gallery-controls--stack{
  border-color:#315168!important;
  background:rgba(17,43,63,.97)!important;
}
@media(max-width:760px){
  .bfs-gallery--stack .bfs-stack-stage{
    min-height:clamp(300px,82vw,410px)!important;
    padding:22px 0 30px!important;
  }
  .bfs-gallery--stack .bfs-stack-item{
    width:82%!important;
    padding:7px 7px 30px!important;
    border-radius:7px!important;
  }
  .bfs-gallery--stack .bfs-stack-media,
  .bfs-gallery--stack .bfs-stack-item > a,
  .bfs-gallery--stack .bfs-stack-item .gallery-icon,
  .bfs-gallery--stack .bfs-stack-item .gallery-icon > a{
    border-radius:10px!important;
  }
  .bfs-gallery--stack > .bfs-gallery-controls-host--stack{
    margin:-8px 0 38px!important;
  }
  .bfs-gallery--stack > .bfs-gallery-controls-host--stack > .bfs-gallery-controls--stack{
    padding:6px!important;
  }
}
@media(max-width:480px){
  .bfs-gallery--stack .bfs-stack-item{width:86%!important}
}
@media(prefers-reduced-motion:reduce){
  .bfs-gallery--stack .bfs-stack-item{transition:none!important}
}

/* 4.2.18 – let the photo stack use the editorial width on desktop. */
@media(min-width:761px){
  .bfs-gallery--stack .bfs-stack-stage{
    min-height:clamp(540px,58vw,640px)!important;
    width:100%!important;
    max-width:none!important;
  }
  .bfs-gallery--stack .bfs-stack-item{
    width:min(96%,760px)!important;
    max-width:760px!important;
  }
}


/* 4.2.19 – Foto-Story: alternating editorial image rows using media-library titles. */
.bfs-gallery--story,
.bfs-gallery--story > .blocks-gallery-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:clamp(24px,4vw,38px)!important;
  width:100%!important;
  max-width:100%!important;
  margin:clamp(22px,3vw,34px) 0!important;
  padding:0!important;
  overflow:visible!important;
}
.bfs-gallery--story::after,
.bfs-gallery--story > .blocks-gallery-grid::after{display:none!important;content:none!important}
.bfs-gallery--story > .blocks-gallery-grid{margin:0!important}
.bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item),
.bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item){
  display:grid!important;
  grid-template-columns:minmax(0,1.22fr) minmax(220px,.78fr)!important;
  gap:clamp(18px,3.8vw,44px)!important;
  align-items:center!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even),
.bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even){
  grid-template-columns:minmax(220px,.78fr) minmax(0,1.22fr)!important;
}
.bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
.bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){order:2}
.bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption),
.bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){order:1}
.bfs-gallery--story :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
  display:block!important;
  width:100%!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#edf3f6!important;
  box-shadow:0 18px 42px rgba(13,46,66,.14)!important;
}
.bfs-gallery--story img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
}
.bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:12px!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  color:#173b54!important;
  text-align:left!important;
}
.bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{
  content:"";
  display:block;
  width:52px;
  height:4px;
  border-radius:999px;
  background:#2496d1;
}
.bfs-gallery--story .bfs-story-title{
  margin:0!important;
  color:#102d44!important;
  font-family:var(--font-heading)!important;
  font-weight:800!important;
  font-size:clamp(1.35rem,2.4vw,2.15rem)!important;
  line-height:1.08!important;
  letter-spacing:-.018em!important;
}
.bfs-gallery--story .is-titleless,
.bfs-gallery--story > .is-titleless,
.bfs-gallery--story > .blocks-gallery-grid > .is-titleless{grid-template-columns:minmax(0,1fr)!important}
html.bfs-dark-mode .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){color:#d9e6ee!important}
html.bfs-dark-mode .bfs-gallery--story .bfs-story-title{color:#ffffff!important}
@media(max-width:860px){
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item),
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even){
    grid-template-columns:minmax(0,1fr)!important;
    gap:16px!important;
  }
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){order:initial}
}

/* 4.2.20 – Foto-Story: calmer, less vertical image stage. */
.bfs-gallery--story :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
  aspect-ratio:16 / 10!important;
  height:auto!important;
}
.bfs-gallery--story :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a) img{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
}
@media(max-width:860px){
  .bfs-gallery--story :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
    aspect-ratio:4 / 3!important;
  }
}


/* 4.2.21 – Mobile Foto-Story: lighter visual rhythm + narrative timeline. */
@media(max-width:860px){
  .bfs-gallery--story{
    counter-reset:bfs-story-step;
    position:relative!important;
    gap:clamp(30px,7vw,42px)!important;
    padding-left:18px!important;
  }
  .bfs-gallery--story::before{
    content:"";
    position:absolute;
    z-index:0;
    left:3px;
    top:8px;
    bottom:10px;
    width:2px;
    border-radius:999px;
    background:linear-gradient(to bottom,rgba(36,150,209,.18),rgba(36,150,209,.72) 12%,rgba(36,150,209,.52) 86%,rgba(36,150,209,.08));
    pointer-events:none;
  }
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item){
    counter-increment:bfs-story-step;
    position:relative!important;
    z-index:1;
    gap:14px!important;
  }
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
    width:calc(100% - 10px)!important;
    border-radius:20px!important;
  }
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(odd) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(odd) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
    margin-right:10px!important;
    margin-left:0!important;
  }
  .bfs-gallery--story > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a),
  .bfs-gallery--story > .blocks-gallery-grid > :is(.bfs-story-item,figure.wp-block-image,.blocks-gallery-item):nth-child(even) > :is(.bfs-story-media,.gallery-icon,.gallery-icon a,figure>a,.blocks-gallery-item>a){
    margin-left:10px!important;
    margin-right:0!important;
  }
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){
    position:relative!important;
    gap:7px!important;
    min-height:0!important;
    padding:2px 4px 0 15px!important;
  }
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{
    content:""!important;
    position:absolute!important;
    left:-19px!important;
    top:17px!important;
    width:31px!important;
    height:10px!important;
    border-radius:0!important;
    background:
      radial-gradient(circle at 4px 50%,#2496d1 0 4px,#fff 4.5px 6.5px,transparent 7px),
      linear-gradient(#2496d1,#2496d1) 10px center/21px 2px no-repeat!important;
    box-shadow:none!important;
  }
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::after{
    content:counter(bfs-story-step,decimal-leading-zero);
    order:-1;
    display:block;
    margin:0 0 1px;
    color:#2496d1;
    font-family:var(--font-heading)!important;
    font-size:.72rem;
    font-weight:850;
    line-height:1;
    letter-spacing:.12em;
  }
  .bfs-gallery--story .bfs-story-title{
    font-size:clamp(1.45rem,6.4vw,1.82rem)!important;
    font-weight:760!important;
    line-height:1.11!important;
    letter-spacing:-.022em!important;
  }
  html.bfs-dark-mode .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{
    background:
      radial-gradient(circle at 4px 50%,#55b5e3 0 4px,#102d44 4.5px 6.5px,transparent 7px),
      linear-gradient(#55b5e3,#55b5e3) 10px center/21px 2px no-repeat!important;
  }
}
@media(max-width:420px){
  .bfs-gallery--story{padding-left:15px!important}
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){padding-left:12px!important}
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{left:-16px!important}
}


/* 4.2.22 – Mobile Foto-Story: move the narrative rail to the calmer right edge. */
@media(max-width:860px){
  .bfs-gallery--story{
    padding-left:0!important;
    padding-right:18px!important;
  }
  .bfs-gallery--story::before{
    left:auto!important;
    right:3px!important;
  }
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){
    padding:2px 15px 0 4px!important;
  }
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{
    left:auto!important;
    right:-19px!important;
    background:
      linear-gradient(#2496d1,#2496d1) 0 center/21px 2px no-repeat,
      radial-gradient(circle at 27px 50%,#2496d1 0 4px,#fff 4.5px 6.5px,transparent 7px)!important;
  }
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::after{
    align-self:flex-end!important;
    margin:0 0 1px!important;
    text-align:right!important;
  }
  html.bfs-dark-mode .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{
    background:
      linear-gradient(#55b5e3,#55b5e3) 0 center/21px 2px no-repeat,
      radial-gradient(circle at 27px 50%,#55b5e3 0 4px,#102d44 4.5px 6.5px,transparent 7px)!important;
  }
}
@media(max-width:420px){
  .bfs-gallery--story{padding-left:0!important;padding-right:15px!important}
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption){padding-left:4px!important;padding-right:12px!important}
  .bfs-gallery--story :is(.bfs-story-copy,.gallery-caption,.blocks-gallery-item__caption)::before{left:auto!important;right:-16px!important}
}


/* 4.2.25 – Home testimonials: complete, coherent Dark Mode treatment. */
html.bfs-dark-mode .home-testimonials{
  background:linear-gradient(135deg,#11263a 0%,#142c3d 58%,#142b32 100%)!important;
  border-color:#2b4559!important;
  box-shadow:0 18px 46px rgba(0,0,0,.24)!important;
}
html.bfs-dark-mode .home-testimonials__head h3{
  color:#f4f8fb!important;
}
html.bfs-dark-mode .home-testimonials__head>p{
  color:#b8c9d6!important;
}
html.bfs-dark-mode .home-testimonials .eyebrow{
  color:#62c4ef!important;
}
html.bfs-dark-mode .home-testimonial-card{
  background:#172d42!important;
  border-color:#304a60!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important;
}
html.bfs-dark-mode .home-testimonial-card:hover,
html.bfs-dark-mode .home-testimonial-card:focus-within{
  background:#1a334a!important;
  border-color:#3b5b73!important;
  box-shadow:0 16px 36px rgba(0,0,0,.26)!important;
}
html.bfs-dark-mode .home-testimonial-card__mark{
  color:rgba(114,200,240,.19)!important;
}
html.bfs-dark-mode .home-testimonial-card blockquote,
html.bfs-dark-mode .home-testimonial-card blockquote p{
  color:#e5eef4!important;
}
html.bfs-dark-mode .home-testimonial-card figcaption{
  border-top-color:#365066!important;
}
html.bfs-dark-mode .home-testimonial-card figcaption strong{
  color:#ffffff!important;
}
html.bfs-dark-mode .home-testimonial-card figcaption>span:not(.home-testimonial-card__stars){
  color:#adc1d0!important;
}
html.bfs-dark-mode .home-testimonial-card__stars{
  color:#79cf43!important;
}
html.bfs-dark-mode .home-testimonials__cta-link,
html.bfs-dark-mode .home-section-cta-link{
  background:#173249!important;
  border-color:#365b73!important;
  color:#83d4f5!important;
  box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
}
html.bfs-dark-mode .home-testimonials__cta-link:hover,
html.bfs-dark-mode .home-testimonials__cta-link:focus-visible,
html.bfs-dark-mode .home-section-cta-link:hover,
html.bfs-dark-mode .home-section-cta-link:focus-visible{
  background:#1d4059!important;
  border-color:#5b90aa!important;
  color:#ffffff!important;
  box-shadow:0 12px 28px rgba(0,0,0,.26)!important;
}

/* 4.3.0 – global anchor for the footer “Nach oben” action. */
.bfs-page-top-anchor{position:absolute;top:0;left:0;width:1px;height:1px;pointer-events:none}

/* 4.3.0 – clear accessible validation state across native forms. */
:where(.bfs-native-contact,.bfs-submit-form) :where(input,textarea,select)[aria-invalid="true"]{border-color:#b42343!important;box-shadow:0 0 0 3px rgba(180,35,67,.14)!important}
html.bfs-dark-mode :where(.bfs-native-contact,.bfs-submit-form) :where(input,textarea,select)[aria-invalid="true"]{border-color:#ff7895!important;box-shadow:0 0 0 3px rgba(255,120,149,.18)!important}


/* 4.4.4 – Android/Chrome overlay width hardening. */
.cookie-notice{overflow-x:hidden!important}
.cookie-notice__inner,.cookie-notice__inner>*{min-width:0!important}
.cookie-notice__actions{width:100%;max-width:100%;min-width:0!important}
.cookie-notice__actions .btn{min-width:0!important;max-width:100%!important;white-space:normal!important}
@media(max-width:620px){
  .cookie-notice{padding:10px!important;place-items:end stretch!important}
  .cookie-notice__inner{width:100%!important;max-width:100%!important;min-width:0!important;padding:22px 20px!important;gap:20px!important;border-radius:22px!important;overflow:hidden!important}
  .cookie-notice__inner>div,.cookie-notice__inner details,.cookie-notice__inner summary,.cookie-notice__inner p,.cookie-notice__inner h2{max-width:100%!important;min-width:0!important;overflow-wrap:anywhere}
  .cookie-notice__actions{grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  .cookie-notice__actions .btn,.cookie-notice__actions a{width:100%!important;max-width:100%!important;text-align:center!important}
}
@media(max-width:820px) and (pointer:coarse){
  .main-nav{width:100vw!important;max-width:100vw!important;border-radius:0!important}
}
