/* ═══════════════════════════════════════════════════════════
   ML-Express Premium – main.css v1.1.0
   Screenshot-Replik 1:1 | Manrope + Inter | Gold + Navy
   ═══════════════════════════════════════════════════════════ */

:root {
  --navy:    #1a2b4a;
  --navy-2:  #1e3258;
  --navy-3:  #243860;
  --gold:    #c9a84c;
  --gold-l:  #e2bf6a;
  --gold-d:  #a07832;
  --gold-bg: rgba(201,168,76,.09);
  --gold-bd: rgba(201,168,76,.25);
  --white:   #ffffff;
  --off:     #f8f7f4;
  --border:  #e5e7eb;
  --text:    #111827;
  --muted:   #6b7280;
  --r:       6px;
  --r-lg:    12px;
  --r-xl:    18px;
  --t:       .2s ease;
  --sh:      0 4px 20px rgba(0,0,0,.09);
  --sh-lg:   0 12px 44px rgba(0,0,0,.13);
}

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { font-size:16px; scroll-behavior:smooth; }
body {
  font-family:'Inter','Segoe UI',system-ui,sans-serif;
  background:var(--white); color:var(--text);
  overflow-x:hidden; -webkit-font-smoothing:antialiased; line-height:1.68;
}
h1,h2,h3,h4,h5 { font-family:'Manrope',sans-serif; font-weight:800; line-height:1.12; color:var(--navy); }
a { text-decoration:none; color:inherit; }
img { display:block; max-width:100%; height:auto; }
ul { list-style:none; }
button { cursor:pointer; font-family:inherit; }
input,textarea,select { font-family:inherit; }

/* ══════════════════════════════════════════════════════════
   TICKER BAR
   ══════════════════════════════════════════════════════════ */
.mlp-ticker {
  background:var(--navy); color:rgba(255,255,255,.72);
  font-size:.88rem; font-weight:400;
  overflow:hidden; white-space:nowrap; padding:.4rem 0; z-index:600; position:relative;
}
.mlp-ticker-track { display:inline-flex; animation:mlpScroll 32s linear infinite; will-change:transform; }
.mlp-ticker-track span { padding:0 2rem; border-right:1px solid rgba(255,255,255,.1); flex-shrink:0; }
.mlp-ticker-track .gold { color:var(--gold-l); font-weight:600; }
@keyframes mlpScroll { 0%{transform:translateX(0);} 100%{transform:translateX(-50%);} }

/* ══════════════════════════════════════════════════════════
   NAVIGATION – wie Screenshot: weiß, sticky, Logo links, Links mitte, CTA rechts
   ══════════════════════════════════════════════════════════ */
.mlp-nav {
  position:sticky; top:0; z-index:500;
  background:var(--white);
  border-bottom:1px solid var(--border);
  box-shadow:0 1px 0 var(--border);
  transition:box-shadow .2s ease;
}
.mlp-nav.scrolled { box-shadow:0 4px 20px rgba(0,0,0,.1); }
.mlp-nav-inner {
  max-width:1280px; margin:0 auto; padding:.55rem 3vw;
  display:flex; align-items:center; justify-content:space-between; gap:1.5rem;
}
/* Logo + Brand */
.mlp-logo { display:flex; align-items:center; gap:.7rem; text-decoration:none; flex-shrink:0; }
.mlp-logo .custom-logo-link { line-height:0; }
.mlp-logo .custom-logo-link img,
.mlp-logo-img { height:120px; width:auto; max-width:300px; object-fit:contain; display:block; }
.mlp-brand { display:flex; flex-direction:column; line-height:1.18; }
.mlp-brand .b1 {
  font-family:'Manrope',sans-serif; font-size:1.05rem; font-weight:800;
  color:var(--navy); letter-spacing:-.01em; display:block; white-space:nowrap;
}
.mlp-brand .b2 {
  font-family:'Inter',sans-serif; font-size:.6rem; font-weight:600;
  color:var(--muted); letter-spacing:.12em; text-transform:uppercase;
  margin-top:.1rem; display:block; white-space:nowrap;
}
/* Nav links */
.mlp-nav-links { display:flex; align-items:center; gap:.15rem; flex:1; justify-content:flex-end; }
.mlp-nav-links a {
  font-size:.84rem; font-weight:500; color:var(--muted);
  padding:.48rem .82rem; border-radius:var(--r);
  transition:color var(--t), background var(--t); white-space:nowrap;
}

.mlp-nav-links a:hover { color:var(--navy); background:var(--off); }
/* CTA Button – dunkelblau wie Screenshot */
.mlp-nav-cta {
  background:var(--navy) !important; color:var(--white) !important;
  padding:.52rem 1.25rem !important; border-radius:50px !important;
  font-family:'Manrope',sans-serif !important;
  font-weight:700 !important; font-size:.8rem !important;
  white-space:nowrap !important; flex-shrink:0 !important;
  transition:background var(--t), transform var(--t) !important;
}
.mlp-nav-cta:hover { background:var(--navy-3) !important; transform:translateY(-1px) !important; }
/* Hamburger */
.mlp-hamburger {
  display:none; flex-direction:column; gap:4px;
  background:none; border:none; padding:6px; border-radius:var(--r); cursor:pointer;
}
.mlp-hamburger span { display:block; width:20px; height:2px; background:var(--navy); border-radius:2px; transition:transform .3s,opacity .3s; }
.mlp-hamburger.open span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
.mlp-hamburger.open span:nth-child(2) { opacity:0; }
.mlp-hamburger.open span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }
/* Mobile Menu */
.mlp-mob-menu {
  display:none; position:fixed; inset:0;
  background:var(--white); z-index:499;
  flex-direction:column; align-items:center; justify-content:center; gap:1rem; padding:2rem;
}
.mlp-mob-menu.open { display:flex; }
.mlp-mob-menu a {
  font-family:'Manrope',sans-serif; font-size:1.55rem; font-weight:800;
  color:var(--navy); padding:.55rem 2rem; border-radius:var(--r-lg);
  width:100%; text-align:center; transition:background var(--t), color var(--t);
}
.mlp-mob-menu a:hover { background:var(--gold-bg); color:var(--gold-d); }
.mlp-mob-close {
  position:absolute; top:1.1rem; right:1.1rem;
  background:var(--off); border:none; border-radius:50%;
  width:42px; height:42px; font-size:1.1rem;
  display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--muted);
}

