
/* ============ HERO VARIANTS ============ */
.hp-hero{position:relative;color:#fff;overflow:hidden}
.hp-hero-bottom{position:absolute;bottom:0;left:0;right:0;height:6px;background:var(--mbm-green-600);z-index:5}

/* Variant A: Statement on flat red */
.hp-hero.statement{background:var(--mbm-red-700);padding:80px 0 110px}
.hp-hero.statement::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 15% 25%, rgba(255,255,255,.07) 0, transparent 171px),radial-gradient(circle at 82% 70%, rgba(255,255,255,.06) 0, transparent 247px);pointer-events:none}

/* Variant B: Map heatmap bg */
.hp-hero.map{background:#4D0000;padding:80px 0 110px;position:relative}
.hp-hero.map::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(77,0,0,.8) 0%, rgba(115,0,0,.4) 60%, rgba(77,0,0,.95) 100%);pointer-events:none;z-index:1}
.hp-hero-bg-svg{position:absolute;inset:0;width:100%;height:100%;opacity:.55;z-index:0}

/* Variant C: Story */
.hp-hero.story{background:linear-gradient(135deg,#730000 0%, #990000 50%, #4D0000 100%);padding:72px 0 100px}
.hp-hero.story::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 80% 30%, rgba(255,255,255,.1) 0, transparent 475px);pointer-events:none}

