
/* ===== 116J SOURCE: app.css ===== */
:root{--red:#c8102e;--red-dark:#9f0c25;--ink:#202427;--ink-2:#333b40;--muted:#68737a;--line:#dfe3e5;--paper:#fff;--soft:#f3f5f5;--green:#287a45;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.5}a{color:inherit}img{max-width:100%;display:block}.public-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{max-width:var(--max);height:82px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:32px}.brand{font-weight:900;letter-spacing:.045em;text-decoration:none;font-size:1.65rem;white-space:nowrap}.brand::after{content:"";display:inline-block;width:.5rem;height:.5rem;background:var(--red);margin-left:.25rem}.main-navigation{display:flex;align-items:center;gap:22px;margin-left:auto}.main-navigation a,.header-link{font-size:.88rem;font-weight:700;text-decoration:none;white-space:nowrap;padding:30px 0 27px;border-bottom:3px solid transparent}.main-navigation a:hover,.main-navigation a.is-active{color:var(--red);border-color:var(--red)}.header-actions{display:flex;align-items:center;gap:16px}.header-login{background:var(--ink);color:#fff;padding:11px 15px;text-decoration:none;font-weight:700;font-size:.86rem;white-space:nowrap}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;padding:9px 12px;font-weight:700}.home-hero{max-width:var(--max);margin:auto;min-height:680px;padding:90px 28px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(360px,.8fr);align-items:center;gap:70px}.hero-copy{max-width:780px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:800;color:var(--red);margin:0 0 14px}h1{font-size:clamp(2.7rem,5.5vw,5.6rem);line-height:.98;letter-spacing:-.035em;margin:.1em 0 .28em}h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.08;letter-spacing:-.025em;margin:.15em 0 .45em}h3{line-height:1.2}.hero-lead{font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.55;color:var(--muted);max-width:760px}.hero-visual{min-height:470px;background:var(--red);color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:28px 28px 0 var(--soft)}.hero-visual span{font-size:6rem;font-weight:900;letter-spacing:-.08em;opacity:.18}.hero-visual strong{font-size:2.2rem;line-height:1.15}.actions,.form-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;border:0;background:var(--red);color:#fff;padding:14px 22px;text-decoration:none;font-weight:800;cursor:pointer;transition:.2s}.button:hover{background:var(--red-dark);transform:translateY(-1px)}.button-secondary{background:#fff;color:var(--ink);border:1px solid var(--ink)}.button-secondary:hover{background:var(--ink);color:#fff}.button-secondary.dark{background:transparent;color:#fff;border-color:#fff}.section{max-width:var(--max);margin:auto;padding:100px 28px}.section-soft{max-width:none;background:var(--soft);padding-left:max(28px,calc((100vw - var(--max))/2 + 28px));padding-right:max(28px,calc((100vw - var(--max))/2 + 28px))}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head>div{max-width:760px}.section-copy{font-size:1.15rem;color:var(--muted);max-width:690px}.feature-grid{display:grid;gap:18px}.feature-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.feature-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.feature-card{display:block;min-height:240px;background:#fff;border-top:5px solid var(--ink);padding:26px;text-decoration:none;transition:.2s}.feature-card:hover{transform:translateY(-4px);border-color:var(--red)}.feature-card span{font-size:.78rem;font-weight:800;color:var(--red)}.feature-card h3,.feature-card h2{font-size:1.35rem;margin:55px 0 12px}.feature-card p{color:var(--muted)}.static-card small{display:block;margin-top:22px;font-weight:700;color:var(--red)}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.solution-list{border-top:1px solid var(--line)}.solution-list a{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:1.2rem}.solution-list a:hover strong{color:var(--red)}.solution-list span{color:var(--red);font-size:.8rem;font-weight:800}.knowledge-band{max-width:none;background:var(--ink);color:#fff;padding-left:max(28px,calc((100vw - var(--max))/2 + 28px));padding-right:max(28px,calc((100vw - var(--max))/2 + 28px))}.knowledge-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.knowledge-cards a{background:var(--ink-2);padding:28px;text-decoration:none;min-height:220px}.knowledge-cards a:hover{background:var(--red)}.knowledge-cards span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.partner-cta{background:var(--red);color:#fff;max-width:var(--max);margin:80px auto;padding:62px;display:flex;align-items:center;justify-content:space-between;gap:50px}.partner-cta .eyebrow{color:#fff}.partner-cta h2{max-width:720px}.partner-cta .section-copy{color:#fff}.page-hero{background:var(--soft);padding:90px max(28px,calc((100vw - var(--max))/2 + 28px))}.page-hero>div{max-width:950px}.page-hero.compact{padding-top:70px;padding-bottom:70px}.coming-panel{margin-top:70px;background:var(--ink);color:#fff;padding:45px}.public-footer{background:#15191c;color:#fff;margin-top:80px}.footer-grid{max-width:var(--max);margin:auto;padding:70px 28px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:50px}.footer-grid>div:first-child p{color:#b8c0c4;max-width:380px}.footer-grid h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:#b8c0c4}.footer-grid a:not(.brand){display:block;color:#fff;text-decoration:none;margin:9px 0}.brand-footer{color:#fff}.footer-bottom{max-width:var(--max);margin:auto;border-top:1px solid #333b40;padding:22px 28px;display:flex;justify-content:space-between;color:#9da7ac;font-size:.85rem}.text-link{font-weight:800;text-decoration-thickness:2px;text-underline-offset:4px}.partner-search{display:flex;align-items:end;gap:14px;margin:0 0 40px}.partner-search label{display:grid;gap:8px;flex:1;font-weight:700}.partner-search input,.public-form input,.public-form select,.public-form textarea{padding:14px;border:1px solid #aeb6ba;font:inherit;background:#fff;width:100%}.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.partner-card,.contact-card{border:1px solid var(--line);padding:26px;background:#fff}.partner-card h2{font-size:1.5rem;margin:.35rem 0}.partner-logo{width:160px;height:75px;object-fit:contain;object-position:left center;margin-bottom:18px}.partner-logo.large{width:220px;height:110px}.partner-detail-head{display:flex;align-items:center;gap:40px;margin:40px 0 60px}.partner-detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:50px}.partner-detail-grid h2,.contact-section h2{font-size:2rem}.partner-contact{background:var(--soft);padding:30px}.contact-section{margin-top:70px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.empty-state{grid-column:1/-1;background:var(--soft);padding:40px}.form-section{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);gap:70px}.public-form{border:1px solid var(--line);padding:34px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{font-size:.9rem;font-weight:700;display:grid;gap:8px}.form-grid .full{grid-column:1/-1}.check-label{display:flex!important;align-items:flex-start;gap:10px!important}.check-label input{width:auto!important;margin-top:5px}.alert{background:#fff1f2;border-left:4px solid var(--red);padding:12px;margin-bottom:14px}.success-panel{background:#eaf6ed;border-left:5px solid var(--green);padding:35px}.admin-body{background:var(--soft);min-height:100vh}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);background:#fff;padding:42px;border:1px solid var(--line)}.login-card h1{font-size:2.4rem}.login-card form{display:grid;gap:18px}.login-card label,.admin-form label{font-size:.9rem;font-weight:700;display:grid;gap:8px}.login-card input,.admin-form input,.admin-form select,.admin-form textarea{width:100%;padding:13px;border:1px solid #aeb6ba;font:inherit;background:#fff}.site-header,.admin-header{height:78px;padding:0 clamp(24px,5vw,72px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.admin-user{display:flex;gap:20px;align-items:center}.admin-user form{margin:0}.link-button{border:0;background:none;text-decoration:underline;cursor:pointer}.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:calc(100vh - 78px)}.admin-nav{background:#252b2f;color:#fff;padding:28px 18px;display:flex;flex-direction:column;gap:6px}.admin-nav a{text-decoration:none;padding:12px 14px}.admin-nav a:hover{background:#343c41}.admin-content{padding:45px clamp(24px,4vw,64px);min-width:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:34px 0}.stats article,.panel{background:#fff;border:1px solid var(--line);padding:24px}.stats strong{display:block;font-size:2.4rem}.stats span{color:var(--muted)}.panel{max-width:860px}.page-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#fafbfb}.status{display:inline-block;padding:5px 8px;font-size:.75rem;font-weight:700;background:#eceff0}.status-active{background:#e8f5ec;color:#176735}.status-inactive,.status-blocked{background:#fff0f1;color:#9f1828}.status-prospect{background:#fff7df;color:#775e0b}.admin-form{max-width:900px;background:#fff;border:1px solid var(--line);padding:28px}.flash{padding:14px 16px;margin-bottom:20px;border-left:4px solid}.flash-success{background:#eaf6ed;border-color:var(--green)}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.module-card{background:#fff;border:1px solid var(--line);padding:24px}.module-card h2{margin:.7rem 0;font-size:1.25rem}.module-card p{color:var(--muted);line-height:1.5}.module-icon{display:grid;place-items:center;width:40px;height:40px;background:var(--red);color:#fff;font-weight:800}.coming{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}.asset-card{background:#fff;border:1px solid var(--line);padding:24px}.asset-card dl{display:grid;grid-template-columns:130px 1fr;gap:8px}.asset-card dt{font-weight:700}.asset-card dd{margin:0;color:var(--muted)}.nav-toggle{display:none}.error-page{min-height:100vh;display:grid;place-content:center;text-align:center;padding:30px}.error-page h1{font-size:5rem}@media(max-width:1100px){.main-navigation{gap:14px}.main-navigation a{font-size:.8rem}.header-link{display:none}.feature-grid.five{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.header-inner{height:auto;min-height:72px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.menu-toggle{display:block;margin-left:auto}.main-navigation{display:none;order:4;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:0;padding:10px 0}.menu-open .main-navigation{display:flex}.main-navigation a{padding:12px 0;border-bottom:1px solid var(--line)}.header-actions{margin-left:0}.home-hero{grid-template-columns:1fr;padding-top:65px}.hero-visual{min-height:300px}.feature-grid.five{grid-template-columns:repeat(2,1fr)}.split-section,.form-section{grid-template-columns:1fr;gap:45px}.knowledge-cards,.feature-grid.three,.partner-grid,.contact-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.partner-cta{margin:50px 20px}.stats{grid-template-columns:repeat(2,1fr)}.module-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.header-actions .header-link{display:none}.header-login{padding:9px 11px}.section,.home-hero{padding-left:20px;padding-right:20px}.section{padding-top:70px;padding-bottom:70px}.feature-grid.five,.feature-grid.three,.knowledge-cards,.partner-grid,.contact-grid,.stats,.module-grid,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.partner-search,.partner-detail-head,.partner-cta{display:block}.partner-search .button,.partner-cta .actions{margin-top:15px}.partner-detail-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:4px 0}.admin-shell{grid-template-columns:1fr}.admin-nav{display:none}.nav-open .admin-nav{display:flex}.nav-toggle{display:block}.admin-user span{display:none}.page-head{align-items:flex-start;flex-direction:column}.admin-content{padding:28px 18px}.asset-grid{grid-template-columns:1fr}}

.admin-frontend-link{display:inline-flex;align-items:center;padding:9px 13px;background:var(--ink);color:#fff;text-decoration:none;font-size:.82rem;font-weight:800;white-space:nowrap}.admin-frontend-link:hover{background:var(--red)}@media(max-width:700px){.admin-frontend-link{padding:8px 10px;font-size:.76rem}}

/* Paket 008 – Produktdarstellung */
.product-search{display:grid;grid-template-columns:2fr 1fr auto;gap:18px;align-items:end;margin-bottom:34px}.product-search label{display:grid;gap:8px;font-weight:700}.product-search input,.product-search select{width:100%;padding:13px;border:1px solid #cfd5d8;background:#fff}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{border:1px solid #dfe3e5;background:#fff;display:flex;flex-direction:column}.product-card-image{height:220px;display:flex;align-items:center;justify-content:center;background:#f2f4f4;overflow:hidden}.product-card-image img{width:100%;height:100%;object-fit:contain}.product-placeholder{display:flex;align-items:center;justify-content:center;background:#eef0f1;color:#9aa1a5;font-weight:800;letter-spacing:.08em}.product-placeholder.large{min-height:360px}.product-card-body{padding:24px;display:grid;gap:12px}.product-card-body h2,.product-card-body h3{margin:0}.product-card-body h2 a{color:inherit;text-decoration:none}.product-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;padding:64px max(24px,calc((100vw - 1180px)/2));background:#f3f5f5;align-items:center}.product-hero-media{background:#fff;border:1px solid #dfe3e5;min-height:420px;display:flex;align-items:center;justify-content:center;padding:30px}.product-hero-media img{width:100%;max-height:430px;object-fit:contain}.answer-box{border-left:4px solid #c8102e;background:#fff;padding:18px 22px;margin:24px 0}.answer-box p{margin-bottom:0}.split-content{display:grid;grid-template-columns:1.6fr .7fr;gap:48px}.fact-card{border:1px solid #dfe3e5;padding:28px;background:#fff}.fact-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px}.fact-card dt{font-weight:700}.fact-card dd{margin:0}.soft-section{background:#f3f5f5}.content-cards.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.content-cards article{background:#fff;border:1px solid #dfe3e5;padding:26px}.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-list span{border:1px solid #cfd5d8;background:#fff;padding:9px 13px}.public-table{width:100%;border-collapse:collapse;background:#fff}.public-table th,.public-table td{padding:14px;border-bottom:1px solid #dfe3e5;text-align:left}.download-list{display:grid;gap:10px}.download-item{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 20px;background:#fff;border:1px solid #dfe3e5;color:inherit;text-decoration:none}.download-item span:first-child{display:grid;gap:4px}.download-item small{color:#667177}.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cta-band{display:flex;justify-content:space-between;gap:30px;align-items:center;background:#252c30;color:#fff;margin-bottom:60px}.form-section{border:1px solid #dfe3e5;background:#fff;padding:26px;margin-bottom:22px}.form-section h2{margin-top:0}.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-form label{display:grid;gap:7px;font-weight:700}.admin-form input,.admin-form select,.admin-form textarea{width:100%;padding:11px;border:1px solid #cfd5d8;background:#fff;font:inherit}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.check-card{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px!important;border:1px solid #dfe3e5;padding:12px;background:#fafbfb}.check-card input{width:auto!important}.form-help{color:#667177}.action-row{display:flex;gap:8px;flex-wrap:wrap}.button.small{padding:8px 11px;font-size:.88rem}
@media(max-width:900px){.product-search,.product-hero,.split-content,.form-grid.two{grid-template-columns:1fr}.product-grid,.content-cards.three,.compact-grid,.check-grid{grid-template-columns:1fr 1fr}.product-hero{padding:40px 24px}.cta-band{display:grid}}
@media(max-width:620px){.product-grid,.content-cards.three,.compact-grid,.check-grid{grid-template-columns:1fr}.product-card-image{height:190px}.public-table{min-width:780px}}

.answer-box{border-left:5px solid #c8102e;background:#f3f5f5;padding:24px;margin:0 0 32px}.answer-box p:last-child{margin-bottom:0}.narrow{max-width:900px}.richtext{font-size:1.08rem;line-height:1.75;margin-bottom:32px}.review-meta{margin-top:40px;padding-top:20px;border-top:1px solid #dfe3e5;color:#667077;font-size:.92rem}.search-panel{display:flex;gap:12px;margin-bottom:32px}.search-panel input{flex:1}.content-card h2 a,.content-card h3 a{color:inherit;text-decoration:none}.content-card>a{color:inherit;text-decoration:none}.action-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.action-row form{margin:0}.button-danger{background:#7f1d1d}.admin-page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:24px}.admin-form .span-2{grid-column:1/-1}

/* Paket 010: Konsolidierung, News und Social-Media-Modul */
.admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.admin-panel{background:#fff;border:1px solid #dde2e4;padding:24px;margin-bottom:24px}.compact-settings{display:flex;align-items:end;gap:18px;flex-wrap:wrap}.compact-settings label{display:grid;gap:7px;font-weight:700}.compact-settings input,.compact-settings select{min-width:150px}.row-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.row-actions form{margin:0}.danger{color:#a00}.empty-state{padding:30px;text-align:center;color:#687176}.social-generator{margin-top:28px}.social-draft{border-top:1px solid #e1e5e7;padding:20px 0;display:grid;gap:10px}.social-draft textarea,.social-draft input{width:100%}.news-grid{display:grid;gap:28px}.news-grid-1{grid-template-columns:1fr}.news-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card{background:#fff;border:1px solid #dde2e4;display:grid;grid-template-columns:minmax(160px,35%) 1fr;min-height:240px}.news-card>div{padding:28px}.news-card h2,.news-card h3{margin:.25rem 0 .8rem}.news-card h2 a,.news-card h3 a{color:inherit;text-decoration:none}.news-image{display:block;min-height:220px;background:#eef0f1;overflow:hidden}.news-image img{width:100%;height:100%;object-fit:cover;display:block}.article-page{max-width:920px;margin:0 auto;padding:72px 28px}.article-meta{color:#697176;margin:16px 0 28px}.article-hero-image{width:100%;max-height:560px;object-fit:cover;margin:0 0 32px}.article-lead{font-size:1.25rem;line-height:1.65;font-weight:600}.article-content{font-size:1.08rem;line-height:1.8;margin:30px 0 50px}.page-hero.compact{padding-bottom:42px}.home-news{background:#f4f5f5}
@media(max-width:760px){.admin-page-head{display:block}.admin-page-head .button{display:inline-block;margin-top:14px}.news-grid-2{grid-template-columns:1fr}.news-card{grid-template-columns:1fr}.news-image{min-height:200px}.compact-settings{display:grid;align-items:stretch}.compact-settings input,.compact-settings select{width:100%}}

/* Paket 013 – Produktnavigation und gruppiertes Backend */
.product-page-hero h1{font-size:clamp(2.2rem,4.2vw,4.6rem);line-height:1.02}.product-page-hero .hero-lead{max-width:820px;font-size:clamp(1.05rem,1.6vw,1.35rem)}
.product-browser{padding-top:48px}.product-search{grid-template-columns:minmax(260px,1fr) auto auto;max-width:960px}.product-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:4px 0 28px;font-size:.92rem;color:var(--muted)}.product-breadcrumb a{text-decoration:none}.product-breadcrumb a:last-child{font-weight:800;color:var(--ink)}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:22px 0 48px}.product-world-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.category-card{border:1px solid var(--line);background:#fff;color:inherit;text-decoration:none;display:flex;flex-direction:column;min-height:100%;transition:transform .18s ease,box-shadow .18s ease}.category-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(25,34,38,.10)}.category-card-media{height:190px;background:var(--soft);display:grid;place-items:center;overflow:hidden;color:#9aa1a5;font-weight:900;letter-spacing:.08em}.category-card-media img{width:100%;height:100%;object-fit:cover}.category-card-body{padding:22px;display:grid;gap:9px}.category-card-body h2{margin:0;font-size:1.35rem;line-height:1.2}.category-card-body p{margin:0;color:var(--muted)}.category-card-body>span{margin-top:8px;font-weight:800;color:var(--red)}
.product-results-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:44px 0 20px}.product-results-head h2{margin:.2rem 0 0;font-size:1.7rem}.product-results-head>p{color:var(--muted);max-width:480px}.product-entry-note{border-left:4px solid var(--red);background:var(--soft);padding:18px 22px;max-width:820px}.product-card-body h2{font-size:1.15rem;line-height:1.3}.product-card-body p{font-size:.94rem;line-height:1.55}.product-card-image{height:190px}.product-hero-copy h1{font-size:clamp(2rem,3.4vw,3.8rem);line-height:1.05}.product-hero-copy .hero-lead{font-size:1.12rem}.richtext{font-size:1rem;line-height:1.68}.public-table{font-size:.92rem}.public-table th,.public-table td{padding:11px 12px}
.grouped-admin-nav{padding:16px 10px;gap:8px}.grouped-admin-nav .admin-main-link{font-weight:900;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:14px;margin-bottom:2px}.admin-menu-group{border-bottom:1px solid rgba(255,255,255,.12);padding:3px 0 9px}.admin-menu-group summary{cursor:pointer;list-style:none;padding:10px 12px;color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;font-weight:900;display:flex;justify-content:space-between;align-items:center}.admin-menu-group summary::-webkit-details-marker{display:none}.admin-menu-group summary::after{content:'+';font-size:1rem}.admin-menu-group[open] summary::after{content:'–'}.admin-menu-group>div{display:grid;gap:2px}.admin-menu-group a,.grouped-admin-nav .admin-main-link{padding:9px 12px;text-decoration:none;color:rgba(255,255,255,.82);border-left:3px solid transparent}.admin-menu-group a:hover,.grouped-admin-nav a:hover{background:rgba(255,255,255,.08);color:#fff}.admin-menu-group a.active,.grouped-admin-nav .admin-main-link.active{background:rgba(255,255,255,.10);color:#fff;border-left-color:var(--red)}
@media(max-width:980px){.category-grid,.product-world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-search{grid-template-columns:1fr auto}.product-search .secondary{grid-column:1/-1;justify-self:start}}
@media(max-width:650px){.category-grid,.product-world-grid{grid-template-columns:1fr}.product-search{grid-template-columns:1fr}.product-search .secondary{grid-column:auto}.product-results-head{display:block}.category-card-media{height:170px}}

/* ===== 116J SOURCE: package-015.css ===== */
/* TOPFORM Paket 015 – öffentliches Designsystem
   Rein visuelle Ergänzung. Keine Admin- oder Datenlogik. */

.public-body{
  --tf-red:#c8102e;
  --tf-red-dark:#9d0b23;
  --tf-ink:#202629;
  --tf-ink-soft:#3d464b;
  --tf-muted:#657178;
  --tf-line:#d9dfe2;
  --tf-soft:#f2f4f4;
  --tf-paper:#ffffff;
  --tf-max:1240px;
  --tf-copy:760px;
  --tf-space-1:.5rem;
  --tf-space-2:1rem;
  --tf-space-3:1.5rem;
  --tf-space-4:2rem;
  --tf-space-5:3rem;
  --tf-space-6:4.5rem;
  color:var(--tf-ink);
  font-family:Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.public-body h1,.public-body h2,.public-body h3,.public-body h4{
  color:var(--tf-ink);
  font-weight:800;
  text-wrap:balance;
}
.public-body h1{
  font-size:clamp(2.55rem,5vw,5rem);
  line-height:1.01;
  letter-spacing:-.045em;
}
.public-body h2{
  font-size:clamp(1.85rem,3.2vw,3rem);
  line-height:1.08;
  letter-spacing:-.03em;
}
.public-body h3{
  font-size:clamp(1.12rem,1.7vw,1.35rem);
  line-height:1.25;
  letter-spacing:-.012em;
}
.public-body p{max-width:var(--tf-copy)}
.public-body .eyebrow{
  font-size:.72rem;
  letter-spacing:.16em;
  line-height:1.3;
}

/* Header */
.public-body .public-header{
  background:rgba(255,255,255,.975);
  border-bottom:1px solid rgba(32,38,41,.11);
  box-shadow:0 8px 28px rgba(32,38,41,.045);
}
.public-body .header-inner{
  max-width:var(--tf-max);
  height:76px;
  padding-inline:24px;
  gap:26px;
}
.public-body .brand{
  font-size:1.5rem;
  letter-spacing:.025em;
}
.public-body .brand::after{
  width:.42rem;
  height:.42rem;
  margin-left:.2rem;
}
.public-body .main-navigation{gap:18px}
.public-body .main-navigation a,
.public-body .header-link{
  font-size:.81rem;
  padding:27px 0 24px;
  letter-spacing:.005em;
}
.public-body .header-login{
  padding:10px 14px;
  font-size:.8rem;
  border:1px solid var(--tf-ink);
}

/* Grundraster */
.public-body .section{
  max-width:var(--tf-max);
  padding:clamp(4.5rem,8vw,7rem) 24px;
}
.public-body .section-soft,
.public-body .knowledge-band{
  padding-left:max(24px,calc((100vw - var(--tf-max))/2 + 24px));
  padding-right:max(24px,calc((100vw - var(--tf-max))/2 + 24px));
}
.public-body .section-head{
  gap:28px;
  margin-bottom:34px;
}
.public-body .section-copy,
.public-body .hero-lead{
  color:var(--tf-muted);
  font-size:clamp(1.02rem,1.45vw,1.22rem);
  line-height:1.65;
}

/* Hero */
.public-body .home-hero{
  max-width:var(--tf-max);
  min-height:620px;
  padding:clamp(4rem,8vw,6.8rem) 24px;
  grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);
  gap:clamp(2.5rem,6vw,5.5rem);
}
.public-body .hero-copy{max-width:820px}
.public-body .hero-visual{
  min-height:430px;
  padding:36px;
  box-shadow:18px 18px 0 var(--tf-soft);
}
.public-body .hero-visual span{font-size:5rem}
.public-body .hero-visual strong{font-size:clamp(1.65rem,2.5vw,2.2rem)}
.public-body .page-hero{
  padding:clamp(4rem,7vw,6rem) max(24px,calc((100vw - var(--tf-max))/2 + 24px));
  border-bottom:1px solid var(--tf-line);
}
.public-body .page-hero>div{max-width:880px}

/* Buttons */
.public-body .button,
.public-body button.button{
  min-height:48px;
  padding:13px 20px;
  border-radius:0;
  font-size:.9rem;
  letter-spacing:.005em;
  box-shadow:none;
}
.public-body .button:hover{transform:translateY(-2px)}
.public-body .button-secondary{border-color:var(--tf-ink)}

/* Karten */
.public-body .feature-grid{gap:20px}
.public-body .feature-card,
.public-body .content-card,
.public-body .news-card,
.public-body .category-card,
.public-body .product-card{
  border:1px solid var(--tf-line);
  border-top-width:4px;
  border-radius:0;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.public-body .feature-card{
  min-height:220px;
  padding:24px;
}
.public-body .feature-card h3,
.public-body .feature-card h2{
  margin:44px 0 10px;
  font-size:1.22rem;
}
.public-body .feature-card:hover,
.public-body .content-card:hover,
.public-body .category-card:hover,
.public-body .product-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 36px rgba(32,38,41,.09);
  border-color:#c8cfd2;
  border-top-color:var(--tf-red);
}
.public-body .knowledge-cards{gap:20px}
.public-body .knowledge-cards a{
  min-height:205px;
  padding:26px;
}

/* Listen, Tabellen, Inhalte */
.public-body .solution-list a{
  padding:20px 0;
  font-size:1.08rem;
}
.public-body .richtext,
.public-body .article-content{
  font-size:1rem;
  line-height:1.78;
}
.public-body .article-page{
  max-width:900px;
  padding:64px 24px;
}
.public-body .article-lead{
  font-size:1.16rem;
  line-height:1.65;
}
.public-body .public-table{
  font-size:.9rem;
  border-collapse:collapse;
}
.public-body .public-table th{
  background:var(--tf-soft);
  font-size:.76rem;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.public-body .public-table th,
.public-body .public-table td{
  padding:12px 13px;
  border-bottom:1px solid var(--tf-line);
}

/* CTA und Footer */
.public-body .partner-cta{
  max-width:var(--tf-max);
  margin:72px auto;
  padding:clamp(2.5rem,5vw,4rem);
}
.public-body .public-footer{
  border-top:1px solid rgba(255,255,255,.1);
}

/* Fokus und Bedienbarkeit */
.public-body a:focus-visible,
.public-body button:focus-visible,
.public-body input:focus-visible,
.public-body select:focus-visible,
.public-body textarea:focus-visible{
  outline:3px solid rgba(200,16,46,.28);
  outline-offset:3px;
}

@media(max-width:1180px){
  .public-body .header-inner{gap:18px}
  .public-body .main-navigation{gap:13px}
  .public-body .main-navigation a,.public-body .header-link{font-size:.76rem}
  .public-body .header-actions{gap:10px}
}
@media(max-width:980px){
  .public-body .header-inner{height:70px}
  .public-body .menu-toggle{display:inline-flex;margin-left:auto}
  .public-body .main-navigation{
    display:none;
    position:absolute;
    left:0;right:0;top:70px;
    padding:14px 24px 22px;
    background:#fff;
    border-bottom:1px solid var(--tf-line);
    box-shadow:0 18px 28px rgba(32,38,41,.08);
  }
  .public-body .main-navigation.is-open{display:grid}
  .public-body .main-navigation a{
    padding:11px 0;
    font-size:.92rem;
    border-bottom:1px solid var(--tf-line);
  }
  .public-body .header-actions{display:none}
  .public-body .home-hero{grid-template-columns:1fr;min-height:auto}
  .public-body .hero-visual{min-height:330px}
  .public-body .feature-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}
  .public-body .split-section{grid-template-columns:1fr;gap:48px}
}
@media(max-width:700px){
  .public-body{font-size:15.5px}
  .public-body .header-inner{padding-inline:18px}
  .public-body .home-hero,
  .public-body .section{padding-left:18px;padding-right:18px}
  .public-body .page-hero,
  .public-body .section-soft,
  .public-body .knowledge-band{
    padding-left:18px;
    padding-right:18px;
  }
  .public-body .section-head{display:block}
  .public-body .feature-grid.five,
  .public-body .feature-grid.three,
  .public-body .knowledge-cards{grid-template-columns:1fr}
  .public-body .hero-visual{padding:28px;box-shadow:10px 10px 0 var(--tf-soft)}
  .public-body .partner-cta{margin:44px 18px;padding:30px 24px;display:block}
  .public-body .actions,.public-body .form-actions{align-items:stretch}
  .public-body .actions .button,.public-body .form-actions .button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .public-body *{scroll-behavior:auto!important;transition:none!important}
}

/* ===== 116J SOURCE: package-016.css ===== */
/* TOPFORM Paket 016 – Startseite und visuelle Bildwelten */
.home-016{overflow:hidden;background:#fff}
.tf16-hero{max-width:1240px;margin:0 auto;padding:clamp(4.2rem,8vw,7.2rem) 24px 5rem;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);gap:clamp(3rem,7vw,7rem);align-items:center}
.tf16-hero-copy h1{max-width:840px}.tf16-lead{max-width:760px;font-size:clamp(1.15rem,1.65vw,1.38rem);line-height:1.62;color:var(--tf-muted)}
.tf16-hero-facts{margin-top:52px;padding-top:24px;border-top:1px solid var(--tf-line);display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.tf16-hero-facts div{display:grid;gap:4px}.tf16-hero-facts strong{font-size:.9rem}.tf16-hero-facts span{font-size:.82rem;line-height:1.4;color:var(--tf-muted)}
.tf16-hero-stage{position:relative;min-height:560px;background:linear-gradient(145deg,#3b4449 0%,#1d2326 70%);color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;box-shadow:24px 24px 0 #eef0f1}.tf16-hero-stage:before{content:"";position:absolute;right:-80px;top:-70px;width:280px;height:280px;border:70px solid #c8102e;border-radius:50%}.tf16-hero-stage:after{content:"";position:absolute;left:-120px;bottom:-170px;width:370px;height:370px;border:1px solid rgba(255,255,255,.18);border-radius:50%}.tf16-stage-mark{position:relative;z-index:1;font-size:.82rem;font-weight:900;letter-spacing:.18em}.tf16-stage-copy{position:relative;z-index:1}.tf16-stage-copy span{display:block;color:#ffbac5;font-size:.72rem;font-weight:900;letter-spacing:.18em;margin-bottom:12px}.tf16-stage-copy strong{font-size:clamp(2.3rem,4vw,4.2rem);line-height:.95;letter-spacing:-.045em}
.tf16-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);align-items:start;border-top:1px solid var(--tf-line)}.tf16-intro h2{max-width:520px}.tf16-copy-large{font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.55;color:var(--tf-ink-soft);margin-top:0}
.tf16-worlds{background:#f1f3f3;padding:clamp(5rem,9vw,8rem) max(24px,calc((100vw - 1240px)/2 + 24px))}.tf16-worlds-head{display:grid;grid-template-columns:1fr .7fr;gap:60px;align-items:end;margin-bottom:42px}.tf16-worlds-head p:last-child{color:var(--tf-muted);max-width:560px}.tf16-world-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tf16-world-card{min-height:360px;padding:30px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.tf16-world-card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(20,27,30,.13)}.tf16-world-card:after{content:"";position:absolute;width:240px;height:240px;border:1px solid currentColor;opacity:.12;border-radius:50%;right:-80px;top:-80px}.tf16-world-card div{position:relative;z-index:1;max-width:500px}.tf16-world-number{font-size:.72rem;font-weight:900;letter-spacing:.14em}.tf16-world-card small{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.tf16-world-card h3{font-size:clamp(2rem,3vw,3rem);margin:.45rem 0 .7rem}.tf16-world-card p{margin:0;opacity:.82}.tf16-world-red{background:#c8102e;color:#fff}.tf16-world-red h3{color:#fff}.tf16-world-dark{background:#252c30;color:#fff}.tf16-world-dark h3{color:#fff}.tf16-world-light{background:#fff;color:#202629}.tf16-world-steel{background:#5b676d;color:#fff}.tf16-world-steel h3{color:#fff}
.tf16-solution{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,7rem);align-items:stretch}.tf16-solution-visual{min-height:520px;background:#c8102e;color:#fff;padding:36px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.tf16-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);background-size:46px 46px}.tf16-solution-visual span,.tf16-solution-visual strong{position:relative}.tf16-solution-visual span{font-size:.72rem;letter-spacing:.16em;font-weight:900;margin-bottom:14px}.tf16-solution-visual strong{font-size:clamp(2.2rem,4vw,4rem);line-height:1;letter-spacing:-.04em}.tf16-solution-copy{align-self:center}.tf16-link-list{margin:34px 0;border-top:1px solid var(--tf-line)}.tf16-link-list a{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--tf-line);text-decoration:none;font-weight:800}.tf16-link-list a:hover span{color:#c8102e}.tf16-link-list b{color:#c8102e;font-size:.75rem}
.tf16-knowledge{background:#202629;color:#fff;padding:clamp(5rem,9vw,8rem) max(24px,calc((100vw - 1240px)/2 + 24px))}.tf16-knowledge h2{color:#fff}.tf16-knowledge-head{max-width:820px}.tf16-knowledge-head>p:last-child{color:#b7c0c4;font-size:1.08rem}.tf16-knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}.tf16-knowledge-grid a{min-height:260px;background:#31393d;color:#fff;text-decoration:none;padding:26px;display:flex;flex-direction:column;transition:.2s}.tf16-knowledge-grid a:hover{background:#c8102e;transform:translateY(-3px)}.tf16-knowledge-grid span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.tf16-knowledge-grid h3{color:#fff;font-size:1.35rem;margin:.9rem 0 auto}.tf16-knowledge-grid small{font-weight:800;margin-top:28px}
.tf16-news{padding-bottom:1rem}.tf16-partner{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(3rem,8vw,7rem);align-items:center}.tf16-partner-stage{min-height:430px;background:#eceff0;padding:40px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.tf16-partner-stage:before{content:"";position:absolute;left:34px;top:34px;width:88px;height:88px;background:#c8102e}.tf16-partner-stage span{font-size:.75rem;font-weight:900;letter-spacing:.18em;color:#c8102e}.tf16-partner-stage strong{font-size:clamp(2.4rem,4vw,4.2rem);line-height:.95;letter-spacing:-.045em;margin:14px 0}.tf16-partner-stage p{color:var(--tf-muted)}
.tf16-final-cta{max-width:1240px;margin:30px auto 80px;background:#c8102e;color:#fff;padding:clamp(2.8rem,5vw,4.6rem);display:flex;align-items:center;justify-content:space-between;gap:40px}.tf16-final-cta h2{color:#fff;margin-bottom:0}.tf16-final-cta .eyebrow{color:#fff}.tf16-final-cta .actions{margin:0}
@media(max-width:980px){.tf16-hero,.tf16-intro,.tf16-worlds-head,.tf16-solution,.tf16-partner{grid-template-columns:1fr}.tf16-hero-stage{min-height:430px}.tf16-world-grid,.tf16-knowledge-grid{grid-template-columns:repeat(2,1fr)}.tf16-final-cta{display:block}.tf16-final-cta .actions{margin-top:24px}}
@media(max-width:680px){.tf16-hero{padding-top:3rem}.tf16-hero-facts,.tf16-world-grid,.tf16-knowledge-grid{grid-template-columns:1fr}.tf16-hero-stage{min-height:360px;padding:28px}.tf16-world-card{min-height:300px}.tf16-solution-visual{min-height:380px}.tf16-final-cta{margin:20px 16px 56px}.tf16-worlds,.tf16-knowledge{padding-left:20px;padding-right:20px}}

/* ===== 116J SOURCE: package-017.css ===== */
/* TOPFORM Paket 017 – Partnerbereich */
.partner-page,.partner-detail-page,.partner-application-page{background:#f5f5f3}.partner-hero,.partner-application-hero,.partner-detail-hero{max-width:1440px;margin:0 auto;padding:clamp(3rem,7vw,7rem) clamp(1.25rem,5vw,5rem);background:#20262a;color:#fff}.partner-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(2rem,6vw,6rem);align-items:end}.partner-hero h1,.partner-application-hero h1,.partner-detail-hero h1{max-width:900px;color:#fff;font-size:clamp(2.5rem,6vw,5.6rem);line-height:.94;letter-spacing:-.045em}.partner-hero .hero-lead,.partner-application-hero .hero-lead,.partner-detail-hero .hero-lead{color:rgba(255,255,255,.78);max-width:760px}.partner-hero-panel{border-top:1px solid rgba(255,255,255,.25);padding-top:1.25rem;display:grid;grid-template-columns:3rem 1fr;gap:.35rem 1rem}.partner-hero-panel span,.partner-application-benefits span{color:#e31937;font-weight:800}.partner-hero-panel strong{font-size:1.05rem}.partner-hero-panel p{grid-column:2;margin:0 0 1rem;color:rgba(255,255,255,.68);font-size:.95rem}.partner-search-section{max-width:1440px;margin:0 auto;padding:clamp(2.5rem,5vw,5rem) clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,6vw,6rem);background:#fff}.partner-search-copy h2,.partner-results-head h2,.partner-cta h2{margin:.25rem 0 1rem}.partner-search-modern{align-self:center;background:#f0f1ef;padding:clamp(1.25rem,3vw,2rem)}.partner-search-modern label{display:block;font-weight:700;margin-bottom:.6rem}.partner-search-row{display:grid;grid-template-columns:1fr auto;gap:.75rem}.partner-search-row input{width:100%;min-height:3.35rem;border:1px solid #c9cdca;background:#fff;padding:0 1rem;font:inherit}.partner-reset{display:inline-block;margin-top:.8rem;font-size:.9rem}.partner-results{max-width:1440px}.partner-results-head{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:2rem}.partner-grid-modern{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d7d9d6}.partner-card-modern{display:flex;flex-direction:column;min-height:390px;padding:0;background:#fff;border:0}.partner-card-logo-wrap{height:130px;display:flex;align-items:center;padding:1.5rem;border-bottom:1px solid #eceeeb}.partner-card-logo-wrap img{max-width:180px;max-height:78px;object-fit:contain}.partner-logo-placeholder{font-weight:900;letter-spacing:.08em;color:#c8102e}.partner-card-body{padding:1.75rem;flex:1}.partner-card-body h3{font-size:1.4rem;margin:.35rem 0 .75rem}.partner-location{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#6f7772}.partner-card-link{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.75rem;border-top:1px solid #eceeeb;text-decoration:none;font-weight:700}.partner-card-link:hover{background:#20262a;color:#fff}.partner-empty{padding:3rem;background:#fff;border-left:5px solid #c8102e}.partner-cta{max-width:1440px;margin:0 auto;padding:clamp(3rem,6vw,6rem) clamp(1.25rem,5vw,5rem);background:#c8102e;color:#fff;display:flex;justify-content:space-between;align-items:end;gap:2rem}.partner-cta h2,.partner-cta p{color:#fff}.partner-cta p{max-width:760px}.partner-cta .button{background:#fff;color:#20262a}.partner-detail-head{display:grid;grid-template-columns:200px 1fr;gap:2rem;align-items:center;margin-top:2rem}.partner-detail-logo-wrap{min-height:160px;display:flex;align-items:center;justify-content:center;background:#fff;padding:1.5rem}.partner-detail-logo-wrap img{max-width:100%;max-height:110px;object-fit:contain}.back-link{color:#fff}.partner-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:clamp(2rem,6vw,6rem);max-width:1440px}.partner-description{font-size:1.12rem;line-height:1.75}.partner-info-block,.contact-section{margin-top:3rem;padding-top:2rem;border-top:1px solid #d9dcd8}.partner-contact-card{background:#fff;padding:clamp(1.5rem,3vw,2.5rem);align-self:start;position:sticky;top:7rem}.partner-contact-card address{font-style:normal;margin:1.5rem 0;line-height:1.7}.partner-contact-row{padding:1rem 0;border-top:1px solid #eceeeb}.partner-contact-row span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#747b77}.partner-contact-row a{font-weight:700}.partner-opening{margin-top:1rem;padding-top:1rem;border-top:1px solid #eceeeb}.partner-website{width:100%;text-align:center;margin-top:1.25rem}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.contact-card{background:#fff;padding:1.5rem}.contact-card a{display:block;margin-top:.35rem}.partner-application-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:4rem;align-items:end}.partner-application-benefits{display:grid;gap:1px;background:rgba(255,255,255,.18)}.partner-application-benefits div{display:grid;grid-template-columns:3rem 1fr;gap:.5rem;background:#20262a;padding:1rem}.partner-form-section{max-width:1440px;grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr)}.partner-public-form{background:#fff;padding:clamp(1.25rem,3vw,2.5rem)}.form-note{font-size:.9rem;color:#717874}.partner-public-form input,.partner-public-form textarea{border-radius:0}.partner-public-form label{font-weight:700}.partner-public-form textarea{resize:vertical}.success-panel{background:#fff;padding:3rem;border-left:5px solid #c8102e}
@media(max-width:980px){.partner-hero,.partner-search-section,.partner-detail-grid,.partner-application-hero,.partner-form-section{grid-template-columns:1fr}.partner-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-detail-head{grid-template-columns:150px 1fr}.partner-contact-card{position:static}.partner-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.partner-grid-modern{grid-template-columns:1fr}.partner-search-row{grid-template-columns:1fr}.partner-results-head{align-items:flex-start;flex-direction:column}.partner-detail-head{grid-template-columns:1fr}.partner-detail-logo-wrap{max-width:220px}.contact-grid{grid-template-columns:1fr}.partner-hero h1,.partner-application-hero h1,.partner-detail-hero h1{font-size:clamp(2.25rem,13vw,3.5rem)}}

/* ===== 116J SOURCE: package-018.css ===== */
/* TOPFORM Paket 018 – Wissen und Lösungen */
.knowledge-hero,.solutions-hero,.article-hero{background:linear-gradient(135deg,#252c31 0%,#3c454b 100%);color:#fff;padding:clamp(4rem,8vw,7.5rem) 0}
.knowledge-hero__grid,.solutions-hero__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:clamp(2rem,6vw,6rem);align-items:end}
.knowledge-hero h1,.solutions-hero h1,.article-hero h1{max-width:900px;margin:.35rem 0 1.25rem;color:#fff;font-size:clamp(2.5rem,5.2vw,5rem);line-height:.98;letter-spacing:-.035em}
.knowledge-hero__lead,.solutions-hero__lead,.article-lead{max-width:760px;margin:0;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.55;color:rgba(255,255,255,.82)}
.knowledge-hero__aside{border-left:4px solid var(--tf-red,#c8102e);padding:1rem 0 1rem 1.5rem;display:grid;gap:.4rem;color:rgba(255,255,255,.76)}
.knowledge-hero__aside strong{font-size:1.2rem;color:#fff}.solutions-process{display:grid;gap:.75rem}.solutions-process span{display:flex;align-items:center;gap:.8rem;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.18)}.solutions-process b{display:grid;place-items:center;width:2rem;height:2rem;background:#c8102e;color:#fff;font-size:.85rem}
.knowledge-search-section{background:#eef0f1;padding:1.5rem 0}.knowledge-search{display:grid;gap:.65rem}.knowledge-search label{font-weight:700}.knowledge-search__row{display:grid;grid-template-columns:1fr auto;gap:.75rem}.knowledge-search input{min-height:52px;border:1px solid #cbd0d3;background:#fff;padding:0 1rem;font:inherit}
.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.section-heading-row h2{margin:.2rem 0 0}.result-count{font-size:.9rem;font-weight:700;color:#606a70;white-space:nowrap}
.knowledge-card-grid,.solution-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.knowledge-card,.solution-card{position:relative;display:flex;flex-direction:column;min-height:285px;padding:1.75rem;background:#fff;border:1px solid #dfe3e5;box-shadow:0 12px 32px rgba(28,35,39,.06);transition:transform .2s ease,box-shadow .2s ease}.knowledge-card:hover,.solution-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(28,35,39,.1)}.knowledge-card h3,.solution-card h3{font-size:1.35rem;line-height:1.18;margin:.7rem 0 .85rem}.knowledge-card h3 a,.solution-card h3 a{color:inherit;text-decoration:none}.knowledge-card p,.solution-card p{color:#5b656a}.knowledge-card .text-link,.solution-card .text-link{margin-top:auto}.knowledge-card__meta{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:#c8102e}.knowledge-card__question{font-weight:700;color:#30383d!important}.solution-card__number{position:absolute;right:1.4rem;top:1.15rem;font-size:2.5rem;font-weight:800;color:#edf0f1;line-height:1}
.empty-state{padding:3rem;background:#f3f5f6;border-left:4px solid #c8102e}.knowledge-cta,.solutions-knowledge-link{background:#30383d;color:#fff;padding:3.5rem 0}.knowledge-cta__inner,.solutions-knowledge-link__inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}.knowledge-cta h2,.solutions-knowledge-link h2{color:#fff;margin:.3rem 0}.solutions-knowledge-link p{color:rgba(255,255,255,.75)}
.article-shell{max-width:980px}.breadcrumbs{display:flex;gap:.55rem;align-items:center;margin-bottom:2rem;font-size:.88rem;color:rgba(255,255,255,.7)}.breadcrumbs a{color:#fff}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:clamp(2.5rem,6vw,6rem);align-items:start}.article-main{min-width:0}.article-aside{position:sticky;top:105px;display:grid;gap:1rem}.direct-answer{margin-bottom:2.5rem;padding:1.6rem 1.8rem;background:#f0f2f3;border-left:5px solid #c8102e}.direct-answer span{display:block;margin-bottom:.55rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#c8102e}.direct-answer p{margin:0;font-size:1.15rem;line-height:1.65;color:#252c31}.article-richtext{font-size:1.05rem;line-height:1.82;color:#384147}.article-facts{padding:1.4rem;background:#f3f5f6}.article-facts>strong{display:block;margin-bottom:1rem}.article-facts dl{margin:0}.article-facts dl div{padding:.75rem 0;border-top:1px solid #d8dddf}.article-facts dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;color:#6b7479}.article-facts dd{margin:.2rem 0 0;font-weight:700}.button-block{width:100%;justify-content:center}.related-section,.source-box{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid #dfe3e5}.related-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.related-card{display:block;padding:1.4rem;border:1px solid #dfe3e5;text-decoration:none;color:inherit}.related-card:hover{border-color:#c8102e}.related-card h3{margin:0 0 .6rem;font-size:1.1rem}.related-card p{color:#5d676c}.related-card span{font-weight:700;color:#c8102e}.solution-steps{display:grid;gap:0}.solution-step{display:grid;grid-template-columns:58px 1fr;gap:1.2rem;padding:2.25rem 0;border-bottom:1px solid #dfe3e5}.solution-step__number{font-size:1rem;font-weight:800;color:#c8102e}.solution-step h2{margin:0 0 .8rem}.source-box{padding:2rem;background:#f7f8f8;border-top:none}
@media(max-width:900px){.knowledge-hero__grid,.solutions-hero__grid,.article-layout{grid-template-columns:1fr}.knowledge-card-grid,.solution-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-aside{position:static}.knowledge-cta__inner,.solutions-knowledge-link__inner{align-items:flex-start;flex-direction:column}.article-shell{max-width:none}}
@media(max-width:640px){.knowledge-hero,.solutions-hero,.article-hero{padding:3.5rem 0}.knowledge-search__row{grid-template-columns:1fr}.knowledge-card-grid,.solution-card-grid,.related-card-grid{grid-template-columns:1fr}.section-heading-row{align-items:flex-start;flex-direction:column;gap:.5rem}.knowledge-card,.solution-card{min-height:0}.solution-step{grid-template-columns:38px 1fr}.knowledge-cta,.solutions-knowledge-link{padding:2.5rem 0}}

/* Paket 018b – Inhaltsbreite und aktive Hauptaktion */
.knowledge-hub .section-inner,
.solutions-hub .section-inner,
.article-hero .section-inner,
.article-layout.section-inner {
    width: min(100%, var(--tf-max, var(--max, 1280px)));
    margin-left: auto;
    margin-right: auto;
    padding-left: clamp(20px, 3vw, 32px);
    padding-right: clamp(20px, 3vw, 32px);
}

.public-body .header-actions .header-link.is-active {
    color: var(--tf-red, var(--red, #c8102e));
    border-bottom-color: var(--tf-red, var(--red, #c8102e));
}

@media (max-width: 700px) {
    .knowledge-hub .section-inner,
    .solutions-hub .section-inner,
    .article-hero .section-inner,
    .article-layout.section-inner {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* ===== 116J SOURCE: package-018c.css ===== */
/* TOPFORM Paket 018c – einheitliches öffentliches Seitenraster
   Rein visuelle Ergänzung. Keine Daten- oder Routinglogik. */

.public-body {
  --tf-layout-standard: 1240px;
  --tf-layout-reading: 860px;
  --tf-layout-gutter: clamp(20px, 3vw, 32px);
  --tf-layout-section-y: clamp(3.5rem, 7vw, 6rem);
}

/* Gemeinsame Breite für die bisher unterschiedlich aufgebauten Seitentypen */
.public-body .partner-hero,
.public-body .partner-search-section,
.public-body .partner-results,
.public-body .partner-cta,
.public-body .partner-detail-hero,
.public-body .partner-detail-grid,
.public-body .partner-application-hero,
.public-body .partner-form-section,
.public-body .knowledge-hub .section-inner,
.public-body .solutions-hub .section-inner,
.public-body .article-hero .section-inner,
.public-body .article-layout.section-inner,
.public-body .knowledge-search-section .section-inner,
.public-body .knowledge-cta__inner,
.public-body .solutions-knowledge-link__inner {
  width: min(100%, var(--tf-layout-standard));
  max-width: var(--tf-layout-standard);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--tf-layout-gutter);
  padding-right: var(--tf-layout-gutter);
  box-sizing: border-box;
}

/* Partnerseiten hatten bislang eigene 1440-px-Flächen. */
.public-body .partner-hero,
.public-body .partner-detail-hero,
.public-body .partner-application-hero,
.public-body .partner-cta {
  max-width: var(--tf-layout-standard);
}

.public-body .partner-search-section,
.public-body .partner-results,
.public-body .partner-detail-grid,
.public-body .partner-form-section {
  max-width: var(--tf-layout-standard);
}

/* Gleichmäßige vertikale Abschnittsabstände */
.public-body .partner-search-section,
.public-body .partner-results,
.public-body .partner-detail-grid,
.public-body .partner-form-section,
.public-body .knowledge-hub > .section,
.public-body .solutions-hub > .section,
.public-body .article-layout.section-inner {
  padding-top: var(--tf-layout-section-y);
  padding-bottom: var(--tf-layout-section-y);
}

/* Leseseiten bleiben innerhalb des gemeinsamen Rasters bewusst schmaler. */
.public-body .article-main,
.public-body .article-richtext,
.public-body .direct-answer,
.public-body .source-box {
  max-width: var(--tf-layout-reading);
}

/* Hero-Flächen behalten ihre Hintergrundfarbe, Inhalt und Außenkanten sitzen aber gleich. */
.public-body .knowledge-hero,
.public-body .solutions-hero,
.public-body .article-hero {
  width: 100%;
}

/* Verhindert doppelte Außenabstände durch ältere Pakete. */
.public-body .partner-hero,
.public-body .partner-detail-hero,
.public-body .partner-application-hero,
.public-body .partner-search-section,
.public-body .partner-cta {
  padding-left: var(--tf-layout-gutter);
  padding-right: var(--tf-layout-gutter);
}

@media (max-width: 700px) {
  .public-body {
    --tf-layout-gutter: 20px;
    --tf-layout-section-y: 3rem;
  }
}

/* ===== 116J SOURCE: package-022.css ===== */
/* TOPFORM Paket 022 – Sportive Design System
   Reine visuelle Erweiterung. Keine Daten- oder Funktionslogik. */

:root {
  --tf-red: #c8102e;
  --tf-red-dark: #990c23;
  --tf-charcoal: #23282d;
  --tf-steel: #4c565c;
  --tf-light: #f3f4f5;
  --tf-line: rgba(35, 40, 45, .16);
  --tf-speed: cubic-bezier(.2,.8,.2,1);
}

/* Markentypografie */
.public-body h1,
.public-body h2,
.public-body .hero-title,
.public-body .section-title {
  letter-spacing: -.035em;
  font-weight: 800;
  text-wrap: balance;
}

.public-body h1,
.public-body .hero-title {
  line-height: .98;
}

.public-body .eyebrow,
.public-body .kicker,
.public-body .section-kicker {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: var(--tf-red);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.public-body .eyebrow::before,
.public-body .kicker::before,
.public-body .section-kicker::before {
  content: "";
  width: 2.2rem;
  height: .22rem;
  background: var(--tf-red);
  transform: skewX(-22deg);
}

/* Sportive Flächen */
.tf-sport-panel,
.public-body .hero,
.public-body .hero-section {
  position: relative;
  overflow: hidden;
}

.tf-sport-panel::after,
.public-body .hero::after,
.public-body .hero-section::after {
  content: "";
  position: absolute;
  right: -7rem;
  bottom: -9rem;
  width: 22rem;
  height: 22rem;
  border: 2.4rem solid rgba(200,16,46,.08);
  transform: rotate(-18deg);
  pointer-events: none;
}

.tf-diagonal-accent {
  position: relative;
}

.tf-diagonal-accent::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 5rem;
  height: .45rem;
  background: var(--tf-red);
  transform: skewX(-28deg);
  transform-origin: left top;
}

/* Buttons mit mehr Dynamik */
.public-body .button,
.public-body .btn,
.public-body a[class*="button"],
.public-body button[class*="button"] {
  border-radius: 0;
  font-weight: 750;
  letter-spacing: .01em;
  transition: transform .18s var(--tf-speed), box-shadow .18s var(--tf-speed), background-color .18s ease;
}

.public-body .button:hover,
.public-body .btn:hover,
.public-body a[class*="button"]:hover,
.public-body button[class*="button"]:hover {
  transform: translateY(-2px);
}

.public-body .button-primary,
.public-body .btn-primary,
.public-body .header-login {
  box-shadow: .35rem .35rem 0 rgba(35,40,45,.14);
}

/* Karten: eckig, präzise, leistungsorientiert */
.public-body .card,
.public-body [class*="-card"],
.public-body [class*="card-"] {
  border-radius: 0;
}

.public-body .card:hover,
.public-body [class*="-card"]:hover {
  border-color: rgba(200,16,46,.34);
}

.tf-performance-card {
  position: relative;
  padding: clamp(1.25rem, 2.6vw, 2rem);
  border: 1px solid var(--tf-line);
  background: #fff;
}

.tf-performance-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4rem;
  height: .35rem;
  background: var(--tf-red);
  transform: skewX(-24deg);
  transform-origin: left top;
}

/* Kennzahlen / Teamflächen */
.tf-scoreboard {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  border-top: 1px solid var(--tf-line);
  border-left: 1px solid var(--tf-line);
}

.tf-score {
  padding: 1.35rem;
  border-right: 1px solid var(--tf-line);
  border-bottom: 1px solid var(--tf-line);
  background: #fff;
}

.tf-score strong {
  display: block;
  color: var(--tf-charcoal);
  font-size: clamp(1.8rem, 4vw, 3.4rem);
  line-height: .95;
  letter-spacing: -.05em;
}

.tf-score span {
  display: block;
  margin-top: .5rem;
  color: var(--tf-steel);
  font-size: .88rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

/* Vorbereitete Bildwelten */
.tf-image-world {
  position: relative;
  min-height: 22rem;
  overflow: hidden;
  background: linear-gradient(135deg, var(--tf-charcoal), var(--tf-steel));
  color: #fff;
}

.tf-image-world > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tf-image-world::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(20,24,27,.9) 0%, rgba(20,24,27,.48) 52%, rgba(20,24,27,.08) 100%);
  z-index: 1;
}

.tf-image-world__content {
  position: absolute;
  z-index: 2;
  left: clamp(1.25rem, 4vw, 3.5rem);
  bottom: clamp(1.25rem, 4vw, 3.5rem);
  max-width: 42rem;
}

.tf-image-world--team::after,
.tf-image-world--performance::after,
.tf-image-world--precision::after {
  content: "";
  position: absolute;
  z-index: 2;
  right: -3rem;
  top: -4rem;
  width: 13rem;
  height: 22rem;
  border-left: 1.2rem solid rgba(200,16,46,.8);
  transform: rotate(17deg);
}

/* Navigation etwas sportlicher, ohne Strukturänderung */
.public-header {
  border-bottom: 1px solid rgba(35,40,45,.12);
}

.main-navigation a,
.header-actions a {
  position: relative;
}

.main-navigation a.is-active::after,
.header-actions a.is-active::after {
  content: "";
  position: absolute;
  left: .1rem;
  right: .1rem;
  bottom: -.32rem;
  height: .22rem;
  background: var(--tf-red);
  transform: skewX(-24deg);
}

/* Fokus und Bewegung */
.public-body a:focus-visible,
.public-body button:focus-visible,
.public-body input:focus-visible,
.public-body select:focus-visible,
.public-body textarea:focus-visible {
  outline: 3px solid rgba(200,16,46,.34);
  outline-offset: 3px;
}

@media (max-width: 760px) {
  .public-body h1,
  .public-body .hero-title {
    line-height: 1.02;
  }
  .tf-image-world {
    min-height: 26rem;
  }
  .tf-image-world::before {
    background: linear-gradient(0deg, rgba(20,24,27,.92) 0%, rgba(20,24,27,.5) 68%, rgba(20,24,27,.12) 100%);
  }
}

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

/* ===== 116J SOURCE: package-023.css ===== */
@font-face{font-family:'Futura TOPFORM';src:url('../fonts/Futura_Medium.woff') format('woff');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Futura TOPFORM';src:url('../fonts/Futura_Bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
:root{--tf-font:'Futura TOPFORM',Futura,'Trebuchet MS',Arial,sans-serif;--tf-red:#ed1c24;--tf-anth:#4f5b61}
.public-body,.public-body button,.public-body input,.public-body textarea,.public-body select{font-family:var(--tf-font)}
.public-body h1,.public-body h2,.public-body h3,.public-body .button,.public-header{font-family:var(--tf-font)}
.home-023{overflow:hidden}.tf23-hero{position:relative;min-height:min(780px,78vh);display:flex;align-items:flex-end;color:#fff;background:#2e363a}.tf23-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 47%}.tf23-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,27,29,.70) 0%,rgba(22,27,29,.50) 42%,rgba(22,27,29,.06) 72%),linear-gradient(0deg,rgba(0,0,0,.44),transparent 55%)}.tf23-hero-copy{position:relative;z-index:2;width:min(1240px,calc(100% - 64px));margin:0 auto;padding:88px 0 126px}.tf23-kicker{font-size:.95rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#fff;margin:0 0 18px}.tf23-hero h1{max-width:740px;font-size:clamp(2.7rem,6vw,5.5rem);line-height:.94;margin:0 0 24px;letter-spacing:-.035em}.tf23-hero-copy>p:not(.tf23-kicker){max-width:650px;font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1.5}.tf23-button-light{color:#fff!important;border-color:rgba(255,255,255,.65)!important;background:rgba(255,255,255,.08)!important}.tf23-scoreline{position:absolute;z-index:3;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(79,91,97,.95);border-top:5px solid var(--tf-red)}.tf23-scoreline span{padding:18px 26px;text-transform:uppercase;letter-spacing:.08em;text-align:center;border-right:1px solid rgba(255,255,255,.2)}.tf23-scoreline strong{color:#fff;margin-right:12px}.tf23-position{align-items:start}.tf23-position h2{max-width:560px}.tf23-campaigns{display:block}.tf23-section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:end;margin-bottom:36px}.tf23-section-head p:last-child{font-size:1.08rem;line-height:1.6}.tf23-campaign-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:24px}.tf23-campaign-card{position:relative;min-height:520px;overflow:hidden;background:#30383c;color:#fff}.tf23-campaign-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.tf23-campaign-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,24,26,.9),transparent 64%)}.tf23-campaign-card>div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:34px}.tf23-campaign-card span{color:#fff;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.tf23-campaign-card h3{font-size:clamp(1.65rem,3vw,2.7rem);margin:8px 0 10px}.tf23-campaign-card p{max-width:620px;margin:0;line-height:1.5}.tf23-principles{background:#4f5b61;color:#fff;padding:80px max(32px,calc((100vw - 1240px)/2))}.tf23-principles .eyebrow{color:#fff}.tf23-principles h2{color:#fff}.tf23-principles-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:rgba(255,255,255,.25);margin-top:32px}.tf23-principles-grid article{background:#4f5b61;padding:28px 22px;min-height:215px}.tf23-principles-grid b{display:block;color:var(--tf-red);font-size:1.1rem}.tf23-principles-grid h3{font-size:1.2rem;line-height:1.2;margin:22px 0 12px}.tf23-principles-grid p{margin:0;color:rgba(255,255,255,.82)}.tf23-solution{margin-top:0}.tf23-team{display:grid;grid-template-columns:1.25fr .75fr;gap:72px;align-items:center}.tf23-team>div:first-child p:not(.eyebrow){font-size:1.12rem;line-height:1.6;max-width:700px}.tf23-team-mark{background:var(--tf-red);color:#fff;min-height:310px;padding:44px;display:flex;flex-direction:column;justify-content:center}.tf23-team-mark span{font-size:1.2rem;letter-spacing:.22em}.tf23-team-mark strong{font-size:clamp(2.8rem,6vw,5rem);line-height:.9}.tf23-team-mark small{margin-top:22px;font-size:1.1rem}.tf23-final-cta{border-top:0}
@media(max-width:900px){.tf23-hero{min-height:720px}.tf23-hero-copy{width:calc(100% - 40px);padding:70px 0 160px}.tf23-hero-shade{background:linear-gradient(0deg,rgba(22,27,29,.74) 0%,rgba(22,27,29,.34) 75%)}.tf23-scoreline{grid-template-columns:1fr}.tf23-scoreline span{padding:8px 16px;border-right:0;border-bottom:1px solid rgba(255,255,255,.16);font-size:.75rem}.tf23-section-head,.tf23-campaign-grid,.tf23-team{grid-template-columns:1fr;gap:26px}.tf23-campaign-card{min-height:480px}.tf23-principles{padding:60px 20px}.tf23-principles-grid{grid-template-columns:1fr}.tf23-principles-grid article{min-height:0}.tf23-team-mark{min-height:240px}}
@media(max-width:560px){.tf23-hero{min-height:680px}.tf23-hero-image{object-position:58% center}.tf23-hero-copy{padding-top:50px}.tf23-hero h1{font-size:2.75rem}.tf23-campaign-card{min-height:430px}.tf23-campaign-card>div{padding:24px}.tf23-scoreline strong{margin-right:6px}}


/* Hotfix 115i – Startseite Kachel und kompaktere Abstände */
.home-023 .section{padding-top:78px;padding-bottom:78px}
.home-023 .tf23-position.section{padding-top:86px;padding-bottom:72px}
.home-023 .tf23-campaigns.section{padding-top:72px;padding-bottom:72px}
.home-023 .tf23-team.section{padding-top:72px;padding-bottom:72px}
.home-023 .tf23-team{gap:56px;align-items:stretch}
.home-023 .tf23-team-mark{min-height:260px;padding:34px 36px;justify-content:center;gap:8px}
.home-023 .tf23-team-mark span{font-size:.92rem;letter-spacing:.24em;font-weight:700;opacity:.96}
.home-023 .tf23-team-mark strong{font-size:clamp(2.2rem,4.2vw,3.6rem);line-height:.92;letter-spacing:-.03em}
.home-023 .tf23-team-mark small{margin-top:10px;font-size:1rem;line-height:1.35}
.home-023 .tf16-final-cta{margin-top:8px;margin-bottom:60px;padding:clamp(2.4rem,4vw,4rem)}
@media(max-width:900px){.home-023 .section{padding-top:64px;padding-bottom:64px}.home-023 .tf23-team{gap:22px}.home-023 .tf23-team-mark{min-height:220px;padding:30px 28px}}
@media(max-width:560px){.home-023 .section{padding-top:56px;padding-bottom:56px}.home-023 .tf23-team-mark{min-height:0;padding:28px 24px}.home-023 .tf23-team-mark strong{font-size:2.35rem}.home-023 .tf23-team-mark small{font-size:.95rem}}

/* ===== 116J SOURCE: package-024.css ===== */
:root{--tf-container:1240px;--tf-reading:860px;--tf-gutter:clamp(20px,4vw,40px);--tf-section:clamp(56px,7vw,104px)}
.tf-page-container{width:min(calc(100% - (2 * var(--tf-gutter))),var(--tf-container));margin-inline:auto}
.tf-page-hero{padding:clamp(64px,8vw,118px) 0;background:linear-gradient(135deg,#4d585e 0%,#394349 100%);color:#fff;position:relative;overflow:hidden}
.tf-page-hero:after{content:"";position:absolute;right:-90px;bottom:-110px;width:320px;height:320px;border:38px solid rgba(232,0,29,.22);border-radius:50%}
.tf-page-hero--compact{padding-block:clamp(58px,7vw,92px)}
.tf-page-hero h1{max-width:900px;margin:.25rem 0 1rem;font-size:clamp(2.5rem,6vw,5rem);line-height:.95}
.tf-page-lead{max-width:780px;font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.5;color:rgba(255,255,255,.88)}
.tf-page-section{padding:var(--tf-section) 0}
.tf-structure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tf-structure-card{position:relative;padding:34px 30px 32px;border-top:6px solid #e6001d;background:#f2f3f4;min-height:240px}
.tf-structure-number{display:block;font-family:"Futura Bold",sans-serif;font-size:.82rem;color:#e6001d;letter-spacing:.12em;margin-bottom:24px}
.tf-structure-card h2{font-size:clamp(1.35rem,2vw,1.85rem);margin:0 0 14px}
.tf-structure-card p{margin:0;line-height:1.6;color:#4d585e}
.tf-structure-card small{display:block;margin-top:16px;font-weight:700;color:#e6001d}
.tf-page-band{margin-top:clamp(48px,7vw,88px);padding:clamp(30px,4vw,48px);display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;background:#4d585e;color:#fff;border-left:10px solid #e6001d}
.tf-page-band h2{margin:.25rem 0 0;font-size:clamp(1.8rem,3vw,2.8rem)}
.tf-page-band>p{font-size:1.15rem;line-height:1.6;margin:0;color:rgba(255,255,255,.86)}
.tf-page-actions{display:flex;gap:14px;justify-content:flex-end;flex-wrap:wrap}
.tf-page-closing{max-width:var(--tf-reading);margin:50px auto 0;text-align:center;font-size:1.1rem;color:#59636a}
.tf-page-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:end}
.tf-benefit-list{display:grid;gap:1px;background:rgba(255,255,255,.18)}
.tf-benefit-list div{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:16px;background:rgba(48,58,64,.76);padding:18px 22px}
.tf-benefit-list span{color:#fff;font-size:.8rem;letter-spacing:.1em}
.tf-benefit-list strong{font-size:1.02rem}
.tf-form-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(36px,7vw,90px);align-items:start}
.tf-form-intro{position:sticky;top:120px}
.tf-form-intro h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.02;margin:.35rem 0 1.25rem}
.tf-form-intro p{font-size:1.08rem;line-height:1.65;color:#59636a}
.tf-form-note{padding-top:18px;border-top:1px solid #d8dcdf;font-size:.95rem!important}
.tf-footer{margin-top:0;background:#303a40;color:#fff;padding:64px 0 0}
.tf-footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px}
.tf-footer h2{font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:#fff;margin:0 0 18px}
.tf-footer a{display:block;color:rgba(255,255,255,.78);text-decoration:none;margin:0 0 10px}
.tf-footer a:hover{color:#fff}
.tf-footer-brand p{max-width:360px;color:rgba(255,255,255,.72);line-height:1.6}
.tf-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:48px;padding:22px 0;border-top:1px solid rgba(255,255,255,.16);font-size:.9rem;color:rgba(255,255,255,.6)}
@media(max-width:900px){.tf-structure-grid,.tf-page-hero-grid,.tf-form-layout,.tf-page-band{grid-template-columns:1fr}.tf-form-intro{position:static}.tf-footer-grid{grid-template-columns:1fr 1fr}.tf-page-actions{justify-content:flex-start}}
@media(max-width:620px){.tf-structure-grid,.tf-footer-grid{grid-template-columns:1fr}.tf-footer-bottom{flex-direction:column}.tf-page-hero h1{font-size:clamp(2.3rem,13vw,4rem)}}

/* ===== 116J SOURCE: package-025.css ===== */
/* TOPFORM Paket 025: Navigation, Footer und Kontaktwege */
.tf-site-header .header-inner{gap:clamp(14px,2vw,28px)}
.tf-site-header .main-navigation{gap:clamp(12px,1.35vw,22px)}
.tf-site-header .main-navigation a{white-space:nowrap;font-size:.93rem}
.tf-site-header .header-actions{gap:10px}
.tf-site-header .header-contact{display:inline-flex;align-items:center;min-height:42px;padding:0 12px;color:#4d585e;text-decoration:none;font-family:"Futura Medium",Arial,sans-serif;font-weight:700;border-bottom:3px solid transparent}
.tf-site-header .header-contact:hover,.tf-site-header .header-contact:focus-visible{color:#e6001d;border-bottom-color:#e6001d}
.tf-site-header .header-login{padding-inline:14px}
.tf-site-header .header-link.is-active{box-shadow:inset 0 -4px 0 rgba(255,255,255,.9)}
.tf-contact-band{background:#e6001d;color:#fff;padding:clamp(42px,6vw,72px) 0}
.tf-contact-band-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(28px,6vw,80px);align-items:center}
.tf-contact-band .eyebrow{color:#fff;opacity:.78}
.tf-contact-band h2{margin:.2rem 0 .65rem;font-size:clamp(2rem,4vw,3.6rem);line-height:1}
.tf-contact-band p{max-width:720px;margin:0;color:rgba(255,255,255,.88);font-size:1.08rem;line-height:1.55}
.tf-contact-band-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.tf-contact-band .button{background:#fff;color:#e6001d;border-color:#fff}
.tf-contact-band .button:hover{background:#303a40;border-color:#303a40;color:#fff}
.tf-contact-band .button-secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
.tf-contact-band .button-secondary:hover{background:#fff;color:#e6001d}
.tf-footer-grid{grid-template-columns:1.45fr .8fr 1fr 1.15fr}
.tf-footer-contact{display:flex;flex-direction:column;gap:6px;font-style:normal;color:rgba(255,255,255,.72)}
.tf-footer-contact h2{margin-bottom:12px}
.tf-footer-contact strong{color:#fff;margin-bottom:4px}
.tf-footer-contact a{margin:4px 0 0}
.tf-footer-bottom a{color:rgba(255,255,255,.68);text-decoration:none}
.tf-footer-bottom a:hover{color:#fff}
@media(max-width:1180px){.tf-site-header .main-navigation a{font-size:.88rem}.tf-site-header .header-contact{display:none}}
@media(max-width:980px){.tf-contact-band-inner{grid-template-columns:1fr}.tf-contact-band-actions{justify-content:flex-start}.tf-footer-grid{grid-template-columns:1fr 1fr}.tf-site-header .header-contact{display:inline-flex}}
@media(max-width:620px){.tf-footer-grid{grid-template-columns:1fr}.tf-contact-band-actions{flex-direction:column;align-items:stretch}.tf-contact-band-actions .button{text-align:center}.tf-footer-bottom{align-items:flex-start}}

/* ===== 116J SOURCE: package-030c.css ===== */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.mobile-navigation-panel{display:contents}
.header-search{display:flex;align-items:center;min-width:230px;border:1px solid rgba(25,35,42,.18);background:#fff}
.header-search input{width:100%;min-width:0;border:0;background:transparent;padding:.72rem .8rem;font:inherit;color:#182126;outline:0}
.header-search input:focus{box-shadow:inset 0 -3px 0 #c8102e}
.header-search button{border:0;background:#4c565c;color:#fff;padding:.72rem .85rem;font:inherit;font-weight:700;cursor:pointer}
.header-search button:hover,.header-search button:focus-visible{background:#c8102e}
.menu-toggle-icon{display:none;width:24px;gap:4px;flex-direction:column}
.menu-toggle-icon span{height:2px;background:currentColor;display:block;transition:transform .2s ease,opacity .2s ease}
body.menu-open{overflow:hidden}
.search-page{padding:clamp(2.5rem,6vw,5rem) 0}
.search-page-header{max-width:820px;margin-bottom:2rem}
.search-page-form{display:flex;max-width:760px;border:2px solid #4c565c;background:#fff;margin:1.25rem 0 2.5rem}
.search-page-form input{flex:1;min-width:0;border:0;padding:1rem 1.1rem;font:inherit;font-size:1.05rem;outline:0}
.search-page-form button{border:0;background:#c8102e;color:#fff;padding:1rem 1.4rem;font:inherit;font-weight:700;cursor:pointer}
.search-summary{margin:0 0 1.5rem;color:#4c565c}
.search-group{margin:0 0 2.5rem}
.search-group h2{border-bottom:2px solid #c8102e;padding-bottom:.55rem;margin-bottom:1rem}
.search-results{display:grid;gap:.8rem}
.search-result{display:block;text-decoration:none;color:inherit;border:1px solid rgba(25,35,42,.14);padding:1rem 1.1rem;background:#fff;transition:transform .15s ease,border-color .15s ease}
.search-result:hover,.search-result:focus-visible{transform:translateY(-2px);border-color:#c8102e}
.search-result-type{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#c8102e;font-weight:700}
.search-result h3{margin:.25rem 0 .4rem;font-size:1.15rem}
.search-result p{margin:0;color:#4c565c;line-height:1.55}
.search-empty{padding:1.25rem;border-left:4px solid #c8102e;background:#f3f4f4}
@media (max-width:1100px){
  .header-inner{position:relative}
  .menu-toggle{display:flex!important;align-items:center;gap:.65rem;z-index:1002}
  .menu-toggle-icon{display:flex}
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] .menu-toggle-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .mobile-navigation-panel{display:flex;position:fixed;top:0;right:0;bottom:0;width:min(88vw,420px);padding:5.5rem 1.25rem 1.5rem;background:#fff;box-shadow:-16px 0 40px rgba(0,0,0,.2);z-index:1001;transform:translateX(105%);transition:transform .24s ease;overflow-y:auto;flex-direction:column;gap:1.2rem}
  .mobile-navigation-panel.is-open{transform:translateX(0)}
  body.menu-open::before{content:"";position:fixed;inset:0;background:rgba(15,22,26,.56);z-index:1000}
  .main-navigation{display:flex!important;flex-direction:column;align-items:stretch;gap:0}
  .main-navigation a{padding:.9rem 0;border-bottom:1px solid rgba(25,35,42,.12)}
  .header-search{order:2;width:100%;min-width:0}
  .header-actions{display:flex!important;order:3;flex-direction:column;align-items:stretch;gap:.65rem}
  .header-actions a{text-align:center}
}
@media (max-width:640px){
  .mobile-navigation-panel{width:94vw;padding-left:1rem;padding-right:1rem}
  .search-page-form{display:grid}
  .search-page-form button{width:100%}
}
@media (prefers-reduced-motion:reduce){.mobile-navigation-panel,.menu-toggle-icon span,.search-result{transition:none}}

/* ===== 116J SOURCE: package-030d.css ===== */
/* Paket 030d: zweistufiger Header, Dropdowns und mobiles Akkordeon */
.tf-header-030d{overflow:visible}
.tf-header-030d .tf-header-shell{display:block;width:min(100% - 40px,1240px);max-width:1240px;margin:0 auto;padding:0}
.tf-header-main-row{min-height:78px;display:flex;align-items:center;gap:clamp(1.25rem,3vw,3rem);position:relative}
.tf-header-main-row .brand{flex:0 0 auto}
.tf-navigation-panel{display:flex;align-items:center;gap:1.25rem;min-width:0;flex:1}
.tf-main-navigation{display:flex!important;align-items:stretch;gap:.15rem;min-width:0;flex:1}
.tf-nav-group{position:relative;display:flex;align-items:stretch}
.tf-nav-toggle{appearance:none;border:0;background:transparent;color:#182126;padding:1rem .85rem;font-family:'Futura Medium','Futura',Arial,sans-serif;font-size:1rem;line-height:1.2;font-weight:500;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent}
.tf-nav-toggle span{display:inline-block;margin-left:.25rem;font-size:.85em;transition:transform .18s ease}
.tf-nav-group.is-active>.tf-nav-toggle,.tf-nav-toggle:hover,.tf-nav-toggle:focus-visible{color:#c8102e;border-bottom-color:#c8102e;outline:0}
.tf-nav-group.is-open>.tf-nav-toggle span{transform:rotate(180deg)}
.tf-nav-dropdown{position:absolute;top:calc(100% - 2px);left:0;z-index:1200;min-width:245px;background:#fff;border-top:3px solid #c8102e;box-shadow:0 14px 34px rgba(20,28,32,.18);padding:.45rem 0;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.tf-nav-dropdown a{display:block;padding:.78rem 1rem;color:#182126;text-decoration:none;font-family:'Futura Medium','Futura',Arial,sans-serif;font-size:.96rem;line-height:1.25;border-left:3px solid transparent;white-space:nowrap}
.tf-nav-dropdown a:hover,.tf-nav-dropdown a:focus-visible,.tf-nav-dropdown a.is-active{color:#c8102e;background:#f4f5f5;border-left-color:#c8102e;outline:0}
@media (hover:hover) and (min-width:1101px){.tf-nav-group:hover>.tf-nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}}
.tf-nav-group:focus-within>.tf-nav-dropdown,.tf-nav-group.is-open>.tf-nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.tf-header-actions{display:flex;align-items:center;flex:0 0 auto}
.tf-partner-cta{display:inline-flex!important;align-items:center;justify-content:center;padding:.78rem 1rem!important;background:#c8102e!important;color:#fff!important;text-decoration:none;border:2px solid #c8102e;font-family:'Futura Medium','Futura',Arial,sans-serif!important;font-size:1rem!important;line-height:1.2!important;font-weight:500!important;white-space:nowrap}
.tf-partner-cta:hover,.tf-partner-cta:focus-visible,.tf-partner-cta.is-active{background:#991028!important;border-color:#991028;color:#fff!important;outline:0}
.tf-header-search-row{border-top:1px solid rgba(25,35,42,.12);padding:.62rem 0 .72rem}
.tf-desktop-search{display:flex;width:100%;max-width:none;min-width:0;border:1px solid rgba(25,35,42,.22);background:#fff}
.tf-desktop-search input{flex:1;min-width:0;padding:.7rem .9rem}
.tf-desktop-search button{flex:0 0 auto;padding:.7rem 1.35rem}
.tf-mobile-search{display:none}
.tf-mobile-menu-toggle{display:none}
html,body{max-width:100%;overflow-x:hidden}

@media (max-width:1100px){
 .tf-header-030d .tf-header-shell{width:min(100% - 32px,1240px)}
 .tf-header-main-row{min-height:70px;justify-content:space-between}
 .tf-mobile-menu-toggle{display:inline-flex;align-items:center;gap:.65rem;z-index:1302}
 .tf-mobile-menu-toggle .menu-toggle-icon{display:flex}
 .tf-navigation-panel{position:fixed;display:flex!important;top:0;right:0;bottom:0;width:min(92vw,420px);max-width:420px;padding:5.25rem 1.2rem 1.5rem;background:#fff;box-shadow:-16px 0 42px rgba(0,0,0,.22);z-index:1301;transform:translateX(105%);transition:transform .22s ease;overflow-y:auto;overscroll-behavior:contain;flex-direction:column;align-items:stretch;gap:1rem}
 .tf-navigation-panel.is-open{transform:translateX(0)}
 body.menu-open{overflow:hidden}
 body.menu-open::before{content:'';position:fixed;inset:0;background:rgba(15,22,26,.58);z-index:1300}
 .tf-mobile-search{display:flex;order:0;width:100%;min-width:0}
 .tf-main-navigation{order:1;display:flex!important;flex-direction:column;align-items:stretch;gap:0;width:100%}
 .tf-nav-group{display:block;border-bottom:1px solid rgba(25,35,42,.13)}
 .tf-nav-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:1rem .1rem;border-bottom:0;font-size:1.05rem;text-align:left}
 .tf-nav-group.is-active>.tf-nav-toggle{border-bottom:0}
 .tf-nav-dropdown{position:static;min-width:0;border-top:0;box-shadow:none;padding:0 0 .55rem;opacity:1;visibility:visible;transform:none;display:none;background:#f6f7f7}
 .tf-nav-group.is-open>.tf-nav-dropdown{display:block}
 .tf-nav-dropdown a{white-space:normal;padding:.75rem .9rem;font-size:.98rem;border-left:3px solid transparent}
 .tf-header-actions{order:2;display:block!important;width:100%;padding-top:.25rem}
 .tf-partner-cta{width:100%;font-size:1rem!important;padding:.9rem 1rem!important}
 .tf-header-search-row{display:none}
}
@media (max-width:520px){
 .tf-header-030d .tf-header-shell{width:calc(100% - 24px)}
 .tf-navigation-panel{width:94vw;padding-left:1rem;padding-right:1rem}
 .menu-toggle-label{display:none}
}
@media (prefers-reduced-motion:reduce){.tf-navigation-panel,.tf-nav-dropdown,.tf-nav-toggle span{transition:none}}

/* ===== 116J SOURCE: package-030e.css ===== */
/* Paket 030e: iOS-Menüfix und ruhiger Desktop-Hover */

/* Desktop: keine roten Linien, nur graue Hinterlegung */
@media (min-width:1101px){
  .tf-header-030d .tf-nav-toggle{
    border-bottom:0!important;
    color:#182126!important;
    transition:background-color .15s ease,color .15s ease;
  }
  .tf-header-030d .tf-nav-group.is-active>.tf-nav-toggle,
  .tf-header-030d .tf-nav-toggle:hover,
  .tf-header-030d .tf-nav-toggle:focus-visible,
  .tf-header-030d .tf-nav-group.is-open>.tf-nav-toggle{
    color:#182126!important;
    background:#eef0f1!important;
    border-bottom:0!important;
    outline:0;
  }
  .tf-header-030d .tf-nav-dropdown{
    border-top:0!important;
  }
  .tf-header-030d .tf-nav-dropdown a:hover,
  .tf-header-030d .tf-nav-dropdown a:focus-visible,
  .tf-header-030d .tf-nav-dropdown a.is-active{
    color:#182126!important;
    background:#eef0f1!important;
    border-left-color:transparent!important;
  }
}

@media (max-width:1100px){
  /* backdrop-filter erzeugt auf iOS Safari einen falschen Bezug für position:fixed */
  .public-header.tf-header-030d{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    overflow:visible!important;
  }

  .tf-header-030d .tf-navigation-panel,
  #mobile-navigation-panel{
    position:fixed!important;
    inset:0 0 0 auto!important;
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:1rem!important;
    width:min(94vw,420px)!important;
    max-width:420px!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    max-height:none!important;
    padding:5.75rem 1rem calc(1.5rem + env(safe-area-inset-bottom))!important;
    margin:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    background:#fff!important;
    box-shadow:-16px 0 42px rgba(0,0,0,.25)!important;
    z-index:10020!important;
    transform:translate3d(105%,0,0)!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  .tf-header-030d .tf-navigation-panel.is-open,
  #mobile-navigation-panel.is-open{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .tf-header-030d .tf-mobile-menu-toggle{
    position:relative!important;
    z-index:10030!important;
  }

  body.menu-open::before{
    z-index:10010!important;
  }

  .tf-header-030d .tf-mobile-search{
    display:flex!important;
    flex:0 0 auto!important;
    order:0!important;
    width:100%!important;
    min-height:48px!important;
    margin:0 0 .25rem!important;
    border:1px solid #c9ced1!important;
    background:#fff!important;
  }
  .tf-header-030d .tf-mobile-search input{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    padding:.8rem!important;
    font-size:16px!important;
  }
  .tf-header-030d .tf-mobile-search button{
    display:block!important;
    flex:0 0 auto!important;
    padding:.8rem 1rem!important;
  }

  .tf-header-030d .tf-main-navigation{
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    order:1!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .tf-header-030d .tf-nav-group{
    display:block!important;
    flex:0 0 auto!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  .tf-header-030d .tf-nav-toggle{
    min-height:54px!important;
    padding:.95rem .15rem!important;
    border:0!important;
    background:#fff!important;
    color:#182126!important;
  }
  .tf-header-030d .tf-nav-group.is-active>.tf-nav-toggle,
  .tf-header-030d .tf-nav-toggle:focus-visible{
    background:#eef0f1!important;
    color:#182126!important;
  }
  .tf-header-030d .tf-nav-dropdown{
    position:static!important;
    display:none!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:.25rem 0 .55rem!important;
    overflow:visible!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    box-shadow:none!important;
    border:0!important;
    background:#f4f5f5!important;
  }
  .tf-header-030d .tf-nav-group.is-open>.tf-nav-dropdown{
    display:block!important;
  }
  .tf-header-030d .tf-nav-dropdown a{
    display:block!important;
    width:100%!important;
    padding:.8rem .9rem!important;
    border:0!important;
    white-space:normal!important;
  }
  .tf-header-030d .tf-header-actions{
    display:block!important;
    flex:0 0 auto!important;
    order:2!important;
    width:100%!important;
    margin:0!important;
    padding:.35rem 0 0!important;
  }
}

/* ===== 116J SOURCE: package-030f.css ===== */
/* Paket 030f: Suchbutton statt Partner-CTA und Suchoverlay */
.tf-header-030d .tf-search-trigger{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  min-height:44px;
  padding:.72rem 1rem;
  border:1px solid #c9ced1;
  background:#fff;
  color:#182126;
  font-family:'Futura Medium','Futura',Arial,sans-serif;
  font-size:1rem;
  line-height:1.2;
  cursor:pointer;
}
.tf-header-030d .tf-search-trigger:hover,
.tf-header-030d .tf-search-trigger:focus-visible,
.tf-header-030d .tf-search-trigger[aria-expanded="true"]{
  background:#eef0f1;
  outline:0;
}
.tf-search-trigger-icon{font-size:1.3em;line-height:1}
.tf-header-030d .tf-header-search-row{display:none!important}

.tf-search-overlay{
  position:fixed;
  inset:0;
  z-index:20000;
  display:none;
}
.tf-search-overlay.is-open{display:block}
.tf-search-overlay-backdrop{position:absolute;inset:0;background:rgba(15,22,26,.72)}
.tf-search-dialog{
  position:relative;
  width:min(calc(100% - 40px),860px);
  margin:clamp(72px,12vh,140px) auto 0;
  padding:clamp(1.5rem,3vw,2.5rem);
  background:#fff;
  box-shadow:0 22px 70px rgba(0,0,0,.28);
}
.tf-search-close{
  position:absolute;
  top:.7rem;
  right:.8rem;
  width:42px;
  height:42px;
  border:0;
  background:transparent;
  color:#182126;
  font-size:2rem;
  line-height:1;
  cursor:pointer;
}
.tf-search-kicker{margin:0 0 .35rem;color:#c8102e;font-family:'Futura Bold','Futura',Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.82rem}
.tf-search-dialog h2{margin:0 3rem 1.25rem 0;font-family:'Futura Bold','Futura',Arial,sans-serif;font-size:clamp(1.8rem,4vw,3rem);line-height:1.05}
.tf-search-overlay-form{display:flex;border:1px solid #aeb5b9;background:#fff}
.tf-search-overlay-form input{flex:1;min-width:0;padding:1rem;font-size:1rem;border:0;outline:0}
.tf-search-overlay-form button{flex:0 0 auto;padding:1rem 1.5rem;border:0;background:#c8102e;color:#fff;font-family:'Futura Medium','Futura',Arial,sans-serif;font-size:1rem;cursor:pointer}
.tf-search-overlay-form button:hover,.tf-search-overlay-form button:focus-visible{background:#991028;outline:0}
.tf-search-hint{margin:.8rem 0 0;color:#5b666c;font-size:.92rem}
body.tf-search-open{overflow:hidden}

@media (max-width:1100px){
  .tf-header-030d .tf-header-actions{display:none!important}
  .tf-search-overlay{display:none!important}
}
@media (max-width:620px){
  .tf-search-dialog{width:calc(100% - 24px);margin:72px auto 0;padding:1.25rem}
  .tf-search-overlay-form{display:block;border:0}
  .tf-search-overlay-form input{width:100%;border:1px solid #aeb5b9}
  .tf-search-overlay-form button{width:100%;margin-top:.65rem}
}

/* ===== 116J SOURCE: package-030h.css ===== */
/* Paket 030h: isolierter Mobile-Menü-Fix auf Basis von 030f */

/* Desktop: aktiver/hovernder Haupt- und Unterpunkt ausschließlich grau, ohne rote Linien. */
@media (min-width:1101px){
  .tf-header-030d .tf-nav-toggle,
  .tf-header-030d .tf-nav-group.is-active > .tf-nav-toggle,
  .tf-header-030d .tf-nav-group.is-open > .tf-nav-toggle,
  .tf-header-030d .tf-nav-toggle:hover,
  .tf-header-030d .tf-nav-toggle:focus-visible{
    border-bottom:0!important;
    box-shadow:none!important;
    text-decoration:none!important;
    color:#182126!important;
  }
  .tf-header-030d .tf-nav-group.is-active > .tf-nav-toggle,
  .tf-header-030d .tf-nav-group.is-open > .tf-nav-toggle,
  .tf-header-030d .tf-nav-toggle:hover,
  .tf-header-030d .tf-nav-toggle:focus-visible{
    background:#eef0f1!important;
  }
  .tf-header-030d .tf-nav-dropdown{border-top:0!important}
  .tf-header-030d .tf-nav-dropdown a,
  .tf-header-030d .tf-nav-dropdown a.is-active,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"],
  .tf-header-030d .tf-nav-dropdown a:hover,
  .tf-header-030d .tf-nav-dropdown a:focus-visible{
    border:0!important;
    border-left:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    text-decoration:none!important;
    color:#182126!important;
  }
  .tf-header-030d .tf-nav-dropdown a.is-active,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"],
  .tf-header-030d .tf-nav-dropdown a:hover,
  .tf-header-030d .tf-nav-dropdown a:focus-visible{
    background:#eef0f1!important;
  }
}

.tf-mobile-menu-backdrop,
.tf-mobile-menu-close{display:none}

@media (max-width:1100px){
  .public-header.tf-header-030d{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    overflow:visible!important;
  }
  .tf-mobile-menu-backdrop{
    position:fixed;
    inset:0;
    z-index:2147483000;
    display:block;
    padding:0;
    border:0;
    background:rgba(15,22,26,.62);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease,visibility .18s ease;
  }
  body.tf-mobile-menu-open .tf-mobile-menu-backdrop{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .tf-header-030d #mobile-navigation-panel{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:auto!important;
    z-index:2147483001!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:.8rem!important;
    width:min(92vw,420px)!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:calc(1rem + env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    background:#fff!important;
    box-shadow:-16px 0 42px rgba(0,0,0,.24)!important;
    transform:translate3d(105%,0,0)!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:transform .2s ease,visibility .2s ease!important;
  }
  body.tf-mobile-menu-open .tf-header-030d #mobile-navigation-panel{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .tf-mobile-menu-close{
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:flex-end;
    flex:0 0 auto;
    width:44px;
    height:44px;
    margin:0 0 .2rem;
    border:1px solid #d4d9dc;
    background:#fff;
    color:#182126;
    font-size:2rem;
    line-height:1;
    cursor:pointer;
  }
  .tf-header-030d .tf-mobile-search{
    display:flex!important;
    flex:0 0 auto!important;
    width:100%!important;
    margin:0 0 .25rem!important;
    border:1px solid #c9ced1!important;
    background:#fff!important;
  }
  .tf-header-030d .tf-mobile-search input{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    padding:.82rem!important;
    border:0!important;
    font-size:16px!important;
  }
  .tf-header-030d .tf-mobile-search button{
    display:block!important;
    flex:0 0 auto!important;
    padding:.82rem 1rem!important;
    border:0!important;
  }
  .tf-header-030d .tf-main-navigation{
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .tf-header-030d .tf-nav-group{
    display:block!important;
    width:100%!important;
    border-bottom:1px solid rgba(25,35,42,.13)!important;
  }
  .tf-header-030d .tf-nav-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    min-height:54px!important;
    padding:.9rem .15rem!important;
    border:0!important;
    background:#fff!important;
    color:#182126!important;
    text-align:left!important;
  }
  .tf-header-030d .tf-nav-group.is-active > .tf-nav-toggle,
  .tf-header-030d .tf-nav-group.is-open > .tf-nav-toggle{
    background:#eef0f1!important;
    color:#182126!important;
  }
  .tf-header-030d .tf-nav-dropdown{
    position:static!important;
    display:none!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:.2rem 0 .55rem!important;
    border:0!important;
    background:#f5f6f6!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  .tf-header-030d .tf-nav-group.is-open > .tf-nav-dropdown{display:block!important}
  .tf-header-030d .tf-nav-dropdown a,
  .tf-header-030d .tf-nav-dropdown a.is-active,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"]{
    display:block!important;
    width:100%!important;
    padding:.78rem .9rem!important;
    border:0!important;
    box-shadow:none!important;
    color:#182126!important;
    white-space:normal!important;
    text-decoration:none!important;
  }
  .tf-header-030d .tf-nav-dropdown a.is-active,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"]{background:#e7eaeb!important}
  .tf-header-030d .tf-header-actions{display:none!important}
  body.tf-mobile-menu-open{overflow:hidden!important;touch-action:none}
}
@media (prefers-reduced-motion:reduce){
  .tf-mobile-menu-backdrop,
  .tf-header-030d #mobile-navigation-panel{transition:none!important}
}

/* ===== 116J SOURCE: package-030j.css ===== */
/* Paket 030j: mobile Suche ans Menüende, Desktop sauber halten */
.tf-mobile-search-link{display:none}

/* Desktop: aktive Untermenüpunkte nur grau, ohne rote Linie oder Pseudoelemente. */
@media (min-width:1101px){
  .tf-header-030d .tf-mobile-search-link{display:none!important}
  .tf-header-030d .tf-nav-dropdown a.is-active,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"]{
    background:#eef0f1!important;
    color:#182126!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    text-decoration:none!important;
  }
  .tf-header-030d .tf-nav-dropdown a.is-active::before,
  .tf-header-030d .tf-nav-dropdown a.is-active::after,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"]::before,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"]::after{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

@media (max-width:1100px){
  /* Frühere mobile Suchform sicher ausblenden, falls sie aus dem Cache stammt. */
  .tf-header-030d #mobile-navigation-panel .tf-mobile-search,
  .tf-header-030d #mobile-navigation-panel .tf-mobile-search-030i{
    display:none!important;
  }

  /* Ein einfacher Suchlink am Ende des mobilen Menüs. */
  .tf-header-030d #mobile-navigation-panel .tf-mobile-search-link{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:.55rem!important;
    flex:0 0 auto!important;
    width:100%!important;
    min-height:52px!important;
    margin:.65rem 0 0!important;
    padding:.85rem 1rem!important;
    border:1px solid #c9ced1!important;
    background:#eef0f1!important;
    color:#182126!important;
    font-family:'Futura Medium','Futura',Arial,sans-serif!important;
    font-size:1rem!important;
    line-height:1.2!important;
    text-decoration:none!important;
  }
  .tf-header-030d #mobile-navigation-panel .tf-mobile-search-link:hover,
  .tf-header-030d #mobile-navigation-panel .tf-mobile-search-link:focus-visible{
    background:#e2e5e6!important;
    outline:2px solid #182126!important;
    outline-offset:2px!important;
  }

  /* Desktop-Suchbutton bleibt mobil verborgen. */
  .tf-header-030d #mobile-navigation-panel .tf-header-actions{
    display:none!important;
  }
}

/* ===== 116J SOURCE: package-030k.css ===== */
/* Paket 030k: Original-Logo, Dropdown-Abstand und kontrastreiche Bild-Heroes */

/* Originales TOPFORM-Logo im Header */
.tf-site-header .tf-brand-logo{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  text-decoration:none!important;
}
.tf-site-header .tf-brand-logo::before,
.tf-site-header .tf-brand-logo::after{content:none!important;display:none!important}
.tf-site-header .tf-brand-logo img{
  display:block!important;
  width:auto!important;
  height:34px!important;
  max-width:210px!important;
  object-fit:contain!important;
}

/* Dropdowns: Text nicht direkt am Rand beginnen lassen */
@media (min-width:1101px){
  .tf-header-030d .tf-nav-dropdown{
    padding:.45rem!important;
  }
  .tf-header-030d .tf-nav-dropdown a{
    display:block!important;
    padding:.72rem 1rem!important;
    margin:0!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
  }
  .tf-header-030d .tf-nav-dropdown a:hover,
  .tf-header-030d .tf-nav-dropdown a:focus-visible,
  .tf-header-030d .tf-nav-dropdown a.is-active,
  .tf-header-030d .tf-nav-dropdown a[aria-current="page"]{
    background:#eef0f1!important;
    color:#182126!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    text-decoration:none!important;
  }
  .tf-header-030d .tf-nav-dropdown a::before,
  .tf-header-030d .tf-nav-dropdown a::after{
    content:none!important;
    display:none!important;
  }
}

/* Bild-Hero: verlässlicher Kontrast unabhängig vom Motiv */
.home-023 .tf23-hero-shade{
  background:
    linear-gradient(90deg,rgba(16,22,25,.90) 0%,rgba(16,22,25,.68) 45%,rgba(16,22,25,.18) 78%),
    linear-gradient(0deg,rgba(0,0,0,.60),rgba(0,0,0,.05) 68%)!important;
}
.home-023 .tf23-hero-copy,
.home-023 .tf23-hero-copy h1,
.home-023 .tf23-hero-copy p,
.home-023 .tf23-hero-copy .tf23-kicker{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.24);
}

/* Wiederverwendbare Logik für spätere Bild-Heroes */
.tf-hero--image,
.has-image-hero{position:relative;color:#fff!important}
.tf-hero--image::before,
.has-image-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(16,22,25,.86),rgba(16,22,25,.32));
}
.tf-hero--image > *,
.has-image-hero > *{position:relative;z-index:1}
.tf-hero--image h1,
.tf-hero--image h2,
.tf-hero--image p,
.tf-hero--image .eyebrow,
.has-image-hero h1,
.has-image-hero h2,
.has-image-hero p,
.has-image-hero .eyebrow{color:#fff!important}

@media (max-width:1100px){
  .tf-site-header .tf-brand-logo img{height:28px!important;max-width:170px!important}
  .home-023 .tf23-hero-shade{
    background:linear-gradient(0deg,rgba(16,22,25,.94) 0%,rgba(16,22,25,.55) 72%,rgba(16,22,25,.22) 100%)!important;
  }
}

/* ===== 116J SOURCE: package-030l.css ===== */
/* TOPFORM Paket 030l – Kontrast für Text-auf-Bild-Flächen */

.tf-image-card,
.tf-image-world,
.tf-campaign-card,
.tf-visual-card,
.tf-media-card,
.tf-story-card,
.home-visual-card,
.home-campaign-card,
[class*="image-card"],
[class*="visual-card"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

.tf-image-card::after,
.tf-image-world::after,
.tf-campaign-card::after,
.tf-visual-card::after,
.tf-media-card::after,
.tf-story-card::after,
.home-visual-card::after,
.home-campaign-card::after,
[class*="image-card"]::after,
[class*="visual-card"]::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(17,24,28,.08) 0%, rgba(17,24,28,.30) 38%, rgba(17,24,28,.86) 100%);
}

.tf-image-card > *,
.tf-image-world > *,
.tf-campaign-card > *,
.tf-visual-card > *,
.tf-media-card > *,
.tf-story-card > *,
.home-visual-card > *,
.home-campaign-card > *,
[class*="image-card"] > *,
[class*="visual-card"] > * {
  position: relative;
  z-index: 2;
}

.tf-image-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.tf-image-world :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.tf-campaign-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.tf-visual-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.tf-media-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.tf-story-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.home-visual-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.home-campaign-card :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
[class*="image-card"] :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
[class*="visual-card"] :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,.eyebrow,.kicker,.lead,.copy),
.tf-image-world__content,
.tf-image-world__content h2,
.tf-image-world__content h3,
.tf-image-world__content p,
.tf-image-world__content .tf-eyebrow,
.tf-image-world__copy,
.tf-image-world__headline {
  color: #fff !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.48);
}

@media (max-width: 760px) {
  .tf-image-card::after,
  .tf-image-world::after,
  .tf-campaign-card::after,
  .tf-visual-card::after,
  .tf-media-card::after,
  .tf-story-card::after,
  .home-visual-card::after,
  .home-campaign-card::after,
  [class*="image-card"]::after,
  [class*="visual-card"]::after {
    background: linear-gradient(180deg, rgba(17,24,28,.16) 0%, rgba(17,24,28,.44) 38%, rgba(17,24,28,.90) 100%);
  }
}

/* ===== 116J SOURCE: package-030m.css ===== */
/* TOPFORM Paket 030m – gezielter Kontrast für Startseiten-Kampagnenkarten */
.tf23-campaign-card { color:#fff !important; }
.tf23-campaign-card::after {
  background:linear-gradient(180deg,rgba(17,24,28,.10) 0%,rgba(17,24,28,.34) 42%,rgba(17,24,28,.92) 100%) !important;
}
.tf23-campaign-card > div { color:#fff !important; }
.tf23-campaign-card > div > span,
.tf23-campaign-card > div > h3,
.tf23-campaign-card > div > p,
.tf23-campaign-card h3,
.tf23-campaign-card p,
.tf23-campaign-card span {
  color:#fff !important;
  opacity:1 !important;
  text-shadow:0 2px 14px rgba(0,0,0,.62);
}
.tf23-campaign-card h3 { font-weight:700 !important; }
@media(max-width:760px){
  .tf23-campaign-card::after {
    background:linear-gradient(180deg,rgba(17,24,28,.18) 0%,rgba(17,24,28,.48) 40%,rgba(17,24,28,.95) 100%) !important;
  }
}

/* ===== 116J SOURCE: package-036.css ===== */
.tf36-product-page{max-width:1240px;margin:0 auto;padding:24px 32px 72px}.tf36-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0 26px;font-size:.88rem;color:#667078}.tf36-breadcrumb a{color:inherit;text-decoration:none}.tf36-breadcrumb a:hover{text-decoration:underline}.tf36-product-hero{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,76px);align-items:center;padding:30px 0 54px;border-bottom:1px solid #dfe3e5}.tf36-product-media{min-height:420px;display:flex;align-items:center;justify-content:center;background:#f4f5f5;padding:34px}.tf36-product-media img{display:block;max-width:100%;max-height:430px;object-fit:contain}.tf36-placeholder{font:700 2.4rem/1 Futura,Arial,sans-serif;color:#c8102e}.tf36-product-intro h1{font-size:clamp(2.25rem,5vw,4.65rem);line-height:.98;margin:.3rem 0 1.2rem;max-width:15ch}.tf36-lead{font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.5;max-width:62ch;color:#4d565c}.tf36-meta-strip{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.tf36-meta-strip span{min-width:120px;padding:12px 15px;background:#f2f3f3;border-left:3px solid #c8102e}.tf36-meta-strip small,.tf36-meta-strip strong{display:block}.tf36-meta-strip small{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#6a7277}.tf36-meta-strip strong{margin-top:3px}.tf36-answer{padding:18px 20px;background:#eef0f1;border-left:4px solid #4c565c;margin:24px 0}.tf36-answer p{margin:.45rem 0 0}.tf36-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:24px}.tf36-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:54px;padding-top:48px}.tf36-section{padding:0 0 48px;margin:0 0 48px;border-bottom:1px solid #e1e4e5}.tf36-section h2,.tf36-sidebar h2{font-size:clamp(1.5rem,2.5vw,2.25rem);margin:.25rem 0 1.1rem}.tf36-richtext,.tf36-section p{line-height:1.65}.tf36-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tf36-info-grid article{padding:24px;background:#f4f5f5}.tf36-info-grid article h2{font-size:1.35rem}.tf36-tags{display:flex;flex-wrap:wrap;gap:9px}.tf36-tags span{padding:9px 13px;background:#eef0f1;border:1px solid #dce0e2}.tf36-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.tf36-section-head h2{margin-bottom:0}.tf36-section-head>span{font-size:.86rem;color:#667078}.tf36-table-wrap{overflow-x:auto;border:1px solid #dfe3e5}.tf36-table{border-collapse:collapse;width:100%;min-width:880px;font-size:.92rem}.tf36-table th{padding:13px 14px;background:#4c565c;color:#fff;text-align:left;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}.tf36-table td{padding:15px 14px;vertical-align:top;border-top:1px solid #e3e5e6}.tf36-table tbody tr:nth-child(even){background:#f7f8f8}.tf36-table details{margin-top:8px}.tf36-table summary{cursor:pointer;color:#c8102e;font-size:.8rem}.tf36-table details p{font-size:.83rem;margin:.5rem 0 0;white-space:pre-line}.tf36-empty{padding:24px;background:#f4f5f5}.tf36-download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tf36-download{display:grid;grid-template-columns:44px 1fr auto;gap:13px;align-items:center;padding:16px;border:1px solid #dfe3e5;text-decoration:none;color:inherit;background:#fff}.tf36-download:hover{background:#f2f3f3}.tf36-download span:nth-child(2){min-width:0}.tf36-download strong,.tf36-download small{display:block}.tf36-download small{margin-top:4px;color:#697278;overflow-wrap:anywhere}.tf36-file-icon{display:grid;place-items:center;width:44px;height:44px;background:#c8102e;color:#fff;font-size:.72rem;font-weight:700}.tf36-sidebar{position:relative}.tf36-facts,.tf36-advice{padding:24px;background:#f2f3f3}.tf36-facts{position:sticky;top:128px}.tf36-facts dl{margin:0}.tf36-facts dt{margin-top:14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#6a7277}.tf36-facts dd{margin:3px 0 0;font-weight:600}.tf36-advice{margin-top:16px;background:#4c565c;color:#fff}.tf36-advice p{line-height:1.5}.tf36-advice .button{margin-top:8px}.tf36-related{max-width:none}.tf36-cta{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:34px;background:#eef0f1;border-left:6px solid #c8102e}.tf36-cta h2{margin:.2rem 0 .5rem;font-size:clamp(1.7rem,3vw,2.6rem)}
@media(max-width:900px){.tf36-product-page{padding:18px 20px 54px}.tf36-product-hero{grid-template-columns:1fr;gap:28px;padding-bottom:38px}.tf36-product-media{min-height:300px;order:2}.tf36-product-intro{order:1}.tf36-layout{grid-template-columns:1fr;gap:0}.tf36-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:40px}.tf36-facts{position:static}.tf36-advice{margin-top:0}.tf36-info-grid{grid-template-columns:1fr}.tf36-download-grid{grid-template-columns:1fr}}
@media(max-width:640px){.tf36-product-page{padding-inline:16px}.tf36-product-intro h1{font-size:2.35rem}.tf36-product-media{min-height:240px;padding:20px}.tf36-meta-strip{display:grid;grid-template-columns:repeat(2,1fr)}.tf36-meta-strip span{min-width:0}.tf36-sidebar{grid-template-columns:1fr}.tf36-section{padding-bottom:34px;margin-bottom:34px}.tf36-section-head{align-items:flex-start;flex-direction:column}.tf36-table-wrap{overflow:visible;border:0}.tf36-table{min-width:0;display:block}.tf36-table thead{display:none}.tf36-table tbody,.tf36-table tr,.tf36-table td{display:block;width:100%}.tf36-table tr{margin-bottom:14px;border:1px solid #dfe3e5;background:#fff!important;padding:8px 14px}.tf36-table td{display:grid;grid-template-columns:118px minmax(0,1fr);gap:10px;padding:9px 0;border-top:1px solid #eceeef}.tf36-table td:first-child{border-top:0}.tf36-table td:before{content:attr(data-label);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:#6a7277;font-weight:700}.tf36-table details{grid-column:2}.tf36-download{grid-template-columns:40px 1fr auto;padding:13px}.tf36-cta{align-items:flex-start;flex-direction:column;padding:26px}}

/* ===== 116J SOURCE: package-037.css ===== */
.tf37-contact{background:#f4f5f5}.tf37-hero{padding:clamp(3.5rem,7vw,6.5rem) 0;background:#3f474c;color:#fff}.tf37-hero h1{margin:.25rem 0 1rem;font-size:clamp(2.4rem,5vw,4.8rem);color:#fff}.tf37-hero p{max-width:760px;font-size:1.15rem}.tf37-section{padding:clamp(2.5rem,5vw,5rem) 0}.tf37-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.8fr);gap:28px;align-items:start}.tf37-form,.tf37-aside .card{padding:clamp(20px,3vw,34px)}.tf37-form form{display:grid;gap:18px}.tf37-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tf37-form label{display:grid;gap:7px;font-size:.94rem;font-weight:700}.tf37-form input,.tf37-form select,.tf37-form textarea{width:100%;border:1px solid #bfc5c8;padding:12px 13px;background:#fff;font:inherit}.tf37-check{grid-template-columns:auto 1fr!important;align-items:start;font-weight:400!important}.tf37-check input{width:auto;margin-top:3px}.tf37-hp{position:absolute!important;left:-9999px!important}.tf37-success{background:#e8f4ea;border-left:4px solid #398348;padding:18px;margin-bottom:20px}.tf37-aside{display:grid;gap:20px}.tf37-aside h2{font-size:1.35rem}.tf37a-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.tf37a-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}.tf37a-stats a{display:flex;flex-direction:column;border:1px solid #d7dcde;background:#fff;padding:14px;text-decoration:none;color:inherit}.tf37a-stats strong{font-size:1.45rem}.tf37a-stats span{font-size:.82rem}.tf37a-layout{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.4fr);gap:18px}.tf37a-layout>.card{padding:18px}.tf37a-filter{display:grid;grid-template-columns:1fr 160px auto;gap:8px;margin-bottom:12px}.tf37a-filter input,.tf37a-filter select{min-width:0}.tf37a-list{display:grid;max-height:720px;overflow:auto;border-top:1px solid #e2e5e7}.tf37a-list a{display:grid;gap:5px;padding:13px 10px;border-bottom:1px solid #e2e5e7;text-decoration:none;color:inherit}.tf37a-list a:hover,.tf37a-list a.active{background:#f0f2f3}.tf37a-list small{color:#687177}.tf37a-status{display:inline-flex;width:max-content;padding:3px 8px;background:#e6e9ea;font-size:.76rem;font-weight:700}.tf37a-status.s-new{background:#f9dfdf;color:#8c2222}.tf37a-status.s-in_progress{background:#fff0c9;color:#725200}.tf37a-status.s-completed{background:#dff0e3;color:#286535}.tf37a-detailhead{display:flex;justify-content:space-between;gap:18px}.tf37a-detail dl{display:grid;grid-template-columns:130px 1fr;gap:7px 14px;padding:16px 0;border-bottom:1px solid #ddd}.tf37a-detail dt{font-weight:700}.tf37a-message{padding:18px 0;line-height:1.6}.tf37a-detail form{display:grid;gap:14px}.tf37a-detail form label{display:grid;gap:6px;font-weight:700}
@media(max-width:900px){.tf37-grid,.tf37a-layout{grid-template-columns:1fr}.tf37a-stats{grid-template-columns:repeat(2,1fr)}.tf37a-filter{grid-template-columns:1fr}.tf37a-list{max-height:none}}@media(max-width:620px){.tf37-row{grid-template-columns:1fr}.tf37a-detail dl{grid-template-columns:1fr}.tf37a-detail dt{margin-top:6px}}

/* ===== 116J SOURCE: package-037a.css ===== */
/* Paket 037a: Kontaktformular – Container und Hauptaktion */
.tf37-contact .tf37-section > .page-container{
  width:min(1240px, calc(100% - 64px));
  margin-inline:auto;
}

.tf37-contact .tf37-form{
  min-width:0;
}

.tf37-contact .tf37-form form > button[type="submit"]{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:auto;
  min-width:220px;
  min-height:54px;
  margin-top:8px;
  padding:15px 28px;
  border:1px solid #e30613;
  border-radius:0;
  background:#e30613;
  color:#fff;
  font-family:var(--tf-font-heading, "Futura", Arial, sans-serif);
  font-size:1rem;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.01em;
  cursor:pointer;
  transition:background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.tf37-contact .tf37-form form > button[type="submit"]:hover{
  background:#be0712;
  border-color:#be0712;
}

.tf37-contact .tf37-form form > button[type="submit"]:focus-visible{
  outline:3px solid rgba(227,6,19,.28);
  outline-offset:3px;
}

.tf37-contact .tf37-check{
  margin-top:2px;
}

@media (max-width:900px){
  .tf37-contact .tf37-section > .page-container{
    width:min(100% - 40px, 1240px);
  }
}

@media (max-width:620px){
  .tf37-contact .tf37-section > .page-container{
    width:calc(100% - 32px);
  }

  .tf37-contact .tf37-form form > button[type="submit"]{
    width:100%;
    min-width:0;
    min-height:56px;
  }
}

/* ===== 116J SOURCE: package-037b.css ===== */
/* Paket 037b: Kontakt-Hero im zentralen Seitenraster */
.tf37-contact .tf37-hero > .page-container {
  box-sizing: border-box;
  width: min(1240px, calc(100% - 64px));
  max-width: 1240px;
  margin-inline: auto;
  padding-inline: 0;
}

.tf37-contact .tf37-hero .eyebrow,
.tf37-contact .tf37-hero h1,
.tf37-contact .tf37-hero p {
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 900px) {
  .tf37-contact .tf37-hero > .page-container {
    width: min(1240px, calc(100% - 40px));
  }
}

@media (max-width: 620px) {
  .tf37-contact .tf37-hero > .page-container {
    width: calc(100% - 32px);
  }
}

/* ===== 116J SOURCE: package-038d.css ===== */
/* Paket 038d: saubere PIM-Inhalte und kompaktere Produktdarstellung */
.tf36-product-intro h1{
  font-size:clamp(2.15rem,4.1vw,3.8rem);
  line-height:1.02;
  max-width:18ch;
  overflow-wrap:anywhere;
  text-wrap:balance;
}
.tf36-product-hero{align-items:start}
.tf36-product-media{min-height:360px}
.tf36-product-media img{max-height:380px}
.tf36-lead{font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.55;max-width:64ch}
.tf36-richtext{font-size:1rem;line-height:1.7;max-width:76ch}
.tf36-richtext p{margin:0 0 1rem}
.tf36-richtext p:last-child{margin-bottom:0}
.tf36-richtext ul,.tf36-richtext ol{margin:.75rem 0 1.15rem;padding-left:1.4rem}
.tf36-richtext li{margin:.35rem 0;padding-left:.15rem}
.tf36-richtext h2,.tf36-richtext h3,.tf36-richtext h4{margin:1.45rem 0 .65rem;line-height:1.2}
.tf36-richtext h2{font-size:1.55rem}.tf36-richtext h3{font-size:1.28rem}.tf36-richtext h4{font-size:1.08rem}
.tf36-richtext strong{font-weight:700}
.tf36-richtext--compact{font-size:.96rem;line-height:1.6;max-width:none}
.tf36-richtext--technical{font-size:.84rem;line-height:1.5;max-width:none}
.tf36-table details .tf36-richtext{margin-top:.55rem}
.tf35-product-grid .product-card-body h2{font-size:clamp(1.6rem,2.5vw,2.35rem);line-height:1.05;overflow-wrap:anywhere;text-wrap:balance}
.tf35-product-grid .product-card-body>p:not(.eyebrow){display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden;line-height:1.55;min-height:0}
.tf35-product-grid .product-card-image{min-height:245px}
.tf35-product-grid .product-card-image img{width:100%;height:245px;object-fit:contain;padding:18px;background:#f3f4f4}
@media(max-width:900px){.tf36-product-intro h1{font-size:clamp(2rem,7vw,3.1rem)}.tf36-product-media{min-height:280px}.tf36-product-media img{max-height:300px}}
@media(max-width:640px){.tf36-product-intro h1{font-size:2.2rem;max-width:none}.tf36-richtext{font-size:.98rem}.tf35-product-grid .product-card-body>p:not(.eyebrow){-webkit-line-clamp:6}.tf35-product-grid .product-card-image,.tf35-product-grid .product-card-image img{min-height:210px;height:210px}}

/* ===== 116J SOURCE: package-039g.css ===== */
/* TOPFORM package 039g: Adobe Fonts / Futura PT */
:root {
  --tf-font: "futura-pt", Arial, Helvetica, sans-serif;
  --tf-font-body: "futura-pt", Arial, Helvetica, sans-serif;
  --tf-font-heading: "futura-pt", Arial, Helvetica, sans-serif;
  --tf-font-display: "futura-pt-bold", "futura-pt", Arial, Helvetica, sans-serif;
  --tf-font-condensed: "futura-pt-condensed", "futura-pt", Arial, Helvetica, sans-serif;
}

html,
body,
button,
input,
select,
textarea {
  font-family: var(--tf-font-body) !important;
  font-weight: 400;
}

em,
i {
  font-family: var(--tf-font-body) !important;
  font-style: italic;
}

h1,
h2,
h3,
h4,
h5,
h6,
strong,
b,
.button,
.btn,
button,
.admin-nav summary,
.admin-nav a,
.main-navigation,
.tf-nav-toggle,
.tf-nav-dropdown a {
  font-family: var(--tf-font-heading) !important;
  font-weight: 700;
}

.hero-title,
.page-title,
.product-detail-title,
.cms21-hero h1,
.cms21-previewbar strong {
  font-family: var(--tf-font-display) !important;
  font-weight: 700;
}

.eyebrow,
.badge,
.meta-label,
.kicker,
[class*="eyebrow"],
[class*="badge"] {
  font-family: var(--tf-font-condensed) !important;
  font-weight: 700;
}

code,
pre,
kbd,
samp {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
}

/* ===== 116J SOURCE: package-039i.css ===== */
/* TOPFORM package 039i: typographic wordmark in visible text */
.tf-wordmark {
  display: inline;
  white-space: nowrap;
  font-family: "futura-pt", Arial, Helvetica, sans-serif;
  letter-spacing: inherit;
  text-transform: none;
}

.tf-wordmark__top {
  font-family: "futura-pt-bold", "futura-pt", Arial, Helvetica, sans-serif;
  font-weight: 700;
}

.tf-wordmark__form {
  font-family: "futura-pt", Arial, Helvetica, sans-serif;
  font-weight: 400;
}

/* In elements that are globally bold, FORM must stay regular. */
strong .tf-wordmark__form,
b .tf-wordmark__form,
h1 .tf-wordmark__form,
h2 .tf-wordmark__form,
h3 .tf-wordmark__form,
h4 .tf-wordmark__form,
h5 .tf-wordmark__form,
h6 .tf-wordmark__form,
button .tf-wordmark__form,
.btn .tf-wordmark__form,
.button .tf-wordmark__form,
.main-navigation .tf-wordmark__form,
.admin-nav .tf-wordmark__form {
  font-family: "futura-pt", Arial, Helvetica, sans-serif !important;
  font-weight: 400 !important;
}

/* ===== 116J SOURCE: package-040.css ===== */
/* TOPFORM package 040 */
.tf040-count-row{display:flex;align-items:end;gap:1.25rem;flex-wrap:wrap;margin:.35rem 0 1rem}.tf040-count-row label{min-width:190px}.tf040-count-row .cms39e-help{margin:0 0 .55rem}.tf040-repeat fieldset[hidden]{display:none!important}.tf040-cardgrid.tf040-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tf040-cardgrid.tf040-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tf040-cardgrid.tf040-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tf-topform-nav-label{font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important}.tf-topform-nav-label .tf-wordmark{display:inline-flex!important;align-items:baseline;gap:0!important;font-size:inherit!important;line-height:inherit!important}.tf-topform-nav-label .tf-wordmark__top,.tf-topform-nav-label .tf-wordmark__form{font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;margin:0!important;padding:0!important}.tf040-solution-image{aspect-ratio:16/9;overflow:hidden;margin:-1.5rem -1.5rem 1.25rem}.tf040-solution-image img{width:100%;height:100%;object-fit:cover;display:block}.tf040-solution-category{display:inline-block;margin-bottom:.65rem;font-family:"futura-pt-condensed",sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--tf-red,#e3000f)}@media(max-width:900px){.tf040-cardgrid.tf040-cols-3,.tf040-cardgrid.tf040-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.tf040-cardgrid.tf040-cols-2,.tf040-cardgrid.tf040-cols-3,.tf040-cardgrid.tf040-cols-4{grid-template-columns:1fr}.tf040-count-row{display:block}.tf040-count-row label{display:block;margin-bottom:.75rem}}

/* ===== 116J SOURCE: package-040a.css ===== */
/* TOPFORM Paket 040a: Lösungsredaktion, Rich Text, Responsive */
.tf040a-solution-form,
.tf040a-solution-form input,
.tf040a-solution-form textarea,
.tf040a-solution-form select,
.tf040a-solution-form .tf040a-editable{
  font-family:"futura-pt",sans-serif;
  font-weight:400;
}
.tf040a-solution-form label{font-weight:400}
.tf040a-solution-form label>span,
.tf040a-solution-form label:not(.tf040a-rich-label){font-weight:400}
.tf040a-solution-form .button,
.tf040a-toolbar button{font-family:"futura-pt",sans-serif;font-weight:700}
.tf040a-editor-note{margin:0 0 1.5rem;padding:1rem 1.15rem;border-left:4px solid var(--tf-red,#e3000f);background:rgba(227,0,15,.055)}
.tf040a-editor-note strong{display:block;margin-bottom:.2rem}
.tf040a-editor-note p{margin:0;font-weight:400}
.tf040a-rich-label{display:block;font-weight:400}
.tf040a-editor{margin-top:.45rem;border:1px solid #cfd3d6;background:#fff}
.tf040a-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.55rem;border-bottom:1px solid #d9dde0;background:#f5f6f7;position:sticky;top:0;z-index:2}
.tf040a-toolbar button{appearance:none;border:1px solid #c9cdd0;background:#fff;padding:.38rem .55rem;min-height:34px;cursor:pointer;line-height:1}
.tf040a-toolbar button:hover,.tf040a-toolbar button:focus-visible{border-color:var(--tf-red,#e3000f);color:var(--tf-red,#e3000f);outline:none}
.tf040a-editable{min-height:180px;padding:1rem;outline:none;line-height:1.55;overflow-wrap:anywhere;word-break:normal}
.tf040a-editable:focus{box-shadow:inset 0 0 0 2px rgba(227,0,15,.18)}
.tf040a-editable p{margin:0 0 .8rem}.tf040a-editable h2{font-size:1.35rem;margin:1.25rem 0 .55rem}.tf040a-editable h3{font-size:1.1rem;margin:1rem 0 .45rem}
.tf040a-editable ul,.tf040a-editable ol{margin:.55rem 0 1rem;padding-left:1.4rem}.tf040a-editable li+li{margin-top:.3rem}
.tf040a-source{display:none!important}

.solution-detail .article-shell,
.solution-detail .article-layout{width:min(1180px,calc(100% - 2rem));margin-inline:auto}
.solution-detail h1{font-size:clamp(2.15rem,5vw,5rem);line-height:.98;overflow-wrap:anywhere}
.solution-detail .article-lead{max-width:72ch}
.solution-detail .article-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,320px);gap:clamp(2rem,5vw,5rem);align-items:start}
.solution-detail .article-main{min-width:0}
.solution-detail .article-richtext{font-weight:400;line-height:1.62;overflow-wrap:anywhere}
.solution-detail .article-richtext p{margin:0 0 1rem}
.solution-detail .article-richtext h2{font-size:clamp(1.45rem,2.5vw,2rem);margin:1.5rem 0 .65rem}
.solution-detail .article-richtext h3{font-size:clamp(1.15rem,2vw,1.45rem);margin:1.25rem 0 .55rem}
.solution-detail .article-richtext ul,
.solution-detail .article-richtext ol{margin:.65rem 0 1.15rem;padding-left:1.45rem}
.solution-detail .article-richtext li{padding-left:.1rem}.solution-detail .article-richtext li+li{margin-top:.4rem}
.solution-detail .article-richtext a{color:var(--tf-red,#e3000f);text-decoration:underline;text-underline-offset:.16em;overflow-wrap:anywhere}
.solution-detail .solution-step{display:grid;grid-template-columns:52px minmax(0,1fr);gap:1rem}
.solution-detail .related-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.solution-detail img,.solution-detail video{max-width:100%;height:auto}

@media(max-width:900px){
  .solution-detail .article-layout{grid-template-columns:1fr}
  .solution-detail .article-aside{order:2;width:100%}
  .solution-detail .article-facts{width:100%}
}
@media(max-width:640px){
  .tf040a-toolbar{position:static}
  .tf040a-toolbar button{flex:0 0 auto}
  .tf040a-editable{min-height:150px;padding:.85rem}
  .solution-detail .article-shell,.solution-detail .article-layout{width:min(100% - 1.25rem,1180px)}
  .solution-detail .solution-step{grid-template-columns:38px minmax(0,1fr);gap:.7rem}
  .solution-detail .solution-step__number{font-size:.9rem}
  .solution-detail .button-block{width:100%;justify-content:center}
}

/* ===== 116J SOURCE: package-040b.css ===== */
.tf040b-previewbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:12px max(20px,calc((100vw - 1180px)/2));background:#20262b;color:#fff}.tf040b-previewbar a{color:#fff;text-decoration:underline}.tf040b-solution-figure{margin:0 0 42px}.tf040b-solution-figure img{display:block;width:100%;height:auto;max-width:100%}.tf040b-solution-figure figcaption{margin-top:10px;font-size:.95rem;color:#62676c}@media(max-width:700px){.tf040b-previewbar{align-items:flex-start;flex-direction:column}.tf040b-solution-figure{margin-bottom:28px}}

/* ===== 116J SOURCE: package-040h.css ===== */
/* TOPFORM Paket 040i
   Korrektur des oberen Abstands auf Lösungsdetailseiten.
   Baut auf Paket 040h auf und ersetzt dessen CSS-Datei. */

.solutions-hub .solutions-listing{
  padding-top:clamp(4.5rem,7vw,7rem);
  padding-bottom:clamp(5.5rem,8vw,8rem);
}

.solutions-hub .section-heading-row{
  margin-bottom:clamp(2rem,4vw,3.25rem);
}

.solutions-hub .solution-card-grid{
  gap:clamp(1.25rem,2.5vw,2rem);
}

.solutions-hub .solution-card{
  padding:clamp(1.5rem,2.5vw,2rem);
}

.solutions-hub .tf040-solution-image{
  aspect-ratio:16/9;
  margin:calc(-1 * clamp(1.5rem,2.5vw,2rem))
         calc(-1 * clamp(1.5rem,2.5vw,2rem))
         1.5rem;
  overflow:hidden;
}

.solutions-hub .tf040-solution-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.solutions-hub .solution-card h3{
  margin-top:.75rem;
}

/* Detailseite: bewusst kompakterer Einstieg nach dem Hero */
.solution-detail > .content-section{
  padding-top:clamp(2.5rem,4vw,3.25rem);
  padding-bottom:clamp(6rem,9vw,9rem);
}

.solution-detail .article-main > :first-child{
  margin-top:0;
}

.solution-detail .article-main > :last-child{
  margin-bottom:0;
}

.solution-detail .tf040b-solution-figure{
  margin-bottom:clamp(2.25rem,5vw,4rem);
}

.solution-detail .related-section{
  margin-top:clamp(4rem,7vw,6rem);
}

.solution-detail + .public-footer,
.solution-detail + .tf-footer{
  margin-top:0;
}

@media (max-width:900px){
  .solutions-hub .solutions-listing{
    padding-top:clamp(3.5rem,7vw,5rem);
    padding-bottom:clamp(4.5rem,8vw,6rem);
  }

  .solution-detail > .content-section{
    padding-top:clamp(2rem,4vw,2.5rem);
    padding-bottom:clamp(4.5rem,9vw,6.5rem);
  }
}

@media (max-width:640px){
  .solutions-hub .solutions-listing{
    padding-top:3rem;
    padding-bottom:4rem;
  }

  .solutions-hub .solution-card{
    padding:1.25rem;
  }

  .solutions-hub .tf040-solution-image{
    margin:-1.25rem -1.25rem 1.25rem;
  }

  .solution-detail > .content-section{
    padding-top:1.75rem;
    padding-bottom:4.5rem;
  }

  .solution-detail .tf040b-solution-figure{
    margin-bottom:2rem;
  }
}

/* ===== 116J SOURCE: package-040j.css ===== */
/* TOPFORM Paket 040j – strukturierte Produktkarten in Lösungen */
.solution-detail .tf040j-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,2.5vw,2rem);align-items:stretch}
.solution-detail .tf040j-product-card{display:flex;flex-direction:column;min-width:0;padding:0;overflow:hidden;border:1px solid rgba(24,35,42,.14);background:#fff;box-shadow:none}
.solution-detail .tf040j-product-media{display:flex;align-items:center;justify-content:center;min-height:210px;padding:1.25rem;background:#f4f4f2;border-bottom:1px solid rgba(24,35,42,.10)}
.solution-detail .tf040j-product-media img{width:100%;height:190px;object-fit:contain;object-position:center}
.solution-detail .tf040j-product-content{display:flex;flex:1;flex-direction:column;padding:clamp(1.25rem,2.5vw,1.75rem)}
.solution-detail .tf040j-product-type{margin:0 0 .55rem;color:var(--tf-red,#e3000f);font-family:"futura-pt-condensed","futura-pt",sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.075em;line-height:1.2;text-transform:uppercase}
.solution-detail .tf040j-product-card h3{margin:0;font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.12}
.solution-detail .tf040j-product-card h3 a{color:inherit;text-decoration:none}
.solution-detail .tf040j-product-card h3 a:hover,.solution-detail .tf040j-product-card h3 a:focus-visible{color:var(--tf-red,#e3000f)}
.solution-detail .tf040j-product-code{margin:.55rem 0 0;color:#687078;font-size:.88rem;line-height:1.35}
.solution-detail .tf040j-product-features{display:grid;gap:.65rem;margin:1.15rem 0 1.35rem;padding:0;list-style:none}
.solution-detail .tf040j-product-features li{position:relative;margin:0;padding-left:1.15rem;font-weight:400;line-height:1.42}
.solution-detail .tf040j-product-features li::before{content:"";position:absolute;top:.58em;left:0;width:.38rem;height:.38rem;border-radius:50%;background:var(--tf-red,#e3000f)}
.solution-detail .tf040j-product-teaser{margin:1.05rem 0 1.35rem;font-weight:400;line-height:1.55}
.solution-detail .tf040j-product-actions{margin-top:auto;padding-top:.25rem}
.solution-detail .tf040j-product-link{display:inline-flex;align-items:center;gap:.45rem;color:#1d252b;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em}
.solution-detail .tf040j-product-link:hover,.solution-detail .tf040j-product-link:focus-visible{color:var(--tf-red,#e3000f)}
@media(max-width:780px){.solution-detail .tf040j-product-grid{grid-template-columns:1fr}.solution-detail .tf040j-product-card{display:grid;grid-template-columns:minmax(130px,34%) minmax(0,1fr)}.solution-detail .tf040j-product-media{min-height:100%;border-right:1px solid rgba(24,35,42,.10);border-bottom:0}.solution-detail .tf040j-product-media img{height:170px}}
@media(max-width:520px){.solution-detail .tf040j-product-card{display:flex}.solution-detail .tf040j-product-media{min-height:180px;border-right:0;border-bottom:1px solid rgba(24,35,42,.10)}.solution-detail .tf040j-product-media img{height:160px}.solution-detail .tf040j-product-content{padding:1.2rem}}

/* ===== 116J SOURCE: package-040n.css ===== */
.tf040n-knowledge-paths{padding:clamp(4rem,7vw,6.5rem) 0;background:#fff}.tf040n-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:2rem;align-items:end;margin-bottom:2rem}.tf040n-section-heading h2{margin:.25rem 0 0}.tf040n-section-heading>p{margin:0;color:#5c676d;font-size:1.05rem;line-height:1.6}.tf040n-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.tf040n-path-card{position:relative;display:flex;flex-direction:column;min-height:310px;padding:1.75rem;overflow:hidden;color:#1f272c;text-decoration:none;border:1px solid #dfe3e5;background:#f5f6f6;transition:.2s}.tf040n-path-card:hover{transform:translateY(-3px);border-color:var(--tf-red,#e3000f);box-shadow:0 18px 40px rgba(28,35,39,.09)}.tf040n-path-card--faq{color:#fff;border-color:#293136;background:#293136}.tf040n-path-number{position:absolute;top:1rem;right:1.25rem;color:rgba(31,39,44,.09);font-size:4rem;font-weight:700;line-height:1}.tf040n-path-card--faq .tf040n-path-number{color:rgba(255,255,255,.1)}.tf040n-path-kicker{margin:0 0 2.4rem;color:var(--tf-red,#e3000f);font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.tf040n-path-card h3{max-width:85%;margin:0 0 .85rem;font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.1}.tf040n-path-card p:not(.tf040n-path-kicker){margin:0 0 1.5rem;color:#5c676d;line-height:1.55}.tf040n-path-card--faq p:not(.tf040n-path-kicker){color:rgba(255,255,255,.72)}.tf040n-path-card strong{margin-top:auto}.tf040n-faq-jump{position:sticky;top:82px;z-index:15;border-bottom:1px solid #dfe3e5;background:rgba(255,255,255,.97)}.tf040n-faq-jump .section-inner{display:flex;align-items:center;gap:.75rem;padding-top:1rem;padding-bottom:1rem;overflow-x:auto}.tf040n-faq-jump span{font-weight:700}.tf040n-faq-jump a{flex:0 0 auto;padding:.55rem .85rem;color:#263036;text-decoration:none;border:1px solid #d8dddf;background:#f5f6f6;font-size:.88rem;font-weight:700}.tf040n-faq-content{padding:clamp(4rem,7vw,7rem) 0;background:#f3f5f5}.tf040n-faq-group+.tf040n-faq-group{margin-top:5rem;padding-top:5rem;border-top:1px solid #d6dcde}.tf040n-faq-group-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;margin-bottom:1.75rem}.tf040n-faq-group-head h2{margin:.2rem 0 .65rem}.tf040n-faq-group-head>span{padding:.6rem .8rem;border:1px solid #d4dade;background:#fff;font-size:.82rem;font-weight:700;white-space:nowrap}.tf040n-faq-list{border-top:1px solid #cfd6d9}.tf040n-faq-item{border-bottom:1px solid #cfd6d9;background:#fff}.tf040n-faq-item summary{display:grid;grid-template-columns:minmax(0,1fr) 2rem;gap:1.5rem;align-items:center;padding:1.35rem 1.5rem;cursor:pointer;list-style:none;font-size:1.1rem;font-weight:700}.tf040n-faq-item summary::-webkit-details-marker{display:none}.tf040n-faq-item summary i{position:relative;width:2rem;height:2rem;border:1px solid #cdd4d7;background:#f4f5f5}.tf040n-faq-item summary i:before,.tf040n-faq-item summary i:after{content:'';position:absolute;top:50%;left:50%;width:.8rem;height:2px;background:#293136;transform:translate(-50%,-50%)}.tf040n-faq-item summary i:after{transform:translate(-50%,-50%) rotate(90deg)}.tf040n-faq-item[open] summary{color:var(--tf-red,#e3000f)}.tf040n-faq-item[open] summary i:after{transform:translate(-50%,-50%)}.tf040n-faq-answer{padding:0 4.75rem 1.5rem 1.5rem}.tf040n-faq-answer p{max-width:900px;margin:0;color:#4f5b61;line-height:1.7}@media(max-width:900px){.tf040n-section-heading{grid-template-columns:1fr}.tf040n-path-grid{grid-template-columns:1fr}.tf040n-path-card{min-height:245px}}@media(max-width:640px){.tf040n-faq-group-head{grid-template-columns:1fr}.tf040n-faq-answer{padding:0 1.15rem 1.25rem}}
/* Paket 047: Überschrift der dunklen FAQ-Kachel ausdrücklich weiß. */
.tf040n-path-card--faq h3{color:#fff}

/* Paket 047b: robuste Korrekturen für Wissen, Aktuelles und Fußzeile. */
.tf040n-path-card--faq h2,.tf040n-path-card--faq h3,.tf040n-path-card--faq strong,.tf040n-path-card--faq .tf040n-path-title{color:#fff!important}
.news-card,.news-card p,.news-card small,.article-page,.article-lead,.article-content,.article-content p,.article-content li{font-weight:400}
.news-card h2,.news-card h3,.article-page h1,.article-content h2,.article-content h3,.article-content strong,.article-content b{font-weight:700}
.article-content p{margin:0 0 1rem}.article-content ul,.article-content ol{margin:.75rem 0 1.25rem;padding-left:1.5rem}.article-content li+li{margin-top:.35rem}.article-content a{text-decoration:underline;text-underline-offset:.15em}
.tf-footer .brand-footer::after,.tf-footer .brand-footer:after{content:none!important;display:none!important}

/* Paket 049: sichtbare Breadcrumbs und CTA im Aktuelles-Beitrag */
.tf049-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 1.5rem;font-size:.88rem;color:#667078}.tf049-breadcrumb a{color:inherit;text-decoration:none}.tf049-breadcrumb a:hover{text-decoration:underline}.tf049-breadcrumb span[aria-current=page]{font-weight:700;color:#30383d}.tf049-news-cta{margin:2rem 0}.tf049-news-cta .button{text-decoration:none}

/* ===== 116J SOURCE: package-051b.css ===== */
/* TOPFORM Paket 051b
   Ausschließlich horizontale Geometrie: gemeinsame Inhaltsachse.
   Keine Änderungen an Farben, Hintergründen, Typografie oder vertikalen Abständen. */

:root {
  --tf-axis-container: var(--tf-container, 1240px);
  --tf-axis-gutter: var(--tf-gutter, clamp(20px, 4vw, 40px));
  --tf-axis-width: min(calc(100% - (2 * var(--tf-axis-gutter))), var(--tf-axis-container));
}

/* Produkte */
.public-body .tf35-products > .page-hero {
  padding-left: 0;
  padding-right: 0;
}
.public-body .tf35-products > .page-hero > .page-container,
.public-body .tf35-products > .section > .page-container {
  width: var(--tf-axis-width);
  max-width: var(--tf-axis-container);
  margin-left: auto;
  margin-right: auto;
}
.public-body .tf35-products > .section {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

/* Aktuelles */
.public-body .tf51-news-page > .page-hero,
.public-body .tf51-news-page > .section {
  max-width: none;
  padding-left: max(var(--tf-axis-gutter), calc((100vw - var(--tf-axis-container)) / 2));
  padding-right: max(var(--tf-axis-gutter), calc((100vw - var(--tf-axis-container)) / 2));
}

/* Vertriebspartner finden */
.public-body .partner-page > .partner-hero,
.public-body .partner-page > .partner-search-section,
.public-body .partner-page > .partner-results,
.public-body .partner-page > .partner-cta {
  width: var(--tf-axis-width);
  max-width: var(--tf-axis-container);
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 700px) {
  :root { --tf-axis-gutter: 20px; }
}

/* ===== 116J SOURCE: package-051c.css ===== */
/* TOPFORM Paket 051c
   Ausschließlich vollbreite Flächen auf "Vertriebspartner finden".
   Die in 051b festgelegte Inhaltsachse bleibt erhalten.
   Keine Änderungen an Typografie, vertikalen Abständen oder Komponenten. */

.public-body .partner-page > .partner-hero,
.public-body .partner-page > .partner-search-section {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  box-sizing: border-box;
  padding-left: max(var(--tf-axis-gutter, 20px), calc((100vw - var(--tf-axis-container, 1240px)) / 2));
  padding-right: max(var(--tf-axis-gutter, 20px), calc((100vw - var(--tf-axis-container, 1240px)) / 2));
}

/* Der Hero erhält seine dunkle Fläche direkt auf dem vollbreiten Abschnitt.
   Alte Pseudo-Hintergründe werden neutralisiert, damit keine Doppel- oder Randflächen entstehen. */
.public-body .partner-page > .partner-hero {
  background: #20262a !important;
  position: relative;
  isolation: auto;
}

.public-body .partner-page > .partner-hero::before {
  content: none !important;
  display: none !important;
}

/* Die Suchsektion bleibt weiß, läuft aber wie der Hero bis an die Viewportkanten. */
.public-body .partner-page > .partner-search-section {
  background: #fff;
}

@media (max-width: 700px) {
  .public-body .partner-page > .partner-hero,
  .public-body .partner-page > .partner-search-section {
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* ===== 116J SOURCE: package-054.css ===== */
/* TOPFORM Paket 054a – zuverlässiger mobiler Header und korrektes TOPFORM-Menü */
@media (max-width: 1100px) {
  /* Fester mobiler Header: Logo und Menüzugang bleiben beim Scrollen sichtbar. */
  html {
    scroll-padding-top: 70px;
  }

  body.public-body {
    padding-top: 70px;
  }

  .public-header.tf-site-header {
    position: fixed !important;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    z-index: 1295;
    background: #fff;
    box-shadow: 0 1px 0 rgba(24, 33, 38, .12);
  }

  .public-header.tf-site-header .tf-header-main-row {
    min-height: 70px;
  }

  /* Menülinien im TOPFORM-Rot. */
  .tf-site-header .tf-mobile-menu-toggle {
    color: #c8102e !important;
  }

  .tf-site-header .tf-mobile-menu-toggle .menu-toggle-icon span {
    background: #c8102e !important;
  }

  /* Alte Regel dreht alle span-Elemente – damit auch TOP und FORM.
     Zuerst sämtliche Drehungen zurücksetzen, danach nur den direkten Pfeil drehen. */
  .tf-header-030d .tf-nav-group.is-open > .tf-nav-toggle span {
    transform: none !important;
  }

  .tf-header-030d .tf-nav-group.is-open > .tf-nav-toggle > span:last-child {
    transform: rotate(180deg) !important;
  }

  .tf-header-030d .tf-wordmark,
  .tf-header-030d .tf-wordmark__top,
  .tf-header-030d .tf-wordmark__form {
    transform: none !important;
  }
}

/* ===== 116J SOURCE: package-055.css ===== */
/* TOPFORM 055 – Consent Manager */
.tf-consent[hidden]{display:none!important}.tf-consent{position:fixed;z-index:2500;inset:0;background:rgba(20,26,30,.62);display:grid;align-items:end;padding:18px}.tf-consent-card{width:min(920px,100%);margin:0 auto;background:#fff;border-top:5px solid #c8102e;padding:26px;box-shadow:0 18px 60px rgba(0,0,0,.25)}.tf-consent-kicker{margin:0 0 8px;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:#c8102e}.tf-consent h2{margin:0 0 12px;font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.12;color:#20282d}.tf-consent p{margin:0;color:#4d585f;line-height:1.6}.tf-consent-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.tf-consent button{border:0;padding:12px 17px;font:inherit;font-weight:700;cursor:pointer;background:#c8102e;color:#fff}.tf-consent button.secondary{background:#edf0f2;color:#20282d}.tf-consent button.ghost{background:#fff;color:#20282d;border:1px solid #cbd2d6}.tf-consent-settings{display:none;margin-top:20px;border-top:1px solid #dfe4e7;padding-top:16px}.tf-consent.is-settings .tf-consent-settings{display:grid;gap:12px}.tf-consent-option{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:start;padding:13px 0;border-bottom:1px solid #edf0f2}.tf-consent-option strong{display:block;color:#20282d}.tf-consent-option small{display:block;color:#667178;margin-top:4px;line-height:1.45}.tf-consent-option input{width:22px;height:22px;accent-color:#c8102e}.tf-consent-option input:disabled{opacity:.65}.tf-footer-consent-button{appearance:none;border:0;background:transparent;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}@media(max-width:640px){.tf-consent{padding:0}.tf-consent-card{padding:22px 18px;max-height:92vh;overflow:auto}.tf-consent-actions{display:grid}.tf-consent button{width:100%}}

/* ===== 116J SOURCE: package-115.css ===== */
/* Paket 115 – Vertriebspartnerprofile & Standorte */
.partner-location-count{margin:.35rem 0 0;font-size:.78rem;font-weight:800;color:#c8102e;text-transform:uppercase;letter-spacing:.08em}
.partner-locations-section{margin-top:3rem;padding-top:2rem;border-top:1px solid #d9dcd8}.partner-section-head{margin-bottom:1.5rem}.partner-locations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.partner-location-card{position:relative;background:#fff;border:1px solid #e2e5e2;padding:1.5rem;min-width:0}.partner-location-card.is-primary{border-top:4px solid #c8102e}.partner-location-card h3{margin:.15rem 0 1rem;font-size:1.25rem}.partner-location-card address{font-style:normal;line-height:1.65;margin-bottom:1rem}.partner-location-card>a{display:block;padding:.7rem 0;border-top:1px solid #eceeeb;text-decoration:none;overflow-wrap:anywhere}.partner-location-card>a span{display:block;color:#747b77;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.partner-location-badge{display:inline-block;margin-bottom:.8rem;background:#20262a;color:#fff;padding:.3rem .55rem;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.tf-partner-admin-panel .admin-form{max-width:100%}.tf-location-form{margin:0 0 .35rem}.tf-location-delete{margin:-.1rem 0 1.5rem;padding:.35rem 0 .8rem;border-bottom:1px solid #e2e5e2}.tf-location-delete .link-button{color:#9f1828}
@media(max-width:720px){.partner-locations-grid{grid-template-columns:1fr}.partner-location-card{padding:1.2rem}.partner-card-logo-wrap{height:110px}.partner-card-logo-wrap img{max-height:70px;max-width:210px}}


/* Hotfix 115a – Partnerübersicht / Partnerprofile */
.public-body .partner-page > .partner-cta{
  width:100%;
  max-width:none;
  margin:0;
  padding-left:max(1.25rem,calc((100vw - 1440px)/2 + 5rem));
  padding-right:max(1.25rem,calc((100vw - 1440px)/2 + 5rem));
  background:#c8102e;
}
.public-body .partner-detail-page > .partner-detail-hero{
  width:100%;
  max-width:none;
  margin:0;
  padding-left:max(1.25rem,calc((100vw - 1440px)/2 + 5rem));
  padding-right:max(1.25rem,calc((100vw - 1440px)/2 + 5rem));
  background:#20262a;
}
.partner-card-clickable{
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.partner-card-clickable:hover,
.partner-card-clickable:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(32,38,42,.10);
  outline:0;
}
.partner-card-clickable:hover .partner-card-link,
.partner-card-clickable:focus-visible .partner-card-link{
  background:#20262a;
  color:#fff;
}
.partner-card-clickable:focus-visible{
  box-shadow:0 0 0 3px rgba(200,16,46,.22),0 12px 28px rgba(32,38,42,.10);
}
@media(max-width:980px){
  .public-body .partner-page > .partner-cta,
  .public-body .partner-detail-page > .partner-detail-hero{
    padding-left:clamp(1.25rem,5vw,3rem);
    padding-right:clamp(1.25rem,5vw,3rem);
  }
}

/* Hotfix 115b – Deutschlandkarte Vertriebspartner */
.partner-map-section{
  margin-top:2rem;
}
.partner-map-copy{
  max-width:46rem;
  margin-bottom:1.25rem;
}
.partner-map-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:1.5rem;
  align-items:start;
}
.partner-map-stage{
  position:relative;
  min-height:610px;
  background:linear-gradient(180deg,#f7f8f7 0%,#eef1ef 100%);
  border:1px solid #dfe3df;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 12px 30px rgba(32,38,42,.06);
}
.partner-map-germany{
  position:absolute;
  inset:1.5rem 1.5rem 1.5rem 1.5rem;
  background:#dce2dd;
  border:1px solid #cfd6d0;
  clip-path:polygon(41% 1%,51% 4%,58% 10%,67% 12%,72% 20%,80% 24%,79% 34%,84% 40%,80% 46%,81% 55%,77% 60%,76% 67%,70% 72%,72% 79%,63% 88%,58% 98%,48% 95%,42% 89%,35% 86%,31% 78%,27% 72%,22% 70%,18% 63%,20% 55%,16% 48%,18% 41%,15% 35%,18% 27%,25% 23%,26% 16%,32% 10%,36% 4%);
}
.partner-map-germany::before,
.partner-map-germany::after{
  content:"";
  position:absolute;
  inset:0;
}
.partner-map-germany::before{
  background:radial-gradient(circle at 30% 26%,rgba(255,255,255,.8),transparent 28%),
             radial-gradient(circle at 66% 72%,rgba(255,255,255,.55),transparent 24%);
  opacity:.7;
}
.partner-map-marker{
  position:absolute;
  transform:translate(-50%,-50%);
  text-decoration:none;
  z-index:3;
}
.partner-map-dot{
  display:block;
  width:14px;
  height:14px;
  border-radius:999px;
  background:#20262a;
  border:3px solid #fff;
  box-shadow:0 4px 12px rgba(32,38,42,.18);
  transition:transform .18s ease, background .18s ease;
}
.partner-map-marker.is-primary .partner-map-dot,
.legend-dot.legend-primary{
  background:#c8102e;
}
.partner-map-tooltip{
  position:absolute;
  left:18px;
  top:50%;
  transform:translateY(-50%);
  min-width:180px;
  padding:.55rem .7rem;
  border-radius:12px;
  background:#20262a;
  color:#fff;
  line-height:1.35;
  font-size:.82rem;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  box-shadow:0 10px 26px rgba(32,38,42,.18);
}
.partner-map-tooltip strong,
.partner-map-tooltip span{
  display:block;
}
.partner-map-tooltip span{
  color:rgba(255,255,255,.82);
  font-size:.76rem;
}
.partner-map-marker:hover .partner-map-dot,
.partner-map-marker:focus-visible .partner-map-dot{
  transform:scale(1.16);
}
.partner-map-marker:hover .partner-map-tooltip,
.partner-map-marker:focus-visible .partner-map-tooltip{
  opacity:1;
  transform:translateY(-50%) translateX(4px);
}
.partner-map-marker:focus-visible{
  outline:none;
}
.partner-map-marker:focus-visible .partner-map-dot{
  box-shadow:0 0 0 4px rgba(200,16,46,.18),0 4px 12px rgba(32,38,42,.18);
}
.partner-map-legend{
  background:#fff;
  border:1px solid #e2e5e2;
  border-radius:18px;
  padding:1.25rem;
}
.partner-map-legend-item{
  display:flex;
  align-items:center;
  gap:.65rem;
  font-weight:700;
  color:#20262a;
}
.partner-map-legend-item + .partner-map-legend-item{
  margin-top:.85rem;
}
.legend-dot{
  width:14px;
  height:14px;
  border-radius:999px;
  background:#20262a;
  border:3px solid #fff;
  box-shadow:0 3px 10px rgba(32,38,42,.12);
  flex:0 0 auto;
}
.partner-map-count{
  margin-top:1rem;
  padding-top:1rem;
  border-top:1px solid #eceeeb;
  color:#5a625e;
  font-size:.92rem;
}
@media(max-width:980px){
  .partner-map-layout{
    grid-template-columns:1fr;
  }
  .partner-map-stage{
    min-height:520px;
  }
}
@media(max-width:720px){
  .partner-map-stage{
    min-height:420px;
    border-radius:16px;
  }
  .partner-map-germany{
    inset:1rem;
  }
  .partner-map-dot,
  .legend-dot{
    width:12px;
    height:12px;
    border-width:2px;
  }
  .partner-map-tooltip{
    left:14px;
    min-width:150px;
    max-width:180px;
    font-size:.76rem;
    padding:.45rem .55rem;
  }
}

/* Hotfix 115c – echte Deutschland-Silhouette und geografische Markerprojektion */
.partner-map-layout{
  grid-template-columns:minmax(0,680px) 280px;
  justify-content:space-between;
  gap:2rem;
}
.partner-map-stage{
  width:100%;
  max-width:680px;
  min-height:0;
  aspect-ratio:600 / 760;
  background:linear-gradient(180deg,#f8f9f8 0%,#eef1ef 100%);
  border:1px solid #dfe3df;
  border-radius:20px;
  overflow:visible;
  box-shadow:0 12px 30px rgba(32,38,42,.06);
}
.partner-map-svg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  overflow:visible;
}
.partner-map-country{
  fill:#dce2dd;
  stroke:#aeb8b1;
  stroke-width:2.2;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 10px 18px rgba(32,38,42,.08));
}
.partner-map-marker{
  z-index:4;
}
.partner-map-tooltip{
  z-index:6;
}
@media(max-width:980px){
  .partner-map-layout{
    grid-template-columns:minmax(0,620px);
    justify-content:start;
  }
  .partner-map-stage{
    max-width:620px;
  }
  .partner-map-legend{
    max-width:620px;
  }
}
@media(max-width:720px){
  .partner-map-stage{
    min-height:0;
    aspect-ratio:600 / 760;
    border-radius:16px;
  }
  .partner-map-tooltip{
    display:none;
  }
}

/* Hotfix 115d – Umkreissuche Vertriebspartner */
.partner-search-notice{
  margin-top:1rem;
  padding:.85rem 1rem;
  border-left:4px solid #c8102e;
  background:#f5f6f5;
  color:#303633;
  font-weight:700;
  line-height:1.5;
}
.partner-search-notice.is-expanded{
  background:#fff3f4;
}
.partner-distance{
  display:inline-block;
  margin:.45rem 0 0;
  padding:.3rem .55rem;
  border-radius:999px;
  background:#f2f4f2;
  color:#20262a;
  font-size:.78rem;
  font-weight:800;
}
.partner-geocode-credit{
  max-width:1440px;
  margin:0 auto;
  padding:0 5rem 1.5rem;
  color:#747b77;
  font-size:.75rem;
}
.partner-geocode-credit a{color:inherit}
@media(max-width:980px){
  .partner-geocode-credit{padding-left:clamp(1.25rem,5vw,3rem);padding-right:clamp(1.25rem,5vw,3rem)}
}

/* ===== 116J SOURCE: package-115g.css ===== */
/* TOPFORM 115g – Handwerk in TOPFORM / David Storl */
.hit-page{background:#fff;color:#20262a}
.hit-page .section{padding-top:clamp(3.5rem,7vw,7rem);padding-bottom:clamp(3.5rem,7vw,7rem)}
.hit-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);min-height:68vh;background:#20262a;color:#fff;overflow:hidden}
.hit-hero-copy{padding:clamp(4rem,8vw,8rem) max(1.25rem,calc((100vw - 1440px)/2 + 5rem));padding-right:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center}
.hit-hero h1{margin:.6rem 0 1.4rem;font-size:clamp(4rem,9vw,8.5rem);line-height:.84;letter-spacing:-.055em;text-transform:uppercase}
.hit-hero h1 span{color:#c8102e}
.hit-hero-lead{max-width:52rem;font-size:clamp(1.15rem,2vw,1.55rem);line-height:1.5;color:rgba(255,255,255,.83)}
.hit-hero-actions{display:flex;align-items:center;gap:1.2rem;margin-top:2rem;flex-wrap:wrap}
.hit-text-link{color:#fff;font-weight:800;text-decoration:none}
.hit-hero-visual{position:relative;min-height:100%;background:linear-gradient(145deg,#c8102e 0%,#a70e26 64%,#20262a 64.2%);display:flex;align-items:flex-end;justify-content:center;padding:3rem 2rem;overflow:hidden}
.hit-hero-visual::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 2px,transparent 2px 28px)}
.hit-visual-mark{position:absolute;top:8%;right:-3%;font-size:clamp(8rem,22vw,21rem);font-weight:900;line-height:.8;color:rgba(255,255,255,.10);letter-spacing:-.08em}
.hit-visual-copy{position:relative;z-index:2;width:100%;display:grid;gap:.15rem;text-transform:uppercase;font-weight:900;font-size:clamp(1.8rem,4vw,3.5rem);line-height:.9}
.hit-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,6vw,7rem);align-items:start}
.hit-intro h2,.hit-section-head h2,.hit-dialogue h2,.hit-team h2,.hit-products h2,.hit-closing h2{font-size:clamp(2.4rem,5vw,5.2rem);line-height:.95;letter-spacing:-.04em;margin:.4rem 0 0}
.hit-intro-text{font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.7;max-width:52rem}
.hit-intro-text p+p{margin-top:1.4rem}
.hit-principles{background:#f3f5f3}
.hit-section-head{max-width:64rem;margin-bottom:2.5rem}
.hit-principle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d8ddd8;border:1px solid #d8ddd8}
.hit-principle-grid article{background:#fff;padding:clamp(1.5rem,3vw,2.5rem);min-height:310px}
.hit-principle-grid article>span,.hit-dialogue-cards article>span{display:inline-block;color:#c8102e;font-size:.78rem;font-weight:900;letter-spacing:.12em;margin-bottom:2rem}
.hit-principle-grid h3,.hit-dialogue-cards h3{font-size:1.6rem;margin:0 0 1rem}
.hit-principle-grid p,.hit-dialogue-cards p{line-height:1.65;color:#5f6662}
.hit-statement{background:#c8102e;color:#fff;padding:clamp(4rem,8vw,8rem) max(1.25rem,calc((100vw - 1440px)/2 + 5rem))}
.hit-statement-inner{max-width:1050px}
.hit-statement blockquote{margin:1rem 0 1.25rem;font-size:clamp(2.4rem,5vw,5.3rem);line-height:1.02;letter-spacing:-.045em;font-weight:800}
.hit-statement-note{max-width:46rem;color:rgba(255,255,255,.78);font-size:1.05rem}
.hit-dialogue{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.hit-dialogue-copy>p:last-child{font-size:1.15rem;line-height:1.7;color:#555e59;max-width:48rem}
.hit-dialogue-cards{display:grid;gap:1rem}
.hit-dialogue-cards article{border:1px solid #e0e4e0;padding:1.6rem 1.8rem;background:#fff}
.hit-dialogue-cards article>span{margin-bottom:.7rem}
.hit-team{background:#20262a;color:#fff}
.hit-team-head{max-width:60rem;margin-bottom:2.5rem}
.hit-team-head>p:last-child{font-size:1.16rem;line-height:1.7;color:rgba(255,255,255,.78);max-width:48rem}
.hit-team-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}
.hit-team-strip>div{padding:1.5rem 1rem;border-right:1px solid rgba(255,255,255,.15)}
.hit-team-strip>div:last-child{border-right:0}
.hit-team-strip strong,.hit-team-strip span{display:block}
.hit-team-strip strong{font-size:1.25rem}
.hit-team-strip span{margin-top:.35rem;color:rgba(255,255,255,.62);font-size:.92rem}
.hit-products{display:flex;justify-content:space-between;gap:3rem;align-items:end}
.hit-products-copy{max-width:62rem}
.hit-products-copy>p:last-child{font-size:1.15rem;line-height:1.7;color:#58605c;max-width:45rem}
.hit-products-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}
.hit-closing{background:#f3f5f3;padding:clamp(4rem,8vw,8rem) max(1.25rem,calc((100vw - 1440px)/2 + 5rem));text-align:center}
.hit-closing>div{max-width:900px;margin:0 auto}
.hit-closing p:last-child{font-size:clamp(1.2rem,2vw,1.6rem);color:#66706a}
@media(max-width:980px){
 .hit-hero{grid-template-columns:1fr;min-height:0}.hit-hero-copy{padding:5rem clamp(1.25rem,5vw,3rem)}.hit-hero-visual{min-height:340px;justify-content:flex-start}.hit-visual-mark{font-size:13rem}
 .hit-intro,.hit-dialogue{grid-template-columns:1fr}.hit-principle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hit-team-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.hit-products{align-items:flex-start;flex-direction:column}.hit-products-actions{justify-content:flex-start}
}
@media(max-width:640px){
 .hit-hero-copy{padding-top:4rem;padding-bottom:4rem}.hit-hero h1{font-size:clamp(3.25rem,18vw,5.3rem)}.hit-hero-lead{font-size:1.05rem}.hit-hero-actions{align-items:stretch;flex-direction:column}.hit-hero-actions .button{text-align:center}.hit-hero-visual{min-height:260px;padding:2rem 1.25rem}.hit-visual-mark{font-size:9rem;top:10%;right:0}.hit-visual-copy{font-size:2rem}
 .hit-principle-grid{grid-template-columns:1fr}.hit-principle-grid article{min-height:0}.hit-team-strip{grid-template-columns:1fr}.hit-team-strip>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.hit-team-strip>div:last-child{border-bottom:0}.hit-products-actions{width:100%;flex-direction:column}.hit-products-actions .button{width:100%;text-align:center}.hit-statement blockquote{font-size:clamp(2.2rem,10vw,3.6rem)}
}

/* ===== 116J SOURCE: package-115s.css ===== */
/* Paket 115s – Produktideen */
.tf-idea-page{overflow:hidden}.tf-idea-hero{display:grid;grid-template-columns:1.15fr .85fr;min-height:540px;background:#f2f4f3}.tf-idea-hero-copy{padding:clamp(4rem,8vw,7rem) max(28px,calc((100vw - 1240px)/2 + 28px));padding-right:clamp(3rem,7vw,7rem);align-self:center}.tf-idea-hero h1{max-width:760px;font-size:clamp(3.2rem,7vw,6.5rem);line-height:.92;letter-spacing:-.045em;margin:.35rem 0 1.5rem}.tf-idea-hero-copy .hero-lead{max-width:720px;font-size:1.18rem;line-height:1.6}.tf-idea-hero-mark{background:#c8102e;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:clamp(2.5rem,5vw,5rem)}.tf-idea-hero-mark span{font-weight:800;letter-spacing:.2em;font-size:1rem}.tf-idea-hero-mark strong{font-size:clamp(4rem,9vw,8rem);line-height:.86;letter-spacing:-.05em}.tf-idea-hero-mark small{font-size:1.2rem;margin-top:1rem}.tf-idea-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,7rem);align-items:start}.tf-idea-intro h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1}.tf-idea-intro>div:last-child{font-size:1.12rem;line-height:1.7}.tf-idea-process{display:grid;grid-template-columns:repeat(3,1fr);max-width:1240px;margin:0 auto 30px;background:#202629;color:#fff}.tf-idea-process article{padding:34px;border-right:1px solid rgba(255,255,255,.15);min-height:220px}.tf-idea-process article:last-child{border-right:0}.tf-idea-process b{color:#c8102e}.tf-idea-process h3{font-size:1.4rem;margin:1.3rem 0 .7rem}.tf-idea-process p{color:#c7ceca}.tf-idea-form-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,7vw,6rem);align-items:start}.tf-idea-form-copy{position:sticky;top:120px}.tf-idea-form-wrap{border-top:5px solid #c8102e;background:#f6f7f6;padding:clamp(1.5rem,4vw,3rem)}.tf-idea-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tf-idea-form label{display:flex;flex-direction:column;gap:7px;font-weight:700}.tf-idea-form label.full{grid-column:1/-1}.tf-idea-form input,.tf-idea-form select,.tf-idea-form textarea{width:100%;font:inherit;padding:13px 14px;border:1px solid #cfd5d1;background:#fff}.tf-idea-form textarea{resize:vertical}.tf-idea-form small{font-weight:400;color:#646d68}.tf-check{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;margin:20px 0;font-weight:400!important}.tf-check input{width:auto!important;margin-top:4px}.tf-idea-form .button{margin-top:8px}.tf-idea-success{padding:1rem 0 2rem}.tf-idea-success h2{font-size:2.3rem}.tf-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.form-errors{border-left:4px solid #c8102e;background:#fff;padding:18px 20px;margin-bottom:22px}.form-errors ul{margin:.6rem 0 0}.tf-idea-page .tf-wordmark__form{font-weight:300}
@media(max-width:900px){.tf-idea-hero,.tf-idea-intro,.tf-idea-form-section{grid-template-columns:1fr}.tf-idea-hero{min-height:0}.tf-idea-hero-copy{padding:4rem 24px}.tf-idea-hero-mark{min-height:260px}.tf-idea-process{grid-template-columns:1fr;margin-left:20px;margin-right:20px}.tf-idea-process article{min-height:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.15)}.tf-idea-form-copy{position:static}.tf-idea-form .form-grid{grid-template-columns:1fr}.tf-idea-form label.full{grid-column:auto}}
@media(max-width:560px){.tf-idea-hero h1{font-size:3rem}.tf-idea-hero-mark strong{font-size:4.5rem}.tf-idea-form-wrap{padding:22px 18px}}
/* Admin Produktideen */
.tf-idea-admin-kpis{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:0 0 24px}.tf-idea-admin-kpis>div{background:#fff;border:1px solid #dfe3e1;padding:16px}.tf-idea-admin-kpis strong{display:block;font-size:1.8rem}.tf-idea-admin-kpis span{font-size:.78rem;color:#66706b}.tf-idea-admin-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;margin-bottom:22px}.tf-idea-admin-grid h3{margin-top:1.6rem}.tf-idea-admin-grid dl{display:grid;grid-template-columns:140px 1fr;gap:9px 16px}.tf-idea-admin-grid dt{font-weight:800}.tf-idea-admin-grid dd{margin:0}.tf-idea-admin-form{max-width:none}@media(max-width:1100px){.tf-idea-admin-kpis{grid-template-columns:repeat(3,1fr)}.tf-idea-admin-grid{grid-template-columns:1fr}}@media(max-width:650px){.tf-idea-admin-kpis{grid-template-columns:1fr 1fr}.tf-idea-admin-grid dl{grid-template-columns:1fr;gap:3px}.tf-idea-admin-grid dd{margin-bottom:10px}}

/* ===== 116J SOURCE: package-116a2.css ===== */
/* TOPFORM Paket 116A2 – Farbharmonie, Kontrast und Sticky-Header */
:root{
  --red:#e3000f;
  --red-dark:#b6000c;
  --tf-red:#e3000f;
  --tf-red-dark:#b6000c;
  --tf-red-rgb:227,0,15;
}
html,
body{
  overflow-x:clip !important;
}
.public-body .public-header,
.public-header.tf-site-header{
  position:-webkit-sticky !important;
  position:sticky !important;
  top:0 !important;
  z-index:2000 !important;
}
.public-body .brand::after,
.public-body .main-navigation a:hover,
.public-body .main-navigation a.is-active,
.public-body .header-link:hover,
.public-body .header-link.is-active,
.public-body .feature-card:hover,
.public-body .solution-list a:hover strong,
.public-body .solution-list span,
.public-body .feature-card span,
.public-body .static-card small,
.public-body .module-icon,
.public-body .category-card-body > span,
.public-body .product-entry-note,
.public-body .answer-box,
.public-body .tag-list span,
.partner-logo-placeholder,
.partner-hero-panel span,
.tf23-principles-grid b,
.tf36-placeholder,
.tf36-table summary,
.tf36-file-icon,
.tf36-cta,
.tf36-meta-strip span{
  accent-color:var(--tf-red);
}
.public-body .module-icon,
.tf36-file-icon{
  background:var(--tf-red) !important;
}
.public-body .main-navigation a:hover,
.public-body .main-navigation a.is-active,
.public-body .header-link:hover,
.public-body .header-link.is-active,
.public-body .solution-list a:hover strong,
.public-body .solution-list span,
.public-body .feature-card span,
.public-body .static-card small,
.public-body .category-card-body > span,
.partner-logo-placeholder,
.partner-hero-panel span,
.tf23-principles-grid b,
.tf36-placeholder,
.tf36-table summary{
  color:var(--tf-red) !important;
}
.public-body .main-navigation a:hover,
.public-body .main-navigation a.is-active,
.public-body .header-link:hover,
.public-body .header-link.is-active,
.public-body .feature-card:hover{
  border-color:var(--tf-red) !important;
}
.public-body .button,
.public-body .partner-cta,
.public-body .tf23-team-mark,
.public-body .tf16-final-cta,
.public-body .tf-contact-band,
.public-body .tf36-file-icon,
.public-body .tf36-cta,
.public-body .tf23-team-mark,
.public-body .home-023 .tf16-final-cta,
.public-body .partner-cta{
  background:#e3000f !important;
}
.public-body .button:hover{
  background:#b6000c !important;
}
.public-body .button-secondary{
  background:#fff !important;
  color:#202427 !important;
  border:1px solid #202427 !important;
}
.public-body .button-secondary:hover{
  background:#202427 !important;
  color:#fff !important;
  border-color:#202427 !important;
}
.public-body .button-secondary.dark,
.public-body .tf16-final-cta .button,
.public-body .tf16-final-cta .button-secondary.dark,
.public-body .tf-contact-band .button-secondary,
.public-body .partner-cta .button-secondary,
.public-body .partner-cta .button-secondary.dark{
  background:transparent !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.88) !important;
}
.public-body .tf16-final-cta .button:hover,
.public-body .tf16-final-cta .button-secondary.dark:hover,
.public-body .tf-contact-band .button-secondary:hover,
.public-body .partner-cta .button-secondary:hover,
.public-body .partner-cta .button-secondary.dark:hover,
.public-body .button-secondary.dark:hover{
  background:#fff !important;
  color:#e3000f !important;
  border-color:#fff !important;
}
.public-body .tf-contact-band .button:not(.button-secondary){
  background:#fff !important;
  color:#e3000f !important;
  border:1px solid #fff !important;
}
.public-body .tf-contact-band .button:not(.button-secondary):hover{
  background:#202427 !important;
  color:#fff !important;
  border-color:#202427 !important;
}
.public-body .tf16-final-cta,
.public-body .tf-contact-band,
.public-body .partner-cta,
.public-body .tf23-team-mark{
  color:#fff !important;
}
.public-body .tf16-final-cta .eyebrow,
.public-body .tf-contact-band .eyebrow,
.public-body .partner-cta .eyebrow,
.public-body .tf23-team .eyebrow,
.public-body .tf23-team-mark .eyebrow{
  color:rgba(255,255,255,.92) !important;
}
.public-body .tf16-final-cta .eyebrow::before,
.public-body .tf-contact-band .eyebrow::before,
.public-body .partner-cta .eyebrow::before,
.public-body .tf23-team .eyebrow::before,
.public-body .tf23-team-mark .eyebrow::before{
  background:rgba(255,255,255,.92) !important;
}
.public-body .tf16-final-cta h2,
.public-body .tf-contact-band h2,
.public-body .partner-cta h2,
.public-body .tf23-team-mark h2,
.public-body .tf23-team-mark strong,
.public-body .tf23-team-mark small,
.public-body .tf23-team-mark span,
.public-body .tf16-final-cta p,
.public-body .tf-contact-band p,
.public-body .partner-cta p{
  color:#fff !important;
}
.public-body .tf-contact-band p,
.public-body .tf16-final-cta p,
.public-body .partner-cta p{
  opacity:1 !important;
}
.public-body .tf-contact-band,
.public-body .tf16-final-cta,
.public-body .partner-cta{
  box-shadow:none !important;
}
.public-body .tf-contact-band .tf-page-container,
.public-body .tf16-final-cta,
.public-body .partner-cta{
  align-items:center;
}

/* 116A3 – Partner-CTA bewusst als dunkle Kontrastfläche */
.public-body .partner-page > .partner-cta{
  background:#30383c !important;
  color:#fff !important;
}
.public-body .partner-page > .partner-cta h2,
.public-body .partner-page > .partner-cta p{
  color:#fff !important;
}
.public-body .partner-page > .partner-cta .eyebrow{
  color:#fff !important;
}
.public-body .partner-page > .partner-cta .eyebrow::before{
  background:#e3000f !important;
}
.public-body .partner-page > .partner-cta .button{
  background:#e3000f !important;
  color:#fff !important;
  border:1px solid #e3000f !important;
}
.public-body .partner-page > .partner-cta .button:hover,
.public-body .partner-page > .partner-cta .button:focus-visible{
  background:#b6000c !important;
  border-color:#b6000c !important;
  color:#fff !important;
}

/* 116A4 – Einheitliches Button-/Hover-System nach Untergrund */
/*
   Helle Fläche:
   - Primär: TOPFORM Rot -> Dunkelrot
   - Sekundär: Weiß/Anthrazit -> Anthrazit/Weiß
   Dunkle Fläche:
   - Primär: TOPFORM Rot -> Weiß/Anthrazit
   - Sekundär: transparent/Weiß -> Weiß/Anthrazit
   Rote Fläche:
   - Primär: Weiß/Rot -> Anthrazit/Weiß
   - Sekundär: transparent/Weiß -> Weiß/Rot
*/

/* 1. Standard auf hellen Flächen */
.public-body .button:not(.button-secondary){
  background:#e3000f !important;
  color:#fff !important;
  border:1px solid #e3000f !important;
}
.public-body .button:not(.button-secondary):hover,
.public-body .button:not(.button-secondary):focus-visible{
  background:#b6000c !important;
  color:#fff !important;
  border-color:#b6000c !important;
}
.public-body .button-secondary{
  background:#fff !important;
  color:#202427 !important;
  border:1px solid #202427 !important;
}
.public-body .button-secondary:hover,
.public-body .button-secondary:focus-visible{
  background:#202427 !important;
  color:#fff !important;
  border-color:#202427 !important;
}

/* 2. Buttons auf dunklen/anthrazitfarbenen Flächen */
.public-body .knowledge-band .button:not(.button-secondary),
.public-body .tf23-principles .button:not(.button-secondary),
.public-body .tf36-advice .button:not(.button-secondary),
.public-body .cms44-cta .button:not(.button-secondary),
.public-body .partner-page > .partner-cta .button:not(.button-secondary),
.public-body .tf-page-band--dark .button:not(.button-secondary),
.public-body .tf-dark .button:not(.button-secondary){
  background:#e3000f !important;
  color:#fff !important;
  border-color:#e3000f !important;
}
.public-body .knowledge-band .button:not(.button-secondary):hover,
.public-body .knowledge-band .button:not(.button-secondary):focus-visible,
.public-body .tf23-principles .button:not(.button-secondary):hover,
.public-body .tf23-principles .button:not(.button-secondary):focus-visible,
.public-body .tf36-advice .button:not(.button-secondary):hover,
.public-body .tf36-advice .button:not(.button-secondary):focus-visible,
.public-body .cms44-cta .button:not(.button-secondary):hover,
.public-body .cms44-cta .button:not(.button-secondary):focus-visible,
.public-body .partner-page > .partner-cta .button:not(.button-secondary):hover,
.public-body .partner-page > .partner-cta .button:not(.button-secondary):focus-visible,
.public-body .tf-page-band--dark .button:not(.button-secondary):hover,
.public-body .tf-page-band--dark .button:not(.button-secondary):focus-visible,
.public-body .tf-dark .button:not(.button-secondary):hover,
.public-body .tf-dark .button:not(.button-secondary):focus-visible{
  background:#fff !important;
  color:#202427 !important;
  border-color:#fff !important;
}
.public-body .knowledge-band .button-secondary,
.public-body .tf23-principles .button-secondary,
.public-body .tf36-advice .button-secondary,
.public-body .cms44-cta .button-secondary,
.public-body .partner-page > .partner-cta .button-secondary,
.public-body .tf-page-band--dark .button-secondary,
.public-body .tf-dark .button-secondary{
  background:transparent !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.9) !important;
}
.public-body .knowledge-band .button-secondary:hover,
.public-body .knowledge-band .button-secondary:focus-visible,
.public-body .tf23-principles .button-secondary:hover,
.public-body .tf23-principles .button-secondary:focus-visible,
.public-body .tf36-advice .button-secondary:hover,
.public-body .tf36-advice .button-secondary:focus-visible,
.public-body .cms44-cta .button-secondary:hover,
.public-body .cms44-cta .button-secondary:focus-visible,
.public-body .partner-page > .partner-cta .button-secondary:hover,
.public-body .partner-page > .partner-cta .button-secondary:focus-visible,
.public-body .tf-page-band--dark .button-secondary:hover,
.public-body .tf-page-band--dark .button-secondary:focus-visible,
.public-body .tf-dark .button-secondary:hover,
.public-body .tf-dark .button-secondary:focus-visible{
  background:#fff !important;
  color:#202427 !important;
  border-color:#fff !important;
}

/* 3. Buttons auf roten Flächen */
.public-body .tf-contact-band .button:not(.button-secondary),
.public-body .tf16-final-cta .button:not(.button-secondary),
.public-body .partner-cta:not(.partner-page > .partner-cta) .button:not(.button-secondary),
.public-body .tf-red-band .button:not(.button-secondary){
  background:#fff !important;
  color:#e3000f !important;
  border-color:#fff !important;
}
.public-body .tf-contact-band .button:not(.button-secondary):hover,
.public-body .tf-contact-band .button:not(.button-secondary):focus-visible,
.public-body .tf16-final-cta .button:not(.button-secondary):hover,
.public-body .tf16-final-cta .button:not(.button-secondary):focus-visible,
.public-body .tf-red-band .button:not(.button-secondary):hover,
.public-body .tf-red-band .button:not(.button-secondary):focus-visible{
  background:#202427 !important;
  color:#fff !important;
  border-color:#202427 !important;
}
.public-body .tf-contact-band .button-secondary,
.public-body .tf16-final-cta .button-secondary,
.public-body .tf-red-band .button-secondary{
  background:transparent !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.9) !important;
}
.public-body .tf-contact-band .button-secondary:hover,
.public-body .tf-contact-band .button-secondary:focus-visible,
.public-body .tf16-final-cta .button-secondary:hover,
.public-body .tf16-final-cta .button-secondary:focus-visible,
.public-body .tf-red-band .button-secondary:hover,
.public-body .tf-red-band .button-secondary:focus-visible{
  background:#fff !important;
  color:#e3000f !important;
  border-color:#fff !important;
}

/* Kein Springen/Transformieren mehr beim Hover: nur Farbe/Kontrast ändert sich */
.public-body .button:hover,
.public-body .button:focus-visible{
  transform:none !important;
}

/* ===== 116J SOURCE: package-116g.css ===== */
/* TOPFORM 116G – Wissen: kompakte Produktfamilien-Links */
.tf116g-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}
.tf116g-product-card{display:grid;grid-template-rows:150px auto;min-width:0;background:#fff;border:1px solid #dfe3e5;color:inherit;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease}
.tf116g-product-card:hover{border-color:#e3000f;box-shadow:0 10px 26px rgba(32,36,39,.08)}
.tf116g-product-image{display:flex;align-items:center;justify-content:center;min-width:0;padding:16px;background:#f3f5f5;overflow:hidden}
.tf116g-product-image img{width:100%;height:100%;object-fit:contain}
.tf116g-product-placeholder{font-weight:800;letter-spacing:.08em;color:#68737a}
.tf116g-product-copy{display:flex;flex-direction:column;gap:7px;padding:18px}
.tf116g-product-copy small{color:#68737a;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}
.tf116g-product-copy strong{font-size:1.08rem;line-height:1.25}
.tf116g-product-copy>span{margin-top:auto;padding-top:8px;color:#e3000f;font-weight:700}
@media(max-width:900px){.tf116g-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.tf116g-product-grid{grid-template-columns:1fr}.tf116g-product-card{grid-template-columns:120px 1fr;grid-template-rows:auto}.tf116g-product-image{min-height:120px}}

/* ===== 116J SOURCE: package-116i.css ===== */
/* TOPFORM 116I – Workshop-Ergebnisse David Storl */
.hit-principle-grid--five{grid-template-columns:repeat(5,minmax(0,1fr))}
.hit-principle-grid--five article{min-height:340px}
.hit-workshop-teaser{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);gap:clamp(2rem,6vw,6rem);align-items:start;background:#f3f5f3}
.hit-workshop-teaser-copy>p:last-child{font-size:1.15rem;line-height:1.7;color:#555e59;max-width:50rem}
.hit-workshop-teaser-copy h2{font-size:clamp(2.4rem,5vw,5.2rem);line-height:.95;letter-spacing:-.04em;margin:.4rem 0 1.25rem}
.hit-workshop-teaser-points{display:grid;gap:1px;background:#d8ddd8;border:1px solid #d8ddd8}
.hit-workshop-teaser-points>div{background:#fff;padding:1.5rem 1.7rem}
.hit-workshop-teaser-points strong,.hit-workshop-teaser-points span{display:block}
.hit-workshop-teaser-points strong{font-size:1.2rem;margin-bottom:.45rem}
.hit-workshop-teaser-points span{color:#5f6662;line-height:1.55}
.tf23-principles-head{max-width:900px}
.tf23-principles-intro{max-width:760px;color:rgba(255,255,255,.8);font-size:1.05rem;line-height:1.6;margin-top:1rem}
.tf23-principles-more{margin-top:28px}
@media(max-width:1180px){
  .hit-principle-grid--five{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:980px){
  .hit-workshop-teaser{grid-template-columns:1fr}
  .hit-principle-grid--five{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .hit-principle-grid--five{grid-template-columns:1fr}
  .hit-principle-grid--five article{min-height:0}
}

/* 116I2 – Manifest & Care */
.tf23-manifest-grid article h3,
.hit-manifest-grid article h3{letter-spacing:-.025em}
.tf23-manifest-grid article p,
.hit-manifest-grid article p{line-height:1.5}
.tf23-care,.hit-care{position:relative}
.tf23-care::after,.hit-care::after{
  content:"CARE";position:absolute;right:16px;top:14px;
  font-size:.68rem;font-weight:800;letter-spacing:.14em;opacity:.45
}
.hit-care-teaser{
  margin-top:28px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:clamp(24px,5vw,70px);align-items:start;padding:clamp(24px,4vw,44px);
  background:#202427;color:#fff
}
.hit-care-teaser .eyebrow{color:#fff;opacity:.72}
.hit-care-teaser h3{margin:.35rem 0 0;font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.02;letter-spacing:-.035em}
.hit-care-teaser>p{margin:0;font-size:1.1rem;line-height:1.7;color:rgba(255,255,255,.82)}
@media(max-width:760px){.hit-care-teaser{grid-template-columns:1fr}}


/* TOPFORM 116J3 – Wissen-Hub: konsistente Navigation + Abschlussabstand */
.tf116j3-knowledge-back{background:#fff;padding:0 0 1rem}
.tf116j3-knowledge-back a{display:inline-block;color:var(--tf-red,#e3000f);font-weight:700;text-decoration:none}
.tf116j3-knowledge-back a:hover{text-decoration:underline}
.knowledge-hub{padding-bottom:clamp(2.5rem,5vw,4.5rem)}

/* 116J4 – Wissen: sichtbarer Abschlussabstand vor dem Footer */
.knowledge-hub{
  padding-bottom:clamp(48px,6vw,84px);
}
@media(max-width:640px){
  .knowledge-hub{padding-bottom:40px}
}


/* 116J5 – Wissen: mehr Luft vor CTA und saubere Buttonbeschriftung */
.public-body .knowledge-listing{
  padding-bottom:clamp(24px,4vw,44px);
}
.public-body .knowledge-cta{
  margin-top:clamp(24px,4vw,48px);
}
.public-body .knowledge-cta__inner .button{
  flex:0 0 auto;
  min-width:max-content;
  white-space:nowrap;
  line-height:1.15;
  text-align:center;
}
@media (max-width: 700px){
  .public-body .knowledge-cta__inner .button{
    min-width:0;
    max-width:100%;
    white-space:normal;
  }
}


/* 116J7 – konsistente Wissen-Navigation und Breadcrumbs */
.public-body .tf-breadcrumbs{
  margin:0 0 1.35rem;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.5rem;
  font-size:.86rem;
  color:rgba(255,255,255,.72);
}
.public-body .tf-breadcrumbs a{
  color:#fff;
  text-decoration:none;
  text-underline-offset:3px;
}
.public-body .tf-breadcrumbs a:hover{text-decoration:underline}
.public-body .tf-breadcrumbs [aria-current="page"]{color:rgba(255,255,255,.72)}
.public-body .tf78-breadcrumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.45rem;
}
.public-body .tf78-breadcrumb a{
  text-decoration:none;
}
.public-body .tf78-breadcrumb a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}
.public-body .tf78-breadcrumb [aria-current="page"]{
  font-weight:700;
}


/* 116J8 – Wissen: globaler Abschlussabstand für Hub und Fachwissen */
.public-body .knowledge-content-spacer{
  display:block;
  width:100%;
  height:clamp(56px,7vw,96px);
  flex:0 0 auto;
  background:#fff;
}
@media(max-width:640px){
  .public-body .knowledge-content-spacer{height:44px}
}


/* 116K – Downloadcenter */
.tf116k-hero{background:linear-gradient(135deg,#252c31 0%,#3c454b 100%);color:#fff;padding:clamp(4rem,7vw,6.5rem) 0}
.tf116k-hero .section-inner,.tf116k-tools .section-inner,.tf116k-library .section-inner{width:min(100%,1240px);margin:0 auto;padding-left:clamp(20px,3vw,32px);padding-right:clamp(20px,3vw,32px)}
.tf116k-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.45fr);gap:clamp(2rem,6vw,6rem);align-items:end}
.tf116k-hero h1{color:#fff;max-width:850px}
.tf116k-hero p:not(.eyebrow){max-width:760px;color:rgba(255,255,255,.82);font-size:1.15rem}
.tf116k-hero-meta{border-left:4px solid #e3000f;padding-left:1.4rem;display:grid}
.tf116k-hero-meta strong{font-size:3.2rem;line-height:1}
.tf116k-hero-meta span{color:rgba(255,255,255,.72);margin-top:.5rem}
.tf116k-tools{background:#f2f4f4;padding:2rem 0}
.tf116k-filter{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(190px,.65fr) auto auto;gap:12px;align-items:end}
.tf116k-filter label{display:grid;gap:7px;font-weight:700}
.tf116k-filter input,.tf116k-filter select{width:100%;min-height:48px;padding:0 13px;border:1px solid #c7ced1;background:#fff;font:inherit}
.tf116k-special-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}
.tf116k-special-links a{display:flex;justify-content:space-between;gap:18px;padding:18px 20px;background:#fff;border:1px solid #dce1e3;text-decoration:none}
.tf116k-special-links a:hover{border-color:#e3000f}
.tf116k-special-links span{color:#e3000f;font-weight:700}
.tf116k-library{padding:clamp(3rem,6vw,5.5rem) 0}
.tf116k-assortment{border-top:1px solid #dfe3e5}
.tf116k-assortment:last-child{border-bottom:1px solid #dfe3e5}
.tf116k-assortment>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:1.45rem;font-weight:800}
.tf116k-assortment>summary::-webkit-details-marker{display:none}
.tf116k-assortment>summary small{font-size:.78rem;color:#68737a;text-transform:uppercase;letter-spacing:.08em}
.tf116k-assortment-body{padding:4px 0 34px}
.tf116k-area{padding:24px 0}
.tf116k-area-head h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:.15rem 0 1.4rem}
.tf116k-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.tf116k-family{border:1px solid #dfe3e5;background:#fff}
.tf116k-family-head{display:flex;justify-content:space-between;gap:20px;padding:20px;border-bottom:1px solid #e4e8e9}
.tf116k-family-head small{color:#68737a;text-transform:uppercase;font-size:.72rem;letter-spacing:.07em}
.tf116k-family-head h3{margin:.25rem 0 0;font-size:1.25rem}
.tf116k-family-head>a{align-self:flex-end;color:#e3000f;font-weight:700;text-decoration:none;white-space:nowrap}
.tf116k-documents{display:grid}
.tf116k-document{display:grid;grid-template-columns:120px minmax(0,1fr) 34px;gap:14px;align-items:center;padding:15px 20px;text-decoration:none;border-bottom:1px solid #eef0f1}
.tf116k-document:last-child{border-bottom:0}
.tf116k-document:hover{background:#f7f8f8}
.tf116k-doc-type{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:#68737a}
.tf116k-doc-copy{min-width:0;display:grid;gap:2px}
.tf116k-doc-copy strong{line-height:1.25}
.tf116k-doc-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7a8388}
.tf116k-download-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e3000f;color:#fff;font-weight:900}
@media(max-width:900px){.tf116k-hero-grid,.tf116k-family-grid{grid-template-columns:1fr}.tf116k-filter{grid-template-columns:1fr 1fr}.tf116k-special-links{grid-template-columns:1fr}}
@media(max-width:640px){.tf116k-filter{grid-template-columns:1fr}.tf116k-document{grid-template-columns:1fr 34px}.tf116k-doc-type{grid-column:1/-1}.tf116k-family-head{display:grid}.tf116k-family-head>a{align-self:auto}}


/* 116K1 – technische Hilfe im Downloadcenter */
.tf116k-help{
  background:#30383d;
  color:#fff;
  padding:clamp(3.5rem,6vw,5.5rem) 0;
}
.tf116k-help .section-inner{
  width:min(100%,1240px);
  margin:0 auto;
  padding-left:clamp(20px,3vw,32px);
  padding-right:clamp(20px,3vw,32px);
}
.tf116k-help-grid{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:clamp(2.5rem,6vw,6rem);
  align-items:start;
}
.tf116k-help-copy h2{color:#fff;margin:.25rem 0 1rem}
.tf116k-help-copy>p:last-child{color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.65}
.tf116k-help-form{display:grid;gap:14px;background:#fff;color:#202427;padding:clamp(22px,3vw,34px)}
.tf116k-help-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tf116k-help-form label{display:grid;gap:7px;font-weight:700;font-size:.9rem}
.tf116k-help-form input,.tf116k-help-form textarea{width:100%;padding:12px 13px;border:1px solid #b9c0c4;background:#fff;font:inherit}
.tf116k-help-form textarea{resize:vertical}
.tf116k-help-check{display:flex!important;grid-template-columns:none;align-items:flex-start;gap:10px!important;font-weight:400!important}
.tf116k-help-check input{width:auto!important;margin-top:4px}
.tf116k-hp{position:absolute;left:-99999px;width:1px;height:1px;overflow:hidden}
@media(max-width:820px){
  .tf116k-help-grid,.tf116k-help-row{grid-template-columns:1fr}
}