/* ══════════════════════════════════════════════════════════
   HERO – EXAKT WIE SCREENSHOT: Links Text, Rechts Bild (dunkler Hochhäuser)
   Statisch, kein Flimmern, einmaliges Fade-in
   ══════════════════════════════════════════════════════════ */
#mlp-hero {
  position:relative; min-height:92vh;
  display:flex; align-items:center; overflow:hidden;
}
.mlp-hero-bg {
  position:absolute; inset:0;
  background-size:cover; background-position:center 35%;
  background-attachment:scroll;
  filter:brightness(.78) saturate(.9);
  animation:mlpHeroFadeIn 1.2s ease forwards; /* einmal, kein Loop */
}
@keyframes mlpHeroFadeIn { from{opacity:0;} to{opacity:1;} }

.mlp-hero-overlay {
  position:absolute; inset:0;
  background:linear-gradient(100deg,
    rgba(17,24,39,.82) 0%,
    rgba(17,24,39,.62) 45%,
    rgba(17,24,39,.18) 100%
  );
}
.mlp-hero-wave {
  position:absolute; bottom:-1px; left:0; right:0; line-height:0; z-index:2;
}
.mlp-hero-wave svg { width:100%; height:50px; }

.mlp-hero-inner {
  position:relative; z-index:3;
  max-width:1280px; margin:0 auto; padding:7rem 3vw 9rem; width:100%;
  animation:mlpHeroIn .9s ease .3s both;
}
@keyframes mlpHeroIn { from{opacity:0;transform:translateY(20px);} to{opacity:1;transform:none;} }

.mlp-hero-label {
  font-family:'Manrope',sans-serif; font-size:.7rem; font-weight:700;
  color:var(--gold); letter-spacing:.2em; text-transform:uppercase;
  margin-bottom:.7rem; display:block;
}
#mlp-hero h1 {
  font-family:'Manrope',sans-serif;
  font-size:clamp(2.4rem,5.5vw,4.4rem);
  font-weight:900; line-height:1.05; color:var(--white);
  margin-bottom:1.1rem; letter-spacing:-.025em; max-width:620px;
  text-shadow:0 2px 12px rgba(0,0,0,.25);
}
#mlp-hero h1 .gold { color:var(--gold); display:block; }
.mlp-hero-sub {
  font-size:clamp(.92rem,1.4vw,1.05rem); color:rgba(255,255,255,.82);
  line-height:1.78; max-width:500px; margin-bottom:2.2rem; font-weight:400;
}
.mlp-hero-btns { display:flex; gap:.9rem; flex-wrap:wrap; align-items:center; }

/* Trust bar – dezent unten im Hero */
.mlp-hero-trust {
  display:flex; gap:2rem; margin-top:2.5rem;
  padding-top:1.8rem; border-top:1px solid rgba(255,255,255,.15);
  flex-wrap:wrap;
}
.mlp-hero-trust-item {
  display:flex; align-items:center; gap:.5rem;
  font-size:.8rem; color:rgba(255,255,255,.78); font-weight:400;
}
.mlp-hero-trust-item svg { color:var(--gold); flex-shrink:0; }

/* ══════════════════════════════════════════════════════════
   TRUST BAR UNTER HERO – hell, weißer BG
   ══════════════════════════════════════════════════════════ */
.mlp-trust {
  background:var(--white); border-bottom:1px solid var(--border);
  padding:1rem 3vw;
}
.mlp-trust-inner {
  max-width:1280px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-around;
  flex-wrap:wrap; gap:.7rem 1.5rem;
}
.mlp-trust-item {
  display:flex; align-items:center; gap:.5rem;
  font-size:.83rem; font-weight:500; color:var(--navy);
}
.mlp-trust-icon {
  display:inline-flex; align-items:center; justify-content:center;
  width:20px; height:20px; border-radius:50%;
  background:var(--gold-bg); border:1.5px solid var(--gold-bd); color:var(--gold-d); flex-shrink:0;
}

/* ══════════════════════════════════════════════════════════
   LAYOUT
   ══════════════════════════════════════════════════════════ */
.mlp-section { padding:5.5rem 3vw; }
.mlp-wrap    { max-width:1280px; margin:0 auto; }
.mlp-wrap-sm { max-width:860px;  margin:0 auto; }