.hp-hero-inner{max-width:1200px;margin:0 auto;padding:0 24px;position:relative;z-index:3}
.hp-eyebrow-w{display:inline-block;font:700 12px var(--mbm-font-display);text-transform:uppercase;letter-spacing:.18em;color:#F2C7C7;border:1px solid rgba(255,255,255,.4);padding:5px 12px;border-radius:999px;margin-bottom:18px}
.hp-h1{font:800 72px/1 var(--mbm-font-display);letter-spacing:-.028em;color:#fff;margin:0 0 16px;text-wrap:balance;max-width:900px}
.hp-h1 sup{font-size:.45em;vertical-align:super;font-weight:600;opacity:.85}
.hp-h1 em{font-style:normal;color:var(--mbm-green-500)}
.hp-tag{font:400 22px/1.45 var(--mbm-font-sans);color:#F2C7C7;max-width:640px;margin:0 0 28px}
.hp-ctas{display:flex;gap:12px;flex-wrap:wrap}

/* hero story specific */
.hp-hero-story-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center}
.hp-story-card{background:rgba(255,255,255,.08);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:28px 32px;color:#fff}
.hp-story-card .lab{font:700 11px var(--mbm-font-display);text-transform:uppercase;letter-spacing:.18em;color:var(--mbm-green-500);margin-bottom:8px}
.hp-story-card .q{font:700 22px/1.35 var(--mbm-font-display);color:#fff;margin:0 0 16px;text-wrap:balance}
.hp-story-card .a{font:400 15px/1.6 var(--mbm-font-sans);color:#F2C7C7;margin:0}

/* hero floating stats */
.hp-hero-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);max-width:780px}
.hp-hero-stats-row > div{padding:0 18px;border-left:1px solid rgba(255,255,255,.12)}
.hp-hero-stats-row > div:first-child{border-left:0;padding-left:0}
.hp-hero-stats-row b{display:block;font:800 28px var(--mbm-font-display);color:#fff;letter-spacing:-.01em;line-height:1}
.hp-hero-stats-row span{font:600 11px var(--mbm-font-display);color:#F2C7C7;text-transform:uppercase;letter-spacing:.12em;margin-top:6px;display:block}

/* Floating product preview card (variant A) */
.hp-hero-deck{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:center}
.hp-hero-preview{position:relative;width:340px}
.hp-hero-preview > div{position:absolute;background:#fff;border-radius:8px;box-shadow:0 24px 60px rgba(0,0,0,.35);overflow:hidden}
.hp-hero-preview .map-bg{width:280px;height:200px;top:-100px;right:0;transform:rotate(3deg)}
.hp-hero-preview .map-bg svg{display:block;width:100%;height:100%}
.hp-hero-preview .donut{width:140px;height:140px;top:60px;left:-10px;transform:rotate(-5deg);padding:16px}
.hp-hero-preview .donut .lbl{font:700 10px var(--mbm-font-display);color:var(--mbm-red-700);text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}
.hp-hero-preview .donut .big{font:800 28px var(--mbm-font-display);color:var(--mbm-ink)}
.hp-hero-preview .pers{width:200px;top:140px;left:130px;padding:14px;transform:rotate(2deg)}
.hp-hero-preview .pers .row{display:flex;align-items:center;gap:8px;padding:5px 0;font:500 12px var(--mbm-font-sans);color:var(--mbm-ink-2)}
.hp-hero-preview .pers .row b{font-weight:700;color:var(--mbm-ink);margin-left:auto}
.hp-hero-preview .pers .row::before{content:"";width:8px;height:8px;border-radius:999px;background:var(--mbm-green-600)}

/* Variant D: Problems → Solutions */
.hp-hero.problems{background:var(--mbm-red-800);padding:64px 0 88px;position:relative}
.hp-hero.problems::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 90% 10%, rgba(255,255,255,.08) 0, transparent 380px),radial-gradient(circle at 10% 90%, rgba(77,199,39,.08) 0, transparent 418px);pointer-events:none}
.hp-prob-head{max-width:920px;margin:0 0 32px}
.hp-prob-head .hp-h1{font-size:54px;margin-bottom:12px}
.hp-prob-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0 28px}
.hp-prob{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:8px;padding:18px 20px;display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;backdrop-filter:blur(6px)}
.hp-prob-pain{display:flex;align-items:center;gap:12px}
.hp-prob-pain i{color:#F2C7C7;font-size:18px;flex-shrink:0}
.hp-prob-pain .t{font:600 14px/1.4 var(--mbm-font-display);color:#fff}
.hp-prob-arrow{color:var(--mbm-green-500);font-size:18px}
.hp-prob-sol{display:flex;align-items:center;gap:10px}
.hp-prob-sol i{color:var(--mbm-green-500);font-size:18px;flex-shrink:0}
.hp-prob-sol .t{font:700 14px/1.35 var(--mbm-font-display);color:#fff}
.hp-prob-sol .t small{display:block;font:500 11px var(--mbm-font-display);color:var(--mbm-green-500);text-transform:uppercase;letter-spacing:.1em;margin-top:2px;font-weight:600}

@media (max-width:880px){
  .hp-prob-list{grid-template-columns:1fr}
  .hp-prob{grid-template-columns:1fr;text-align:left}
  .hp-prob-arrow{transform:rotate(90deg)}
}

/* ============ KERN-PRODUKTE ============ */
.hp-core{max-width:1200px;margin:-50px auto 0;padding:0 24px;position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hp-core-card{background:#fff;border-radius:8px;padding:28px;box-shadow:0 16px 40px rgba(31,36,40,.10);border:1px solid var(--mbm-line);display:flex;flex-direction:column;gap:14px;transition:transform .2s,box-shadow .2s;cursor:pointer;text-decoration:none;color:inherit}
.hp-core-card:hover{transform:translateY(-4px);box-shadow:0 24px 56px rgba(31,36,40,.16)}
.hp-core-icon{width:56px;height:56px;border-radius:8px;background:var(--mbm-red-700);color:#fff;display:grid;place-items:center}
.hp-core-icon i{font-size:26px;line-height:1}
.hp-core-tag{font:700 11px var(--mbm-font-display);text-transform:uppercase;letter-spacing:.14em;color:var(--mbm-red-700)}
.hp-core-card h3{font:800 22px/1.2 var(--mbm-font-display);color:var(--mbm-ink);margin:0;letter-spacing:-.01em}
.hp-core-card p{font:400 15px/1.6 var(--mbm-font-sans);color:var(--mbm-ink-2);margin:0;flex:1}
.hp-core-more{font:700 14px var(--mbm-font-display);color:var(--mbm-red-700);display:inline-flex;align-items:center;gap:8px;margin-top:6px}
.hp-core-more i{font-size:13px}

/* ============ STATS ============ */
.hp-stats{max-width:1200px;margin:96px auto 0;padding:0 24px;text-align:center}
.hp-stats .mbm-eyebrow{display:block;margin-bottom:8px}
.hp-stats h2{font:800 36px/1.15 var(--mbm-font-display);color:var(--mbm-ink);letter-spacing:-.015em;margin:0 auto 40px;text-wrap:balance;max-width:680px}
.hp-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--mbm-line);border-radius:8px;overflow:hidden;background:#fff}
.hp-stat{padding:28px 18px;border-left:1px solid var(--mbm-line);background:#fff}
.hp-stat:first-child{border-left:0}
.hp-stat b{display:block;font:800 48px/1 var(--mbm-font-display);color:var(--mbm-red-700);letter-spacing:-.025em}
.hp-stat span{font:600 12px var(--mbm-font-display);color:var(--mbm-ink-2);text-transform:uppercase;letter-spacing:.14em;margin-top:10px;display:block}

/* ============ ALLE ZIELGRUPPENDATEN ============ */
.hp-portfolio{padding:96px 0 64px}
.hp-portfolio-inner{max-width:1200px;margin:0 auto;padding:0 24px}
.hp-portfolio-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:32px}
.hp-portfolio-head h2{font:800 38px/1.15 var(--mbm-font-display);color:var(--mbm-ink);letter-spacing:-.015em;margin:0;max-width:520px;text-wrap:balance}
.hp-portfolio-head p{font:400 16px/1.55 var(--mbm-font-sans);color:var(--mbm-ink-2);max-width:360px;margin:0}
.hp-data-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.hp-data{background:#fff;border:1px solid var(--mbm-line);border-radius:6px;padding:18px;display:flex;align-items:flex-start;gap:14px;cursor:pointer;transition:all .15s}
.hp-data:hover{border-color:var(--mbm-red-700);transform:translateY(-1px);box-shadow:0 4px 14px rgba(31,36,40,.08)}
.hp-data-icon{width:36px;height:36px;border-radius:6px;background:var(--mbm-red-100);color:var(--mbm-red-700);display:grid;place-items:center;flex-shrink:0;margin-top:2px}
.hp-data-icon i{font-size:16px;line-height:1}
.hp-data-name{font:700 14px/1.3 var(--mbm-font-display);color:var(--mbm-ink);text-decoration:none}
.hp-data-name small{display:block;font:400 12px/1.45 var(--mbm-font-sans);color:var(--mbm-ink-3);margin-top:4px;font-weight:400}

/* ============ BRANCHEN ============ */
.hp-branches{background:var(--mbm-bg-alt);padding:96px 0;border-top:1px solid var(--mbm-line);border-bottom:1px solid var(--mbm-line)}
.hp-branches-inner{max-width:1200px;margin:0 auto;padding:0 24px}
.hp-branches-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:32px}
.hp-branches-head h2{font:800 38px/1.15 var(--mbm-font-display);color:var(--mbm-ink);letter-spacing:-.015em;margin:0;max-width:520px;text-wrap:balance}
.hp-branches-head p{font:400 16px/1.55 var(--mbm-font-sans);color:var(--mbm-ink-2);max-width:360px;margin:0}
.hp-branches-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.hp-branch{background:#fff;border:1px solid var(--mbm-line);border-radius:6px;padding:22px 18px;text-align:left;display:flex;flex-direction:column;gap:10px;cursor:pointer;transition:all .2s;text-decoration:none;color:inherit}
.hp-branch:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(31,36,40,.12);border-color:var(--mbm-red-700)}
.hp-branch-icon{width:44px;height:44px;border-radius:8px;background:var(--mbm-red-700);color:#fff;display:grid;place-items:center;transition:transform .2s}
.hp-branch:hover .hp-branch-icon{transform:scale(1.08)}
.hp-branch-icon i{font-size:20px;line-height:1}
.hp-branch h3{font:800 16px var(--mbm-font-display);color:var(--mbm-ink);margin:0;letter-spacing:-.005em}
.hp-branch p{font:400 13px/1.5 var(--mbm-font-sans);color:var(--mbm-ink-3);margin:0;flex:1}
.hp-branch .more{font:700 12px var(--mbm-font-display);color:var(--mbm-red-700);display:inline-flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.1em}

/* ============ STORY QUOTE ============ */
.hp-story-bar{background:var(--mbm-ink);color:#fff;padding:80px 0;position:relative;overflow:hidden}
.hp-story-bar::before{content:"\201C";position:absolute;left:-30px;top:-100px;font:800 480px var(--mbm-font-display);color:rgba(255,255,255,.04);line-height:1;font-family:Georgia,serif;pointer-events:none}
.hp-story-bar-inner{max-width:880px;margin:0 auto;padding:0 24px;text-align:center;position:relative}
.hp-story-bar .mbm-eyebrow{color:var(--mbm-green-500);display:inline-block;margin-bottom:14px}
.hp-story-bar h2{font:600 34px/1.35 var(--mbm-font-display);color:#fff;letter-spacing:-.005em;margin:0 0 24px;text-wrap:balance}
.hp-story-bar h2 em{font-style:normal;color:var(--mbm-green-500);font-weight:800}
.hp-story-bar .sig{font:700 13px var(--mbm-font-display);text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.6)}
.hp-story-bar .sig b{color:#fff;font-weight:800}

/* ============ AKTUELLES + RATGEBER ============ */
.hp-feed{padding:96px 0}
.hp-feed-inner{max-width:1200px;margin:0 auto;padding:0 24px}
.hp-feed-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:start}
.hp-news-card-list{display:grid;gap:14px}
.hp-feed h2{font:800 28px var(--mbm-font-display);color:var(--mbm-ink);margin:0 0 18px;letter-spacing:-.01em}
.hp-news{background:#fff;border:1px solid var(--mbm-line);border-radius:6px;padding:20px 22px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;cursor:pointer;transition:all .2s}
.hp-news:hover{transform:translateX(3px);border-color:var(--mbm-red-700)}
.hp-news-date{background:var(--mbm-red-700);color:#fff;border-radius:6px;padding:10px 14px;text-align:center;min-width:64px}
.hp-news-date .d{font:800 24px var(--mbm-font-display);line-height:1}
.hp-news-date .m{font:700 10px var(--mbm-font-display);text-transform:uppercase;letter-spacing:.12em;margin-top:2px}
.hp-news h3{font:800 16px/1.35 var(--mbm-font-display);color:var(--mbm-ink);margin:0 0 4px;text-wrap:balance}
.hp-news .meta{font:600 12px var(--mbm-font-display);color:var(--mbm-green-700);text-transform:uppercase;letter-spacing:.1em}
.hp-news .meta i{margin-right:6px}

.hp-articles{display:grid;gap:12px}
.hp-article{background:#fff;border:1px solid var(--mbm-line);border-radius:6px;padding:18px;display:flex;gap:14px;cursor:pointer;transition:all .15s}
.hp-article:hover{border-color:var(--mbm-red-700)}
.hp-article-thumb{background:linear-gradient(135deg,#990000 0%,#4D0000 100%);width:64px;height:64px;border-radius:4px;flex-shrink:0;display:grid;place-items:center;color:#fff}
.hp-article-thumb i{font-size:24px}
.hp-article h4{font:700 14px/1.35 var(--mbm-font-display);color:var(--mbm-ink);margin:0 0 4px;text-wrap:balance}
.hp-article .meta{font:500 11px var(--mbm-font-sans);color:var(--mbm-ink-3);text-transform:uppercase;letter-spacing:.08em}

/* ============ ÜBER UNS ============ */
.hp-about{background:var(--mbm-bg-alt);padding:96px 0;border-top:1px solid var(--mbm-line);border-bottom:1px solid var(--mbm-line)}
.hp-about-inner{max-width:1200px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:center}
.hp-about h2{font:800 38px/1.15 var(--mbm-font-display);color:var(--mbm-ink);letter-spacing:-.015em;margin:0 0 16px;text-wrap:balance}
.hp-about p{font:400 17px/1.65 var(--mbm-font-sans);color:var(--mbm-ink-2);margin:0 0 14px}
.hp-about .cta{margin-top:8px;display:inline-flex;align-items:center;gap:8px;font:700 14px var(--mbm-font-display);color:var(--mbm-red-700)}
.hp-team{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hp-team-card{background:#fff;border:1px solid var(--mbm-line);border-radius:6px;padding:22px;display:flex;flex-direction:column;gap:6px}
.hp-team-photo{width:56px;height:56px;border-radius:999px;color:#fff;font:800 22px var(--mbm-font-display);display:grid;place-items:center;margin-bottom:6px}
.hp-team-card h4{font:800 17px var(--mbm-font-display);color:var(--mbm-ink);margin:0}
.hp-team-card .role{font:600 12px var(--mbm-font-display);color:var(--mbm-red-700);text-transform:uppercase;letter-spacing:.12em}
.hp-team-card p{font:400 13px/1.5 var(--mbm-font-sans);color:var(--mbm-ink-2);margin:6px 0 0}

/* ============ REFERENZEN ============ */
.hp-refs{padding:80px 0;background:#fff}
.hp-refs-inner{max-width:1200px;margin:0 auto;padding:0 24px;text-align:center}
.hp-refs .mbm-eyebrow{display:inline-block;margin-bottom:8px}
.hp-refs h3{font:800 24px var(--mbm-font-display);color:var(--mbm-ink);margin:0 auto 28px;max-width:520px;text-wrap:balance}
.hp-refs-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.hp-ref{padding:10px 18px;border:1px solid var(--mbm-line);border-radius:4px;background:#fff;color:var(--mbm-ink-2);font:700 12px var(--mbm-font-display);letter-spacing:.05em;text-transform:uppercase}

/* ============ CTA BAND ============ */
.hp-cta{background:var(--mbm-red-700);color:#fff;padding:64px 24px;text-align:center;position:relative;overflow:hidden}
.hp-cta::before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 80% 50%, rgba(255,255,255,.06) 0, transparent 380px);pointer-events:none}
.hp-cta-inner{max-width:880px;margin:0 auto;position:relative}
.hp-cta h2{font:800 38px/1.15 var(--mbm-font-display);color:#fff;margin:0 0 12px;letter-spacing:-.015em;text-wrap:balance}
.hp-cta p{font:400 17px/1.55 var(--mbm-font-sans);color:#F2C7C7;margin:0 0 28px;max-width:560px;margin-left:auto;margin-right:auto}
.hp-cta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:520px;margin:0 auto}
.hp-cta-btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);color:#fff;padding:14px 18px;border-radius:6px;text-align:left;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .2s;text-decoration:none;font:700 14px var(--mbm-font-display)}
.hp-cta-btn:hover{background:rgba(255,255,255,.18);border-color:#fff}
.hp-cta-btn.primary{background:var(--mbm-green-600);border-color:var(--mbm-green-600)}
.hp-cta-btn.primary:hover{background:var(--mbm-green-700)}
.hp-cta-btn i{font-size:18px;flex-shrink:0}
.hp-cta-btn span{display:flex;flex-direction:column;gap:2px}
.hp-cta-btn small{font:600 11px var(--mbm-font-display);text-transform:uppercase;letter-spacing:.1em;opacity:.8}

@media (max-width:880px){
  .hp-core,.hp-stats-row,.hp-data-grid,.hp-branches-grid,.hp-cta-grid,.hp-feed-grid,.hp-about-inner,.hp-hero-story-grid,.hp-hero-deck,.hp-team{grid-template-columns:1fr}
  .hp-h1{font-size:42px}
  .hp-hero-preview{display:none}
}

/* ---- Card art: data-graphic panel behind the topic icon ---- */
.rg-feat-big .img,.rg-feat-sm .ic,.cat-card-img,.cat-featured-img,.art-rel-card .img,.hp-article-thumb{position:relative;overflow:hidden}
.rg-feat-big .img::after,.cat-card-img::after,.cat-featured-img::after,.art-rel-card .img::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px),radial-gradient(circle at 22% 68%, rgba(77,199,39,.35) 0, transparent 42%),radial-gradient(circle at 74% 30%, rgba(255,255,255,.18) 0, transparent 38%);background-size:28px 28px,28px 28px,100% 100%,100% 100%}
.rg-feat-sm .ic::after,.hp-article-thumb::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);background-size:13px 13px,13px 13px}
.rg-feat-big .img i,.cat-card-img i,.cat-featured-img i,.art-rel-card .img i,.rg-feat-sm .ic i,.hp-article-thumb i{position:relative;z-index:2}
.rg-feat-big .img .tag,.cat-card-tag,.art-rel-card .img .tag{z-index:3}