/* Section Tag + Title – wie Screenshot */
.mlp-tag {
  display:inline-flex; align-items:center; gap:.45rem;
  font-family:'Manrope',sans-serif; font-size:.65rem; font-weight:700;
  color:var(--gold-d); letter-spacing:.2em; text-transform:uppercase; margin-bottom:.5rem;
}
.mlp-tag::before { content:""; width:18px; height:2px; background:var(--gold); border-radius:1px; display:inline-block; }
.mlp-title {
  font-family:'Manrope',sans-serif;
  font-size:clamp(1.7rem,3.2vw,2.6rem);
  font-weight:800; color:var(--navy); margin-bottom:.7rem; letter-spacing:-.02em;
}
.mlp-title .gold { color:var(--gold-d); }
.mlp-sub { font-size:.95rem; color:var(--muted); line-height:1.8; max-width:500px; font-weight:400; }

/* ══════════════════════════════════════════════════════════
   ÜBER UNS – Bild links, Text rechts (wie Screenshot)
   ══════════════════════════════════════════════════════════ */
#mlp-about { background:var(--white); }
.mlp-about-grid { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; }
.mlp-about-img { border-radius:var(--r-xl); overflow:hidden; box-shadow:var(--sh-lg); }
.mlp-about-img img { width:100%; height:100%; object-fit:cover; aspect-ratio:4/5; display:block; }
.mlp-about-boxes { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin:1.8rem 0; }
.mlp-abox {
  padding:1.1rem; background:var(--off);
  border:1px solid var(--border); border-radius:var(--r-lg);
  transition:box-shadow var(--t), transform var(--t);
}
.mlp-abox:hover { box-shadow:var(--sh); transform:translateY(-2px); }
.mlp-abox-ico { font-size:1.3rem; margin-bottom:.4rem; }
.mlp-abox h3  { font-family:'Manrope',sans-serif; font-size:.88rem; font-weight:700; color:var(--navy); margin-bottom:.2rem; }
.mlp-abox p   { font-size:.78rem; color:var(--muted); line-height:1.5; font-weight:400; }

/* ══════════════════════════════════════════════════════════
   LEISTUNGEN – 4×2 Grid wie Screenshot
   ══════════════════════════════════════════════════════════ */
#mlp-leistungen { background:var(--off); }
.mlp-svc-head { display:flex; align-items:flex-end; justify-content:space-between; gap:2rem; margin-bottom:2.2rem; flex-wrap:wrap; }
.mlp-svc-count { font-size:.85rem; color:var(--muted); max-width:300px; line-height:1.65; font-weight:400; }
.mlp-svc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem; }
.mlp-svc-card {
  background:var(--white); border:1px solid var(--border);
  border-top:3px solid transparent;
  border-radius:var(--r-xl); overflow:hidden;
  transition:border-top-color var(--t), transform var(--t), box-shadow var(--t);
  display:flex; flex-direction:column;
}
.mlp-svc-card:hover { border-top-color:var(--gold); transform:translateY(-4px); box-shadow:var(--sh-lg); }
.mlp-svc-img-wrap { overflow:hidden; flex-shrink:0; }
.mlp-svc-img { width:100%; height:190px; object-fit:cover; display:block; transition:transform .4s ease; }
.mlp-svc-card:hover .mlp-svc-img { transform:scale(1.04); }
.mlp-svc-body { padding:1.2rem 1.2rem 1.4rem; flex:1; display:flex; flex-direction:column; }
/* Icon – line icon wie Screenshot */
.mlp-svc-ico {
  width:32px; height:32px; border-radius:var(--r); background:var(--gold-bg);
  border:1.5px solid var(--gold-bd); display:flex; align-items:center; justify-content:center;
  margin-bottom:.6rem; color:var(--gold-d); flex-shrink:0;
}
.mlp-svc-ico svg { width:17px; height:17px; }
.mlp-svc-card h3 { font-family:'Manrope',sans-serif; font-size:.93rem; font-weight:700; color:var(--navy); line-height:1.2; margin-bottom:.35rem; }
.mlp-svc-desc { font-size:.78rem; color:var(--muted); line-height:1.58; margin-bottom:.8rem; flex:1; font-weight:400; }
.mlp-svc-more {
  display:inline-flex; align-items:center; gap:.35rem;
  font-size:.78rem; font-weight:600; color:var(--gold-d);
  font-family:'Manrope',sans-serif; margin-top:auto; transition:gap var(--t);
}
.mlp-svc-more:hover { gap:.55rem; color:var(--navy); }

/* ══════════════════════════════════════════════════════════
   KUNDEN – 2 Karten (Privat / Gewerbe) wie Screenshot
   ══════════════════════════════════════════════════════════ */
#mlp-split { background:var(--white); }
.mlp-split-head { text-align:center; margin-bottom:3rem; }
.mlp-split-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.8rem; max-width:1000px; margin:0 auto; }
.mlp-split-col {
  padding:2.5rem; border-radius:var(--r-xl); border:1px solid var(--border);
  transition:border-color var(--t), box-shadow var(--t), transform var(--t);
}
.mlp-split-col:hover { border-color:var(--gold-bd); box-shadow:var(--sh); transform:translateY(-2px); }
.mlp-split-col.privat  { background:var(--off); }
.mlp-split-col.gewerbe { background:var(--gold-bg); border-color:var(--gold-bd); }
.mlp-split-ico { font-size:2.2rem; margin-bottom:.9rem; }
.mlp-split-col h3 { font-family:'Manrope',sans-serif; font-size:1.4rem; margin-bottom:.55rem; }
.mlp-split-col p  { font-size:.9rem; color:var(--muted); line-height:1.75; margin-bottom:1.3rem; font-weight:400; }
.mlp-split-list { display:flex; flex-direction:column; gap:.4rem; margin-bottom:1.6rem; }
.mlp-split-list li { font-size:.86rem; font-weight:400; display:flex; align-items:center; gap:.5rem; }
.mlp-split-list li::before { content:"→"; color:var(--gold-d); font-size:.78rem; font-weight:700; }

/* ══════════════════════════════════════════════════════════
   WARUM – 4 Boxen (wie Screenshot: hell, Checkmark-Icons)
   ══════════════════════════════════════════════════════════ */
#mlp-warum { background:var(--off); }
.mlp-warum-head { text-align:center; margin-bottom:3rem; }
.mlp-warum-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem; }
.mlp-wbox {
  background:var(--white); border:1px solid var(--border);
  border-top:3px solid transparent;
  border-radius:var(--r-xl); padding:1.8rem 1.4rem; position:relative; overflow:hidden;
  transition:border-top-color var(--t), box-shadow var(--t), transform var(--t);
}
.mlp-wbox:hover { border-top-color:var(--gold); box-shadow:var(--sh); transform:translateY(-3px); }
/* Goldener Strich animiert */
.mlp-wbox::before {
  content:""; position:absolute; top:-3px; left:0;
  height:3px; background:var(--gold); width:0; transition:width .3s ease;
}
.mlp-wbox:hover::before { width:100%; }
.mlp-wbox-ico { font-size:1.4rem; margin-bottom:.55rem; display:flex; align-items:center; }
.mlp-wbox h3  { font-family:'Manrope',sans-serif; font-size:.98rem; font-weight:700; color:var(--navy); margin-bottom:.3rem; }
.mlp-wbox p   { font-size:.8rem; color:var(--muted); line-height:1.62; font-weight:400; }

/* ══════════════════════════════════════════════════════════
   CTA – dunkler Navy-BG, gold Topline, VOLLSTÄNDIG MITTIG
   ══════════════════════════════════════════════════════════ */
#mlp-cta {
  background:linear-gradient(135deg, var(--navy) 0%, #1e3a5f 100%);
  border-top:3px solid var(--gold);
  padding:5rem 3vw; text-align:center;
}
.mlp-cta-inner {
  max-width:700px; margin:0 auto;
  display:flex; flex-direction:column; align-items:center; gap:1.5rem;
}
#mlp-cta h2 { font-family:'Manrope',sans-serif; font-size:clamp(1.7rem,3.2vw,2.6rem); color:#fff; font-weight:800; letter-spacing:-.02em; }
#mlp-cta p  { font-size:.96rem; color:rgba(255,255,255,.72); line-height:1.72; font-weight:400; max-width:540px; }
.mlp-cta-btns { display:flex; flex-direction:row; flex-wrap:wrap; gap:.85rem; justify-content:center; align-items:center; }

/* ══════════════════════════════════════════════════════════
   VERTRETUNG
   ══════════════════════════════════════════════════════════ */
#mlp-vertretung { background:var(--white); }
.mlp-vert-head { margin-bottom:2.5rem; }
.mlp-vert-grid { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.mlp-vert-box { background:var(--off); border:1px solid var(--border); border-radius:var(--r-xl); padding:2rem; }
.mlp-vert-box h3 { font-family:'Manrope',sans-serif; font-size:1.1rem; font-weight:700; color:var(--navy); margin-bottom:.9rem; }
.mlp-vert-list { display:flex; flex-direction:column; gap:.45rem; }
.mlp-vert-list li { font-size:.88rem; color:var(--muted); display:flex; align-items:center; gap:.55rem; font-weight:400; }
.mlp-vert-list li::before { content:"✓"; color:var(--gold-d); font-weight:700; font-size:.82rem; }
.mlp-vert-box p { font-size:.88rem; color:var(--muted); line-height:1.78; margin-top:1rem; font-weight:400; }

/* ══════════════════════════════════════════════════════════
   KONTAKT – Info links, Formular rechts
   ══════════════════════════════════════════════════════════ */
#mlp-kontakt { background:var(--off); }
.mlp-kontakt-head { text-align:center; margin-bottom:3rem; }
.mlp-kontakt-grid { display:grid; grid-template-columns:1fr 1.55fr; gap:3.5rem; align-items:start; }
.mlp-kon-info { display:flex; flex-direction:column; gap:.9rem; }
.mlp-kon-item {
  display:flex; align-items:flex-start; gap:.9rem;
  padding:1rem 1.2rem; background:var(--white);
  border:1px solid var(--border); border-radius:var(--r-lg);
  transition:transform var(--t), box-shadow var(--t);
}
.mlp-kon-item:hover { transform:translateX(4px); box-shadow:var(--sh); }
.mlp-kon-ico {
  width:38px; height:38px; flex-shrink:0;
  background:var(--gold-bg); border:1.5px solid var(--gold-bd);
  border-radius:var(--r); display:flex; align-items:center; justify-content:center;
  color:var(--gold-d);
}
.mlp-kon-ico svg { width:17px; height:17px; }
.mlp-kon-txt strong { display:block; font-size:.62rem; font-weight:700; color:var(--gold-d); letter-spacing:.14em; text-transform:uppercase; margin-bottom:.18rem; font-family:'Manrope',sans-serif; }
.mlp-kon-txt a, .mlp-kon-txt span { font-size:.88rem; font-weight:400; color:var(--text); display:block; text-decoration:none; line-height:1.45; transition:color var(--t); }
.mlp-kon-txt a:hover { color:var(--gold-d); }
.mlp-kon-note { padding:1.2rem; background:var(--gold-bg); border:1.5px solid var(--gold-bd); border-radius:var(--r-lg); }
.mlp-kon-note h3 { font-family:'Manrope',sans-serif; font-size:.95rem; font-weight:700; color:var(--gold-d); margin-bottom:.3rem; }
.mlp-kon-note p  { font-size:.83rem; color:var(--muted); line-height:1.68; font-weight:400; }
/* Form */
.mlp-form-card { background:var(--white); border:1px solid var(--border); border-radius:var(--r-xl); padding:2.2rem; box-shadow:var(--sh); }
.mlp-form { display:flex; flex-direction:column; gap:.85rem; }
.mlp-form-row { display:grid; grid-template-columns:1fr 1fr; gap:.85rem; }
.mlp-fg { display:flex; flex-direction:column; gap:.32rem; }
.mlp-fg label { font-size:.64rem; font-weight:700; color:var(--gold-d); letter-spacing:.1em; text-transform:uppercase; font-family:'Manrope',sans-serif; }
.mlp-fg input,.mlp-fg textarea,.mlp-fg select {
  padding:.78rem .95rem; background:var(--off); border:1.5px solid var(--border);
  border-radius:var(--r); color:var(--text); font-family:'Inter',sans-serif;
  font-size:.88rem; outline:none; width:100%;
  transition:border-color var(--t), background var(--t), box-shadow var(--t);
}
.mlp-fg input:focus,.mlp-fg textarea:focus,.mlp-fg select:focus { border-color:var(--gold); background:var(--white); box-shadow:0 0 0 3px var(--gold-bg); }
.mlp-fg textarea { min-height:100px; resize:vertical; }
.mlp-privacy { display:flex; align-items:flex-start; gap:.65rem; font-size:.78rem; color:var(--muted); line-height:1.52; font-weight:400; }
.mlp-privacy input[type="checkbox"] { width:15px; height:15px; flex-shrink:0; margin-top:.15rem; accent-color:var(--gold); }
.mlp-form-ok  { display:none; padding:.85rem 1rem; border-radius:var(--r); background:var(--gold-bg); border:1.5px solid var(--gold-bd); color:var(--gold-d); font-size:.88rem; font-weight:600; }
.mlp-form-ok.show { display:flex; align-items:center; gap:.5rem; }
.mlp-form-err { display:none; padding:.68rem .95rem; border-radius:var(--r); background:rgba(220,38,38,.06); border:1.5px solid rgba(220,38,38,.2); color:#dc2626; font-size:.83rem; }
.mlp-form-err.show { display:block; }

/* ══════════════════════════════════════════════════════════
   BUTTONS – wie Screenshot: Navy + Gold
   ══════════════════════════════════════════════════════════ */
.btn-primary {
  display:inline-flex; align-items:center; gap:.45rem;
  background:var(--gold); color:var(--navy);
  padding:.88rem 2rem; border-radius:50px;
  font-family:'Manrope',sans-serif; font-weight:700; font-size:.88rem;
  box-shadow:0 4px 16px rgba(201,168,76,.32);
  transition:background var(--t), transform var(--t), box-shadow var(--t);
  text-decoration:none; border:none; cursor:pointer;
}
.btn-primary:hover { background:var(--gold-l); transform:translateY(-2px); box-shadow:0 8px 22px rgba(201,168,76,.42); color:var(--navy); }
.btn-outline {
  display:inline-flex; align-items:center; gap:.45rem;
  background:transparent; color:var(--white);
  padding:.88rem 2rem; border-radius:50px;
  font-family:'Manrope',sans-serif; font-weight:600; font-size:.88rem;
  border:2px solid rgba(255,255,255,.42); text-decoration:none;
  transition:border-color var(--t), background var(--t);
}
.btn-outline:hover { border-color:rgba(255,255,255,.85); background:rgba(255,255,255,.1); color:#fff; }
.btn-navy {
  display:inline-flex; align-items:center; gap:.45rem;
  background:var(--navy); color:var(--white);
  padding:.78rem 1.7rem; border-radius:50px;
  font-family:'Manrope',sans-serif; font-weight:700; font-size:.85rem;
  text-decoration:none; transition:background var(--t), transform var(--t);
}
.btn-navy:hover { background:var(--navy-3); transform:translateY(-1px); color:#fff; }
.btn-gold {
  display:inline-flex; align-items:center; gap:.45rem;
  background:var(--gold); color:var(--navy);
  padding:.78rem 1.7rem; border-radius:50px;
  font-family:'Manrope',sans-serif; font-weight:700; font-size:.85rem;
  text-decoration:none; box-shadow:0 4px 12px rgba(201,168,76,.28);
  transition:background var(--t), transform var(--t);
}
.btn-gold:hover { background:var(--gold-l); transform:translateY(-1px); }
.btn-cta-gold {
  display:inline-flex; align-items:center; justify-content:center; gap:.45rem;
  background:var(--gold); color:var(--navy);
  padding:.88rem 2rem; border-radius:50px;
  font-family:'Manrope',sans-serif; font-weight:700; font-size:.88rem;
  text-decoration:none; box-shadow:0 4px 14px rgba(201,168,76,.32);
  transition:background var(--t), transform var(--t);
}
.btn-cta-gold:hover { background:var(--gold-l); transform:translateY(-1px); }
.btn-cta-outline {
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  background:transparent; color:rgba(255,255,255,.88);
  padding:.88rem 2rem; border-radius:50px;
  font-family:'Manrope',sans-serif; font-weight:600; font-size:.88rem;
  border:1.5px solid rgba(255,255,255,.35); text-decoration:none;
  transition:border-color var(--t), background var(--t);
}
.btn-cta-outline:hover { border-color:rgba(255,255,255,.78); background:rgba(255,255,255,.1); color:#fff; }
.btn-submit {
  background:var(--navy); color:#fff; border:none;
  padding:.95rem; border-radius:50px; width:100%;
  font-family:'Manrope',sans-serif; font-size:.88rem; font-weight:700;
  letter-spacing:.04em; text-transform:uppercase;
  display:flex; align-items:center; justify-content:center; gap:.45rem;
  box-shadow:0 4px 14px rgba(26,43,74,.22);
  transition:background var(--t), transform var(--t); cursor:pointer;
}
.btn-submit:hover { background:var(--navy-3); transform:translateY(-1px); }
.btn-submit:disabled { opacity:.6; cursor:not-allowed; transform:none; }

/* ══════════════════════════════════════════════════════════
   SCROLL REVEAL
   ══════════════════════════════════════════════════════════ */
.mlp-reveal { opacity:0; transform:translateY(16px); transition:opacity .6s ease,transform .6s ease; }
.mlp-reveal.visible { opacity:1; transform:none; }
.mlp-reveal-l { opacity:0; transform:translateX(-16px); transition:opacity .6s ease,transform .6s ease; }
.mlp-reveal-l.visible { opacity:1; transform:none; }
.mlp-reveal-r { opacity:0; transform:translateX(16px); transition:opacity .6s ease,transform .6s ease; }
.mlp-reveal-r.visible { opacity:1; transform:none; }
.mlp-d1{transition-delay:.1s;} .mlp-d2{transition-delay:.2s;} .mlp-d3{transition-delay:.3s;}

/* ══════════════════════════════════════════════════════════
   FOOTER – font-weight:400 durchgehend
   ══════════════════════════════════════════════════════════ */
#mlp-footer { background:var(--navy); padding:4.5rem 3vw 0; }
.mlp-foot-rule { height:2px; background:linear-gradient(90deg,var(--gold) 0%,var(--gold-l) 40%,transparent 100%); margin-bottom:3rem; }
.mlp-foot-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:2.8rem; margin-bottom:3rem; }
.mlp-foot-brand-name { font-family:'Manrope',sans-serif; font-size:1.1rem; font-weight:700; color:var(--gold-l); display:block; margin-bottom:.6rem; }
.mlp-foot-brand p { font-size:.86rem; font-weight:400; color:rgba(255,255,255,.86); line-height:1.78; max-width:230px; }
.mlp-foot-col h5 {
  font-family:'Manrope',sans-serif; font-size:.65rem; font-weight:700;
  color:rgba(255,255,255,.42); letter-spacing:.2em; text-transform:uppercase;
  margin-bottom:1rem; border-bottom:1px solid rgba(255,255,255,.08); padding-bottom:.48rem;
}
.mlp-foot-col ul { display:flex; flex-direction:column; gap:.55rem; }
.mlp-foot-col ul a {
  color:rgba(255,255,255,.62); font-size:.86rem; font-weight:400;
  text-decoration:none; transition:color var(--t), padding-left var(--t);
}
.mlp-foot-col ul a:hover { color:var(--gold-l); padding-left:.3rem; }
.mlp-foot-contact { display:flex; flex-direction:column; gap:.7rem; }
.mlp-foot-citem { display:flex; align-items:flex-start; gap:.6rem; }
.mlp-foot-cico { width:18px; flex-shrink:0; margin-top:.1rem; color:var(--gold); display:flex; }
.mlp-foot-cico svg { width:14px; height:14px; }
.mlp-foot-ctxt { display:flex; flex-direction:column; gap:.15rem; }
.mlp-foot-ctxt a,.mlp-foot-ctxt span { font-size:.86rem; font-weight:400; color:rgba(255,255,255,.68); text-decoration:none; line-height:1.42; transition:color var(--t); }
.mlp-foot-ctxt a:hover { color:var(--gold-l); }
.mlp-foot-bottom {
  border-top:1px solid rgba(255,255,255,.08); padding:1.4rem 0 1.8rem;
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.9rem;
}
.mlp-foot-bottom p { font-size:.76rem; font-weight:400; color:rgba(255,255,255,.32); }
.mlp-foot-legal { display:flex; gap:1.4rem; }
.mlp-foot-legal a {
  font-size:.78rem; font-weight:400; color:rgba(255,255,255,.45);
  text-decoration:none; border-bottom:1px solid transparent;
  transition:color var(--t), border-color var(--t);
}
.mlp-foot-legal a:hover { color:var(--gold-l); border-bottom-color:var(--gold-l); }

/* ══════════════════════════════════════════════════════════
   PAGE.PHP – Automatisches Design für Impressum/Datenschutz
   ══════════════════════════════════════════════════════════ */
.mlp-page-wrap { padding-top:6rem; padding-bottom:4.5rem; min-height:72vh; background:var(--off); }
.mlp-page-header { max-width:820px; margin:0 auto 2.5rem; padding:0 3vw 1.8rem; border-bottom:2px solid var(--gold); }
.mlp-page-header h1 { font-family:'Manrope',sans-serif; font-size:clamp(1.9rem,4.5vw,3rem); font-weight:900; color:var(--navy); letter-spacing:-.02em; }
.mlp-page-content { max-width:820px; margin:0 auto; padding:0 3vw; display:flex; flex-direction:column; gap:1.3rem; }
.mlp-card { background:var(--white); border:1px solid var(--border); border-radius:var(--r-lg); padding:1.8rem 2rem; }
.mlp-card.highlight { border-left:4px solid var(--gold); }
.mlp-card h2 { font-family:'Manrope',sans-serif; font-size:1.05rem; font-weight:800; color:var(--navy); margin-bottom:.75rem; }
.mlp-card p,.mlp-card li { font-size:.9rem; color:var(--muted); line-height:1.85; font-weight:400; }
.mlp-card a { color:var(--gold-d); }
.mlp-card a:hover { text-decoration:underline; }

/* Mobile Sticky */
.mlp-mob-bar { display:none; }

/* Focus */
a:focus-visible,button:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }

/* ══════════════════════════════════════════════════════════
   PREFERS-REDUCED-MOTION
   ══════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  /* Keep the service ticker running; do not let the global reduced-motion rule freeze it. */
  .mlp-ticker-track {
    animation-name: mlpScroll !important;
    animation-duration:32s !important;
    animation-timing-function:linear !important;
    animation-iteration-count:infinite !important;
    animation-play-state:running !important;
  }
  .mlp-reveal,.mlp-reveal-l,.mlp-reveal-r { opacity:1 !important; transform:none !important; }
}

/* ══════════════════════════════════════════════════════════
   RESPONSIVE BREAKPOINTS
   ══════════════════════════════════════════════════════════ */
@media (max-width:1099px) {
  .mlp-svc-grid   { grid-template-columns:repeat(2,1fr); }
  .mlp-warum-grid { grid-template-columns:repeat(2,1fr); }
  .mlp-foot-grid  { grid-template-columns:1fr 1fr; gap:2.2rem; }
  .mlp-kontakt-grid { grid-template-columns:1fr; gap:2rem; }
  .mlp-about-grid { grid-template-columns:1fr; gap:2.5rem; }
  .mlp-about-img img { aspect-ratio:16/9; }
}
@media (max-width:860px) {
  .mlp-nav-links { display:none; }
  .mlp-hamburger { display:flex; }
  .mlp-split-grid { grid-template-columns:1fr; max-width:520px; }
  .mlp-vert-grid  { grid-template-columns:1fr; }
  .mlp-cta-btns { flex-direction:column; align-items:center; }
}

/* ══════════════════════════════════════════════════════════
   MOBILE < 600px – Logo + Slogan größer, Überschriften mittig
   ══════════════════════════════════════════════════════════ */
@media (max-width:599px) {
  html { font-size:16px; }
  body { overflow-x:hidden; }

  /* ── TICKER ── */
  .mlp-ticker { font-size:.82rem; }

  /* ── NAV: Logo + Brand größer und lesbar ── */
  .mlp-nav-inner { padding:.55rem 1rem; }
  .mlp-logo .custom-logo-link img,
  .mlp-logo-img {
    height: 72px !important;   /* größer als Desktop-Verkleinerung */
    max-width: 200px !important;
  }
  .mlp-brand .b1 {
    font-size: 1.05rem !important;  /* groß und lesbar */
    font-weight: 800 !important;
    display: block !important;
    color: var(--navy) !important;
  }
  .mlp-brand .b2 {
    font-size: .62rem !important;   /* Slogan sichtbar */
    display: block !important;
    letter-spacing: .1em !important;
    opacity: 1 !important;
    color: var(--muted) !important;
  }

  /* ── HERO ── */
  #mlp-hero { min-height:100svh; }
  .mlp-hero-bg { background-position:60% center; filter:brightness(.75) saturate(.88); }
  .mlp-hero-overlay { background:linear-gradient(180deg,rgba(17,24,39,.82) 0%,rgba(17,24,39,.62) 60%,rgba(17,24,39,.40) 100%); }
  .mlp-hero-inner { padding:4.5rem 1.1rem 7.5rem; }
  .mlp-hero-label { font-size:.65rem; }
  #mlp-hero h1 { font-size:clamp(1.65rem,8vw,2.4rem); }
  .mlp-hero-sub { font-size:.9rem; }
  .mlp-hero-btns { flex-direction:column; align-items:stretch; gap:.75rem; }
  .btn-primary,.btn-outline { justify-content:center; width:100%; }
  .mlp-hero-trust { gap:1rem; margin-top:1.6rem; padding-top:1.4rem; }
  .mlp-hero-trust-item { font-size:.76rem; }

  /* ── TRUST BAR ── */
  .mlp-trust { padding:.8rem 1.1rem; }
  .mlp-trust-inner { display:grid; grid-template-columns:1fr 1fr; gap:.6rem .9rem; justify-content:unset; }
  .mlp-trust-item { font-size:.78rem; }

  /* ── SECTIONS ── */
  .mlp-section { padding:3.2rem 1.1rem 2.8rem; }

  /* ── ÜBER UNS ── */
  #mlp-about .mlp-about-boxes { grid-template-columns:1fr; }

  /* ── LEISTUNGEN ── */
  .mlp-svc-grid { grid-template-columns:1fr !important; gap:1.1rem; }
  .mlp-svc-img  { height:210px; }
  .mlp-svc-head { flex-direction:column; gap:.65rem; }

  /* ── KUNDEN: Überschrift mittig ── */
  #mlp-split .mlp-split-head { text-align:center; }
  #mlp-split .mlp-split-head .mlp-tag { justify-content:center; }
  #mlp-split .mlp-split-head .mlp-title { text-align:center; }
  .mlp-split-grid { grid-template-columns:1fr; max-width:100%; }
  .mlp-split-col { padding:1.6rem 1.2rem; }

  /* ── WARUM: Überschrift mittig ── */
  #mlp-warum .mlp-warum-head .mlp-tag { justify-content:center; }
  #mlp-warum .mlp-warum-head .mlp-title { text-align:center; }
  #mlp-warum .mlp-warum-head .mlp-sub  { text-align:center; max-width:100%; }
  .mlp-warum-grid { grid-template-columns:1fr 1fr; gap:.9rem; }
  .mlp-wbox { padding:1.3rem 1rem; }

  /* ── CTA ── */
  #mlp-cta { padding:3.2rem 1.1rem; }
  #mlp-cta h2 { text-align:center; font-size:clamp(1.5rem,7vw,2rem); }
  #mlp-cta p  { text-align:center; }
  .mlp-cta-btns { flex-direction:column !important; align-items:stretch; width:100%; }
  .btn-cta-gold,.btn-cta-outline { justify-content:center; width:100%; }

  /* ── VERTRETUNG: Überschrift mittig ── */
  #mlp-vertretung .mlp-vert-head .mlp-tag  { justify-content:center; }
  #mlp-vertretung .mlp-vert-head .mlp-title { text-align:center; }
  #mlp-vertretung .mlp-vert-head > p { text-align:center; }
  .mlp-vert-grid { grid-template-columns:1fr; }
  .mlp-vert-box  { padding:1.5rem 1.2rem; }

  /* ── KONTAKT: Überschrift mittig ── */
  #mlp-kontakt .mlp-kontakt-head .mlp-tag   { justify-content:center; }
  #mlp-kontakt .mlp-kontakt-head .mlp-title { text-align:center; }
  #mlp-kontakt .mlp-kontakt-head .mlp-sub   { text-align:center; max-width:100%; }
  .mlp-kontakt-grid { grid-template-columns:1fr; gap:1.8rem; }
  .mlp-form-card { padding:1.3rem 1rem; border-radius:var(--r-lg); }
  .mlp-form-row  { grid-template-columns:1fr; }

  /* ── FOOTER ── */
  #mlp-footer   { padding:3rem 1.1rem 0; }
  .mlp-foot-grid { grid-template-columns:1fr; gap:1.8rem; }
  .mlp-foot-bottom { flex-direction:column; align-items:flex-start; gap:.45rem; padding-bottom:1.3rem; }
  .mlp-foot-legal  { flex-wrap:wrap; gap:1rem; }

  /* ── KONTAKT-ICONS IM FOOTER: gold, stark sichtbar ── */
  .mlp-foot-cico { color:var(--gold) !important; }
  .mlp-foot-cico svg { color:var(--gold) !important; stroke:var(--gold) !important; }
  .mlp-foot-ctxt a { color:rgba(255,255,255,.85) !important; }

  /* ── MOBILE STICKY BAR ── */
  .mlp-mob-bar {
    display:flex; position:fixed; bottom:0; left:0; right:0; z-index:400;
    background:var(--white); border-top:1px solid var(--border);
    box-shadow:0 -2px 12px rgba(0,0,0,.1);
    padding-bottom:env(safe-area-inset-bottom,0px);
  }
  .mlp-mob-bar a {
    flex:1; display:flex; align-items:center; justify-content:center;
    gap:.4rem; padding:.88rem; font-size:.76rem; font-weight:700;
    font-family:'Manrope',sans-serif; letter-spacing:.05em;
    text-transform:uppercase; text-decoration:none; min-height:50px;
  }
  .mlp-mob-bar a:first-child { background:var(--gold); color:var(--navy); border-right:1px solid rgba(0,0,0,.06); }
  .mlp-mob-bar a:last-child  { background:var(--navy); color:var(--white); }
  body { padding-bottom:calc(54px + env(safe-area-inset-bottom,0px)); }

  /* ── PAGE.PHP ── */
  .mlp-page-header,.mlp-page-content { padding-left:1.1rem; padding-right:1.1rem; }
  .mlp-card { padding:1.3rem 1.1rem; }
}

/* Sehr kleine Geräte 360–380px */
@media (max-width:380px) {
  .mlp-logo .custom-logo-link img,
  .mlp-logo-img { height:62px !important; max-width:170px !important; }
  .mlp-brand .b1 { font-size:.92rem !important; }
  .mlp-brand .b2 { font-size:.57rem !important; }
  #mlp-hero h1   { font-size:1.58rem; }
  .mlp-warum-grid { grid-template-columns:1fr; }
}


/* v1.3 — Harmonized footer typography */
.footer-brand-description,
.footer-links a,
.footer-contact-item,
.footer-contact-text,
.footer-bottom,
.footer-bottom a,
.footer-bottom-text {
  color: rgba(255,255,255,.82);
}
.footer-brand-description {
  line-height: 1.7;
}
.footer-links a:hover,
.footer-bottom a:hover {
  color: var(--gold, #d4af37);
}
@media (max-width: 768px) {
  .footer-brand-description,
  .footer-links a,
  .footer-contact-item,
  .footer-contact-text,
  .footer-bottom,
  .footer-bottom a,
  .footer-bottom-text {
    color: rgba(255,255,255,.86);
  }
}
