@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --blue:#084a9b;
  --blue-2:#0b5cb8;
  --navy:#0c2344;
  --ink:#06101f;
  --muted:#5d6877;
  --light:#f3f7fb;
  --line:rgba(6,16,31,.10);
  --radius:28px;
  --radius-sm:18px;
  --shadow:0 24px 70px rgba(6,16,31,.10);
  --shadow-soft:0 12px 36px rgba(6,16,31,.07);
  --max:1320px;
  --pad:clamp(18px,3vw,36px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:#fff}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(900px 420px at 6% 0%,rgba(8,74,155,.07),transparent 60%),radial-gradient(900px 420px at 96% 8%,rgba(8,74,155,.05),transparent 56%)}
a{text-decoration:none;color:inherit} img{display:block;max-width:100%} button,input{font:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{max-width:var(--max);margin:0 auto;padding:12px var(--pad);display:grid;grid-template-columns:260px minmax(0,1fr) 44px;align-items:center;gap:26px}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}
.brand img{width:235px;height:auto}.brand span{font-size:12px;color:#687385;white-space:nowrap}
.desktop-nav{justify-self:end;min-width:0}.desktop-nav ul{display:flex;align-items:center;justify-content:flex-end;gap:2px;list-style:none;margin:0;padding:0;white-space:nowrap}
.desktop-nav li{position:relative}.desktop-nav a{display:inline-flex;align-items:center;gap:7px;padding:10px 11px;border-radius:999px;font-size:14px;font-weight:760;color:rgba(6,16,31,.9);transition:.18s ease}
.desktop-nav a:hover,.desktop-nav a.active{background:rgba(8,74,155,.08);color:var(--blue)}
.nav-arrow{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-4px;opacity:.65}
.dropdown{position:absolute;right:0;top:calc(100% + 10px);min-width:280px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.18s ease}
.has-dropdown:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}.dropdown a{display:flex;width:100%;border-radius:12px;padding:12px 14px;white-space:normal;line-height:1.3}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:18px;height:2px;background:var(--ink);border-radius:999px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;font-weight:820;transition:.18s ease}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.btn-blue{background:linear-gradient(180deg,var(--blue-2),var(--blue));color:#fff;border-color:rgba(8,74,155,.4)}.btn-light{background:#fff;color:var(--ink)}
.mobile-drawer{display:none;position:fixed;inset:0;z-index:1200;background:rgba(6,16,31,.36);padding:16px}.mobile-drawer.open{display:block}.mobile-panel{margin-left:auto;max-width:440px;height:calc(100vh - 32px);background:#fff;border-radius:22px;box-shadow:var(--shadow);overflow:auto}.mobile-head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.mobile-links a{display:block;padding:15px 18px;border-bottom:1px solid var(--line);font-weight:820}

.hero{padding:0 0 58px}.slider{position:relative;min-height:clamp(560px,78vh,820px);overflow:hidden;background:#e8edf4}.slide{position:absolute;inset:0;opacity:0;transition:opacity .55s ease}.slide.active{opacity:1}.slide-bg{position:absolute;inset:0;background-size:cover;background-position:center}.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,16,31,.72),rgba(6,16,31,.43) 43%,rgba(6,16,31,.04))}
.slide-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:flex-end;max-width:820px;padding:clamp(44px,6vw,92px);color:#fff}.eyebrow{display:inline-flex;align-self:flex-start;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.25);font-size:12px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}.slide h1{margin:16px 0 14px;font-size:clamp(44px,6vw,90px);line-height:.98;letter-spacing:-1.8px}.slide p{margin:0;color:rgba(255,255,255,.88);font-size:clamp(18px,1.8vw,23px);line-height:1.55;max-width:62ch}.slide-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.slider-ui{position:absolute;left:clamp(32px,6vw,92px);right:clamp(32px,6vw,92px);bottom:30px;z-index:4;display:flex;align-items:center;justify-content:space-between}.dots{display:flex;gap:9px}.dot{border:0;width:10px;height:10px;border-radius:999px;background:rgba(255,255,255,.44);cursor:pointer}.dot.active{width:34px;background:#fff}.arrows{display:flex;gap:10px}.ctrl{width:44px;height:44px;border:1px solid rgba(255,255,255,.27);background:rgba(255,255,255,.17);color:#fff;border-radius:999px;cursor:pointer;backdrop-filter:blur(10px);font-size:24px}
.section{padding:72px 0}.section.tight{padding:38px 0 72px}.section-title{max-width:920px;margin-bottom:30px}.kicker{color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.9px;font-size:12px;margin-bottom:12px}h1,h2,h3,h4,p{margin-top:0}h2{font-size:clamp(34px,4.4vw,64px);line-height:1.04;letter-spacing:-1.2px;margin-bottom:16px}h3{font-size:24px;letter-spacing:-.4px;margin-bottom:10px}p{color:var(--muted);line-height:1.72}.large-text{font-size:clamp(18px,2vw,24px);line-height:1.55}
.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:28px;overflow:hidden;position:relative}.card > *{position:relative}.card:before{content:"";position:absolute;right:-90px;bottom:-100px;width:240px;height:240px;background:radial-gradient(circle,rgba(8,74,155,.10),transparent 70%)}
.value-card{min-height:190px}.value-card strong{font-size:42px;display:block;letter-spacing:-1px;color:var(--blue);margin-bottom:8px}.facts{background:var(--navy);color:#fff;margin:34px 0;padding:78px 0}.facts p{color:rgba(255,255,255,.78)}.facts .kicker{color:#9cc8ff}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:28px}.fact{border-top:1px solid rgba(255,255,255,.24);padding-top:18px}.fact strong{display:block;font-size:clamp(34px,4vw,60px);letter-spacing:-1.4px}.fact span{color:rgba(255,255,255,.76)}
.entry-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}.entry-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-soft);overflow:hidden}.entry-card.large{grid-row:span 2}.entry-card img{width:100%;height:220px;object-fit:cover}.entry-card.large img{height:420px}.entry-body{padding:24px}.entry-body p{min-height:56px}.entry-card:hover{transform:translateY(-3px);transition:.18s ease;box-shadow:var(--shadow)}
.page-hero{padding:44px 0 38px}.page-hero-box{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:34px;box-shadow:var(--shadow-soft);padding:clamp(32px,5vw,68px);overflow:hidden}.page-hero-box img{width:100%;height:420px;object-fit:cover;border-radius:24px}.page-hero h1{font-size:clamp(42px,6vw,82px);line-height:.98;letter-spacing:-1.8px;margin-bottom:18px}.page-hero p{font-size:20px;max-width:76ch}
.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:15px}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--blue)}.tag{display:inline-flex;padding:4px 9px;border-radius:999px;background:rgba(8,74,155,.08);color:var(--blue);font-size:12px;font-weight:900}
.machine-list{display:grid;gap:20px}.machine-card h3{margin-bottom:14px}.machine-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}.machine-summary .card{padding:20px}.machine-summary strong{font-size:34px;color:var(--blue);display:block}
.news-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.news-card{background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-soft);overflow:hidden}.news-card.big{grid-row:span 2}.news-card img{width:100%;height:210px;object-fit:cover}.news-card.big img{height:420px}.news-body{padding:24px}.date{font-size:12px;font-weight:900;color:var(--blue);text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px}
.search-box{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.search-box input{flex:1 1 260px;height:54px;border:1px solid var(--line);border-radius:16px;padding:0 16px;outline:none}.search-box input:focus{border-color:rgba(8,74,155,.44);box-shadow:0 0 0 4px rgba(8,74,155,.10)}.result{padding:18px;border-radius:18px;background:var(--light);border:1px solid var(--line);min-height:62px}.result .contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.person .role{color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.8px;font-size:12px;margin-bottom:8px}.person .phone{font-weight:850;color:var(--ink)}.map-card{padding:0}.map-card img{width:100%;height:520px;object-fit:cover}.highway-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.legal-content{max-width:980px}.legal-content h2{font-size:32px;margin-top:28px}
.footer{background:#07111f;color:#fff;margin-top:80px;padding:64px 0 24px}.footer p,.footer a{color:rgba(255,255,255,.72)}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:28px}.footer-logo{width:220px;filter:brightness(0) invert(1);opacity:.95;margin-bottom:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:20px;color:rgba(255,255,255,.56);font-size:13px}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1180px){.header-inner{grid-template-columns:230px minmax(0,1fr) 44px;gap:14px}.brand img{width:205px}.desktop-nav a{font-size:13px;padding:10px 8px}.grid-5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1020px){.header-inner{grid-template-columns:1fr 44px}.desktop-nav{display:none}.menu-toggle{display:flex;justify-self:end}.brand img{width:210px}.grid-5,.grid-4,.grid-3,.grid-2,.split,.footer-grid,.page-hero-box,.entry-grid,.news-grid,.fact-grid,.machine-summary,.highway-grid{grid-template-columns:1fr}.entry-card.large{grid-row:auto}.entry-card.large img,.news-card.big img{height:260px}.slide:after{background:linear-gradient(90deg,rgba(6,16,31,.78),rgba(6,16,31,.36))}.page-hero-box img{height:300px}}
@media(max-width:640px){.hero{padding-top:0}.slider{min-height:560px}.slide-content{padding:30px}.slider-ui{left:30px;right:30px}.page-hero-box{border-radius:24px}.card{padding:22px}}


/* ===== v3 Anpassungen ===== */
.btn-disabled{
  cursor: default;
  opacity: .82;
  box-shadow: none !important;
  transform: none !important;
  pointer-events: none;
}
.text-placeholder-section{
  padding-top: 24px;
  padding-bottom: 24px;
}
.text-edit-block{
  background:
    linear-gradient(180deg, #fff 0%, #f8fbff 100%);
}
.text-edit-block p:last-child{
  margin-bottom:0;
}

/* News-Archiv */
.news-admin-note{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
  padding:30px;
  margin-bottom:24px;
}
.news-admin-note p{
  margin-bottom:0;
}
.news-list{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
.news-article{
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
  display:grid;
  grid-template-columns: 320px minmax(0,1fr);
  gap:0;
}
.news-article img{
  width:100%;
  height:100%;
  min-height:260px;
  object-fit:cover;
}
.news-article-body{
  padding:26px;
}
.news-article-body h3{
  font-size:30px;
  line-height:1.12;
  margin-bottom:10px;
}
.news-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:12px;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.8px;
  color:var(--blue);
}
.news-full{
  display:none;
  margin-top:16px;
  border-top:1px solid var(--line);
  padding-top:16px;
}
.news-article.open .news-full{
  display:block;
}
.news-pagination{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
  align-items:center;
}
.news-page-btn{
  border:1px solid var(--line);
  background:#fff;
  border-radius:999px;
  padding:10px 15px;
  cursor:pointer;
  font-weight:850;
}
.news-page-btn.active{
  background:var(--blue);
  color:#fff;
  border-color:var(--blue);
}
.news-empty{
  padding:28px;
  border-radius:22px;
  border:1px solid var(--line);
  background:#fff;
}
@media(max-width:900px){
  .news-article{
    grid-template-columns:1fr;
  }
  .news-article img{
    height:260px;
  }
}


/* ===== v7 sichere Ergänzungen: Bilder, Galerien, Kontakt ===== */
.page-hero-box img{
  width:100%;
  height:420px;
  object-fit:cover;
  object-position:center center;
  display:block;
  border-radius:24px;
}

.content-text-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
  padding:clamp(28px,4vw,48px);
}

.content-text-card p:last-child{
  margin-bottom:0;
}

.gallery-section{
  padding-top:28px;
}

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.gallery-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-soft);
}

.gallery-card img{
  width:100%;
  height:260px;
  object-fit:cover;
  display:block;
}

.gallery-card .gallery-copy{
  padding:20px 22px 24px;
}

.gallery-card h3{
  margin:0 0 8px;
  font-size:24px;
}

.gallery-card p{
  margin:0;
}

.contact-result .phone-display{
  margin-top:10px;
  font-weight:850;
  color:var(--ink);
}

.contact-result .contact-actions{
  margin-top:14px;
}

@media(max-width:980px){
  .gallery-grid{
    grid-template-columns:1fr;
  }
  .page-hero-box img{
    height:320px;
  }
}


/* ===== v8 gallery fix ===== */
.gallery-section{
  padding-top:28px;
}

.gallery-intro{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow-soft);
  padding:clamp(28px,4vw,48px);
  margin-bottom:24px;
}

.gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.gallery-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  box-shadow:var(--shadow-soft);
}

.gallery-card img{
  width:100%;
  height:270px;
  object-fit:cover;
  display:block;
}

.gallery-card .gallery-copy{
  padding:20px 22px 24px;
}

.gallery-card h3{
  margin:0 0 8px;
  font-size:24px;
}

.gallery-card p{
  margin:0;
  color:var(--muted);
}

@media(max-width:980px){
  .gallery-grid{
    grid-template-columns:1fr;
  }
}


/* ===== v9 Signature Startseitenbereich ===== */
.signature-flow{
  position:relative;
  padding:34px 0 10px;
}
.signature-flow:before{
  content:"";
  position:absolute;
  inset:30px 0 0 0;
  background:
    radial-gradient(900px 320px at 18% 8%, rgba(8,74,155,.08), transparent 58%),
    linear-gradient(180deg, rgba(243,247,251,.95), rgba(255,255,255,1));
  pointer-events:none;
}
.signature-flow .wrap{
  position:relative;
  z-index:1;
}
.signature-title{
  margin-bottom:26px;
}
.signature-shell{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
  gap:22px;
  align-items:start;
}
.flow-steps{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.flow-step{
  position:relative;
  min-height:220px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:26px;
  padding:24px 24px 22px;
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.flow-step:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:5px;
  background:linear-gradient(90deg,var(--blue),#68a3ea);
}
.flow-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border-radius:16px;
  background:rgba(8,74,155,.09);
  color:var(--blue);
  font-size:18px;
  font-weight:900;
  margin-bottom:16px;
}
.flow-step h3{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.18;
}
.flow-step p{
  margin:0;
  color:var(--muted);
}
.flow-visual{
  display:grid;
  gap:18px;
}
.flow-image-card{
  position:relative;
  min-height:100%;
  border-radius:30px;
  overflow:hidden;
  box-shadow:var(--shadow);
  background:#dfe8f3;
}
.flow-image-card img{
  width:100%;
  height:100%;
  min-height:370px;
  object-fit:cover;
  display:block;
}
.flow-image-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(6,16,31,.08), rgba(6,16,31,.28));
}
.flow-image-overlay{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.flow-chip{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(8px);
  color:var(--ink);
  font-weight:800;
  font-size:14px;
}
.flow-highlight{
  background:linear-gradient(135deg, #0c2344, #084a9b 70%, #2f7fe1);
  color:#fff;
  border-radius:28px;
  padding:24px 24px 22px;
  box-shadow:var(--shadow);
}
.flow-highlight-head{
  display:grid;
  gap:8px;
  margin-bottom:12px;
}
.flow-highlight-kicker{
  display:inline-flex;
  width:max-content;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.flow-highlight strong{
  font-size:24px;
  line-height:1.2;
}
.flow-highlight p{
  margin:0 0 18px;
  color:rgba(255,255,255,.86);
}
.flow-mini-facts{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.flow-mini-facts span{
  display:inline-flex;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.14);
  font-weight:700;
}
@media (max-width: 1100px){
  .signature-shell{
    grid-template-columns:1fr;
  }
}
@media (max-width: 760px){
  .flow-steps{
    grid-template-columns:1fr;
  }
  .flow-step{
    min-height:auto;
  }
  .flow-image-card img{
    min-height:280px;
  }
}


/* ===== v10 Alles-aus-einer-Hand Bereich ===== */
.all-in-one-flow{padding:34px 0 12px}
.allinone-top{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:22px 24px;box-shadow:var(--shadow-soft);margin-bottom:22px}
.allinone-top p{margin:0;max-width:760px;color:var(--muted)}
.allinone-tagline{display:inline-flex;align-items:center;padding:12px 18px;border-radius:999px;background:linear-gradient(135deg,#0c2344,#084a9b);color:#fff;font-weight:850;white-space:nowrap}
.allinone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.allinone-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:26px;padding:24px 22px 22px;box-shadow:var(--shadow-soft);overflow:hidden;min-height:208px}
.allinone-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:5px;background:linear-gradient(90deg,var(--blue),#6aa5ed)}
.allinone-card.special:before{background:linear-gradient(90deg,#7f8ea5,#c0c8d6)}
.allinone-no{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:rgba(8,74,155,.09);color:var(--blue);font-size:17px;font-weight:900;margin-bottom:14px}
.allinone-card h3{margin:0 0 10px;font-size:24px;line-height:1.18}
.allinone-card p{margin:0;color:var(--muted)}
.allinone-card small{display:block;margin-top:8px;color:#7d8795;font-size:13px;line-height:1.35}
.allinone-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:18px;margin-top:18px}
.allinone-bottom-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-soft);padding:24px}
.allinone-bottom-card strong{display:block;font-size:30px;line-height:1.12;margin-bottom:10px;color:var(--navy)}
.allinone-bottom-card span{display:block;color:var(--muted);font-size:17px;line-height:1.55}
.allinone-bottom-card.image-card{padding:0;overflow:hidden}
.allinone-bottom-card.image-card img{width:100%;height:100%;min-height:240px;object-fit:cover;display:block}
@media (max-width: 1120px){
  .allinone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .allinone-bottom{grid-template-columns:1fr}
  .allinone-top{flex-direction:column;align-items:flex-start}
}
@media (max-width: 760px){
  .allinone-grid{grid-template-columns:1fr}
  .allinone-tagline{white-space:normal}
}


/* ===== v11 Premium Alles-aus-einer-Hand ===== */
.premium-allinone{
  position:relative;
  padding:44px 0 18px;
  overflow:hidden;
}
.premium-allinone:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(900px 380px at 0% 0%, rgba(8,74,155,.10), transparent 60%),
    radial-gradient(720px 300px at 100% 18%, rgba(47,127,225,.08), transparent 55%),
    linear-gradient(180deg, #f6f9fc 0%, #ffffff 70%);
  pointer-events:none;
}
.premium-allinone .wrap{position:relative;z-index:1}
.premium-allinone-head{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:24px;
  align-items:stretch;
  margin-bottom:22px;
}
.premium-head-copy,
.premium-head-visual{
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.85);
  box-shadow:0 20px 60px rgba(13,31,54,.08);
  border-radius:34px;
}
.premium-head-copy{padding:34px 34px 30px}
.premium-head-copy h2{
  margin:10px 0 14px;
  font-size:clamp(34px,4vw,56px);
  line-height:1.02;
  letter-spacing:-.03em;
}
.premium-head-copy .large-text{max-width:780px}
.premium-head-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.premium-head-pills span{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(8,74,155,.12);
  background:rgba(8,74,155,.05);
  color:var(--navy);
  font-weight:800;
  font-size:14px;
}
.premium-head-visual{
  padding:16px;
  display:grid;
  gap:14px;
}
.premium-visual-card{
  position:relative;
  border-radius:26px;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.premium-visual-card img{
  width:100%;
  height:360px;
  object-fit:cover;
  display:block;
}
.premium-visual-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(6,16,31,.06), rgba(6,16,31,.24));
}
.premium-visual-overlay{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.premium-badge{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--ink);
  font-weight:850;
  font-size:14px;
  box-shadow:0 10px 28px rgba(12,35,68,.12);
}
.premium-quickfacts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.premium-quickfacts div{
  background:linear-gradient(180deg, #ffffff, #f6f9fd);
  border:1px solid var(--line);
  border-radius:22px;
  padding:18px 16px;
  text-align:center;
  box-shadow:var(--shadow-soft);
}
.premium-quickfacts strong{
  display:block;
  color:var(--navy);
  font-size:28px;
  line-height:1;
  margin-bottom:6px;
}
.premium-quickfacts span{
  display:block;
  color:var(--muted);
  font-weight:700;
  font-size:14px;
}
.premium-process{
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:4px;
}
.premium-process-line{
  position:absolute;
  left:7%;
  right:7%;
  top:50%;
  height:2px;
  transform:translateY(-50%);
  background:linear-gradient(90deg, rgba(8,74,155,.20), rgba(47,127,225,.28), rgba(8,74,155,.20));
  z-index:0;
}
.premium-step{
  position:relative;
  z-index:1;
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.95);
  border-radius:28px;
  padding:24px 22px 22px;
  box-shadow:0 18px 48px rgba(13,31,54,.08);
  min-height:212px;
}
.premium-step:nth-child(2),
.premium-step:nth-child(4),
.premium-step:nth-child(6){transform:translateY(22px)}
.premium-step:before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:5px;
  border-radius:0 0 28px 28px;
  background:linear-gradient(90deg,var(--blue),#6ba8ef);
}
.premium-step.partner-step:before{background:linear-gradient(90deg,#8b95a6,#c7cfda)}
.premium-step-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(8,74,155,.12), rgba(47,127,225,.10));
  color:var(--blue);
  font-weight:900;
  margin-bottom:16px;
}
.premium-step h3{
  margin:0 0 10px;
  font-size:24px;
  line-height:1.12;
}
.premium-step p{margin:0;color:var(--muted)}
.premium-step small{display:block;margin-top:8px;color:#7c8695;font-size:13px;line-height:1.35}
.premium-allinone-footer{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:18px;
  margin-top:42px;
}
.premium-footer-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:30px;
  box-shadow:var(--shadow-soft);
  padding:28px 28px 24px;
}
.premium-footer-card.emphasis{
  background:linear-gradient(135deg, #0c2344 0%, #084a9b 68%, #2f7fe1 100%);
  color:#fff;
  border:none;
  box-shadow:0 24px 70px rgba(12,35,68,.20);
}
.footer-kicker{
  display:inline-flex;
  align-items:center;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(8,74,155,.08);
  color:var(--blue);
  font-size:12px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:14px;
}
.premium-footer-card.emphasis .footer-kicker{
  background:rgba(255,255,255,.14);
  color:#fff;
}
.premium-footer-card strong{
  display:block;
  font-size:34px;
  line-height:1.06;
  margin-bottom:12px;
}
.premium-footer-card p{
  margin:0;
  color:var(--muted);
}
.premium-footer-card.emphasis p{color:rgba(255,255,255,.88)}
.premium-advantage-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:12px;
}
.premium-advantage-list li{
  position:relative;
  padding-left:26px;
  color:var(--ink);
  font-weight:700;
}
.premium-advantage-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.5em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--blue), #66a3eb);
  box-shadow:0 0 0 6px rgba(8,74,155,.08);
}
@media (max-width: 1160px){
  .premium-allinone-head{grid-template-columns:1fr}
  .premium-process{grid-template-columns:repeat(2,minmax(0,1fr))}
  .premium-process-line{display:none}
  .premium-step:nth-child(2),
  .premium-step:nth-child(4),
  .premium-step:nth-child(6){transform:none}
  .premium-allinone-footer{grid-template-columns:1fr}
}
@media (max-width: 760px){
  .premium-head-copy{padding:28px 22px 24px}
  .premium-head-copy h2{font-size:34px}
  .premium-quickfacts{grid-template-columns:1fr}
  .premium-process{grid-template-columns:1fr}
  .premium-footer-card{padding:24px 22px 22px}
  .premium-footer-card strong{font-size:28px}
}


/* ===== v12 Premium-Block sauber ausgerichtet ===== */
.premium-process{
  align-items:stretch !important;
}

.premium-process-line{
  display:none !important;
}

.premium-step,
.premium-step:nth-child(2),
.premium-step:nth-child(4),
.premium-step:nth-child(6){
  transform:none !important;
}

.premium-step{
  min-height:245px !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
}

.premium-step p{
  flex:1 1 auto;
}

.premium-step small{
  margin-top:12px;
}

.premium-process{
  grid-auto-rows:1fr;
}

@media (max-width:1160px){
  .premium-step{
    min-height:220px !important;
  }
}

@media (max-width:760px){
  .premium-step{
    min-height:auto !important;
  }
}


/* ===== v13 Alles-aus-einer-Hand ersetzt Zahlen-Daten-Fakten ===== */
.allhand-dark{
  position:relative;
  background:var(--navy);
  color:#fff;
  margin:34px 0;
  padding:86px 0;
  overflow:hidden;
}
.allhand-dark:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(820px 360px at 10% 0%, rgba(84,155,240,.26), transparent 60%),
    radial-gradient(760px 360px at 92% 18%, rgba(255,255,255,.09), transparent 58%),
    linear-gradient(135deg, rgba(255,255,255,.03), rgba(255,255,255,0));
  pointer-events:none;
}
.allhand-dark .wrap{
  position:relative;
  z-index:1;
}
.allhand-dark .kicker{
  color:#9cc8ff;
}
.allhand-head{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:26px;
  align-items:end;
  margin-bottom:30px;
}
.allhand-head h2{
  margin-bottom:18px;
}
.allhand-head p{
  color:rgba(255,255,255,.78);
}
.allhand-statement{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  border-radius:30px;
  padding:28px;
  box-shadow:0 24px 70px rgba(0,0,0,.12);
}
.allhand-statement strong{
  display:block;
  font-size:30px;
  line-height:1.12;
  letter-spacing:-.03em;
  margin-bottom:10px;
}
.allhand-statement span{
  color:rgba(255,255,255,.76);
  line-height:1.55;
}
.allhand-services{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.allhand-service{
  position:relative;
  min-height:245px;
  height:100%;
  background:rgba(255,255,255,.92);
  color:var(--ink);
  border:1px solid rgba(255,255,255,.32);
  border-radius:30px;
  padding:24px 24px 22px;
  box-shadow:0 18px 48px rgba(0,0,0,.13);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .22s ease, box-shadow .22s ease;
}
.allhand-service:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 56px rgba(0,0,0,.16);
  transition:transform .22s ease, box-shadow .22s ease;
}
.allhand-service:before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:30px;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.34);
}
.allhand-service:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:30px;
  pointer-events:none;
  background:
    radial-gradient(220px 100px at 12% 0%, rgba(58,127,225,.14), transparent 65%),
    radial-gradient(180px 90px at 88% 8%, rgba(255,255,255,.55), transparent 70%);
  opacity:.9;
}
.allhand-service.partner:after{
  background:
    radial-gradient(220px 100px at 12% 0%, rgba(133,145,165,.14), transparent 65%),
    radial-gradient(180px 90px at 88% 8%, rgba(255,255,255,.55), transparent 70%);
}
.allhand-no{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:52px;
  height:52px;
  border-radius:16px;
  background:rgba(8,74,155,.10);
  color:var(--blue);
  font-size:17px;
  font-weight:900;
  margin-bottom:16px;
}
.allhand-service h3{
  margin:0 0 10px;
  font-size:25px;
  line-height:1.12;
  letter-spacing:-.02em;
}
.allhand-service p{
  margin:0;
  color:var(--muted);
  flex:1 1 auto;
}
.allhand-service small{
  display:block;
  margin-top:12px;
  color:#788395;
  font-size:13px;
  line-height:1.35;
}
.allhand-proof{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:24px;
}
.allhand-proof div{
  border-top:1px solid rgba(255,255,255,.24);
  padding-top:18px;
}
.allhand-proof strong{
  display:block;
  font-size:clamp(34px,4vw,58px);
  line-height:1;
  letter-spacing:-.04em;
}
.allhand-proof span{
  display:block;
  margin-top:6px;
  color:rgba(255,255,255,.74);
}
@media(max-width:1100px){
  .allhand-head{
    grid-template-columns:1fr;
  }
  .allhand-services{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .allhand-proof{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:720px){
  .allhand-dark{
    padding:64px 0;
  }
  .allhand-services,
  .allhand-proof{
    grid-template-columns:1fr;
  }
  .allhand-service{
    min-height:auto;
  }
}

/* Entfernt die alten blauen Streifen der vorherigen Premium-Karten, falls alte Klassen noch irgendwo auftauchen */
.premium-step:before{
  display:none !important;
}


/* ===== v19 Datenblatt Modal ===== */
.pdf-modal{
  position:fixed;
  inset:0;
  z-index:3000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.pdf-modal.open{display:flex}
.pdf-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(6,16,31,.68);
  backdrop-filter:blur(9px);
}
.pdf-modal-panel{
  position:relative;
  z-index:1;
  width:min(1120px,96vw);
  height:min(900px,90vh);
  background:#fff;
  border:1px solid rgba(255,255,255,.32);
  border-radius:30px;
  box-shadow:0 30px 90px rgba(0,0,0,.28);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.pdf-modal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 22px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#fff,#f7f9fc);
}
.pdf-modal-head strong{
  display:block;
  font-size:22px;
  color:var(--ink);
  letter-spacing:-.02em;
}
.pdf-modal-frame{
  width:100%;
  flex:1 1 auto;
  border:0;
  background:#f3f7fb;
}
@media(max-width:720px){
  .pdf-modal{padding:10px}
  .pdf-modal-panel{width:100%;height:94vh;border-radius:22px}
  .pdf-modal-head{align-items:flex-start;flex-direction:column;padding:16px}
  .pdf-modal-head .btn{width:100%}
}


/* ===== Karriere v21: ruhiger, luftiger, weniger Blöcke ===== */
.career-clean-hero{
  padding:46px 0 38px;
}
.career-clean-box{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:42px;
  align-items:center;
  min-height:640px;
}
.career-clean-copy h1{
  font-size:clamp(46px,6vw,88px);
  line-height:.96;
  letter-spacing:-.055em;
  margin:0 0 24px;
  max-width:820px;
}
.career-clean-copy p{
  font-size:clamp(18px,2vw,24px);
  line-height:1.55;
  max-width:720px;
  color:var(--muted);
  margin-bottom:30px;
}
.career-clean-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:34px;
}
.career-clean-facts{
  display:flex;
  flex-wrap:wrap;
  gap:28px;
  border-top:1px solid var(--line);
  padding-top:24px;
}
.career-clean-fact strong{
  display:block;
  font-size:26px;
  line-height:1;
  letter-spacing:-.03em;
}
.career-clean-fact span{
  display:block;
  color:var(--muted);
  margin-top:6px;
  font-size:14px;
}
.career-clean-visual{
  position:relative;
  border-radius:42px;
  overflow:hidden;
  min-height:560px;
  background:#e8eef6;
  box-shadow:0 30px 80px rgba(6,16,31,.14);
}
.career-clean-visual img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
}
.career-clean-visual-card{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  background:rgba(255,255,255,.90);
  backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.7);
  border-radius:28px;
  padding:22px;
  box-shadow:0 18px 50px rgba(6,16,31,.13);
}
.career-clean-visual-card strong{
  display:block;
  font-size:24px;
  line-height:1.15;
  margin-bottom:8px;
}
.career-clean-visual-card span{
  color:var(--muted);
  line-height:1.55;
}
.career-clean-section{
  padding:78px 0;
}
.career-clean-section.soft{
  background:linear-gradient(180deg,#f6f9fd,#fff);
}
.career-clean-head{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);
  gap:42px;
  align-items:end;
  margin-bottom:38px;
}
.career-clean-head h2{
  margin:0;
  font-size:clamp(38px,5vw,70px);
  line-height:1;
  letter-spacing:-.05em;
}
.career-clean-head p{
  margin:0;
  color:var(--muted);
  font-size:18px;
  line-height:1.65;
}
.career-values{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.career-value{
  background:#fff;
  border:1px solid var(--line);
  border-radius:32px;
  padding:32px;
  min-height:250px;
  box-shadow:var(--shadow-soft);
}
.career-value .num{
  display:inline-flex;
  width:52px;
  height:52px;
  border-radius:18px;
  align-items:center;
  justify-content:center;
  background:#eaf2fd;
  color:var(--blue);
  font-weight:900;
  margin-bottom:28px;
}
.career-value h3{
  font-size:30px;
  line-height:1.05;
  margin-bottom:12px;
}
.career-value p{
  margin:0;
  color:var(--muted);
}
.career-jobs{
  display:grid;
  gap:16px;
}
.career-job-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 260px;
  gap:28px;
  align-items:center;
  background:#fff;
  border:1px solid var(--line);
  border-radius:32px;
  padding:30px;
  box-shadow:var(--shadow-soft);
}
.career-job-row:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
}
.career-job-title{
  display:grid;
  gap:14px;
}
.career-job-title h3{
  font-size:32px;
  line-height:1.08;
  letter-spacing:-.035em;
  margin:0;
}
.career-job-title p{
  margin:0;
  max-width:780px;
  color:var(--muted);
}
.career-job-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.career-job-tags span{
  display:inline-flex;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(8,74,155,.08);
  color:var(--blue);
  font-size:13px;
  font-weight:850;
}
.career-job-actions{
  display:grid;
  gap:10px;
  justify-items:stretch;
}
.career-note-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  margin-top:22px;
  padding:28px 30px;
  border-radius:32px;
  background:var(--navy);
  color:#fff;
}
.career-note-row p{
  color:rgba(255,255,255,.78);
  margin:0;
}
.career-note-row strong{
  display:block;
  font-size:28px;
  line-height:1.1;
  margin-bottom:6px;
}
.career-process-clean{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  border:1px solid var(--line);
  border-radius:34px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow-soft);
}
.career-process-clean article{
  padding:34px 28px;
  border-right:1px solid var(--line);
}
.career-process-clean article:last-child{
  border-right:0;
}
.career-process-clean span{
  display:block;
  color:var(--blue);
  font-weight:900;
  margin-bottom:28px;
}
.career-process-clean h3{
  font-size:26px;
  line-height:1.08;
  margin-bottom:10px;
}
.career-process-clean p{
  margin:0;
  color:var(--muted);
}
.career-final-cta{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
  background:linear-gradient(135deg,#0c2344,#084a9b);
  color:#fff;
  border-radius:40px;
  padding:48px;
  box-shadow:0 24px 70px rgba(12,35,68,.20);
}
.career-final-cta h2{
  color:#fff;
  margin:0 0 14px;
  font-size:clamp(36px,5vw,66px);
  letter-spacing:-.05em;
}
.career-final-cta p{
  color:rgba(255,255,255,.78);
  margin:0;
  max-width:760px;
}
@media(max-width:1100px){
  .career-clean-box,
  .career-clean-head,
  .career-job-row,
  .career-note-row,
  .career-final-cta{
    grid-template-columns:1fr;
  }
  .career-clean-box{
    min-height:0;
  }
  .career-values{
    grid-template-columns:1fr;
  }
  .career-process-clean{
    grid-template-columns:1fr 1fr;
  }
  .career-process-clean article:nth-child(2){
    border-right:0;
  }
  .career-process-clean article{
    border-bottom:1px solid var(--line);
  }
  .career-process-clean article:nth-child(3),
  .career-process-clean article:nth-child(4){
    border-bottom:0;
  }
}
@media(max-width:720px){
  .career-clean-hero{
    padding:28px 0 20px;
  }
  .career-clean-visual,
  .career-clean-visual img{
    min-height:360px;
  }
  .career-clean-section{
    padding:56px 0;
  }
  .career-job-row,
  .career-value,
  .career-final-cta{
    padding:24px;
    border-radius:28px;
  }
  .career-process-clean{
    grid-template-columns:1fr;
  }
  .career-process-clean article{
    border-right:0;
    border-bottom:1px solid var(--line)!important;
  }
  .career-process-clean article:last-child{
    border-bottom:0!important;
  }
}

/* ===== Karriere v22: konsistent + aufklappbare Stellenanzeigen ===== */
.career-page-section{padding:72px 0}.career-page-section.soft{background:linear-gradient(180deg,#f6f9fd,#fff)}
.career-page-head{display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.75fr);gap:42px;align-items:end;margin-bottom:34px}
.career-page-head h2{margin:0;font-size:clamp(36px,5vw,66px);line-height:1.02;letter-spacing:-.05em}.career-page-head p{margin:0;color:var(--muted);font-size:18px;line-height:1.65}
.career-values-v22{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.career-value-v22{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow-soft)}
.career-value-v22 span{display:inline-flex;width:48px;height:48px;border-radius:16px;align-items:center;justify-content:center;background:#eaf2fd;color:var(--blue);font-weight:900;margin-bottom:22px}
.career-value-v22 h3{margin:0 0 10px;font-size:28px;line-height:1.08}.career-value-v22 p{margin:0}.job-list-v22{display:grid;gap:16px}
.job-accordion{background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow-soft);overflow:hidden}
.job-accordion summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:30px}.job-accordion summary::-webkit-details-marker{display:none}
.job-summary-main{display:grid;gap:12px}.job-tags{display:flex;flex-wrap:wrap;gap:8px}.job-tags span{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(8,74,155,.08);color:var(--blue);font-size:13px;font-weight:850}
.job-summary-main h3{margin:0;font-size:clamp(26px,3vw,36px);line-height:1.08;letter-spacing:-.04em}.job-summary-main p{margin:0;max-width:820px}
.job-toggle{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;background:#eef4fb;color:var(--blue);font-weight:900;font-size:26px;transition:.18s ease}
.job-accordion[open] .job-toggle{transform:rotate(45deg);background:var(--blue);color:#fff}.job-detail{border-top:1px solid var(--line);padding:0 30px 30px}
.job-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}.job-detail-box{background:#f7fafe;border:1px solid rgba(8,74,155,.08);border-radius:24px;padding:22px}
.job-detail-box h4{margin:0 0 12px;font-size:20px;letter-spacing:-.02em}.job-detail-box ul{margin:0;padding-left:18px;color:var(--muted);display:grid;gap:8px;line-height:1.55}.job-apply-row{display:flex;justify-content:flex-start;margin-top:22px}
.career-final-cta-v22{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center;background:linear-gradient(135deg,#0c2344,#084a9b);color:#fff;border-radius:40px;padding:48px;box-shadow:0 24px 70px rgba(12,35,68,.20)}
.career-final-cta-v22 h2{color:#fff;margin:0 0 14px;font-size:clamp(34px,5vw,64px);letter-spacing:-.05em;line-height:1.02}.career-final-cta-v22 p{color:rgba(255,255,255,.78);margin:0;max-width:780px}.home-career-cta{padding:42px 0 72px}
@media(max-width:1020px){.career-page-head,.career-final-cta-v22{grid-template-columns:1fr}.career-values-v22,.job-detail-grid{grid-template-columns:1fr}}
@media(max-width:720px){.career-page-section{padding:54px 0}.job-accordion summary{grid-template-columns:1fr;padding:24px}.job-detail{padding:0 24px 24px}.career-final-cta-v22{padding:30px;border-radius:30px}}


/* ===== v23 Korrekturen: Hero-Bilder, Legal-Breite, saubere Karten ===== */
.page-hero-box{
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr) !important;
}
.page-hero-copy{
  min-width:0;
}
.page-hero-box img{
  min-width:0;
  width:100%;
}
.wrap.legal-content{
  max-width:var(--max) !important;
  width:calc(100% - (var(--pad) * 2));
}
.legal-content.card{
  padding:clamp(28px,4vw,48px);
}
.arcelor-intro{
  padding:72px 0 34px;
}
.arcelor-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:28px;
  align-items:stretch;
}
.arcelor-main-card,
.arcelor-side-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:32px;
  box-shadow:var(--shadow-soft);
  padding:clamp(28px,4vw,46px);
}
.arcelor-main-card h2{
  margin-bottom:18px;
}
.arcelor-main-card p:last-child,
.arcelor-side-card p:last-child{
  margin-bottom:0;
}
.arcelor-side-card{
  background:linear-gradient(135deg,#0c2344,#084a9b);
  color:#fff;
}
.arcelor-side-card .kicker{
  color:#9cc8ff;
}
.arcelor-side-card h3{
  color:#fff;
  font-size:34px;
  line-height:1.08;
}
.arcelor-side-card p{
  color:rgba(255,255,255,.78);
}
.arcelor-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.arcelor-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:28px;
  box-shadow:var(--shadow-soft);
  padding:30px;
}
.arcelor-card .num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  border-radius:16px;
  background:#eaf2fd;
  color:var(--blue);
  font-weight:900;
  margin-bottom:22px;
}
.arcelor-card p{
  margin-bottom:0;
}
.arcelor-dark{
  background:var(--navy);
  color:#fff;
  margin:34px 0;
  padding:78px 0;
}
.arcelor-dark .kicker{
  color:#9cc8ff;
}
.arcelor-dark p{
  color:rgba(255,255,255,.78);
}
.arcelor-benefits{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-top:30px;
}
.arcelor-benefit{
  border-top:1px solid rgba(255,255,255,.22);
  padding-top:18px;
}
.arcelor-benefit strong{
  display:block;
  color:#fff;
  font-size:22px;
  line-height:1.15;
  margin-bottom:8px;
}
.arcelor-benefit span{
  color:rgba(255,255,255,.72);
  line-height:1.55;
}
@media(max-width:1020px){
  .page-hero-box{
    grid-template-columns:1fr !important;
  }
  .arcelor-layout,
  .arcelor-grid,
  .arcelor-benefits{
    grid-template-columns:1fr;
  }
}



.career-pop{
  position:fixed;
  right:clamp(18px,3vw,36px);
  bottom:clamp(18px,3vw,36px);
  z-index:1400;
  width:min(430px,calc(100vw - 36px));
  transform:translateY(18px);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease, transform .28s ease;
}
.career-pop.show{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.career-pop-card{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#0c2344,#084a9b 72%,#2f7fe1);
  color:#fff;
  border-radius:30px;
  box-shadow:0 28px 80px rgba(6,16,31,.28);
  padding:30px 30px 26px;
  border:1px solid rgba(255,255,255,.16);
}
.career-pop-card:before{
  content:"";
  position:absolute;
  inset:-80px -80px auto auto;
  width:220px;
  height:220px;
  border-radius:50%;
  background:rgba(255,255,255,.12);
}
.career-pop-close{
  position:absolute;
  top:14px;
  right:14px;
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}
.career-pop-close:hover{
  background:rgba(255,255,255,.22);
}
.career-pop .kicker{
  color:#b9d8ff;
  margin-bottom:12px;
}
.career-pop h2{
  position:relative;
  z-index:1;
  margin:0 38px 12px 0;
  color:#fff;
  font-size:32px;
  line-height:1.06;
  letter-spacing:-.04em;
}
.career-pop p{
  position:relative;
  z-index:1;
  color:rgba(255,255,255,.78);
  margin:0 0 20px;
  line-height:1.55;
}
.career-pop-actions{
  position:relative;
  z-index:1;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.career-pop .btn-light{
  border-color:rgba(255,255,255,.34);
}
@media(max-width:720px){
  .career-pop{
    right:18px;
    left:18px;
    bottom:18px;
    width:auto;
  }
  .career-pop-card{
    padding:26px 24px 24px;
    border-radius:26px;
  }
  .career-pop h2{
    font-size:28px;
  }
}





/* ===== v26 Startseiten Karriere-Hinweis ===== */
.kontur-career-modal{
  position:fixed;
  inset:0;
  z-index:1800;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.kontur-career-modal.is-visible{
  display:flex;
}
.kontur-career-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(6,16,31,.24);
  backdrop-filter:blur(10px) saturate(120%);
  -webkit-backdrop-filter:blur(10px) saturate(120%);
}
.kontur-career-modal__card{
  position:relative;
  z-index:1;
  width:min(560px,100%);
  overflow:hidden;
  border-radius:34px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:
    0 34px 90px rgba(6,16,31,.24),
    inset 0 1px 0 rgba(255,255,255,.75);
  backdrop-filter:blur(22px) saturate(135%);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
}
.kontur-career-modal__card:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(320px 180px at 100% 0%, rgba(8,74,155,.16), transparent 65%),
    radial-gradient(280px 160px at 0% 100%, rgba(255,255,255,.56), transparent 70%);
  pointer-events:none;
}
.kontur-career-modal__content{
  position:relative;
  z-index:1;
  padding:38px 38px 34px;
}
.kontur-career-modal__close{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
  width:38px;
  height:38px;
  border:1px solid rgba(6,16,31,.10);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:var(--ink);
  cursor:pointer;
  font-size:24px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
}
.kontur-career-modal__close:hover{
  background:#fff;
}
.kontur-career-modal__eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(8,74,155,.10);
  color:var(--blue);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:18px;
}
.kontur-career-modal h2{
  margin:0 42px 16px 0;
  font-size:clamp(34px,4vw,52px);
  line-height:1;
  letter-spacing:-.05em;
  color:var(--ink);
}
.kontur-career-modal p{
  margin:0 0 26px;
  color:#526073;
  font-size:18px;
  line-height:1.6;
  max-width:44ch;
}
.kontur-career-modal__actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.kontur-career-modal__actions .btn-blue{
  box-shadow:0 16px 34px rgba(8,74,155,.20);
}
@media(max-width:680px){
  .kontur-career-modal{
    padding:18px;
  }
  .kontur-career-modal__card{
    border-radius:28px;
  }
  .kontur-career-modal__content{
    padding:30px 24px 26px;
  }
  .kontur-career-modal h2{
    margin-right:36px;
  }
}


/* ===== v27 Hero-Wortumbruch-Fix ===== */
.page-hero-box{
  align-items:center;
}
.page-hero-copy{
  min-width:0;
  overflow:hidden;
}
.page-hero h1{
  max-width:11ch;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:auto;
}
.page-hero p{
  max-width:32ch;
}
@media(max-width:1020px){
  .page-hero h1{
    max-width:none;
  }
  .page-hero p{
    max-width:76ch;
  }
}


/* ===== v29 Ansprechpartner mit einheitlichen Mitarbeiterbildern ===== */
.person{
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.person-photo{
  width:min(100%, 220px);
  height:260px;
  border-radius:24px;
  object-fit:cover;
  object-position:center;
  margin:0 auto 20px;
  background:#eaf2fd;
  border:1px solid rgba(6,16,31,.08);
  display:block;
  flex:0 0 auto;
}
.person .role{
  margin-bottom:8px;
}
.person h3{
  margin-bottom:12px;
}
.person .btn{
  margin-top:auto;
  width:max-content;
}
.person .phone{
  font-weight:850;
  color:var(--ink);
}

/* ===== CMS v3 dynamische Inhalte ===== */
[data-cms-jobs] .job-accordion,
[data-cms-news] .news-card{
  opacity:1!important;
  transform:none!important;
}
.news-list[data-cms-news]{
  display:grid;
  gap:22px;
}
.news-card{
  display:grid;
  grid-template-columns:minmax(220px,360px) 1fr;
  gap:24px;
  background:#fff;
  border:1px solid rgba(6,16,31,.10);
  border-radius:28px;
  padding:18px;
  box-shadow:0 18px 40px rgba(6,16,31,.07);
}
.news-card img{
  width:100%;
  height:240px;
  object-fit:cover;
  border-radius:22px;
}
.news-body h3{
  margin-top:8px;
}
.news-body details{
  margin-top:12px;
}
.news-body summary{
  cursor:pointer;
  font-weight:850;
  color:var(--blue);
}
@media(max-width:760px){
  .news-card{
    grid-template-columns:1fr;
  }
}

/* ===== CMS v7 Block-System ===== */
.cms-balanced-grid{
  display:flex;
  flex-wrap:wrap;
  gap:24px;
  justify-content:center;
  align-items:stretch;
}
.cms-balanced-grid > *{
  flex:1 1 calc(33.333% - 24px);
  max-width:calc(33.333% - 16px);
  min-width:260px;
}
.cms-balanced-grid.cms-cols-4 > *{
  flex-basis:calc(25% - 24px);
  max-width:calc(25% - 18px);
}
.cms-theme-blue{background:#0d4c94!important;color:#fff!important}
.cms-theme-navy{background:#0b2446!important;color:#fff!important}
.cms-theme-steel{background:#eaf1f8!important;color:#06101f!important}
.cms-theme-graphite{background:#202a36!important;color:#fff!important}
.cms-theme-signal{background:#f0a500!important;color:#06101f!important}
.cms-theme-white{background:#fff!important;color:#06101f!important}
.cms-theme-blue .btn-light,.cms-theme-navy .btn-light,.cms-theme-graphite .btn-light{background:#fff!important;color:#06101f!important}
.cms-theme-steel .btn-light,.cms-theme-signal .btn-light,.cms-theme-white .btn-light{background:#0d4c94!important;color:#fff!important}
.cms-split-feature{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:28px;
  align-items:stretch;
}
.cms-split-feature.cms-split-flip > aside{order:-1}
.cms-feature-box{
  border-radius:32px;
  padding:clamp(30px,4vw,54px);
  box-shadow:0 24px 60px rgba(6,16,31,.14);
}
.cms-feature-box h3{
  font-size:clamp(30px,3vw,48px);
  line-height:1.04;
  margin:10px 0 18px;
}
.cms-separator{
  padding:clamp(70px,8vw,120px) 0;
}
.cms-separator h2{
  color:inherit;
  font-size:clamp(44px,5vw,76px);
  line-height:1.04;
  max-width:980px;
}
.cms-separator p{
  font-size:clamp(19px,2vw,27px);
  max-width:900px;
}
.cms-separator-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  margin-top:46px;
}
.cms-separator-grid article{
  border-top:1px solid rgba(255,255,255,.22);
  padding-top:22px;
}
.cms-theme-steel .cms-separator-grid article,
.cms-theme-signal .cms-separator-grid article,
.cms-theme-white .cms-separator-grid article{
  border-top-color:rgba(6,16,31,.14);
}
.cms-text-image{
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:28px;
  align-items:stretch;
}
.cms-text-image.cms-text-image-flip > img{order:-1}
.cms-text-image img{
  width:100%;
  height:100%;
  min-height:360px;
  border-radius:32px;
  object-fit:cover;
  box-shadow:0 24px 60px rgba(6,16,31,.12);
}
.cms-plz-search .result{
  margin-top:18px;
  padding:18px;
  border-radius:18px;
  background:#f3f7fb;
  border:1px solid rgba(6,16,31,.10);
}
@media(max-width:1020px){
  .cms-split-feature,
  .cms-text-image,
  .cms-separator-grid{
    grid-template-columns:1fr;
  }
  .cms-split-feature.cms-split-flip > aside,
  .cms-text-image.cms-text-image-flip > img{
    order:0;
  }
  .cms-balanced-grid > *,
  .cms-balanced-grid.cms-cols-4 > *{
    max-width:100%;
    flex-basis:100%;
  }
}

/* ===== CMS v8 Frontend-Farben und Layout ===== */
.cms-theme-original{background:#124f93!important;color:#fff!important}
.cms-theme-original .btn-light,
.cms-theme-blue .btn-light,
.cms-theme-navy .btn-light,
.cms-theme-graphite .btn-light{background:#fff!important;color:#06101f!important}
.cms-theme-steel .btn-light,
.cms-theme-signal .btn-light,
.cms-theme-white .btn-light{background:#124f93!important;color:#fff!important}
.cms-split-feature{
  align-items:stretch!important;
}
.cms-split-feature > .card,
.cms-split-feature > .cms-feature-box{
  height:100%!important;
  min-height:420px;
}
.cms-text-image{
  align-items:stretch!important;
}
.cms-text-image > .card{
  height:100%!important;
}
.cms-text-image img{
  height:100%!important;
  max-height:none!important;
  align-self:stretch!important;
  object-fit:cover!important;
  object-position:center center;
}
@media(max-width:1020px){
  .cms-text-image img{
    height:auto!important;
    min-height:360px;
    max-height:none!important;
    align-self:auto!important;
  }
}
.cms-separator .cms-separator-grid{
  display:none!important;
}
.slide-actions .btn-blue{background:#0056b8!important;color:#fff!important}
.slide-actions .btn-light{background:#fff!important;color:#06101f!important}

/* ===== CMS v9 Frontend Originalfarben/Farbverläufe ===== */
.cms-theme-original{
  background:
    radial-gradient(circle at 92% 12%, rgba(255,255,255,.16), transparent 34%),
    linear-gradient(135deg, #0b3262 0%, #124f93 48%, #0d4c94 100%) !important;
  color:#fff !important;
}
.cms-theme-blue{
  background:
    radial-gradient(circle at 92% 12%, rgba(255,255,255,.14), transparent 34%),
    linear-gradient(135deg, #0a4a92 0%, #0056b8 100%) !important;
  color:#fff !important;
}
.cms-theme-navy{
  background:
    radial-gradient(circle at 92% 12%, rgba(255,255,255,.13), transparent 34%),
    linear-gradient(135deg, #071b34 0%, #0b2446 100%) !important;
  color:#fff !important;
}
.cms-theme-graphite{
  background:
    radial-gradient(circle at 92% 12%, rgba(255,255,255,.12), transparent 34%),
    linear-gradient(135deg, #18202a 0%, #2a3440 100%) !important;
  color:#fff !important;
}
.cms-theme-steel{
  background:
    radial-gradient(circle at 92% 12%, rgba(8,74,155,.10), transparent 34%),
    linear-gradient(135deg, #f7fbff 0%, #e6eef7 100%) !important;
  color:#06101f !important;
}
.cms-theme-signal{
  background:
    radial-gradient(circle at 92% 12%, rgba(255,255,255,.32), transparent 34%),
    linear-gradient(135deg, #f0a500 0%, #ffc247 100%) !important;
  color:#06101f !important;
}
.cms-theme-white{
  background:
    radial-gradient(circle at 92% 12%, rgba(8,74,155,.08), transparent 34%),
    #fff !important;
  color:#06101f !important;
}
.cms-theme-original h2,.cms-theme-original h3,.cms-theme-original p,.cms-theme-original .kicker,
.cms-theme-blue h2,.cms-theme-blue h3,.cms-theme-blue p,.cms-theme-blue .kicker,
.cms-theme-navy h2,.cms-theme-navy h3,.cms-theme-navy p,.cms-theme-navy .kicker,
.cms-theme-graphite h2,.cms-theme-graphite h3,.cms-theme-graphite p,.cms-theme-graphite .kicker{
  color:#fff !important;
}
.cms-theme-steel h2,.cms-theme-steel h3,.cms-theme-steel p,.cms-theme-steel .kicker,
.cms-theme-signal h2,.cms-theme-signal h3,.cms-theme-signal p,.cms-theme-signal .kicker,
.cms-theme-white h2,.cms-theme-white h3,.cms-theme-white p,.cms-theme-white .kicker{
  color:#06101f !important;
}
.cms-theme-original .btn,.cms-theme-blue .btn,.cms-theme-navy .btn,.cms-theme-graphite .btn{
  background:#fff !important;
  color:#06101f !important;
}
.cms-theme-steel .btn,.cms-theme-signal .btn,.cms-theme-white .btn{
  background:#124f93 !important;
  color:#fff !important;
}

/* ===== CMS v10 Ansprechpartner / PLZ / Gruppen ===== */
.cms-contact-group{
  margin-top:34px;
}
.cms-contact-group > h3{
  font-size:clamp(28px,3vw,44px);
  margin:0 0 18px;
  letter-spacing:-.03em;
}
.cms-plz-table{
  margin-top:40px;
}
.cms-plz-table table{
  width:100%;
  border-collapse:collapse;
}
.cms-plz-table th,
.cms-plz-table td{
  text-align:left;
  padding:14px 12px;
  border-bottom:1px solid rgba(6,16,31,.10);
}
.cms-plz-search .result{
  margin-top:18px;
  padding:0;
  border:0;
  background:transparent;
}
.cms-plz-card{
  display:grid;
  grid-template-columns:72px 1fr auto;
  gap:18px;
  align-items:center;
  background:#f3f7fb;
  border:1px solid rgba(6,16,31,.10);
  border-radius:22px;
  padding:18px;
}
.cms-plz-card img{
  width:72px;
  height:72px;
  object-fit:cover;
  border-radius:18px;
  background:#dfe9f5;
}
.cms-plz-card h3{
  margin:0 0 4px;
}
.cms-plz-card p{
  margin:0;
}
.cms-plz-card .btn{
  white-space:nowrap;
}
.cms-plz-result-empty{
  color:#647084;
}
@media(max-width:760px){
  .cms-plz-card{
    grid-template-columns:1fr;
  }
}

/* ===== CMS v11 News Pagination ===== */
.cms-pagination{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:34px;
  flex-wrap:wrap;
}
.cms-page-link{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border:1px solid rgba(6,16,31,.12);
  border-radius:999px;
  background:#fff;
  color:#06101f;
  font-weight:850;
  text-decoration:none;
}
.cms-page-link.active,
.cms-page-link:hover{
  background:#124f93;
  color:#fff;
}

.cms-pagination button.cms-page-link{
  cursor:pointer;
  font:inherit;
  border:1px solid rgba(6,16,31,.12);
}

/* ===== CMS v18 Tabellen, Galerie, Newsletter, Ansprechpartner ===== */
.cms-table-card{
  padding:clamp(28px,4vw,48px)!important;
}
.cms-table-card h2{
  font-size:clamp(34px,4.5vw,72px);
  line-height:.98;
  margin:0 0 24px;
}
.cms-content-table{
  width:100%;
  border-collapse:collapse;
  font-size:clamp(14px,1.1vw,16px);
}
.cms-content-table th{
  color:#0056b8;
  text-transform:uppercase;
  letter-spacing:.055em;
  font-size:12px;
  text-align:left;
  padding:14px 12px;
  border-bottom:1px solid rgba(6,16,31,.12);
}
.cms-content-table td{
  padding:16px 12px;
  border-bottom:1px solid rgba(6,16,31,.10);
  vertical-align:top;
}
.cms-content-table td:first-child{
  font-weight:900;
}
.cms-table-note{
  margin:20px 0 0;
  color:#56657a;
}
.cms-gallery-block{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:26px;
  align-items:stretch;
  border-radius:32px;
  padding:clamp(18px,2vw,26px);
  box-shadow:0 24px 70px rgba(6,16,31,.12);
}
.cms-gallery-media{
  position:relative;
  min-height:430px;
  border-radius:24px;
  overflow:hidden;
  background:#06101f;
}
.cms-gallery-slide{
  display:none;
  margin:0;
  height:100%;
}
.cms-gallery-slide.active{
  display:block;
}
.cms-gallery-slide img{
  width:100%;
  height:100%;
  min-height:430px;
  object-fit:cover;
  display:block;
}
.cms-gallery-slide figcaption{
  position:absolute;
  left:18px;
  bottom:18px;
  max-width:calc(100% - 36px);
  background:rgba(6,16,31,.72);
  color:#fff;
  padding:10px 14px;
  border-radius:999px;
  font-weight:800;
  backdrop-filter:blur(10px);
}
.cms-gallery-controls{
  position:absolute;
  right:18px;
  top:18px;
  display:flex;
  gap:10px;
}
.cms-gallery-controls button{
  width:46px;
  height:46px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.16);
  color:#fff;
  font-size:28px;
  cursor:pointer;
}
.cms-gallery-text{
  border-radius:24px;
  padding:clamp(26px,3vw,44px);
  background:rgba(255,255,255,.12);
}
.cms-gallery-text h2{
  font-size:clamp(32px,3.4vw,56px);
  line-height:1.02;
}
.cms-gallery-text-slide{display:none}
.cms-gallery-text-slide.active{display:block}
.cms-newsletter-block{
  align-items:center;
  gap:26px;
}
.cms-newsletter-form{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  min-width:min(100%,430px);
}
.cms-newsletter-form input{
  flex:1 1 240px;
  min-height:54px;
  border-radius:999px;
  border:1px solid rgba(6,16,31,.14);
  padding:0 20px;
  font-weight:750;
}
.cms-contact-group{
  padding:18px 0 8px;
}
.cms-contact-group > h3{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 14px;
  background:#eef5fc;
  color:#0056b8;
  border-radius:999px;
  font-size:16px!important;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.card.person{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:24px!important;
  min-height:100%;
}
.card.person .person-photo{
  width:100%!important;
  max-width:none!important;
  height:220px!important;
  border-radius:22px!important;
  object-fit:cover!important;
  background:#eef5fc;
  margin:0 0 18px!important;
}
.card.person .role{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#0056b8;
  font-weight:900;
}
.card.person h3{
  font-size:clamp(22px,2vw,30px);
  margin:6px 0 8px;
}
.card.person p{
  color:#56657a;
}
.card.person .phone{
  margin-top:auto;
  font-weight:900;
  color:#06101f;
}
.card.person .btn{
  margin-top:10px;
}
@media(max-width:1000px){
  .cms-gallery-block{
    grid-template-columns:1fr;
  }
  .cms-gallery-media,.cms-gallery-slide img{
    min-height:300px;
  }
}


/* ===== CMS v19 Optical refinement: gallery, newsletter, contacts ===== */
.sr-only{
  position:absolute!important;
  width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

.cms-gallery-block{
  display:grid !important;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr) !important;
  gap:28px !important;
  align-items:stretch !important;
  background:#fff !important;
  border:1px solid rgba(6,16,31,.08);
  border-radius:34px !important;
  padding:24px !important;
  box-shadow:0 22px 60px rgba(6,16,31,.10) !important;
  overflow:hidden;
}
.cms-gallery-block.no-panel{
  grid-template-columns:1fr !important;
}
.cms-gallery-media{
  position:relative;
  min-height:520px !important;
  border-radius:28px !important;
  overflow:hidden;
  background:#dfe9f5 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);
}
.cms-gallery-slide{
  position:absolute;
  inset:0;
  display:block !important;
  opacity:0;
  visibility:hidden;
  transition:opacity .35s ease, visibility .35s ease;
}
.cms-gallery-slide.active{
  opacity:1;
  visibility:visible;
}
.cms-gallery-slide img{
  width:100%;
  height:100%;
  min-height:520px !important;
  object-fit:cover;
  display:block;
}
.cms-gallery-slide::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:34%;
  background:linear-gradient(180deg, rgba(6,16,31,0) 0%, rgba(6,16,31,.58) 100%);
  pointer-events:none;
}
.cms-gallery-slide figcaption{
  position:absolute !important;
  left:22px !important;
  bottom:22px !important;
  max-width:calc(100% - 44px);
  background:rgba(255,255,255,.16) !important;
  border:1px solid rgba(255,255,255,.18);
  color:#fff !important;
  padding:10px 16px !important;
  border-radius:14px !important;
  font-weight:700 !important;
  line-height:1.35;
  backdrop-filter:blur(14px);
  z-index:2;
}
.cms-gallery-controls{
  position:absolute !important;
  left:22px !important;
  right:22px !important;
  bottom:22px !important;
  top:auto !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:16px;
  z-index:3;
  pointer-events:none;
}
.cms-gallery-dots,
.cms-gallery-arrows{
  display:flex;
  align-items:center;
  gap:10px;
  pointer-events:auto;
}
.cms-gallery-dot{
  width:12px;
  height:12px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.45);
  box-shadow:none;
  cursor:pointer;
}
.cms-gallery-dot.active{
  width:32px;
  background:#fff;
}
.cms-gallery-arrows button,
.cms-gallery-controls button[data-gallery-prev],
.cms-gallery-controls button[data-gallery-next]{
  width:52px !important;
  height:52px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.28) !important;
  background:rgba(255,255,255,.16) !important;
  color:#fff !important;
  font-size:28px !important;
  line-height:1 !important;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  backdrop-filter:blur(14px);
}
.cms-gallery-panel{
  border-radius:28px;
  padding:34px clamp(24px,3vw,38px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:520px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10);
}
.cms-gallery-panel .kicker{
  margin-bottom:16px;
}
.cms-gallery-panel h2,
.cms-gallery-text h2{
  font-size:clamp(40px,4vw,64px) !important;
  line-height:.98 !important;
  margin:0 0 18px !important;
  letter-spacing:-.045em;
}
.cms-gallery-panel p,
.cms-gallery-text p{
  font-size:18px;
  line-height:1.7;
  max-width:42ch;
}
.cms-gallery-text-slide{
  display:none;
}
.cms-gallery-text-slide.active{
  display:block;
}

.cms-newsletter-block{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(340px,460px) !important;
  gap:32px !important;
  align-items:center !important;
  padding:44px 48px !important;
}
.cms-newsletter-copy h2{
  margin:0 0 14px !important;
}
.cms-newsletter-copy p{
  max-width:56ch;
}
.cms-newsletter-form{
  display:flex !important;
  align-items:center;
  gap:14px !important;
  flex-wrap:nowrap !important;
  min-width:0 !important;
  width:100%;
  padding:10px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(14px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.cms-newsletter-field{
  flex:1 1 auto;
  min-width:0;
}
.cms-newsletter-form input{
  width:100%;
  min-height:58px !important;
  border-radius:999px !important;
  border:1px solid rgba(6,16,31,.10) !important;
  background:#fff !important;
  color:#06101f !important;
  padding:0 22px !important;
  font-size:16px;
  font-weight:750;
  box-shadow:0 12px 22px rgba(6,16,31,.08);
}
.cms-newsletter-form input::placeholder{
  color:#6f7c8f;
}
.cms-newsletter-form .btn{
  min-height:58px;
  padding:0 28px !important;
  white-space:nowrap;
  border-radius:999px !important;
  box-shadow:0 12px 22px rgba(6,16,31,.12);
}

.cms-contact-shell{
  background:linear-gradient(180deg,#fbfdff 0%, #f4f8fd 100%);
  border:1px solid rgba(6,16,31,.07);
  border-radius:34px;
  padding:clamp(28px,4vw,44px);
  box-shadow:0 22px 60px rgba(6,16,31,.08);
}
.cms-contact-shell .section-title{
  margin-bottom:18px;
}
.cms-contact-shell .section-title p{
  max-width:72ch;
}
.cms-contact-group{
  margin-top:28px !important;
  padding:0 !important;
}
.cms-contact-group-head{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:18px;
}
.cms-contact-group-head h3,
.cms-contact-group > h3{
  margin:0 !important;
  padding:0 !important;
  background:none !important;
  color:#06101f !important;
  font-size:clamp(26px,2.6vw,38px) !important;
  letter-spacing:-.03em !important;
  text-transform:none !important;
}
.cms-contact-group-head span{
  height:1px;
  flex:1;
  background:linear-gradient(90deg, rgba(18,79,147,.22), rgba(18,79,147,0));
}
.cms-contact-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:22px;
}
.card.person{
  display:flex !important;
  flex-direction:column !important;
  padding:18px !important;
  border-radius:28px !important;
  box-shadow:0 18px 38px rgba(6,16,31,.08) !important;
  background:linear-gradient(180deg,#ffffff 0%, #f8fbff 100%) !important;
  border:1px solid rgba(18,79,147,.10) !important;
}
.card.person .person-media{
  margin-bottom:16px;
  width:100%;
}
.card.person .person-photo{
  width:100% !important;
  height:240px !important;
  border-radius:22px !important;
  object-fit:cover !important;
  display:block;
  background:#e7f0fb !important;
}
.card.person .person-content{
  display:flex;
  flex-direction:column;
  gap:10px;
  width:100%;
}
.card.person .role{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:7px 12px;
  border-radius:999px;
  background:#edf4fd;
  color:#0056b8 !important;
  font-size:11px !important;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-weight:900;
}
.card.person h3{
  margin:0 !important;
  font-size:clamp(24px,2vw,32px) !important;
  line-height:1.05;
}
.card.person .person-area,
.card.person p{
  margin:0;
  color:#5e6e83 !important;
  line-height:1.55;
}
.card.person .person-meta{
  display:grid;
  gap:10px;
  margin-top:4px;
}
.card.person .person-meta-item{
  padding:12px 14px;
  border-radius:16px;
  background:#f4f8fd;
  border:1px solid rgba(18,79,147,.08);
}
.card.person .person-meta-item span{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#6c7b8f;
  font-weight:800;
  margin-bottom:4px;
}
.card.person .person-meta-item strong{
  display:block;
  color:#06101f;
  font-size:15px;
  line-height:1.4;
  word-break:break-word;
}
.card.person .person-actions{
  margin-top:auto;
  padding-top:6px;
}
.card.person .btn{
  margin-top:0 !important;
}
.cms-plz-table{
  margin-top:34px !important;
}
.cms-plz-table-head{
  margin-bottom:14px;
}
.cms-plz-table-head h3{
  margin-bottom:6px;
}

@media (max-width: 1180px){
  .cms-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 1020px){
  .cms-gallery-block{grid-template-columns:1fr !important;}
  .cms-gallery-media,
  .cms-gallery-panel,
  .cms-gallery-slide img{min-height:380px !important;}
  .cms-newsletter-block{grid-template-columns:1fr !important;}
}
@media (max-width: 760px){
  .cms-gallery-block{padding:16px !important;border-radius:26px !important;}
  .cms-gallery-media,
  .cms-gallery-panel,
  .cms-gallery-slide img{min-height:300px !important;}
  .cms-gallery-panel{padding:26px 22px;}
  .cms-gallery-panel h2{font-size:clamp(32px,10vw,46px) !important;}
  .cms-newsletter-block{padding:30px 22px !important;border-radius:28px !important;}
  .cms-newsletter-form{flex-wrap:wrap !important;border-radius:26px;padding:12px;}
  .cms-newsletter-form .btn{width:100%;justify-content:center;}
  .cms-contact-shell{padding:24px 18px;}
  .cms-contact-grid{grid-template-columns:1fr;}
}

/* ===== CMS v20 Feinschliff ===== */

/* Galerie: Caption und Sliderbedienung trennen */
.cms-gallery-controls{
  bottom:22px !important;
}
.cms-gallery-slide figcaption{
  bottom:86px !important;
  left:24px !important;
  max-width:calc(100% - 48px) !important;
}
.cms-gallery-block.no-panel{
  background:#fff !important;
}
.cms-gallery-block.no-panel .cms-gallery-media{
  min-height:620px !important;
}
.cms-gallery-block.no-panel .cms-gallery-slide img{
  min-height:620px !important;
}

/* Galerie im Admin soll wie Frontend wirken */
.preview .cms-gallery-block{
  background:#fff !important;
}
.preview .cms-gallery-block.has-panel{
  background:#fff !important;
}
.preview .cms-gallery-panel{
  overflow:hidden;
}

/* Ansprechpartner kompakter */
.cms-contact-shell{
  padding:clamp(24px,3vw,36px) !important;
}
.cms-contact-grid{
  gap:18px !important;
}
.card.person{
  padding:16px !important;
  border-radius:24px !important;
}
.card.person .person-photo{
  width:min(100%, 250px) !important;
  aspect-ratio:4/5 !important;
  height:auto !important;
  max-height:none !important;
  border-radius:18px !important;
  object-fit:cover !important;
  object-position:center top !important;
  display:block !important;
  margin:0 auto !important;
}
.card.person .role{
  font-size:10px !important;
  padding:6px 10px !important;
}
.card.person h3{
  font-size:clamp(20px,1.55vw,26px) !important;
}
.card.person .person-meta{
  gap:8px !important;
}
.card.person .person-meta-item{
  padding:10px 12px !important;
}
.card.person .person-meta-item strong{
  font-size:14px !important;
}
.cms-contact-group-head h3{
  font-size:clamp(22px,2vw,32px) !important;
}

/* PLZ Ergebnis wie Ansprechpartnerkarte */
.cms-plz-card{
  display:grid !important;
  grid-template-columns:180px 1fr !important;
  gap:20px !important;
  align-items:stretch !important;
  background:linear-gradient(180deg,#fff 0%,#f8fbff 100%) !important;
  border:1px solid rgba(18,79,147,.10) !important;
  border-radius:26px !important;
  padding:16px !important;
  box-shadow:0 18px 38px rgba(6,16,31,.08) !important;
}
.cms-plz-card img{
  width:180px !important;
  height:180px !important;
  object-fit:cover !important;
  border-radius:20px !important;
  background:#e7f0fb !important;
}
.cms-plz-card h3{
  font-size:clamp(24px,2vw,32px) !important;
  margin:0 0 8px !important;
}
.cms-plz-card .role{
  display:inline-flex;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  background:#edf4fd;
  color:#0056b8;
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-weight:900;
  margin-bottom:10px;
}
.cms-plz-card .person-meta{
  display:grid;
  gap:10px;
  margin:12px 0;
}
.cms-plz-card .person-meta-item{
  padding:12px 14px;
  border-radius:16px;
  background:#f4f8fd;
  border:1px solid rgba(18,79,147,.08);
}
.cms-plz-card .person-meta-item span{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:#6c7b8f;
  font-weight:800;
  margin-bottom:4px;
}
.cms-plz-card .person-meta-item strong{
  display:block;
  color:#06101f;
  font-size:15px;
  line-height:1.4;
}
@media(max-width:760px){
  .cms-gallery-block.no-panel .cms-gallery-media,
  .cms-gallery-block.no-panel .cms-gallery-slide img{
    min-height:360px !important;
  }
  .cms-plz-card{
    grid-template-columns:1fr !important;
  }
  .cms-plz-card img{
    width:100% !important;
    height:220px !important;
  }
}

/* ===== CMS v21 Ergänzungen ===== */

/* Farbiger Banner mit E-Mail-Feld: Admin/Frontend konsistenter */
.preview .career-final-cta-v22.cms-newsletter-block{
  grid-template-columns:minmax(0,1fr) minmax(340px,460px) !important;
  align-items:center !important;
}
.preview .cms-newsletter-form{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:14px !important;
  padding:10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.18) !important;
}
.preview .cms-newsletter-field{
  flex:1 1 auto !important;
}
.preview .cms-newsletter-form input{
  width:100% !important;
  min-height:58px !important;
  border-radius:999px !important;
  border:1px solid rgba(6,16,31,.10) !important;
  padding:0 22px !important;
  font-weight:750 !important;
}
.cms-newsletter-success{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:min(100%,430px);
  padding:18px 22px;
  border-radius:28px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter:blur(14px);
}
.cms-newsletter-success strong{
  display:block;
  color:inherit;
  font-size:20px;
}
.cms-newsletter-success span{
  display:block;
  color:inherit;
  opacity:.82;
}
.cms-newsletter-success:before{
  content:"✓";
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:999px;
  background:#fff;
  color:#124f93;
  font-weight:950;
  flex:0 0 auto;
}

/* Galerie Admin/Frontend Angleichen */
.preview .cms-gallery-block{
  display:grid !important;
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.9fr) !important;
  gap:28px !important;
  background:#fff !important;
  border:1px solid rgba(6,16,31,.08) !important;
  border-radius:34px !important;
  padding:24px !important;
}
.preview .cms-gallery-block.no-panel{
  grid-template-columns:1fr !important;
}
.preview .cms-gallery-panel{
  border-radius:28px !important;
  padding:34px clamp(24px,3vw,38px) !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-height:520px !important;
}
.preview .cms-gallery-panel h2{
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  font-size:clamp(40px,4vw,64px) !important;
}
.preview .cms-gallery-block.no-panel .cms-gallery-media,
.preview .cms-gallery-block.no-panel .cms-gallery-slide img{
  min-height:620px !important;
}

/* Werkstoffe/Datenblätter */
.cms-datasheet-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.cms-datasheet-card .btn{
  margin-top:auto;
}
.btn-disabled{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  border-radius:999px;
  padding:0 18px;
  background:#eef3f9;
  color:#6c7b8f;
  font-weight:850;
}

/* ===== CMS v22 Feinschliff ===== */

/* Admin-Vorschau: Banner mit Mailfeld wie Frontend */
.preview .career-final-cta-v22.cms-newsletter-block{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(340px,460px) !important;
  gap:32px !important;
  align-items:center !important;
  padding:44px 48px !important;
}
.preview .cms-newsletter-form{
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:nowrap !important;
  min-width:0 !important;
  padding:10px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.18) !important;
}
.preview .cms-newsletter-form .cms-newsletter-field{
  flex:1 1 auto !important;
  min-width:0 !important;
}
.preview .cms-newsletter-form input{
  width:100% !important;
  min-height:58px !important;
}
.preview .cms-newsletter-form .btn{
  width:auto !important;
  min-width:132px !important;
  margin:0 !important;
}

/* Admin-Vorschau: Galerie Text nicht abschneiden */
.preview .cms-gallery-block{
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.9fr) !important;
}
.preview .cms-gallery-block.no-panel{
  grid-template-columns:1fr !important;
}
.preview .cms-gallery-panel{
  min-width:0 !important;
  overflow:hidden !important;
}
.preview .cms-gallery-panel h2{
  max-width:100% !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
  word-break:normal !important;
  font-size:clamp(34px,3.3vw,56px) !important;
}

/* Newsletter Rückmeldungen */
.cms-newsletter-success.is-warning:before{
  content:"!";
  color:#8a5a00;
}
.cms-newsletter-success.is-warning{
  background:rgba(255,194,71,.20);
  border-color:rgba(255,194,71,.45);
}

/* Gebiet wie Telefon/E-Mail */
.person-area-box strong{
  white-space:normal;
}
.cms-plz-card .person-area-box strong{
  white-space:normal;
}

/* ===== CMS v26 Topnews ===== */
.news-card.is-topnews{
  display:grid!important;
  grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr)!important;
  border:2px solid rgba(18,79,147,.28)!important;
  background:linear-gradient(135deg,#fff 0%,#eef6ff 100%)!important;
  box-shadow:0 24px 70px rgba(6,16,31,.14)!important;
}
.news-card.is-topnews img{
  height:100%!important;
  min-height:320px!important;
}
.news-card.is-topnews .news-body:before{
  content:'Topnews';
  display:inline-flex;
  margin-bottom:10px;
  padding:7px 12px;
  border-radius:999px;
  background:#124f93;
  color:#fff;
  font-weight:950;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
@media(max-width:800px){
  .news-card.is-topnews{grid-template-columns:1fr!important}
  .news-card.is-topnews img{min-height:220px!important}
}

/* ===== CMS v27 frontend fixes ===== */
.news-card.is-topnews{
  position:relative;
  border:2px solid rgba(18,79,147,.34)!important;
  background:linear-gradient(135deg,#fff 0%,#eef6ff 100%)!important;
  box-shadow:0 28px 80px rgba(6,16,31,.16)!important;
}
.news-card.is-topnews:before{
  content:"Topnews";
  position:absolute;
  top:18px;
  left:18px;
  z-index:2;
  display:inline-flex;
  padding:8px 13px;
  border-radius:999px;
  background:#124f93;
  color:#fff;
  font-weight:950;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.news-card.is-topnews .news-body:before{display:none!important}

.cms-datasheet-card p{
  color:#56657a;
  line-height:1.65;
}
.cms-pdf-viewer{
  display:none;
  position:fixed;
  inset:0;
  z-index:99999;
}
.cms-pdf-viewer.is-open{display:block}
.cms-pdf-backdrop{
  position:absolute;
  inset:0;
  background:rgba(6,16,31,.64);
  backdrop-filter:blur(8px);
}
.cms-pdf-dialog{
  position:absolute;
  inset:4vh 4vw;
  background:#fff;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 30px 90px rgba(0,0,0,.28);
}
.cms-pdf-dialog iframe{
  width:100%;
  height:100%;
  border:0;
}
.cms-pdf-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:2;
  width:44px;
  height:44px;
  border:0;
  border-radius:999px;
  background:#124f93;
  color:#fff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
@media(max-width:760px){
  .cms-pdf-dialog{inset:2vh 2vw}
}

/* ===== CMS v28 fixes ===== */
.inline-check{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 16px!important;font-weight:900!important}.inline-check input{width:18px!important;height:18px!important;margin:0!important}.cms-plz-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.role.prokurist{background:#fff3cd!important;color:#8a5a00!important}.table td.actions{display:flex!important;align-items:center!important;gap:10px!important}.table td.actions form{margin:0!important}.admin-table-row td{vertical-align:middle!important}.preview .career-final-cta-v22.cms-newsletter-block .cms-newsletter-form{display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important;flex-wrap:nowrap!important}.preview .career-final-cta-v22.cms-newsletter-block .cms-newsletter-form input{height:58px!important;margin:0!important}.preview .career-final-cta-v22.cms-newsletter-block .cms-newsletter-form .btn{height:58px!important;margin:0!important;align-self:center!important}

/* ===== CMS v29 Blöcke / Maschinenpark / Karten / Prokurist ===== */
.cms-auto-4{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))!important;
}
.cms-auto-4 > *{
  max-width:360px;
  width:100%;
}
.cms-auto-4{
  justify-items:center;
}
@media(min-width:1180px){
  .cms-auto-4{grid-template-columns:repeat(4,1fr)!important}
}
.cms-image-card-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;
  justify-items:center;
}
.cms-image-card-grid > *{
  width:100%;
  max-width:420px;
}
.cms-page-intro h1{
  font-size:clamp(48px,6vw,92px);
  line-height:.98;
  letter-spacing:-.055em;
  margin:0 0 22px;
}
.cms-page-intro img{
  width:100%;
  border-radius:28px;
  object-fit:cover;
}
.cms-table-edit-grid{
  display:grid;
  gap:12px;
  padding:12px;
  border:1px solid var(--line);
  background:#f8fbfe;
  border-radius:18px;
  overflow:auto;
}
.table-editor-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0;
}
.person-role-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  min-height:34px;
}
.prokurist-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 11px;
  border-radius:999px;
  background:#fff2b8;
  color:#124f93;
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  font-weight:950;
}
.card.person .role{
  margin:0!important;
}

/* ===== CMS v30 Anpassungen ===== */
.cms-editable-table th[contenteditable],
.cms-editable-table td[contenteditable]{
  outline:2px dashed transparent;
  border-radius:8px;
  cursor:text;
}
.cms-editable-table th[contenteditable]:focus,
.cms-editable-table td[contenteditable]:focus{
  outline-color:#0b5bb5;
  background:#eef6ff;
}
.cms-page-intro-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
  gap:clamp(28px,5vw,72px);
  align-items:center;
  background:#fff;
  border:1px solid rgba(6,16,31,.08);
  border-radius:34px;
  padding:clamp(34px,5vw,68px);
  box-shadow:0 24px 70px rgba(6,16,31,.08);
}
.cms-page-intro-card.cms-page-intro-flip .cms-page-intro-copy{order:2}
.cms-page-intro-card.cms-page-intro-flip img{order:1}
.cms-page-intro-copy h1{
  font-size:clamp(52px,6vw,92px);
  line-height:.98;
  letter-spacing:-.055em;
  margin:0 0 24px;
}
.cms-page-intro-card img{
  width:100%;
  height:clamp(300px,32vw,460px);
  object-fit:cover;
  border-radius:28px;
  display:block;
}
.person-media{
  position:relative;
}
.prokurist-photo-badge{
  position:absolute;
  left:14px;
  top:14px;
  z-index:2;
  box-shadow:0 10px 24px rgba(6,16,31,.16);
}
.cms-machine-table td,
.cms-machine-table th{
  white-space:nowrap;
}
@media(max-width:900px){
  .cms-page-intro-card{grid-template-columns:1fr}
  .cms-page-intro-card.cms-page-intro-flip .cms-page-intro-copy,
  .cms-page-intro-card.cms-page-intro-flip img{order:initial}
}

/* ===== CMS v40 – starke Split-Effekte + lange, bewegte Scrollkapitel ===== */
body.home-cinematic{
  overflow-x:hidden;
  background:#f4f7fa;
}
body.home-cinematic main{
  overflow:visible;
  background:#f4f7fa;
}
body.home-cinematic .site-header{
  opacity:0;
  transform:translate3d(0,-115%,0);
  pointer-events:none;
  transition:opacity .5s ease,transform .5s ease;
}
body.home-cinematic.effect-menu-visible .site-header{
  opacity:1;
  transform:translate3d(0,0,0);
  pointer-events:auto;
}
.kontur-effect-home{
  position:relative;
  color:#06101f;
  background:#f4f7fa;
}
.effect-scroll{
  position:relative;
  height:950svh;
  min-height:7200px;
  background:#f4f7fa;
}
.effect-sticky{
  position:sticky;
  top:0;
  width:100%;
  height:100svh;
  min-height:680px;
  overflow:hidden;
  isolation:isolate;
  background:#07111f;
  contain:paint;
}
.effect-visual,
.effect-layer{
  position:absolute;
  inset:0;
}
.effect-visual{
  z-index:1;
  overflow:hidden;
  background:#07111f;
}
.effect-layer{
  margin:0;
  opacity:0;
  transform:scale(var(--effect-scale,1.018));
  transform-origin:50% 50%;
  will-change:opacity,transform;
  backface-visibility:hidden;
}
.effect-layer img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transform:translateZ(0);
  user-select:none;
  pointer-events:none;
}
.effect-depth-overlay,
.effect-whiteout{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.effect-depth-overlay{
  z-index:8;
  background:
    linear-gradient(180deg,rgba(3,12,26,.18) 0%,transparent 30%,transparent 62%,rgba(3,12,26,.38) 100%),
    linear-gradient(90deg,rgba(3,12,26,.28) 0%,transparent 28%,transparent 78%,rgba(3,12,26,.15) 100%);
}
.effect-whiteout{
  z-index:9;
  opacity:var(--whiteout,0);
  background:linear-gradient(180deg,#f5f8fb 0%,#fff 100%);
}
.effect-scroll-hint{
  position:absolute;
  z-index:24;
  left:50%;
  bottom:34px;
  transform:translate3d(-50%,0,0);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  color:#fff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
  text-shadow:0 8px 24px rgba(0,0,0,.48);
  opacity:var(--hint-opacity,1);
}
.effect-scroll-hint i{
  position:relative;
  width:2px;
  height:52px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.44);
}
.effect-scroll-hint i:after{
  content:"";
  position:absolute;
  left:0;
  top:-20px;
  width:100%;
  height:20px;
  border-radius:99px;
  background:#fff;
  animation:effectScrollPulse 1.6s infinite;
}
@keyframes effectScrollPulse{
  to{transform:translate3d(0,78px,0)}
}
.effect-counter{
  position:absolute;
  z-index:24;
  right:clamp(14px,2.3vw,36px);
  top:50%;
  transform:translate3d(0,-50%,0);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:9px;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-shadow:0 5px 18px rgba(0,0,0,.48);
}
.effect-counter i{
  position:relative;
  display:block;
  width:2px;
  height:112px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.34);
}
.effect-counter b{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:var(--effect-progress,0%);
  border-radius:99px;
  background:#fff;
}
.effect-counter em{
  font-style:normal;
}
.effect-scene{
  position:absolute;
  inset:0;
  z-index:14;
  pointer-events:none;
}
.effect-scene-inner{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(14,minmax(0,1fr));
  grid-template-rows:repeat(12,minmax(0,1fr));
  gap:clamp(10px,1.15vw,22px);
  padding:clamp(26px,4.5vw,76px) clamp(30px,5.2vw,92px) clamp(34px,5vw,78px);
}
.effect-item{
  opacity:0;
  transform:translate3d(0,36px,0) scale(.985);
  will-change:opacity,transform;
}
.effect-scene-title{
  min-width:0;
  align-self:start;
}
.effect-scene-title > span{
  display:inline-flex;
  min-height:35px;
  align-items:center;
  padding:0 14px;
  border:1px solid currentColor;
  border-radius:999px;
  font-size:11px;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
  opacity:.86;
  backdrop-filter:blur(10px);
}
.effect-scene-title > strong{
  display:block;
  margin-top:18px;
  font-size:clamp(40px,4.8vw,78px);
  line-height:.93;
  letter-spacing:-.058em;
}
.effect-fact{
  min-width:0;
  align-self:center;
}
.effect-fact strong,
.effect-fact span,
.effect-route strong,
.effect-route span,
.effect-offer-number strong,
.effect-offer-number span{
  display:block;
}
.effect-fact strong{
  font-size:clamp(42px,5.4vw,90px);
  line-height:.87;
  letter-spacing:-.058em;
}
.effect-fact span{
  margin-top:10px;
  font-size:clamp(15px,1.32vw,21px);
  font-weight:880;
  letter-spacing:.035em;
  text-transform:uppercase;
}

/* Plattenfertigung: links Text, rechts Stahl-Skelett */
.effect-scene-plate{
  color:#fff;
  text-shadow:0 10px 34px rgba(0,0,0,.45);
}
.effect-scene-plate .effect-scene-title{
  grid-column:1 / 6;
  grid-row:1 / 4;
}
.effect-scene-plate .effect-fact-a{
  grid-column:9 / 15;
  grid-row:2 / 4;
  justify-self:end;
  text-align:right;
}
.effect-scene-plate .effect-fact-b{
  grid-column:1 / 5;
  grid-row:6 / 8;
}
.effect-scene-plate .effect-fact-c{
  grid-column:6 / 10;
  grid-row:8 / 10;
  justify-self:center;
  text-align:center;
}
.effect-scene-plate .effect-fact-d{
  grid-column:10 / 15;
  grid-row:8 / 10;
  justify-self:end;
  text-align:right;
}
.effect-network-note{
  grid-column:1 / 6;
  grid-row:10 / 13;
  align-self:end;
  max-width:560px;
  padding-left:18px;
  border-left:3px solid #73cfff;
  color:#e9f6ff;
  font-size:clamp(13px,1.02vw,17px);
  font-weight:740;
  line-height:1.45;
}

/* Sonderfertigung: komplett andere Anordnung */
.effect-scene-special{
  color:#fff;
  text-shadow:0 10px 38px rgba(0,12,35,.42);
}
.effect-scene-special .effect-scene-title{
  grid-column:9 / 15;
  grid-row:1 / 4;
  justify-self:end;
  text-align:right;
}
.effect-scene-special .effect-scene-title > span{
  background:rgba(0,18,52,.34);
  border-color:rgba(255,255,255,.62);
}
.effect-scene-special .effect-fact-a{
  grid-column:1 / 5;
  grid-row:2 / 4;
}
.effect-scene-special .effect-fact-b{
  grid-column:9 / 14;
  grid-row:5 / 7;
  justify-self:end;
  text-align:right;
}
.effect-scene-special .effect-fact-c{
  grid-column:1 / 7;
  grid-row:8 / 10;
}
.effect-scene-special .effect-fact-d{
  grid-column:9 / 15;
  grid-row:9 / 11;
  justify-self:end;
  text-align:right;
}
.effect-scene-special .effect-fact-c strong{
  font-size:clamp(34px,4.2vw,70px);
}
.effect-scene-special .effect-fact-d strong{
  font-size:clamp(32px,3.8vw,64px);
}

/* Anfrage & Angebot: Titel unten links, 24h groß rechts */
.effect-scene-offer{
  color:#102a46;
  text-shadow:0 10px 34px rgba(255,255,255,.18);
}
.effect-scene-offer .effect-scene-title{
  grid-column:1 / 6;
  grid-row:8 / 12;
  align-self:end;
}
.effect-offer-note{
  grid-column:1 / 5;
  grid-row:2 / 5;
  align-self:start;
  max-width:560px;
  padding-left:20px;
  border-left:3px solid #084a9b;
  color:#29455f;
  font-size:clamp(17px,1.42vw,23px);
  line-height:1.5;
}
.effect-offer-number{
  grid-column:7 / 15;
  grid-row:2 / 9;
  align-self:center;
  justify-self:end;
  text-align:right;
}
.effect-offer-number strong{
  color:#084a9b;
  font-size:clamp(145px,22vw,360px);
  line-height:.72;
  letter-spacing:-.092em;
}
.effect-offer-number span{
  margin-top:20px;
  color:#36516c;
  font-size:clamp(18px,1.75vw,28px);
  font-weight:820;
}

/* Versand: Bild bleibt bis zum Schluss vollständig sichtbar */
.effect-scene-shipping{
  color:#fff;
  text-shadow:0 10px 38px rgba(0,0,0,.50);
}
.effect-scene-shipping .effect-scene-title{
  grid-column:1 / 6;
  grid-row:1 / 4;
}
.effect-route{
  min-width:0;
  align-self:center;
}
.effect-route strong{
  color:#fff;
  font-size:clamp(50px,6.2vw,104px);
  line-height:.86;
  letter-spacing:-.062em;
}
.effect-route span{
  margin-top:15px;
  color:#edf8ff;
  font-size:clamp(16px,1.45vw,23px);
  font-weight:760;
  line-height:1.42;
}
.effect-route-a{
  grid-column:1 / 6;
  grid-row:7 / 11;
  align-self:end;
}
.effect-route-b{
  grid-column:9 / 15;
  grid-row:4 / 8;
  justify-self:end;
  text-align:right;
  max-width:580px;
}
.effect-shipping-word{
  grid-column:5 / 15;
  grid-row:10 / 13;
  align-self:end;
  justify-self:end;
  color:rgba(255,255,255,.14);
  font-size:clamp(86px,13vw,230px);
  line-height:.72;
  font-weight:950;
  letter-spacing:-.08em;
  white-space:nowrap;
}

/* Editierbare Kacheln aus v39 */
.home-tiles-section{
  position:relative;
  z-index:30;
  margin-top:-2px;
  padding:clamp(96px,10vw,154px) 0 clamp(100px,10vw,150px);
  background:#fff;
  color:var(--ink);
}
.home-tiles-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:clamp(12px,1.25vw,20px);
}
.home-tile{
  --tile-accent:#135ea8;
  --tile-soft:#eef5fc;
  position:relative;
  min-width:0;
  min-height:355px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  padding:24px 21px 22px;
  border:1px solid rgba(6,16,31,.07);
  border-radius:24px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.70),rgba(255,255,255,.92)),
    var(--tile-soft);
  box-shadow:0 16px 38px rgba(6,16,31,.055);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease;
}
.home-tile:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  opacity:.22;
  background:
    radial-gradient(circle at 18% 8%,var(--tile-accent),transparent 34%),
    linear-gradient(145deg,transparent 35%,var(--tile-soft) 100%);
  transition:opacity .35s ease,transform .45s ease;
}
.home-tile:hover{
  transform:translate3d(0,-7px,0);
  border-color:color-mix(in srgb,var(--tile-accent) 30%,transparent);
  box-shadow:0 28px 70px rgba(6,16,31,.13);
}
.home-tile:hover:before{
  opacity:.48;
  transform:scale(1.05);
}
.home-tile-number,
.home-tile-icon,
.home-tile-copy,
.home-tile-arrow{
  position:relative;
  z-index:1;
}
.home-tile-number{
  align-self:flex-end;
  color:#8492a4;
  font-size:10px;
  font-weight:900;
  letter-spacing:.10em;
}
.home-tile-icon{
  width:88px;
  height:88px;
  margin:18px 0 28px;
  color:var(--tile-accent);
}
.home-tile-icon svg{
  display:block;
  width:100%;
  height:100%;
  fill:none;
  stroke:currentColor;
  stroke-width:2.3;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.home-tile-copy{
  min-width:0;
}
.home-tile-copy h3{
  margin:0 0 14px;
  color:var(--tile-accent);
  font-size:clamp(20px,1.34vw,25px);
  line-height:1.05;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
}
.home-tile-copy p{
  margin:0;
  color:#415065;
  font-size:14px;
  line-height:1.48;
  overflow-wrap:anywhere;
}
.home-tile-arrow{
  margin-top:auto;
  padding-top:22px;
  color:var(--tile-accent);
  font-size:25px;
  font-weight:700;
  transition:transform .25s ease;
}
.home-tile:hover .home-tile-arrow{
  transform:translate3d(7px,0,0);
}
.home-tile-blue{--tile-accent:#135ea8;--tile-soft:#eaf3fc}
.home-tile-cyan{--tile-accent:#087d91;--tile-soft:#e7f5f6}
.home-tile-violet{--tile-accent:#73519a;--tile-soft:#f1ebf6}
.home-tile-orange{--tile-accent:#d66f12;--tile-soft:#fbf0e5}
.home-tile-red{--tile-accent:#b5324d;--tile-soft:#f8e9ed}
.home-tile-green{--tile-accent:#258462;--tile-soft:#e7f5ef}
.home-tile-steel{--tile-accent:#50677d;--tile-soft:#edf1f4}

@media(max-width:1250px){
  .home-tiles-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .home-tile{
    min-height:320px;
  }
}
@media(max-width:930px){
  .effect-scene-inner{
    grid-template-columns:repeat(10,minmax(0,1fr));
    grid-template-rows:repeat(14,minmax(0,1fr));
  }
  .effect-scene-plate .effect-scene-title{
    grid-column:1 / 6;
  }
  .effect-scene-plate .effect-fact-a{
    grid-column:7 / 11;
  }
  .effect-scene-plate .effect-fact-b{
    grid-column:1 / 5;
  }
  .effect-scene-plate .effect-fact-c{
    grid-column:4 / 8;
  }
  .effect-scene-plate .effect-fact-d{
    grid-column:7 / 11;
  }
  .effect-scene-special .effect-scene-title{
    grid-column:6 / 11;
  }
  .effect-scene-special .effect-fact-a{
    grid-column:1 / 5;
  }
  .effect-scene-special .effect-fact-b{
    grid-column:6 / 11;
  }
  .effect-offer-number{
    grid-column:5 / 11;
  }
  .effect-route-b{
    grid-column:6 / 11;
  }
}
@media(max-width:700px){
  .effect-scroll{
    height:860svh;
    min-height:6200px;
  }
  .effect-sticky{
    min-height:620px;
  }
  .effect-counter{
    right:9px;
  }
  .effect-scene-inner{
    display:block;
    padding:24px 38px 52px 20px;
  }
  .effect-scene-title,
  .effect-fact,
  .effect-network-note,
  .effect-offer-number,
  .effect-offer-note,
  .effect-route,
  .effect-shipping-word{
    position:absolute;
    max-width:calc(100vw - 64px);
  }
  .effect-scene-title{
    left:20px;
    top:28px;
  }
  .effect-scene-special .effect-scene-title{
    right:28px;
    left:auto;
    text-align:right;
  }
  .effect-scene-title > strong{
    font-size:clamp(36px,10.5vw,56px);
  }
  .effect-fact strong{
    font-size:clamp(36px,10.2vw,58px);
  }
  .effect-scene-plate .effect-fact-a{
    right:30px;
    top:33%;
    text-align:right;
  }
  .effect-scene-plate .effect-fact-b{
    left:20px;
    top:48%;
  }
  .effect-scene-plate .effect-fact-c{
    left:20px;
    bottom:18%;
    text-align:left;
  }
  .effect-scene-plate .effect-fact-d{
    right:30px;
    bottom:8%;
    text-align:right;
  }
  .effect-network-note{
    display:none;
  }
  .effect-scene-special .effect-fact-a{
    left:20px;
    top:35%;
  }
  .effect-scene-special .effect-fact-b{
    right:28px;
    top:51%;
    text-align:right;
  }
  .effect-scene-special .effect-fact-c{
    left:20px;
    bottom:18%;
  }
  .effect-scene-special .effect-fact-d{
    right:28px;
    bottom:8%;
    text-align:right;
  }
  .effect-offer-note{
    left:20px;
    top:15%;
    width:calc(100vw - 64px);
  }
  .effect-offer-number{
    right:28px;
    top:34%;
    text-align:right;
  }
  .effect-offer-number strong{
    font-size:clamp(118px,40vw,205px);
  }
  .effect-scene-offer .effect-scene-title{
    left:20px;
    bottom:7%;
    top:auto;
  }
  .effect-route-a{
    left:20px;
    bottom:10%;
  }
  .effect-route-b{
    right:28px;
    top:42%;
    text-align:right;
  }
  .effect-route strong{
    font-size:clamp(42px,13vw,70px);
  }
  .effect-shipping-word{
    right:18px;
    bottom:1%;
    font-size:clamp(74px,24vw,130px);
  }
  .home-tiles-grid{
    grid-template-columns:1fr;
  }
  .home-tile{
    min-height:270px;
  }
}
@media(prefers-reduced-motion:reduce){
  .effect-scroll-hint i:after{
    animation:none;
  }
}


/* ===== CMS v41 – Ladeoptimierung, Intro-Leiste, kräftiger Versand, flexible Kacheln ===== */

/* Versteckter Header darf auf der Startseite keinen weißen Leerraum mehr erzeugen. */
body.home-cinematic .site-header{
  position:fixed;
  inset:0 0 auto 0;
  width:100%;
}

/* Bewusste, kompakte Intro-Leiste oberhalb der Scroll-Inszenierung. */
.effect-intro-bar{
  position:relative;
  z-index:32;
  min-height:102px;
  display:flex;
  align-items:center;
  background:#fff;
  border-bottom:1px solid rgba(6,16,31,.08);
}
.effect-intro-inner{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.effect-intro-copy{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
.effect-intro-copy strong{
  color:#07172b;
  font-size:clamp(16px,1.25vw,20px);
  letter-spacing:-.02em;
}
.effect-intro-copy > span:last-child{
  color:#627084;
  font-size:14px;
}
.effect-intro-dot{
  width:10px;
  height:10px;
  flex:0 0 auto;
  border-radius:50%;
  background:#0b63b6;
  box-shadow:0 0 0 7px rgba(11,99,182,.10);
}
.effect-skip-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  min-height:44px;
  padding:0 17px;
  border:1px solid rgba(6,16,31,.12);
  border-radius:999px;
  color:#0b4f91;
  background:#f8fbfe;
  font-size:14px;
  font-weight:850;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.effect-skip-link:hover{
  transform:translate3d(0,-2px,0);
  background:#eef6fd;
  border-color:rgba(11,99,182,.24);
}
.effect-skip-link span{
  font-size:18px;
}

/* Versand bewusst etwas kontrastreicher darstellen. */
.effect-scene-shipping .effect-scene-title > span{
  background:rgba(3,20,42,.28);
  border-color:rgba(255,255,255,.55);
}
.effect-scene-shipping .effect-route{
  padding:18px 20px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:20px;
  background:rgba(3,18,40,.24);
  backdrop-filter:blur(9px);
  box-shadow:0 18px 42px rgba(0,0,0,.16);
}

/* Der Übergang in Weiß beginnt erst ganz am Ende; Versand bleibt sichtbar. */
.effect-whiteout{
  background:
    linear-gradient(180deg,rgba(248,250,253,.96) 0%,#fff 100%);
}

/* Kachelbereich breiter und vollständig dynamisch. */
.home-tiles-section{
  scroll-margin-top:82px;
}
.home-tiles-section .wrap{
  max-width:1560px;
}
.home-tiles-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:18px;
}
.home-tile{
  flex:0 1 var(--tile-basis,220px);
  width:auto;
  min-width:205px;
  max-width:265px;
  min-height:340px;
}
.home-tile-copy h3{
  font-size:clamp(19px,1.18vw,23px);
  line-height:1.08;
  letter-spacing:-.03em;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  text-wrap:balance;
}
.home-tile-copy p{
  font-size:13.5px;
  line-height:1.5;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
}
.home-tile-icon{
  width:82px;
  height:82px;
  margin:16px 0 24px;
}

/* Bei 4 oder weniger Kacheln dürfen die Karten größer werden. */
.home-tiles-grid[style*="--tile-columns:1"] .home-tile,
.home-tiles-grid[style*="--tile-columns:2"] .home-tile,
.home-tiles-grid[style*="--tile-columns:3"] .home-tile,
.home-tiles-grid[style*="--tile-columns:4"] .home-tile{
  max-width:290px;
}

@media(max-width:1050px){
  .home-tile{
    flex-basis:calc(33.333% - 18px);
    max-width:290px;
  }
}
@media(max-width:760px){
  .effect-intro-bar{
    min-height:128px;
  }
  .effect-intro-inner{
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
    gap:14px;
    padding-top:18px;
    padding-bottom:18px;
  }
  .effect-intro-copy{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .effect-intro-copy > span:last-child{
    width:100%;
    padding-left:24px;
  }
  .home-tile{
    flex-basis:100%;
    max-width:420px;
    min-width:0;
  }
}


/* ===== CMS v42 – bessere Lesbarkeit, professioneller Scroll-Hinweis, ArcelorMittal-Logo ===== */

/* Intro-Leiste reduziert und professioneller. */
.effect-intro-bar{
  min-height:96px;
}
.effect-intro-copy{
  display:flex;
  align-items:center;
  gap:16px;
}
.effect-intro-copy > div{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.effect-intro-kicker{
  color:#0b63b6;
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.effect-intro-copy strong{
  color:#07172b;
  font-size:clamp(17px,1.28vw,21px);
  letter-spacing:-.025em;
}
.effect-scroll-symbol{
  position:relative;
  width:26px;
  height:42px;
  flex:0 0 auto;
  border:2px solid #0b63b6;
  border-radius:15px;
}
.effect-scroll-symbol:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-14px;
  width:1px;
  height:12px;
  background:rgba(11,99,182,.35);
  transform:translateX(-50%);
}
.effect-scroll-symbol i{
  position:absolute;
  left:50%;
  top:7px;
  width:4px;
  height:8px;
  border-radius:99px;
  background:#0b63b6;
  transform:translateX(-50%);
  animation:effectMouseScroll 1.65s ease-in-out infinite;
}
@keyframes effectMouseScroll{
  0%{opacity:0;transform:translate3d(-50%,0,0)}
  28%{opacity:1}
  75%{opacity:1}
  100%{opacity:0;transform:translate3d(-50%,13px,0)}
}

/* Anfrage & Angebot: durchgängig hoher Kontrast auf allen Bildbereichen. */
.effect-scene-offer{
  text-shadow:none;
}
.effect-scene-offer .effect-scene-title{
  padding:22px 26px 24px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:24px;
  color:#fff;
  background:rgba(4,22,46,.86);
  box-shadow:0 22px 54px rgba(2,15,32,.25);
  backdrop-filter:blur(14px);
}
.effect-scene-offer .effect-scene-title > span{
  border-color:rgba(255,255,255,.58);
  color:#fff;
}
.effect-scene-offer .effect-scene-title > strong{
  color:#fff;
}
.effect-offer-note{
  padding:18px 22px;
  border-left:4px solid #0b63b6;
  border-radius:0 18px 18px 0;
  color:#102a46;
  background:rgba(255,255,255,.91);
  box-shadow:0 18px 44px rgba(5,24,47,.18);
  backdrop-filter:blur(12px);
}
.effect-offer-number{
  padding:24px 30px 28px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:30px;
  background:rgba(255,255,255,.83);
  box-shadow:0 26px 60px rgba(4,24,48,.20);
  backdrop-filter:blur(13px);
}
.effect-offer-number strong{
  color:#0755a2;
  text-shadow:none;
}
.effect-offer-number span{
  color:#193a5b;
  text-shadow:none;
}

/* ArcelorMittal-Hinweis mit Logo und korrekter Reichweite. */
.effect-network-note{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  align-items:center;
  gap:18px;
  max-width:650px;
  padding:15px 18px;
  border:1px solid rgba(255,255,255,.44);
  border-left:0;
  border-radius:18px;
  color:#17334f;
  background:rgba(255,255,255,.90);
  box-shadow:0 18px 44px rgba(3,20,40,.18);
  backdrop-filter:blur(12px);
  text-shadow:none;
}
.effect-network-note img{
  display:block;
  width:100%;
  max-width:150px;
  height:auto;
}
.effect-network-note span{
  font-size:clamp(13px,1vw,16px);
  font-weight:760;
  line-height:1.45;
}

@media(max-width:760px){
  .effect-intro-copy{
    align-items:center;
    flex-wrap:nowrap;
  }
  .effect-intro-copy > div{
    min-width:0;
  }
  .effect-intro-copy strong{
    font-size:16px;
  }
  .effect-network-note{
    display:none;
  }
  .effect-scene-offer .effect-scene-title{
    padding:18px 19px 20px;
  }
  .effect-offer-number{
    padding:18px 20px 22px;
  }
}


/* ===== CMS v50 – Feinschliff auf Basis der funktionierenden v42 ===== */

/* ------------------------------------------------------------------
   ArcelorMittal: echtes Liquid Glass statt weißer Fläche
   ------------------------------------------------------------------ */
.effect-network-note{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  align-items:center;
  gap:18px;
  max-width:680px;
  padding:16px 19px;
  border:1px solid rgba(255,255,255,.48);
  border-left:1px solid rgba(255,255,255,.48);
  border-radius:22px;
  color:#102f50;
  background:
    linear-gradient(135deg,
      rgba(255,255,255,.48) 0%,
      rgba(226,240,252,.28) 48%,
      rgba(255,255,255,.20) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.74),
    inset 0 -1px 0 rgba(255,255,255,.18),
    0 20px 52px rgba(2,22,44,.22);
  backdrop-filter:blur(20px) saturate(155%);
  -webkit-backdrop-filter:blur(20px) saturate(155%);
  text-shadow:none;
}

.effect-network-note::before{
  content:"";
  position:absolute;
  inset:-60% 35% 35% -22%;
  pointer-events:none;
  background:
    radial-gradient(circle,
      rgba(255,255,255,.70) 0%,
      rgba(255,255,255,.18) 42%,
      transparent 72%);
  transform:rotate(-9deg);
}

.effect-network-note::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(115deg,
      rgba(255,255,255,.24) 0%,
      transparent 30%,
      transparent 74%,
      rgba(255,255,255,.10) 100%);
}

.effect-network-note img,
.effect-network-note span{
  position:relative;
  z-index:1;
}

.effect-network-note img{
  display:block;
  width:100%;
  max-width:150px;
  height:auto;
  opacity:1;
  filter:drop-shadow(0 5px 12px rgba(3,24,46,.12));
}

.effect-network-note span{
  color:#102f50;
  font-size:clamp(13px,1vw,16px);
  font-weight:780;
  line-height:1.46;
  text-shadow:0 1px 0 rgba(255,255,255,.72);
}

/* ------------------------------------------------------------------
   Anfrage & Angebot: alle drei Inhalte frei im Bild, ohne Hintergründe
   ------------------------------------------------------------------ */
.effect-scene-offer{
  text-shadow:none;
}

.effect-scene-offer .effect-scene-title,
.effect-offer-note,
.effect-offer-number{
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.effect-scene-offer .effect-scene-title{
  color:#102f50;
}

.effect-scene-offer .effect-scene-title > span{
  color:#102f50;
  border-color:rgba(16,47,80,.42);
  background:rgba(255,255,255,.12);
}

.effect-scene-offer .effect-scene-title > strong{
  color:#102f50;
  text-shadow:
    0 1px 0 rgba(255,255,255,.78),
    0 5px 20px rgba(255,255,255,.54);
}

.effect-offer-note{
  color:#183b5e;
  border-left:3px solid #0b63b6;
  padding-left:18px;
  text-shadow:
    0 1px 0 rgba(255,255,255,.92),
    0 4px 17px rgba(255,255,255,.68);
}

.effect-offer-number strong{
  color:#0755a2;
  text-shadow:
    0 1px 0 rgba(255,255,255,.52),
    0 8px 28px rgba(255,255,255,.34);
}

.effect-offer-number span{
  color:#173a5f;
  text-shadow:
    0 1px 0 rgba(255,255,255,.90),
    0 5px 18px rgba(255,255,255,.56);
}

.effect-offer-footnote{
  grid-column:9 / 15;
  grid-row:10 / 12;
  align-self:end;
  justify-self:end;
  max-width:420px;
  color:#173a5f;
  font-size:clamp(11px,.82vw,14px);
  font-weight:720;
  letter-spacing:.01em;
  text-align:right;
  text-shadow:
    0 1px 0 rgba(255,255,255,.90),
    0 4px 16px rgba(255,255,255,.58);
}

/* ------------------------------------------------------------------
   Versand: freie Texte, max. klein über der Tageszahl
   ------------------------------------------------------------------ */
.effect-scene-shipping .effect-route{
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.effect-route strong small,
.effect-route strong b{
  display:block;
}

.effect-route strong small{
  margin-bottom:7px;
  font-size:.23em;
  line-height:1;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.effect-route strong b{
  font:inherit;
  line-height:.86;
}

.effect-scene-shipping .effect-route strong,
.effect-scene-shipping .effect-route span{
  text-shadow:
    0 4px 18px rgba(0,0,0,.72),
    0 1px 0 rgba(0,0,0,.34);
}

/* ------------------------------------------------------------------
   Home-Kacheln: spätere Verbesserungen vollständig beibehalten
   ------------------------------------------------------------------ */
.home-tiles-section{
  scroll-margin-top:82px;
}

.home-tiles-section .wrap{
  max-width:1560px;
}

.home-tiles-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:18px;
}

.home-tile{
  flex:0 1 var(--tile-basis,220px);
  width:auto;
  min-width:220px;
  max-width:280px;
  min-height:340px;
}

.home-tile-copy h3{
  font-size:clamp(18px,1.15vw,22px);
  line-height:1.08;
  letter-spacing:-.028em;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
  text-wrap:balance;
}

.home-tile-copy p{
  font-size:13.5px;
  line-height:1.5;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
}

.home-tile-icon{
  width:82px;
  height:82px;
  margin:16px 0 24px;
}

.home-tiles-grid[style*="--tile-columns:1"] .home-tile,
.home-tiles-grid[style*="--tile-columns:2"] .home-tile,
.home-tiles-grid[style*="--tile-columns:3"] .home-tile,
.home-tiles-grid[style*="--tile-columns:4"] .home-tile{
  max-width:300px;
}

@media(max-width:1050px){
  .home-tile{
    flex-basis:calc(33.333% - 18px);
    max-width:300px;
  }
}

@media(max-width:760px){
  .effect-network-note{
    display:none;
  }

  .effect-offer-footnote{
    position:absolute;
    right:28px;
    bottom:3%;
    max-width:calc(100vw - 62px);
    font-size:11px;
  }

  .effect-scene-offer .effect-scene-title,
  .effect-offer-number{
    padding:0;
  }

  .home-tile{
    flex-basis:100%;
    min-width:0;
    max-width:420px;
  }
}


/* ===== CMS v51 – Textfeinschliff ===== */

/* ArcelorMittal: Liquid Glass bleibt, Text aber ohne weißen Schlagschatten. */
.effect-network-note span{
  color:#0b4f91;
  text-shadow:none !important;
}

/* Sonderfertigung: Breite und Länge sind zwei einzelne, benachbarte Werte. */
.effect-scene-special .effect-fact-c{
  grid-column:4 / 7;
  grid-row:8 / 10;
  justify-self:end;
  text-align:right;
}

.effect-scene-special .effect-fact-e{
  grid-column:7 / 10;
  grid-row:8 / 10;
  justify-self:start;
  text-align:left;
}

.effect-scene-special .effect-fact-c strong,
.effect-scene-special .effect-fact-e strong{
  font-size:clamp(31px,3.9vw,66px);
}

.effect-scene-special .effect-fact-e{
  min-width:0;
  align-self:center;
}

.effect-scene-special .effect-fact-e strong,
.effect-scene-special .effect-fact-e span{
  display:block;
}

/* Anfrage: „max.“ und Sternchen bewusst kleiner. */
.effect-offer-number strong small,
.effect-offer-number strong b{
  display:block;
}

.effect-offer-number strong small{
  margin-bottom:8px;
  font-size:.16em;
  line-height:1;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.effect-offer-number strong b{
  font:inherit;
  line-height:.72;
}

.effect-offer-number strong sup{
  position:relative;
  top:-.20em;
  margin-left:.04em;
  font-size:.22em;
  line-height:0;
  vertical-align:super;
}

/* Gewünschte Texte ohne weißen Leuchteffekt. */
.effect-offer-note,
.effect-offer-footnote{
  text-shadow:none !important;
}

.effect-offer-note{
  color:#17466f;
}

.effect-offer-footnote{
  color:#17466f;
}

/* Mobile Anordnung der beiden getrennten Größenwerte. */
@media(max-width:760px){
  .effect-scene-special .effect-fact-c{
    left:20px;
    right:auto;
    bottom:20%;
    max-width:47vw;
    text-align:left;
  }

  .effect-scene-special .effect-fact-e{
    right:28px;
    left:auto;
    bottom:20%;
    max-width:47vw;
    text-align:right;
  }

  .effect-scene-special .effect-fact-d{
    right:28px;
    bottom:7%;
  }

  .effect-offer-number strong small{
    font-size:.18em;
  }

  .effect-offer-number strong sup{
    font-size:.24em;
  }
}


/* ===== CMS v52 – Lesbarkeit & Abstände ===== */
/* ArcelorMittal-Hinweis: dunklere, klarer lesbare Schrift ohne Glow */
.effect-network-note span{
  color:#143e63 !important;
  text-shadow:none !important;
  font-weight:800;
}

/* Sonderfertigung: Breite und Länge etwas weiter auseinander */
.effect-scene-special .effect-fact-c{
  grid-column:3 / 6;
  grid-row:8 / 10;
  justify-self:end;
  text-align:right;
}

.effect-scene-special .effect-fact-e{
  grid-column:8 / 11;
  grid-row:8 / 10;
  justify-self:start;
  text-align:left;
}

@media(max-width:760px){
  .effect-network-note span{
    color:#123b5d !important;
  }

  .effect-scene-special .effect-fact-c{
    left:18px;
    right:auto;
    bottom:20%;
    max-width:42vw;
    text-align:left;
  }

  .effect-scene-special .effect-fact-e{
    right:18px;
    left:auto;
    bottom:20%;
    max-width:42vw;
    text-align:right;
  }
}


/* ===== CMS v53 – Effektaufbau, Intro-Overlay, Lesbarkeit ===== */

/* Mehr Scrollweg für längere Kapitel und weichere Übergänge */
.effect-scroll{
  height:1180svh;
  min-height:9000px;
}

/* Die Bild-Layer können sich jetzt seitlich aufbauen. */
.effect-layer{
  clip-path:inset(0 var(--clip-right,0%) 0 var(--clip-left,0%));
}

/* Modernes Intro direkt über dem Bild – verschwindet beim Scrollen. */
.effect-intro-bar{
  position:absolute;
  inset:20px 0 auto;
  z-index:35;
  min-height:auto;
  background:none;
  border:0;
  opacity:var(--intro-opacity,1);
  transform:translate3d(0,calc((1 - var(--intro-opacity,1)) * -18px),0);
  transition:none;
  pointer-events:none;
}
.effect-intro-inner{
  align-items:center;
}
.effect-intro-copy,
.effect-skip-link{
  pointer-events:auto;
}
.effect-intro-copy{
  gap:14px;
  padding:14px 18px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,255,255,.44) 0%,rgba(235,243,250,.22) 100%);
  box-shadow:0 18px 46px rgba(4,20,40,.18), inset 0 1px 0 rgba(255,255,255,.65);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
}
.effect-intro-copy strong{ display:none; }
.effect-intro-copy > div{
  display:flex;
  flex-direction:column;
  gap:0;
}
.effect-intro-kicker{
  margin:0;
  color:#0a4f91;
  font-size:13px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.effect-skip-link{
  min-height:52px;
  padding:0 20px;
  border:1px solid rgba(255,255,255,.38);
  background:linear-gradient(135deg,rgba(255,255,255,.48) 0%,rgba(237,244,251,.20) 100%);
  box-shadow:0 18px 46px rgba(4,20,40,.18), inset 0 1px 0 rgba(255,255,255,.66);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  color:#0a4f91;
}
.effect-skip-link:hover{
  background:linear-gradient(135deg,rgba(255,255,255,.58) 0%,rgba(237,244,251,.28) 100%);
}
.effect-scroll-symbol{
  flex:0 0 auto;
}
.effect-scroll-symbol i{
  box-shadow:0 10px 24px rgba(11,99,182,.16);
}

/* Lesbarer ArcelorMittal-Hinweis auf Liquid Glass */
.effect-network-note{
  background:linear-gradient(135deg,rgba(255,255,255,.36) 0%,rgba(217,229,241,.18) 50%,rgba(255,255,255,.14) 100%);
}
.effect-network-note span{
  color:#0b2740 !important;
  text-shadow:none !important;
  font-weight:820;
}

/* Textflächen ohne Kasten, sauber lesbar */
.effect-offer-note,
.effect-offer-footnote,
.effect-scene-plate .effect-scene-title,
.effect-scene-plate .effect-fact,
.effect-scene-special .effect-scene-title,
.effect-scene-special .effect-fact{
  filter:none;
}

/* Abschnitts-Texte bleiben gut lesbar */
.effect-scene-plate .effect-scene-title > strong,
.effect-scene-plate .effect-fact strong,
.effect-scene-plate .effect-fact span,
.effect-scene-special .effect-scene-title > strong,
.effect-scene-special .effect-fact strong,
.effect-scene-special .effect-fact span{
  text-shadow:0 3px 18px rgba(0,0,0,.34), 0 1px 0 rgba(0,0,0,.22);
}
.effect-scene-plate .effect-scene-title > span,
.effect-scene-special .effect-scene-title > span{
  text-shadow:0 2px 12px rgba(0,0,0,.28);
}

/* Mehr Abstand der beiden Sonderfertigungs-Maße */
.effect-scene-special .effect-fact-c{
  grid-column:2 / 5;
}
.effect-scene-special .effect-fact-e{
  grid-column:9 / 12;
}

@media(max-width:760px){
  .effect-intro-bar{
    inset:14px 0 auto;
  }
  .effect-intro-inner{
    gap:12px;
    align-items:flex-start;
  }
  .effect-intro-copy{
    padding:12px 14px;
  }
  .effect-skip-link{
    min-height:46px;
    padding:0 15px;
  }
  .effect-scene-special .effect-fact-c{
    left:16px;
    bottom:21%;
    max-width:40vw;
  }
  .effect-scene-special .effect-fact-e{
    right:18px;
    bottom:21%;
    max-width:40vw;
  }
}


/* ===== CMS v54 – News, Recht, Anfrage-Center ===== */
html{scroll-behavior:smooth}.effect-skip-link{cursor:pointer}
.legal-minihead{padding:clamp(120px,14vw,190px) 0 50px;background:linear-gradient(180deg,#eef5fb,#fff);border-bottom:1px solid var(--line)}.legal-minihead h1{font-size:clamp(42px,6vw,82px);letter-spacing:-.055em;margin:8px 0 14px}.legal-minihead p{font-size:18px;color:var(--muted);max-width:760px}.legal-page{padding:54px 0 90px}.legal-document{max-width:900px}.legal-document h2{font-size:24px;margin:34px 0 10px}.legal-document h2:first-child{margin-top:0}.legal-document p{font-size:16px;line-height:1.75;color:#33465a}
.news-head{padding-bottom:54px}.news-section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.news-slider-controls{display:flex;gap:9px}.news-slider-controls button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:20px;cursor:pointer}.news-top-slider{position:relative;min-height:500px}.news-top-slide{position:absolute;inset:0;display:grid;grid-template-columns:1.08fr .92fr;opacity:0;visibility:hidden;transform:translateX(20px);transition:.45s ease;border-radius:30px;overflow:hidden;background:#061a31;color:#fff}.news-top-slide.active{opacity:1;visibility:visible;transform:none}.news-top-slide img{width:100%;height:500px;object-fit:cover}.news-top-copy{padding:clamp(30px,5vw,68px);display:flex;flex-direction:column;justify-content:center}.news-top-copy h3{font-size:clamp(32px,4vw,58px);line-height:1.02;margin:14px 0}.news-top-copy p{font-size:17px;line-height:1.65;color:#d7e4f0}.news-meta{display:flex;gap:10px;flex-wrap:wrap;color:#56b9f3;font-weight:850;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.news-full{display:none;margin-top:18px}.open .news-full{display:block}.news-filterbar{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end;padding:20px;border:1px solid var(--line);border-radius:22px;background:#f7fafc;margin-bottom:26px}.news-filterbar label{display:block;font-weight:800;margin-bottom:7px}.news-filterbar select{width:100%;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.news-grid-v54{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card-v54{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--shadow-soft)}.news-card-v54 img{width:100%;height:220px;object-fit:cover}.news-card-copy{padding:22px}.news-card-copy h3{font-size:24px;line-height:1.15;margin:10px 0}.news-card-copy p{line-height:1.55;color:var(--muted)}.news-read{border:0;background:none;color:var(--blue);font-weight:900;padding:14px 0 0;cursor:pointer}.news-empty-v54{padding:30px;text-align:center;border:1px dashed var(--line);border-radius:20px}
.request-banner-section{padding:40px 0 88px}.request-banner{border-radius:28px;background:linear-gradient(135deg,#071b32,#0a5797);color:#fff;box-shadow:0 28px 80px rgba(4,27,54,.24);overflow:hidden}.request-banner-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:34px clamp(24px,4vw,54px)}.request-banner-head h2{font-size:clamp(30px,4vw,48px);margin:5px 0}.request-banner-head p{color:#d4e3f0}.request-expand{max-height:0;opacity:0;overflow:hidden;transition:max-height .7s cubic-bezier(.2,.75,.2,1),opacity .35s}.request-banner.open .request-expand{max-height:5000px;opacity:1}.request-type-tabs{display:flex;gap:10px;padding:0 clamp(24px,4vw,54px) 24px}.request-type-tabs button{padding:12px 17px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font-weight:850;cursor:pointer}.request-type-tabs button.active{background:#fff;color:#07539a}.request-form{background:#fff;color:#0b1d30;padding:clamp(24px,4vw,54px)}.request-form h3{font-size:24px;margin:24px 0 14px}.request-step:first-child h3{margin-top:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.request-form label{display:flex;flex-direction:column;gap:7px;font-weight:780}.request-form input,.request-form select,.request-form textarea{width:100%;padding:13px 14px;border:1px solid #cfd9e3;border-radius:13px;font:inherit;background:#fff}.request-warning{margin:14px 0;padding:13px 15px;border-radius:14px;background:#fff4d9;color:#6f4b00;font-weight:750}.upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.upload-box{padding:18px;border:1px dashed #9db2c7;border-radius:16px;background:#f7fafc}.check-row{flex-direction:row!important;align-items:center;margin:18px 0}.check-row input{width:auto}.position-editor{border:1px solid #dbe3ea;border-radius:18px;padding:18px}.position-table-wrap{overflow:auto;margin:16px 0}.position-table{width:100%;border-collapse:collapse}.position-table th,.position-table td{padding:10px;border-bottom:1px solid #e4eaf0;text-align:left}.position-table tr.selected{background:#eaf4fc}.request-notes{margin-top:22px}.request-submit{display:flex;align-items:center;gap:16px;margin-top:24px}.request-submit span{font-weight:750;color:#1c7040}
.admin-chart{display:flex;align-items:end;gap:4px;height:180px;padding:18px;background:#f6f9fc;border-radius:18px}.admin-chart-bar{flex:1;min-width:6px;background:linear-gradient(#0a65b8,#77c5ee);border-radius:6px 6px 2px 2px;position:relative}.admin-chart-bar:hover:after{content:attr(data-label);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);white-space:nowrap;background:#071b32;color:#fff;padding:5px 7px;border-radius:7px;font-size:11px;z-index:2}
@media(max-width:900px){.news-top-slide{grid-template-columns:1fr}.news-top-slide img{height:280px}.news-top-slider{min-height:650px}.news-grid-v54{grid-template-columns:1fr 1fr}.news-filterbar{grid-template-columns:1fr}.upload-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.request-banner-head{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.news-grid-v54{grid-template-columns:1fr}.request-type-tabs{flex-direction:column}.request-submit{align-items:flex-start;flex-direction:column}}


/* ===== CMS v55 – Unternehmensgeschichte ===== */
.history-body{
  background:#f4f7fa;
}
.history-page{
  position:relative;
  overflow:visible;
  padding:130px 0 110px;
  background:
    radial-gradient(circle at 16% 8%,rgba(11,99,182,.08),transparent 34%),
    linear-gradient(180deg,#f7f9fc 0%,#eef3f7 100%);
}
.history-intro{
  padding:40px 0 72px;
}
.history-intro .wrap{
  max-width:1180px;
}
.history-intro h1{
  margin:8px 0 18px;
  max-width:850px;
  color:#07172b;
  font-size:clamp(48px,7vw,102px);
  line-height:.92;
  letter-spacing:-.065em;
}
.history-intro p{
  max-width:760px;
  color:#53657a;
  font-size:clamp(18px,1.55vw,24px);
  line-height:1.55;
}
.history-layout{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  gap:72px;
  max-width:1480px;
}
.history-track{
  position:relative;
  min-width:0;
  padding:30px 0 80px;
}
.history-track-base,
.history-track-progress{
  position:absolute;
  left:50%;
  top:0;
  width:4px;
  border-radius:99px;
  transform:translateX(-50%);
}
.history-track-base{
  bottom:0;
  background:rgba(11,99,182,.14);
}
.history-track-progress{
  height:var(--history-progress,0%);
  max-height:100%;
  background:linear-gradient(180deg,#72d1ff 0%,#0b63b6 50%,#063c78 100%);
  box-shadow:0 0 24px rgba(11,99,182,.28);
}
.history-entry{
  position:relative;
  display:grid;
  grid-template-columns:1fr 72px 1fr;
  align-items:center;
  min-height:520px;
  scroll-margin-top:130px;
}
.history-dot{
  grid-column:2;
  justify-self:center;
  position:relative;
  z-index:4;
  width:22px;
  height:22px;
  border:5px solid #f5f8fb;
  border-radius:50%;
  background:#0b63b6;
  box-shadow:0 0 0 6px rgba(11,99,182,.13),0 12px 30px rgba(4,37,72,.24);
  transform:scale(.72);
  transition:transform .45s ease,background .45s ease;
}
.history-entry.is-active .history-dot{
  transform:scale(1);
  background:#69cfff;
}
.history-card{
  position:relative;
  max-width:520px;
  padding:38px 40px;
  border:1px solid rgba(7,23,43,.09);
  border-radius:28px;
  background:rgba(255,255,255,.82);
  box-shadow:0 26px 70px rgba(7,23,43,.10);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  opacity:.44;
  transform:translate3d(0,48px,0) scale(.98);
  transition:opacity .6s ease,transform .6s ease,box-shadow .6s ease;
}
.history-entry.is-visible .history-card{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
}
.history-entry.is-active .history-card{
  box-shadow:0 32px 88px rgba(7,23,43,.16);
}
.history-entry-left .history-card{
  grid-column:1;
  justify-self:end;
  text-align:right;
}
.history-entry-right .history-card{
  grid-column:3;
  justify-self:start;
}
.history-year{
  color:#0b63b6;
  font-size:clamp(54px,6vw,96px);
  font-weight:950;
  line-height:.84;
  letter-spacing:-.07em;
}
.history-card h2{
  margin:24px 0 14px;
  color:#0b2740;
  font-size:clamp(25px,2.15vw,38px);
  line-height:1.06;
  letter-spacing:-.04em;
}
.history-card p{
  margin:0;
  color:#52657a;
  font-size:16px;
  line-height:1.65;
}
.history-card img{
  display:block;
  width:100%;
  height:auto;
  max-height:300px;
  margin-top:26px;
  border-radius:19px;
  object-fit:cover;
}
.history-chapters{
  position:relative;
  min-width:0;
}
.history-chapters-inner{
  position:sticky;
  top:112px;
  padding:24px;
  border:1px solid rgba(7,23,43,.10);
  border-radius:26px;
  background:rgba(255,255,255,.78);
  box-shadow:0 24px 64px rgba(7,23,43,.11);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.history-chapters-label{
  display:block;
  margin-bottom:16px;
  color:#718096;
  font-size:11px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.history-chapters nav{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.history-chapters a{
  display:grid;
  grid-template-columns:54px 1fr;
  gap:12px;
  align-items:center;
  padding:10px 11px;
  border-radius:14px;
  color:#617186;
  transition:background .22s ease,color .22s ease,transform .22s ease;
}
.history-chapters a:hover{
  transform:translateX(3px);
  background:rgba(11,99,182,.07);
  color:#0b4f91;
}
.history-chapters a.is-active{
  background:#0b63b6;
  color:#fff;
}
.history-chapters a span{
  font-size:15px;
  font-weight:900;
}
.history-chapters a small{
  overflow:hidden;
  font-size:11px;
  font-weight:720;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.history-overall{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:10px;
  align-items:center;
  margin-top:20px;
  color:#0b4f91;
  font-size:12px;
  font-weight:900;
}
.history-overall i{
  position:relative;
  display:block;
  height:4px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(11,99,182,.13);
}
.history-overall b{
  position:absolute;
  inset:0 auto 0 0;
  width:var(--history-side-progress,0%);
  border-radius:inherit;
  background:#0b63b6;
}
@media(max-width:1100px){
  .history-layout{
    grid-template-columns:minmax(0,1fr) 220px;
    gap:36px;
  }
  .history-entry{
    grid-template-columns:1fr 54px 1fr;
  }
  .history-card{
    padding:30px 28px;
  }
}
@media(max-width:820px){
  .history-page{
    padding-top:92px;
  }
  .history-layout{
    display:block;
  }
  .history-chapters{
    display:none;
  }
  .history-track{
    padding-left:42px;
  }
  .history-track-base,
  .history-track-progress{
    left:15px;
    transform:none;
  }
  .history-entry{
    display:block;
    min-height:0;
    padding:0 0 70px;
  }
  .history-dot{
    position:absolute;
    left:-38px;
    top:28px;
  }
  .history-card,
  .history-entry-left .history-card,
  .history-entry-right .history-card{
    max-width:none;
    text-align:left;
  }
}


/* ===== CMS v56 – Anfrageformular, Materialauswahl und Timeline-Feinschliff ===== */

/* Anfragebanner bleibt zunächst eingeklappt. */
.request-banner-head{
  padding-bottom:24px;
}
.request-type-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  padding:0 clamp(24px,4vw,54px) 30px;
}
.request-type-tabs button{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
  min-height:92px;
  padding:18px 20px;
  text-align:left;
  border-radius:18px;
  transition:
    transform .25s ease,
    background .25s ease,
    border-color .25s ease,
    box-shadow .25s ease;
}
.request-type-tabs button strong{
  font-size:18px;
}
.request-type-tabs button span{
  color:rgba(255,255,255,.70);
  font-size:13px;
  line-height:1.35;
}
.request-type-tabs button:hover{
  transform:translateY(-3px);
  border-color:rgba(255,255,255,.50);
  background:rgba(255,255,255,.14);
}
.request-type-tabs button.active{
  color:#07539a;
  background:#fff;
  box-shadow:0 18px 46px rgba(0,0,0,.17);
}
.request-type-tabs button.active span{
  color:#526a82;
}
.request-type-tabs.is-pulsing button{
  animation:requestTypePulse .55s ease;
}
@keyframes requestTypePulse{
  50%{transform:translateY(-4px);border-color:rgba(255,255,255,.65)}
}

.request-expand{
  display:grid;
  grid-template-rows:0fr;
  max-height:none;
  opacity:0;
  overflow:hidden;
  transition:
    grid-template-rows .82s cubic-bezier(.2,.76,.2,1),
    opacity .35s ease;
}
.request-expand-inner{
  min-height:0;
  overflow:hidden;
}
.request-banner.open .request-expand{
  grid-template-rows:1fr;
  opacity:1;
}
.request-form{
  transform:translateY(-16px);
  opacity:0;
  transition:
    transform .62s cubic-bezier(.2,.76,.2,1) .08s,
    opacity .42s ease .08s;
}
.request-banner.open .request-form{
  transform:translateY(0);
  opacity:1;
}
.request-form-heading{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:28px;
  padding-bottom:20px;
  border-bottom:1px solid #e1e8ef;
}
.request-form-heading h3{
  margin:4px 0 0;
  color:#0b2740;
  font-size:clamp(26px,3vw,38px);
}
.request-form-kicker{
  color:#0b63b6;
  font-size:11px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.request-close{
  width:42px;
  height:42px;
  border:1px solid #d4dee8;
  border-radius:50%;
  color:#39536d;
  background:#f7fafc;
  font-size:25px;
  cursor:pointer;
}
.request-help{
  margin:-5px 0 16px;
  color:#65778a;
  font-size:14px;
  line-height:1.5;
}

.material-chip-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(135px,1fr));
  gap:10px;
}
.material-chip{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-height:66px;
  padding:12px 14px;
  border:1px solid #d4dee8;
  border-radius:14px;
  color:#18344f;
  background:#f8fafc;
  text-align:left;
  cursor:pointer;
  transition:
    transform .2s ease,
    border-color .2s ease,
    background .2s ease,
    box-shadow .2s ease;
}
.material-chip:hover{
  transform:translateY(-2px);
  border-color:#86b8e4;
  background:#fff;
}
.material-chip.active{
  border-color:#0b63b6;
  color:#07539a;
  background:#eaf4fc;
  box-shadow:0 0 0 3px rgba(11,99,182,.10);
}
.material-chip strong{
  font-size:15px;
}
.material-chip span{
  color:#728196;
  font-size:11px;
}
.material-custom-toggle{
  margin-top:12px;
  padding:10px 14px;
  border:1px dashed #8ba9c6;
  border-radius:12px;
  color:#0b5da8;
  background:#f7fbff;
  font:inherit;
  font-weight:830;
  cursor:pointer;
}
.material-custom-toggle.active{
  border-style:solid;
  border-color:#0b63b6;
  background:#eaf4fc;
}
.material-custom-field{
  margin-top:14px;
}
.position-material-picker{
  margin-bottom:20px;
  padding:18px;
  border:1px solid #dfe7ef;
  border-radius:16px;
  background:#f7fafc;
}
.position-material-heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
  margin-bottom:14px;
}
.position-material-heading span{
  max-width:520px;
  color:#6b7d90;
  font-size:13px;
  line-height:1.45;
  text-align:right;
}
.material-chip-grid-position{
  grid-template-columns:repeat(auto-fit,minmax(125px,1fr));
}
.position-dimensions{
  margin-top:18px;
}
.position-table td strong{
  color:#0b4f91;
}
.request-start{
  white-space:nowrap;
}

/* Timeline: Kapitelübersicht dezenter und ohne Prozentanzeige. */
.history-chapters-inner{
  padding:18px;
  border-color:rgba(7,23,43,.07);
  background:rgba(255,255,255,.56);
  box-shadow:0 14px 36px rgba(7,23,43,.07);
  backdrop-filter:blur(13px);
  -webkit-backdrop-filter:blur(13px);
}
.history-chapters-label{
  margin-bottom:10px;
  color:#8995a3;
}
.history-chapters nav{
  gap:2px;
}
.history-chapters a{
  grid-template-columns:48px 1fr;
  padding:8px 9px;
  color:#7b8897;
  border-left:2px solid transparent;
  border-radius:8px;
}
.history-chapters a:hover{
  transform:none;
  background:rgba(11,99,182,.04);
}
.history-chapters a.is-active{
  color:#0b4f91;
  border-left-color:#0b63b6;
  background:rgba(11,99,182,.07);
}
.history-chapters a span{
  font-size:14px;
}
.history-chapters a small{
  font-size:10px;
}
.history-overall{
  display:none !important;
}

/* Timeline-Karten: frei wählbare Farbe und Highlight. */
.history-card{
  border-color:color-mix(in srgb,var(--history-accent,#0b63b6) 30%,transparent);
  background:
    linear-gradient(
      135deg,
      color-mix(in srgb,var(--history-accent,#0b63b6) 10%,white) 0%,
      rgba(255,255,255,.88) 62%
    );
}
.history-entry .history-year{
  color:var(--history-accent,#0b63b6);
}
.history-entry .history-dot{
  background:var(--history-accent,#0b63b6);
  box-shadow:
    0 0 0 6px color-mix(in srgb,var(--history-accent,#0b63b6) 16%,transparent),
    0 12px 30px rgba(4,37,72,.18);
}
.history-entry.is-highlight .history-card{
  border-width:2px;
  box-shadow:
    0 34px 96px color-mix(in srgb,var(--history-accent,#0b63b6) 20%,transparent);
}
.history-entry.is-highlight .history-card::before{
  content:"Highlight";
  display:inline-flex;
  margin-bottom:18px;
  padding:6px 10px;
  border-radius:999px;
  color:#fff;
  background:var(--history-accent,#0b63b6);
  font-size:10px;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
}

@media(max-width:760px){
  .request-type-tabs{
    grid-template-columns:1fr;
  }
  .request-type-tabs button{
    min-height:82px;
  }
  .position-material-heading{
    display:block;
  }
  .position-material-heading span{
    display:block;
    margin-top:6px;
    text-align:left;
  }
}

.history-chapters a.is-active{
  color:var(--history-accent,#0b4f91);
  border-left-color:var(--history-accent,#0b63b6);
  background:color-mix(in srgb,var(--history-accent,#0b63b6) 8%,transparent);
}


/* ===== CMS v57 – Startseiten-Navigation und Anfrage-Formular ===== */

/* Deutlich sichtbarer Scrollhinweis auf der Startseite */
.effect-scroll-hint-large{
  left:50%;
  bottom:28px;
  width:min(520px,calc(100vw - 44px));
  min-height:86px;
  padding:14px 18px;
  flex-direction:row;
  justify-content:flex-start;
  gap:16px;
  border:1px solid rgba(255,255,255,.38);
  border-radius:24px;
  color:#0a3158;
  background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(226,239,250,.48));
  box-shadow:0 22px 58px rgba(1,17,35,.25),inset 0 1px 0 rgba(255,255,255,.78);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  text-align:left;
  text-shadow:none;
}
.effect-scroll-hint-large > div{
  display:flex;
  flex:1;
  flex-direction:column;
  gap:4px;
}
.effect-scroll-hint-large strong{
  font-size:17px;
  letter-spacing:-.015em;
  text-transform:none;
}
.effect-scroll-hint-large small{
  color:#587088;
  font-size:12px;
  font-weight:720;
  letter-spacing:0;
  line-height:1.35;
  text-transform:none;
}
.effect-scroll-hint-large > b{
  color:#0b63b6;
  font-size:24px;
}
.effect-scroll-hint-icon{
  position:relative;
  display:block;
  width:30px;
  height:46px;
  flex:0 0 auto;
  border:2px solid #0b63b6;
  border-radius:18px;
}
.effect-scroll-hint-icon i{
  position:absolute;
  left:50%;
  top:8px;
  width:4px;
  height:10px;
  border-radius:99px;
  background:#0b63b6;
  transform:translateX(-50%);
  animation:effectHintMouse 1.55s ease-in-out infinite;
}
@keyframes effectHintMouse{
  0%,100%{transform:translate3d(-50%,0,0);opacity:.55}
  50%{transform:translate3d(-50%,14px,0);opacity:1}
}

/* Kapitelübersicht während der Scrollinszenierung */
.effect-chapter-overview{
  position:absolute;
  z-index:25;
  left:clamp(18px,2.8vw,46px);
  top:50%;
  display:flex;
  width:230px;
  flex-direction:column;
  gap:4px;
  padding:15px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;
  background:rgba(2,20,42,.36);
  box-shadow:0 18px 48px rgba(0,0,0,.18);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  opacity:.34;
  transform:translateY(-50%);
  transition:opacity .25s ease,background .25s ease;
}
.effect-chapter-overview:hover,
.effect-chapter-overview:focus-within{
  opacity:1;
  background:rgba(2,20,42,.68);
}
.effect-chapter-label{
  margin:0 8px 6px;
  color:rgba(255,255,255,.56);
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.effect-chapter-overview button{
  display:grid;
  grid-template-columns:28px 1fr;
  gap:8px;
  align-items:center;
  padding:8px;
  border:0;
  border-radius:11px;
  color:rgba(255,255,255,.55);
  background:transparent;
  font:inherit;
  text-align:left;
  cursor:pointer;
  transition:color .2s ease,background .2s ease,transform .2s ease;
}
.effect-chapter-overview button:hover{
  color:#fff;
  transform:translateX(2px);
}
.effect-chapter-overview button i{
  font-size:10px;
  font-style:normal;
  font-weight:900;
}
.effect-chapter-overview button span{
  overflow:hidden;
  font-size:12px;
  font-weight:760;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.effect-chapter-overview button.passed{
  color:rgba(126,212,255,.66);
}
.effect-chapter-overview button.active{
  color:#fff;
  background:rgba(11,99,182,.76);
}

/* Anfrage: kompakte und logisch getrennte Positionsbearbeitung */
.position-section-head{
  display:flex;
  justify-content:space-between;
  gap:24px;
  margin:8px 0 20px;
}
.position-section-head h3{
  margin-bottom:7px;
}
.position-section-head p{
  max-width:800px;
  margin:0;
  color:#677a8e;
  line-height:1.55;
}
.position-editor-v57{
  display:grid;
  gap:16px;
}
.position-panel{
  padding:20px;
  border:1px solid #dce6ef;
  border-radius:20px;
  background:#f8fafc;
}
.position-panel-title{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-bottom:17px;
}
.position-panel-title > span{
  display:grid;
  width:34px;
  height:34px;
  flex:0 0 auto;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:#0b63b6;
  font-size:11px;
  font-weight:950;
}
.position-panel-title > div{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.position-panel-title strong{
  color:#102a44;
  font-size:17px;
}
.position-panel-title small{
  color:#718296;
  font-size:12px;
  line-height:1.35;
}
.position-base-grid{
  display:grid;
  grid-template-columns:minmax(0,2fr) minmax(160px,.7fr);
  gap:16px;
}
.position-dimension-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);
  gap:10px;
  align-items:end;
}
.position-dimension-grid > i{
  align-self:end;
  padding-bottom:15px;
  color:#7d8c9b;
  font-size:22px;
  font-style:normal;
  font-weight:800;
  text-align:center;
}
.position-dimension-grid label > span{
  display:block;
  margin-bottom:8px;
  color:#13283c;
  font-weight:850;
}
.dimension-input{
  position:relative;
}
.dimension-input input{
  padding-right:54px;
}
.dimension-input b{
  position:absolute;
  right:16px;
  top:50%;
  color:#728396;
  font-size:12px;
  transform:translateY(-50%);
}
.position-action-bar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding:4px 0;
}
.position-table-wrap{
  border:1px solid #dce6ef;
  border-radius:18px;
  overflow:auto;
  background:#fff;
}
.position-table{
  min-width:820px;
}
.position-table thead{
  background:#eef4f8;
}
.position-table th,
.position-table td{
  padding:13px 14px;
}
.position-table tr.selected{
  background:#eaf4fc;
}
.position-empty-row td{
  padding:26px;
  color:#7c8b9a;
  text-align:center;
}
.position-upload{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:5px 16px;
}
.position-upload strong{
  color:#12314e;
}
.position-upload span{
  grid-column:1;
  color:#718296;
  font-size:12px;
}
.position-upload input{
  grid-column:2;
  grid-row:1 / 3;
}

.request-material-empty{
  grid-column:1 / -1;
  margin:0;
  padding:14px;
  border:1px solid #ead4a5;
  border-radius:12px;
  color:#725116;
  background:#fff8e7;
}

/* Unternehmensgeschichte als bearbeitbarer Block */
.preview .history-page{
  padding-top:40px;
}
.preview .history-layout{
  display:block;
}
.preview .history-chapters{
  display:none;
}
.preview .history-entry{
  grid-template-columns:1fr 50px 1fr;
  min-height:300px;
}
.preview .history-card{
  opacity:1;
  transform:none;
}

/* Adminmenü kann unabhängig vom Inhalt gescrollt werden */
.sidebar{
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.sidebar .nav{
  padding-bottom:22px;
}

@media(max-width:1000px){
  .effect-chapter-overview{
    width:190px;
  }
}
@media(max-width:760px){
  .effect-chapter-overview{
    display:none;
  }
  .effect-scroll-hint-large{
    min-height:76px;
    padding:12px 14px;
  }
  .effect-scroll-hint-large small{
    display:none;
  }
  .position-base-grid,
  .position-dimension-grid{
    grid-template-columns:1fr;
  }
  .position-dimension-grid > i{
    display:none;
  }
  .position-upload{
    display:block;
  }
  .position-upload input{
    margin-top:12px;
  }
}


/* ===== MySQL v1 – horizontale Kapitelübersicht am unteren Rand ===== */
.effect-chapter-overview{
  left:50%;
  right:auto;
  top:auto;
  bottom:24px;
  width:min(980px,calc(100vw - 64px));
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:10px 12px;
  border-radius:22px;
  opacity:calc(var(--chapter-opacity,0) * .42);
  transform:translateX(-50%);
  transition:opacity .24s ease,background .24s ease,box-shadow .24s ease;
}
.effect-chapter-overview:hover,
.effect-chapter-overview:focus-within{
  opacity:var(--chapter-opacity,1);
}
.effect-chapter-label{
  margin:0 8px 0 2px;
  white-space:nowrap;
}
.effect-chapter-overview button{
  display:flex;
  min-width:0;
  flex:1 1 0;
  grid-template-columns:none;
  justify-content:center;
  gap:7px;
  padding:10px 8px;
  text-align:center;
}
.effect-chapter-overview button span{
  max-width:150px;
}
.effect-scroll-hint-large{
  z-index:27;
}
@media(max-width:1000px){
  .effect-chapter-overview{
    width:min(760px,calc(100vw - 40px));
  }
  .effect-chapter-overview button span{
    max-width:112px;
    font-size:11px;
  }
}
@media(max-width:760px){
  .effect-chapter-overview{
    display:none;
  }
}


/* ===== MySQL v1.1.0 – Kapitelübersicht und Anfrage-Seite ===== */

/* Alte vertikale Zahlenanzeige rechts vollständig entfernen. */
.effect-counter{
  display:none !important;
}

/* Zwei Aktionen im oberen Intro-Bereich. */
.effect-intro-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  flex:0 0 auto;
}
.effect-request-link{
  display:inline-flex;
  min-height:52px;
  align-items:center;
  gap:10px;
  padding:0 20px;
  border:1px solid rgba(11,99,182,.30);
  border-radius:999px;
  color:#fff;
  background:#0b63b6;
  box-shadow:0 16px 36px rgba(11,99,182,.24);
  font-size:14px;
  font-weight:900;
  transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}
.effect-request-link:hover{
  transform:translateY(-2px);
  background:#084f92;
  box-shadow:0 20px 44px rgba(11,99,182,.30);
}
.effect-request-link span{
  font-size:18px;
}

/*
 * Kapitelübersicht im selben hellen Liquid-Glass-Look wie der große
 * Scrollhinweis. Die gesamte Fläche ist hoverbar.
 */
.effect-chapter-overview{
  z-index:31;
  left:50%;
  right:auto;
  top:auto;
  bottom:24px;
  width:min(1020px,calc(100vw - 64px));
  min-height:78px;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:4px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:24px;
  color:#163a5b;
  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.82) 0%,
      rgba(226,239,250,.58) 100%
    );
  box-shadow:
    0 22px 58px rgba(1,17,35,.23),
    inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  opacity:calc(var(--chapter-opacity,0) * .52);
  transform:translateX(-50%);
  transition:opacity .22s ease,box-shadow .22s ease,background .22s ease;
}
.effect-chapter-overview:hover,
.effect-chapter-overview:focus-within{
  opacity:var(--chapter-opacity,1);
  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.94) 0%,
      rgba(226,239,250,.76) 100%
    );
  box-shadow:
    0 26px 68px rgba(1,17,35,.27),
    inset 0 1px 0 rgba(255,255,255,.94);
}
.effect-chapter-label{
  margin:0 10px 0 2px;
  color:#6c7f92;
  white-space:nowrap;
}
.effect-chapter-overview button{
  display:flex;
  min-width:0;
  min-height:48px;
  flex:1 1 0;
  grid-template-columns:none;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:10px 9px;
  border-radius:14px;
  color:#60758a;
  text-align:center;
}
.effect-chapter-overview button:hover{
  color:#0b4f91;
  background:rgba(255,255,255,.56);
  transform:none;
}
.effect-chapter-overview button i{
  color:#7d8fa0;
}
.effect-chapter-overview button span{
  max-width:160px;
  color:inherit;
}
.effect-chapter-overview button.passed{
  color:#3476ad;
}
.effect-chapter-overview button.active{
  color:#fff;
  background:#0b63b6;
  box-shadow:0 10px 24px rgba(11,99,182,.24);
}
.effect-chapter-overview button.active i{
  color:#fff;
}

/* Neue normale Anfrage-Seite. */
.request-page-intro{
  padding:clamp(140px,16vw,210px) 0 42px;
  background:
    radial-gradient(circle at 18% 14%,rgba(11,99,182,.09),transparent 34%),
    linear-gradient(180deg,#f8fafc 0%,#eef3f7 100%);
}
.request-page-intro .wrap{
  max-width:1180px;
}
.request-page-intro h1{
  margin:10px 0 18px;
  color:#07172b;
  font-size:clamp(48px,7vw,96px);
  line-height:.94;
  letter-spacing:-.06em;
}
.request-page-intro p{
  max-width:780px;
  margin:0;
  color:#586d82;
  font-size:clamp(18px,1.5vw,23px);
  line-height:1.6;
}
.request-page-intro + .request-banner-section{
  padding-top:26px;
}

@media(max-width:980px){
  .effect-intro-actions{
    gap:8px;
  }
  .effect-skip-link,
  .effect-request-link{
    min-height:48px;
    padding:0 15px;
    font-size:13px;
  }
  .effect-chapter-overview{
    width:min(820px,calc(100vw - 40px));
  }
  .effect-chapter-overview button span{
    max-width:118px;
    font-size:11px;
  }
}
@media(max-width:760px){
  .effect-intro-inner{
    align-items:flex-start;
  }
  .effect-intro-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .effect-skip-link,
  .effect-request-link{
    justify-content:center;
  }
  .effect-chapter-overview{
    display:none;
  }
}


/* ===== MySQL v1.2.0 – Startseite, Menü und WebP-Ladeoptimierung ===== */

/* Startbild wird erst nach vollständigem Laden weich eingeblendet. */
.effect-sticky{
  background:#20384e url("data:image/webp;base64,UklGRjQBAABXRUJQVlA4ICgBAADQBwCdASowABsAPzGMuFOuqqUisBqoAdAmCWQAw81MmCv0wHx7SjGAXrI7Vc+z/s0s3kt4kx5jy+GiRxZ+N6cnR/3sc9nHQAD9LDAr2cBQkWY9Zfc0YfXWu+4wLmv8Mn31MBZu+BbT4O5Hre2YEphMNtyBrGxMU2vjgvHD3yU9em2f/Lsi/goxO+kYhAEEM2aE0IPRlscm26ibMgwqD2wKqNVGx7iIq+Q5UfmNMUR7Ku/5F59pnLXWLHbc+4eKfWxahyrT5zrG9+So4jGvxzJe3lmVDqpuh0P8Nf+v0aSPuDYSgSAno9EWqL3qdFNzFEMIWs5/HQC7rwjx6AX0A+WRVacv+OrpjIlWCH7NbMgUV7z7607W6kdj3gRZhKGO37fu/zoJveAAAA==") center/cover no-repeat;
}
.kontur-effect-home .effect-visual{
  opacity:0;
  transition:opacity .34s ease;
}
.kontur-effect-home.effect-first-ready .effect-visual{
  opacity:1;
}

/* ArcelorMittal-Hinweis oberhalb der unteren Kapitelübersicht. */
.effect-scene-plate .effect-network-note{
  position:absolute !important;
  left:clamp(18px,4.5vw,76px) !important;
  right:auto !important;
  top:auto !important;
  bottom:132px !important;
  width:min(560px,calc(100vw - 36px)) !important;
  max-width:560px !important;
  min-height:92px;
  display:grid;
  grid-template-columns:150px 1fr;
  align-items:center;
  gap:18px;
  padding:16px 20px !important;
  border:1px solid rgba(255,255,255,.62) !important;
  border-left:1px solid rgba(255,255,255,.62) !important;
  border-radius:22px;
  color:#062b50 !important;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(225,237,247,.70)) !important;
  box-shadow:0 20px 52px rgba(4,20,40,.22),inset 0 1px 0 rgba(255,255,255,.92);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
}
.effect-scene-plate .effect-network-note img{
  width:100%;
  max-width:150px;
  filter:none;
}
.effect-scene-plate .effect-network-note span{
  color:#062b50 !important;
  text-shadow:none !important;
  font-weight:880 !important;
  line-height:1.45;
}

/* Anfrage steht direkt unter „Direkt zu den Bereichen“. */
.effect-intro-actions{
  flex-direction:column;
  align-items:stretch;
  min-width:232px;
}
.effect-intro-actions .effect-skip-link,
.effect-intro-actions .effect-request-link{
  width:100%;
  justify-content:space-between;
}

/* Scrollhinweis exakt im selben Liquid-Glass-Material wie der Intro-Bereich. */
.effect-scroll-hint-large{
  border:1px solid rgba(255,255,255,.34) !important;
  color:#0a3158 !important;
  background:linear-gradient(135deg,rgba(255,255,255,.44) 0%,rgba(235,243,250,.22) 100%) !important;
  box-shadow:0 18px 46px rgba(4,20,40,.18),inset 0 1px 0 rgba(255,255,255,.65) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
}
.effect-scroll-hint-large small{
  color:#355a7b !important;
}

/* Eigenständiger Menüknopf, solange der normale Header oben ausgeblendet ist. */
.home-floating-menu{
  position:fixed;
  z-index:1200;
  top:20px;
  right:22px;
  display:flex;
  width:74px;
  height:74px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  border:1px solid rgba(255,255,255,.46);
  border-radius:22px;
  color:#0a4f91;
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(226,239,250,.42));
  box-shadow:0 18px 48px rgba(4,20,40,.22),inset 0 1px 0 rgba(255,255,255,.82);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  cursor:pointer;
  transition:opacity .25s ease,transform .25s ease,background .25s ease;
}
.home-floating-menu:hover{
  transform:translateY(-2px);
  background:linear-gradient(135deg,rgba(255,255,255,.90),rgba(226,239,250,.62));
}
.home-floating-menu span{
  width:23px;
  height:2px;
  border-radius:99px;
  background:#0a4f91;
}
.home-floating-menu strong{
  margin-top:2px;
  font-size:9px;
  font-weight:950;
  letter-spacing:.10em;
  text-transform:uppercase;
}
body.home-cinematic.effect-menu-visible .home-floating-menu{
  opacity:0;
  pointer-events:none;
}

@media(max-width:900px){
  .effect-scene-plate .effect-network-note{
    grid-template-columns:112px 1fr;
    bottom:118px !important;
    max-width:500px !important;
  }
  .effect-intro-actions{
    min-width:205px;
  }
}
@media(max-width:760px){
  .home-floating-menu{
    top:12px;
    right:12px;
    width:62px;
    height:62px;
    border-radius:18px;
  }
  .effect-scene-plate .effect-network-note{
    left:14px !important;
    bottom:26px !important;
    width:calc(100vw - 28px) !important;
    grid-template-columns:90px 1fr;
    min-height:auto;
    padding:12px 14px !important;
  }
  .effect-scene-plate .effect-network-note span{
    font-size:12px !important;
  }
}

/* Sofort sichtbarer Header auf älteren, aus der Startseite kopierten CMS-Seiten. */
body.home-cinematic:not(:has([data-effect-home])) .site-header{
  position:sticky;
  inset:auto;
  opacity:1;
  transform:none;
  pointer-events:auto;
}
body.home-cinematic:not(:has([data-effect-home])) main{
  overflow:hidden;
}

/* ===== MySQL v1.3.0 – Startaktionen, normales Aufklappmenü und Pop-Effekt ===== */

/* Der schwebende Menüknopf besteht nur noch aus drei klaren Linien. */
.home-floating-menu{
  width:64px;
  height:64px;
  gap:6px;
  border-radius:21px;
  padding:0;
}
.home-floating-menu span{
  width:25px;
  height:2px;
  transition:transform .24s ease,opacity .24s ease,width .24s ease;
}
.home-floating-menu strong{
  display:none !important;
}
.home-floating-menu:hover span:nth-child(1),
.home-floating-menu:hover span:nth-child(3){
  width:30px;
}
body.home-cinematic.home-menu-open .home-floating-menu{
  opacity:0;
  transform:translateY(-8px) scale(.92);
  pointer-events:none;
}

/* Der normale Desktop-Header fährt von oben herunter. Kein Drawer, kein Scroll-Lock. */
body.home-cinematic.home-menu-open .site-header{
  position:fixed;
  inset:0 0 auto 0;
  opacity:1;
  transform:translate3d(0,0,0);
  pointer-events:auto;
  background:linear-gradient(135deg,rgba(255,255,255,.91),rgba(232,241,249,.80));
  border-bottom:1px solid rgba(255,255,255,.72);
  box-shadow:0 20px 54px rgba(4,20,40,.18),inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
}
body.home-cinematic.home-menu-open .desktop-nav{
  opacity:1;
  transform:none;
}

/* Statt „Direkt zu den Bereichen“ gibt es nur noch den zentralen Anfrageweg. */
.effect-intro-actions{
  min-width:224px;
}
.effect-intro-actions .effect-request-link,
.effect-request-primary{
  width:100%;
  min-height:56px;
  justify-content:space-between;
  padding:0 21px;
  border:1px solid rgba(255,255,255,.46);
  border-radius:22px;
  color:#0a4f91;
  background:linear-gradient(135deg,rgba(255,255,255,.52),rgba(232,241,249,.27));
  box-shadow:0 18px 46px rgba(4,20,40,.18),inset 0 1px 0 rgba(255,255,255,.74);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
}
.effect-intro-actions .effect-request-link:hover,
.effect-request-primary:hover{
  color:#073d74;
  background:linear-gradient(135deg,rgba(255,255,255,.68),rgba(232,241,249,.40));
}

/* Alle drei Einstiegselemente ploppen aus ihrer Mitte weich in die Breite. */
.effect-intro-copy,
.effect-request-primary,
.effect-scroll-hint-large{
  opacity:0;
  filter:blur(8px);
  transform:translate3d(0,10px,0) scaleX(.10) scaleY(.72);
  transform-origin:center center;
}
body.home-ui-ready .effect-intro-copy{
  animation:konturLiquidPop .72s cubic-bezier(.18,.90,.22,1.18) .10s both;
}
body.home-ui-ready .effect-request-primary{
  animation:konturLiquidPop .76s cubic-bezier(.18,.90,.22,1.18) .34s both;
}
body.home-ui-ready .effect-scroll-hint-large{
  animation:konturLiquidPop .82s cubic-bezier(.18,.90,.22,1.18) .66s both;
}
@keyframes konturLiquidPop{
  0%{
    opacity:0;
    filter:blur(9px);
    transform:translate3d(0,12px,0) scaleX(.08) scaleY(.68);
  }
  58%{
    opacity:1;
    filter:blur(0);
    transform:translate3d(0,-2px,0) scaleX(1.055) scaleY(1.02);
  }
  100%{
    opacity:1;
    filter:blur(0);
    transform:translate3d(0,0,0) scaleX(1) scaleY(1);
  }
}

/* Derselbe Liquid-Glass-Werkstoff für Scrollhinweis und Einstiegselemente. */
.effect-scroll-hint-large{
  border:1px solid rgba(255,255,255,.46) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.52),rgba(232,241,249,.27)) !important;
  box-shadow:0 18px 46px rgba(4,20,40,.18),inset 0 1px 0 rgba(255,255,255,.74) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
}

@media(prefers-reduced-motion:reduce){
  .effect-intro-copy,
  .effect-request-primary,
  .effect-scroll-hint-large{
    opacity:1;
    filter:none;
    transform:none;
    animation:none !important;
  }
}

@media(max-width:1020px){
  body.home-cinematic.home-menu-open .desktop-nav{
    display:none;
  }
  body.home-cinematic.home-menu-open .menu-toggle{
    display:flex;
  }
}

/* ===== MySQL v1.3.0 – neue ArcelorMittal-Konzernseite ===== */
.group-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(150px,14vw,220px) 0 clamp(76px,8vw,118px);
  color:#fff;
  background:
    radial-gradient(circle at 80% 18%,rgba(23,147,214,.24),transparent 30%),
    radial-gradient(circle at 8% 82%,rgba(255,105,36,.15),transparent 27%),
    linear-gradient(135deg,#061526 0%,#092b4b 58%,#0b4f7d 100%);
}
.group-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(90deg,rgba(0,0,0,.9),transparent 76%);
}
.group-hero-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
  gap:clamp(44px,6vw,92px);
  align-items:center;
}
.group-wordmark{
  width:min(290px,62%);
  max-height:70px;
  margin-bottom:30px;
  filter:brightness(0) invert(1);
  opacity:.94;
}
.group-hero .kicker{
  color:#91d6ff;
}
.group-hero h1{
  max-width:760px;
  margin:0 0 24px;
  color:#fff;
  font-size:clamp(58px,7vw,112px);
  line-height:.88;
  letter-spacing:-.07em;
}
.group-lead{
  max-width:730px;
  color:rgba(255,255,255,.78);
  font-size:clamp(18px,1.5vw,23px);
  line-height:1.65;
}
.group-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:30px 0 28px;
}
.group-hero-actions .btn:not(.btn-blue){
  color:#fff;
  border-color:rgba(255,255,255,.30);
  background:rgba(255,255,255,.10);
  backdrop-filter:blur(12px);
}
.group-since{
  display:flex;
  width:max-content;
  max-width:100%;
  align-items:center;
  gap:13px;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:14px;
  background:rgba(255,255,255,.08);
}
.group-since strong{
  color:#fff;
}
.group-since span{
  color:rgba(255,255,255,.66);
  font-size:13px;
}
.group-hero-visual{
  position:relative;
  min-height:610px;
}
.group-hero-visual > img{
  width:100%;
  height:610px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:38px;
  object-fit:cover;
  box-shadow:0 42px 110px rgba(0,0,0,.34);
}
.group-hero-visual:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:38px;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 45%,rgba(3,18,34,.46));
}
.group-visual-badge{
  position:absolute;
  z-index:2;
  display:flex;
  max-width:280px;
  flex-direction:column;
  gap:4px;
  padding:17px 19px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:19px;
  color:#082b4d;
  background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(230,241,249,.68));
  box-shadow:0 20px 50px rgba(2,15,28,.22);
  backdrop-filter:blur(18px) saturate(140%);
}
.group-visual-badge strong{
  font-size:18px;
}
.group-visual-badge span{
  color:#516a80;
  font-size:12px;
  line-height:1.4;
}
.group-visual-badge-a{
  left:-32px;
  bottom:38px;
}
.group-visual-badge-b{
  right:-28px;
  top:40px;
}
.group-statement{
  position:relative;
  z-index:3;
  margin-top:-30px;
}
.group-statement-inner{
  display:grid;
  grid-template-columns:1fr 50px 1fr 50px 1fr;
  align-items:center;
  gap:8px;
  min-height:94px;
  padding:18px 28px;
  border:1px solid rgba(7,23,43,.08);
  border-radius:26px;
  color:#173a59;
  background:rgba(255,255,255,.88);
  box-shadow:0 24px 72px rgba(7,23,43,.12);
  backdrop-filter:blur(18px);
}
.group-statement-inner span{
  font-weight:880;
  text-align:center;
}
.group-statement-inner i{
  height:1px;
  background:linear-gradient(90deg,transparent,#89a6bd,transparent);
}
.group-balance{
  padding:110px 0 90px;
}
.group-balance .section-title,
.group-benefits .section-title{
  max-width:970px;
}
.group-balance-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
.group-balance-card{
  position:relative;
  overflow:hidden;
  min-height:430px;
  padding:clamp(32px,4vw,54px);
  border-radius:32px;
  box-shadow:0 24px 68px rgba(7,23,43,.10);
}
.group-balance-card:after{
  content:"";
  position:absolute;
  right:-100px;
  bottom:-120px;
  width:320px;
  height:320px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(11,99,182,.15),transparent 68%);
}
.group-balance-local{
  border:1px solid #d8e5ee;
  background:#fff;
}
.group-balance-network{
  border:1px solid rgba(255,255,255,.14);
  color:#fff;
  background:linear-gradient(145deg,#08243f,#0b5688);
}
.group-card-number{
  display:grid;
  width:47px;
  height:47px;
  margin-bottom:50px;
  place-items:center;
  border-radius:50%;
  color:#0b63b6;
  background:#eaf4fc;
  font-size:12px;
  font-weight:950;
}
.group-balance-network .group-card-number{
  color:#fff;
  background:rgba(255,255,255,.12);
}
.group-balance-card h3{
  position:relative;
  z-index:1;
  margin-bottom:24px;
  font-size:clamp(32px,3vw,50px);
}
.group-balance-card ul{
  position:relative;
  z-index:1;
  display:grid;
  gap:16px;
  margin:0;
  padding:0;
  list-style:none;
}
.group-balance-card li{
  position:relative;
  padding-left:27px;
  color:#50677c;
  line-height:1.55;
}
.group-balance-card li:before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#0b63b6;
  box-shadow:0 0 0 5px rgba(11,99,182,.10);
}
.group-balance-network li{
  color:rgba(255,255,255,.74);
}
.group-balance-network li:before{
  background:#75cfff;
  box-shadow:0 0 0 5px rgba(117,207,255,.12);
}
.group-process{
  padding:100px 0;
  color:#fff;
  background:#07182a;
}
.group-process-head{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:54px;
  align-items:end;
  margin-bottom:50px;
}
.group-process .kicker{
  color:#82ceff;
}
.group-process h2{
  color:#fff;
}
.group-process-head > p{
  color:rgba(255,255,255,.64);
  font-size:18px;
}
.group-process-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.group-process-step{
  min-height:280px;
  padding:28px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:25px;
  background:linear-gradient(150deg,rgba(255,255,255,.09),rgba(255,255,255,.035));
}
.group-process-step > span{
  display:block;
  margin-bottom:58px;
  color:#79cfff;
  font-size:13px;
  font-weight:950;
}
.group-process-step h3{
  color:#fff;
}
.group-process-step p{
  color:rgba(255,255,255,.62);
}
.group-benefits{
  padding:110px 0;
  background:#f3f7fa;
}
.group-benefit-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
}
.group-benefit{
  min-height:260px;
  padding:27px;
  border:1px solid rgba(7,23,43,.08);
  border-radius:25px;
  background:#fff;
  box-shadow:0 18px 50px rgba(7,23,43,.07);
}
.group-benefit strong{
  display:block;
  margin-bottom:44px;
  color:#0b4f91;
  font-size:22px;
}
.group-cta{
  padding:90px 0 120px;
}
.group-cta-card{
  display:grid;
  grid-template-columns:1fr auto;
  gap:44px;
  align-items:center;
  padding:clamp(34px,5vw,70px);
  border-radius:34px;
  color:#fff;
  background:
    radial-gradient(circle at 90% 10%,rgba(90,190,255,.24),transparent 32%),
    linear-gradient(135deg,#092744,#0b5d92);
  box-shadow:0 28px 80px rgba(7,23,43,.18);
}
.group-cta-card .kicker{
  color:#8fd4ff;
}
.group-cta-card h2{
  color:#fff;
}
.group-cta-card p{
  max-width:780px;
  color:rgba(255,255,255,.68);
}
.group-cta-actions{
  display:flex;
  min-width:230px;
  flex-direction:column;
  gap:10px;
}
.group-cta-actions .btn:not(.btn-blue){
  color:#fff;
  border-color:rgba(255,255,255,.26);
  background:rgba(255,255,255,.10);
}

@media(max-width:1080px){
  .group-hero-grid{
    grid-template-columns:1fr;
  }
  .group-hero-visual{
    min-height:520px;
  }
  .group-hero-visual > img{
    height:520px;
  }
  .group-benefit-grid{
    grid-template-columns:repeat(2,1fr);
  }
}
@media(max-width:820px){
  .group-statement-inner{
    grid-template-columns:1fr;
    gap:12px;
  }
  .group-statement-inner i{
    width:80px;
    justify-self:center;
  }
  .group-balance-grid,
  .group-process-head,
  .group-process-grid,
  .group-cta-card{
    grid-template-columns:1fr;
  }
  .group-visual-badge-a{
    left:14px;
  }
  .group-visual-badge-b{
    right:14px;
  }
  .group-cta-actions{
    min-width:0;
  }
}
@media(max-width:600px){
  .group-hero{
    padding-top:130px;
  }
  .group-hero-visual,
  .group-hero-visual > img{
    height:430px;
    min-height:430px;
  }
  .group-visual-badge{
    max-width:220px;
    padding:13px 14px;
  }
  .group-visual-badge-b{
    top:18px;
  }
  .group-benefit-grid{
    grid-template-columns:1fr;
  }
}

/* Pop-Animation des Scrollhinweises respektiert Zentrierung und Scroll-Fade. */
.effect-scroll-hint-large{
  opacity:0;
  filter:blur(8px);
  transform:translate3d(-50%,10px,0) scaleX(.10) scaleY(.72);
}
body.home-ui-ready .effect-scroll-hint-large{
  animation:konturHintLiquidPop .82s cubic-bezier(.18,.90,.22,1.18) .66s both;
}
@keyframes konturHintLiquidPop{
  0%{
    opacity:0;
    filter:blur(9px);
    transform:translate3d(-50%,12px,0) scaleX(.08) scaleY(.68);
  }
  58%{
    opacity:var(--hint-opacity,1);
    filter:blur(0);
    transform:translate3d(-50%,-2px,0) scaleX(1.055) scaleY(1.02);
  }
  100%{
    opacity:var(--hint-opacity,1);
    filter:blur(0);
    transform:translate3d(-50%,0,0) scaleX(1) scaleY(1);
  }
}
@media(prefers-reduced-motion:reduce){
  .effect-scroll-hint-large{
    opacity:var(--hint-opacity,1);
    transform:translate3d(-50%,0,0);
  }
}


/* ===== MySQL v1.4.0 – Anfrage-CTA, Anfrage-Seite und kompaktere Seitenköpfe ===== */

/* Der Anfragebutton entspricht jetzt dem Format von „Kontur entdecken“. */
.effect-intro-actions{
  min-width:300px;
}
.effect-intro-actions .effect-request-primary{
  display:flex;
  min-height:72px;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  padding:14px 18px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:22px;
  color:#0a4f91;
  background:linear-gradient(135deg,rgba(255,255,255,.44) 0%,rgba(235,243,250,.22) 100%);
  box-shadow:0 18px 46px rgba(4,20,40,.18),inset 0 1px 0 rgba(255,255,255,.65);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
}
.effect-intro-actions .effect-request-primary:hover{
  color:#073d74;
  background:linear-gradient(135deg,rgba(255,255,255,.58) 0%,rgba(237,244,251,.30) 100%);
}
.effect-request-label{
  font-size:13px;
  font-weight:900;
  letter-spacing:.14em;
  line-height:1.15;
  text-transform:uppercase;
  white-space:nowrap;
}
.effect-signature-symbol{
  position:relative;
  display:block;
  width:26px;
  height:42px;
  flex:0 0 auto;
  overflow:hidden;
  border:2px solid #0b63b6;
  border-radius:15px;
}
.effect-signature-symbol i{
  position:absolute;
  left:11px;
  top:7px;
  width:4px;
  height:20px;
  border-radius:3px 3px 1px 1px;
  background:#0b63b6;
  transform:rotate(38deg);
  transform-origin:center bottom;
  animation:konturSignPen 2.25s ease-in-out infinite;
}
.effect-signature-symbol i::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  border-left:2px solid transparent;
  border-right:2px solid transparent;
  border-top:5px solid #0b63b6;
}
.effect-signature-symbol b{
  position:absolute;
  left:4px;
  bottom:7px;
  width:17px;
  height:7px;
  border-bottom:2px solid #0b63b6;
  border-radius:0 0 50% 50%;
  transform-origin:left center;
  animation:konturSignatureLine 2.25s ease-in-out infinite;
}
@keyframes konturSignPen{
  0%,18%{transform:translate3d(-4px,-1px,0) rotate(38deg)}
  48%{transform:translate3d(4px,4px,0) rotate(46deg)}
  72%,100%{transform:translate3d(-4px,-1px,0) rotate(38deg)}
}
@keyframes konturSignatureLine{
  0%,20%{opacity:.15;transform:scaleX(.05)}
  52%,82%{opacity:1;transform:scaleX(1)}
  100%{opacity:.15;transform:scaleX(.05)}
}

/* Neue Anfrage-Seite im regulären KONTUR-Design. */
.request-page-v140{
  padding:clamp(54px,7vw,92px) 0 34px;
  background:
    radial-gradient(circle at 16% 12%,rgba(11,99,182,.09),transparent 34%),
    linear-gradient(180deg,#f8fafc 0%,#eef3f7 100%);
}
.request-page-v140-card{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(340px,.82fr);
  gap:clamp(26px,4vw,54px);
  align-items:stretch;
  padding:clamp(34px,5vw,62px);
  border:1px solid rgba(7,23,43,.09);
  border-radius:34px;
  background:rgba(255,255,255,.90);
  box-shadow:0 28px 82px rgba(7,23,43,.11);
}
.request-page-v140-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.request-page-v140-copy h1{
  max-width:760px;
  margin:10px 0 20px;
  color:#07172b;
  font-size:clamp(44px,5.2vw,76px);
  font-weight:770;
  line-height:.98;
  letter-spacing:-.052em;
}
.request-page-v140-copy > p{
  max-width:690px;
  margin:0;
  color:#5d7084;
  font-size:clamp(17px,1.35vw,21px);
  line-height:1.62;
}
.request-page-v140-points{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:30px;
}
.request-page-v140-points span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border:1px solid #d9e4ed;
  border-radius:999px;
  color:#35526d;
  background:#f6f9fc;
  font-size:12px;
  font-weight:820;
}
.request-page-v140-points i{
  display:grid;
  width:24px;
  height:24px;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:#0b63b6;
  font-size:9px;
  font-style:normal;
  font-weight:950;
}
.request-page-v140-route{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
  padding:clamp(24px,3.4vw,38px);
  border:1px solid rgba(255,255,255,.18);
  border-radius:27px;
  color:#fff;
  background:
    radial-gradient(circle at 90% 8%,rgba(75,173,238,.30),transparent 32%),
    linear-gradient(145deg,#082a4d 0%,#0a4f91 100%);
  box-shadow:0 24px 58px rgba(7,38,70,.24);
}
.request-page-v140-route-head{
  display:flex;
  flex-direction:column;
  gap:7px;
  margin-bottom:8px;
}
.request-page-v140-route-head span{
  color:#8fd6ff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.request-page-v140-route-head strong{
  max-width:360px;
  font-size:clamp(22px,2vw,31px);
  line-height:1.12;
  letter-spacing:-.035em;
}
.request-page-v140-step{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:13px;
  align-items:start;
  padding:15px 0;
  border-top:1px solid rgba(255,255,255,.13);
}
.request-page-v140-step b{
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:13px;
  color:#9bdbff;
  background:rgba(255,255,255,.08);
  font-size:11px;
}
.request-page-v140-step div{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.request-page-v140-step strong{
  font-size:16px;
}
.request-page-v140-step span{
  color:rgba(255,255,255,.70);
  font-size:13px;
  line-height:1.45;
}
.request-page-v140-strip{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-top:18px;
  overflow:hidden;
  border:1px solid rgba(7,23,43,.08);
  border-radius:20px;
  background:rgba(255,255,255,.72);
  box-shadow:0 16px 46px rgba(7,23,43,.07);
}
.request-page-v140-strip span{
  padding:17px 20px;
  color:#617387;
  font-size:13px;
  text-align:center;
}
.request-page-v140-strip span + span{
  border-left:1px solid rgba(7,23,43,.08);
}
.request-page-v140-strip strong{
  color:#0b4f91;
}
.request-page-v140 + .request-banner-section,
.request-page-v140 ~ .request-banner-section{
  padding-top:30px;
}

/* Kompaktere Seitenköpfe auf bestehenden und künftig angelegten Seiten. */
.cms-page-intro-card{
  grid-template-columns:minmax(0,1fr) minmax(300px,.80fr);
  gap:clamp(20px,3vw,42px);
  padding:clamp(30px,4vw,54px);
}
.cms-page-intro-copy h1{
  max-width:13ch;
  margin:0 0 18px;
  font-size:clamp(40px,4.6vw,68px);
  font-weight:760;
  line-height:1.02;
  letter-spacing:-.045em;
}
.cms-page-intro-copy .large-text{
  max-width:39rem;
  font-size:clamp(17px,1.30vw,21px);
  line-height:1.58;
}
.cms-page-intro-card img{
  height:clamp(280px,28vw,410px);
  border-radius:24px;
}
.cms-page-intro h1{
  font-size:clamp(40px,4.6vw,68px);
  font-weight:760;
  line-height:1.02;
  letter-spacing:-.045em;
}
.page-hero-box{
  grid-template-columns:minmax(0,1fr) minmax(300px,.80fr);
  gap:clamp(20px,3vw,42px);
  padding:clamp(30px,4vw,54px);
}
.page-hero h1{
  max-width:13ch;
  font-size:clamp(40px,4.6vw,68px);
  font-weight:760;
  line-height:1.02;
  letter-spacing:-.045em;
}
.page-hero-box img{
  height:clamp(280px,28vw,410px);
}

@media(max-width:900px){
  .effect-intro-actions{
    min-width:245px;
  }
  .request-page-v140-card{
    grid-template-columns:1fr;
  }
  .request-page-v140-route{
    min-height:auto;
  }
}
@media(max-width:760px){
  .effect-intro-actions{
    width:100%;
    min-width:0;
  }
  .effect-intro-actions .effect-request-primary{
    width:100%;
  }
  .request-page-v140{
    padding-top:34px;
  }
  .request-page-v140-card{
    padding:26px 22px;
    border-radius:25px;
  }
  .request-page-v140-copy h1{
    font-size:clamp(40px,12vw,58px);
  }
  .request-page-v140-strip{
    grid-template-columns:1fr;
  }
  .request-page-v140-strip span + span{
    border-left:0;
    border-top:1px solid rgba(7,23,43,.08);
  }
  .cms-page-intro-card,
  .page-hero-box{
    gap:20px;
    padding:26px 22px;
  }
  .cms-page-intro-copy h1,
  .cms-page-intro h1,
  .page-hero h1{
    max-width:none;
    font-size:clamp(38px,11vw,55px);
  }
}


/* ===== MySQL v1.4.1 – Anfragebutton-Failsafe ===== */
.kontur-effect-home .effect-request-primary{
  display:flex;
  min-width:300px;
  min-height:72px;
  align-items:center;
  justify-content:flex-start;
  gap:16px;
  padding:14px 18px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:22px;
  color:#0a4f91;
  background:linear-gradient(135deg,rgba(255,255,255,.44) 0%,rgba(235,243,250,.22) 100%);
  box-shadow:0 18px 46px rgba(4,20,40,.18),inset 0 1px 0 rgba(255,255,255,.65);
  backdrop-filter:blur(18px) saturate(145%);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  text-decoration:none;
}
.kontur-effect-home .effect-request-primary:hover{
  color:#073d74;
  background:linear-gradient(135deg,rgba(255,255,255,.58) 0%,rgba(237,244,251,.30) 100%);
}
.kontur-effect-home .effect-intro-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}
@media(max-width:760px){
  .kontur-effect-home .effect-request-primary{
    width:100%;
    min-width:0;
  }
}


/* ===== MySQL v1.4.2 – Anfragebutton-Link und neues Signatur-Icon ===== */
.kontur-effect-home .effect-intro-actions{
  position:relative;
  z-index:45;
  pointer-events:auto;
}
.kontur-effect-home .effect-request-primary{
  position:relative;
  z-index:46;
  cursor:pointer;
  pointer-events:auto !important;
  user-select:none;
  -webkit-tap-highlight-color:transparent;
}
.kontur-effect-home .effect-request-primary::after{
  content:"";
  position:absolute;
  inset:-3px;
  border-radius:25px;
  pointer-events:none;
}
.kontur-effect-home .effect-request-primary:focus-visible{
  outline:3px solid rgba(110,203,255,.88);
  outline-offset:4px;
}

.effect-request-icon{
  display:grid;
  width:46px;
  height:46px;
  flex:0 0 auto;
  place-items:center;
  border:1px solid rgba(11,99,182,.38);
  border-radius:15px;
  color:#0b63b6;
  background:linear-gradient(145deg,rgba(255,255,255,.68),rgba(213,232,247,.40));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
}
.effect-request-icon svg{
  display:block;
  width:36px;
  height:36px;
  overflow:visible;
}
.request-icon-sheet{
  fill:rgba(255,255,255,.26);
  stroke:currentColor;
  stroke-width:1.7;
}
.request-icon-line{
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  opacity:.56;
}
.request-icon-signature{
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:29;
  stroke-dashoffset:29;
  animation:konturRequestSignature 2.8s cubic-bezier(.3,.75,.25,1) infinite;
}
.request-icon-pen{
  fill:rgba(255,255,255,.72);
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
  transform-origin:27px 22px;
  animation:konturRequestPen 2.8s cubic-bezier(.3,.75,.25,1) infinite;
}
@keyframes konturRequestSignature{
  0%,16%{stroke-dashoffset:29;opacity:.24}
  48%,78%{stroke-dashoffset:0;opacity:1}
  100%{stroke-dashoffset:29;opacity:.24}
}
@keyframes konturRequestPen{
  0%,16%{transform:translate3d(-3px,-2px,0) rotate(-2deg)}
  48%{transform:translate3d(3px,3px,0) rotate(4deg)}
  78%,100%{transform:translate3d(-3px,-2px,0) rotate(-2deg)}
}
@media(prefers-reduced-motion:reduce){
  .request-icon-signature,
  .request-icon-pen{
    animation:none;
  }
  .request-icon-signature{
    stroke-dashoffset:0;
  }
}


/* ===== MySQL v1.5.1 – zentrale Navigation ===== */
.mobile-links .mobile-sub{
  padding-left:24px;
  color:#667b8e;
  font-size:.93em;
}


/* v0.5.2 – modernere Schrift und neue Startseiten-Kamerafahrt */
body,
button,
input,
select,
textarea {
  font-family: 'Inter', 'Segoe UI Variable', 'Segoe UI', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  letter-spacing: -0.028em;
}

.kicker,
.section-title .kicker,
.page-hero .kicker,
.cms-page-intro-copy .kicker,
.hp-section-heading span,
.brand span {
  letter-spacing: .16em;
}

.section-title h2,
.card h2,
.cms-page-intro-copy h1,
.hero .slide-content h1,
.history-intro h1,
.page-hero h1,
.hp048-card-summary h1,
.hp048-card-summary h2,
.home-tile-copy h3,
.discover-story-head h2,
.effect-story-card strong {
  font-weight: 700;
}

.section-title h2,
.card h2,
.discover-story-head h2,
.cms-page-intro-copy h1,
.history-intro h1,
.page-hero h1 {
  font-size: clamp(2rem, 1.3rem + 2.2vw, 3.6rem);
}

.desktop-nav a,
.btn,
.home-tile-copy h3,
.hp048-card-detail h2,
.hp048-card-summary h2,
.hp048-card-summary h1,
.effect-story-button {
  font-weight: 650;
}

body.home-proposal-page .site-header,
body .site-header {
  backdrop-filter: blur(16px);
}

.discover-story {
  position: relative;
  padding: 34px 0 0;
  background:
    radial-gradient(circle at top left, rgba(11,99,182,.08), transparent 34%),
    linear-gradient(180deg, #f6f9fc 0%, #edf3f8 20%, #f6f8fb 100%);
}

.discover-story-head {
  position: relative;
  z-index: 3;
  display: grid;
  gap: 14px;
  max-width: 1120px;
  padding-bottom: 28px;
}

.discover-story-head .kicker {
  margin: 0;
}

.discover-story-head h2 {
  margin: 0;
  max-width: 14ch;
}

.discover-story-head p {
  margin: 0;
  max-width: 760px;
  color: rgba(6,16,31,.72);
  font-size: 1.06rem;
  line-height: 1.7;
}

.discover-scroll {
  position: relative;
  height: calc((var(--scene-count, 7) * 82vh) + 100vh);
}

.discover-scroll .effect-sticky {
  position: sticky;
  top: 84px;
  height: calc(100vh - 84px);
  overflow: hidden;
  border-top: 1px solid rgba(11,99,182,.09);
  border-bottom: 1px solid rgba(6,16,31,.08);
  background: #07111d;
}

.discover-scroll .effect-visual,
.discover-scroll .effect-layer {
  position: absolute;
  inset: 0;
}

.discover-scroll .effect-visual {
  --whiteout: 0;
}

.discover-scroll .effect-layer {
  opacity: 0;
  transition: opacity .3s ease;
  clip-path: inset(0 var(--clip-right,0%) 0 var(--clip-left,0%));
}

.discover-scroll .effect-layer::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6,16,31,.22) 0%, rgba(6,16,31,.18) 20%, rgba(6,16,31,.42) 100%);
}

.discover-scroll .effect-layer img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(var(--effect-scale,1.03));
  transition: transform .28s linear;
}

.discover-scroll .effect-depth-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 24% 22%, rgba(255,255,255,.18), transparent 25%),
    linear-gradient(90deg, rgba(6,16,31,.18) 0%, transparent 28%, transparent 72%, rgba(6,16,31,.18) 100%);
  pointer-events: none;
}

.discover-scroll .effect-whiteout {
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,var(--whiteout,0));
  pointer-events: none;
}

.effect-scroll-hint-large {
  position: absolute;
  left: min(5.5vw, 72px);
  top: 34px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  gap: 16px;
  padding: 15px 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 22px 54px rgba(6,16,31,.14);
  backdrop-filter: blur(18px);
  opacity: var(--hint-opacity,1);
  transition: opacity .24s ease;
}

.effect-scroll-hint-large strong,
.effect-scroll-hint-large small,
.effect-scroll-hint-large b {
  color: #06101f;
}

.effect-scroll-hint-large strong {
  display: block;
  font-size: .88rem;
}

.effect-scroll-hint-large small {
  display: block;
  margin-top: 2px;
  font-size: .78rem;
  opacity: .72;
}

.effect-scroll-hint-icon {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg, #0b63b6, #3b8fe0);
}

.effect-scroll-hint-icon i {
  width: 14px;
  height: 14px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(45deg) translate(-1px, -1px);
}

.discover-scroll .effect-counter {
  position: absolute;
  right: min(4.4vw, 62px);
  top: 50%;
  z-index: 4;
  transform: translateY(-50%);
  display: grid;
  gap: 12px;
  align-items: center;
  justify-items: center;
  width: 74px;
  padding: 18px 0;
  border-radius: 26px;
  background: rgba(7,17,29,.5);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,.12);
}

.discover-scroll .effect-counter span,
.discover-scroll .effect-counter em {
  color: #fff;
  font-style: normal;
  font-weight: 700;
  font-size: .88rem;
  letter-spacing: .12em;
}

.discover-scroll .effect-counter i {
  position: relative;
  width: 4px;
  height: 140px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  overflow: hidden;
}

.discover-scroll .effect-counter i b {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, #6bb5ff 0%, #0b63b6 100%);
}

.discover-chapter-overview {
  position: absolute;
  left: min(5.5vw, 72px);
  bottom: 28px;
  z-index: 4;
  display: inline-flex;
  flex-direction: column;
  gap: 10px;
  min-width: min(360px, calc(100% - 160px));
  max-width: 420px;
  padding: 16px;
  border-radius: 28px;
  background: rgba(7,17,29,.58);
  box-shadow: 0 32px 68px rgba(6,16,31,.24);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.12);
  opacity: var(--chapter-opacity,1);
  transition: opacity .24s ease;
}

.discover-chapter-overview .effect-chapter-label {
  color: rgba(255,255,255,.76);
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.discover-chapter-overview button {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 12px 14px;
  border: 0;
  border-radius: 18px;
  background: rgba(255,255,255,.08);
  color: #fff;
  cursor: pointer;
  text-align: left;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}

.discover-chapter-overview button i {
  font-style: normal;
  font-size: .72rem;
  letter-spacing: .16em;
  opacity: .72;
}

.discover-chapter-overview button span {
  font-weight: 650;
}

.discover-chapter-overview button:hover,
.discover-chapter-overview button.active {
  background: rgba(255,255,255,.18);
  transform: translateX(4px);
}

.discover-chapter-overview button.passed {
  color: rgba(255,255,255,.74);
}

.discover-scroll .effect-scene {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}

.discover-scroll .effect-scene-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 110px min(7vw, 84px) 146px;
}

.discover-scroll .effect-scene.is-transition .effect-scene-inner {
  align-items: flex-end;
  justify-content: flex-end;
  padding-bottom: 140px;
}

.effect-story-card {
  max-width: 460px;
  padding: 28px 30px;
  border-radius: 28px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 64px rgba(6,16,31,.18);
  backdrop-filter: blur(22px);
  pointer-events: auto;
}

.effect-scene.is-transition .effect-story-card {
  max-width: 410px;
  background: rgba(7,17,29,.72);
  color: #fff;
}

.effect-story-tag {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(11,99,182,.12);
  color: #0b63b6;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.effect-scene.is-transition .effect-story-tag {
  background: rgba(255,255,255,.12);
  color: rgba(255,255,255,.88);
}

.effect-story-card strong {
  display: block;
  margin: 0 0 12px;
  color: inherit;
  font-size: clamp(1.5rem, 1.1rem + 1vw, 2rem);
  line-height: 1.12;
}

.effect-story-card p {
  margin: 0;
  color: rgba(6,16,31,.76);
  line-height: 1.7;
}

.effect-scene.is-transition .effect-story-card p {
  color: rgba(255,255,255,.8);
}

.effect-story-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 18px;
  padding: 12px 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, #0b63b6 0%, #2e81d4 100%);
  color: #fff;
  text-decoration: none;
  box-shadow: 0 16px 28px rgba(11,99,182,.22);
}

.preview-story .discover-scroll .effect-sticky {
  position: relative;
  top: 0;
  height: 760px;
}

.preview-story .effect-scene {opacity:1;}

@media (max-width: 1120px) {
  .discover-scroll .effect-counter {
    right: 20px;
  }
  .discover-chapter-overview {
    left: 20px;
    min-width: min(320px, calc(100% - 120px));
  }
}

@media (max-width: 860px) {
  .discover-scroll {
    height: calc((var(--scene-count, 7) * 72vh) + 100vh);
  }
  .discover-scroll .effect-sticky {
    top: 70px;
    height: calc(100vh - 70px);
  }
  .effect-scroll-hint-large {
    left: 18px;
    top: 16px;
    right: 18px;
    width: auto;
  }
  .discover-scroll .effect-counter {
    top: auto;
    bottom: 126px;
    right: 18px;
    transform: none;
    width: 62px;
  }
  .discover-chapter-overview {
    left: 18px;
    right: 18px;
    bottom: 18px;
    min-width: 0;
    max-width: none;
  }
  .discover-scroll .effect-scene-inner,
  .discover-scroll .effect-scene.is-transition .effect-scene-inner {
    justify-content: flex-start;
    align-items: flex-end;
    padding: 96px 18px 170px;
  }
  .effect-story-card,
  .effect-scene.is-transition .effect-story-card {
    max-width: none;
    width: min(100%, 520px);
  }
}

@media (max-width: 640px) {
  .discover-story {
    padding-top: 20px;
  }
  .discover-story-head {
    padding-bottom: 18px;
  }
  .effect-scroll-hint-large {
    gap: 12px;
    padding: 12px 14px;
  }
  .effect-scroll-hint-icon {
    width: 34px;
    height: 34px;
  }
  .discover-scroll .effect-counter {
    display: none;
  }
  .discover-chapter-overview {
    gap: 8px;
    padding: 12px;
    border-radius: 20px;
  }
  .discover-chapter-overview button {
    padding: 10px 12px;
  }
  .effect-story-card {
    padding: 20px 20px 22px;
    border-radius: 22px;
  }
  .effect-story-card strong {
    font-size: 1.45rem;
  }
}

/* ===== KONTUR CMS 0.5.3 · echte GSAP-/ScrollTrigger-Kamerafahrt ===== */
.kd3d-story{
  position:relative;
  width:100%;
  background:#f3f6f9;
  isolation:isolate;
}
.kd3d-intro{
  position:relative;
  z-index:3;
  display:grid;
  justify-items:center;
  gap:26px;
  padding:42px 0 52px;
  background:
    radial-gradient(circle at 50% -35%,rgba(11,99,182,.15),transparent 58%),
    linear-gradient(180deg,#fff 0%,#f4f7fa 100%);
  border-top:1px solid rgba(6,16,31,.07);
}
.kd3d-discover-link{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  color:#0b63b6;
  font-size:clamp(18px,1.4vw,23px);
  font-weight:650;
  letter-spacing:-.02em;
}
.kd3d-discover-link i{
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:50%;
  background:#0b63b6;
  color:#fff;
  font-style:normal;
  box-shadow:0 12px 28px rgba(11,99,182,.22);
  animation:kd3d-arrow 1.8s ease-in-out infinite;
}
@keyframes kd3d-arrow{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(7px)}
}
.kd3d-intro-copy{
  display:grid;
  justify-items:center;
  gap:14px;
  text-align:center;
}
.kd3d-intro-copy h2{
  max-width:16ch;
  margin:0;
  font-size:clamp(32px,4.4vw,62px);
  font-weight:650;
  line-height:1.02;
  letter-spacing:-.045em;
}
.kd3d-intro-copy p{
  max-width:760px;
  margin:0;
  color:#5d6877;
  font-size:clamp(16px,1.25vw,20px);
  line-height:1.65;
}
.kd3d-scroll{
  position:relative;
  min-height:100vh;
  background:#07111d;
}
.kd3d-stage{
  position:relative;
  width:100%;
  height:100vh;
  min-height:640px;
  overflow:hidden;
  background:#07111d;
  perspective:1450px;
  transform-style:preserve-3d;
}
.kd3d-camera{
  position:absolute;
  inset:-3%;
  transform-style:preserve-3d;
  will-change:transform;
}
.kd3d-layer{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  visibility:hidden;
  transform-style:preserve-3d;
  transform-origin:50% 50%;
  will-change:transform,opacity,filter;
  backface-visibility:hidden;
}
.kd3d-layer:first-child{
  opacity:1;
  visibility:visible;
}
.kd3d-layer img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.kd3d-layer-shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(3,9,17,.64) 0%,rgba(3,9,17,.14) 48%,rgba(3,9,17,.34) 100%),
    linear-gradient(180deg,rgba(3,9,17,.22) 0%,transparent 35%,rgba(3,9,17,.52) 100%);
}
.kd3d-layer.is-transition .kd3d-layer-shade{
  background:
    radial-gradient(circle at 50% 45%,transparent 0%,rgba(3,9,17,.12) 46%,rgba(3,9,17,.64) 100%),
    linear-gradient(180deg,rgba(3,9,17,.24),rgba(3,9,17,.5));
}
.kd3d-vignette{
  position:absolute;
  inset:0;
  z-index:20;
  pointer-events:none;
  background:
    radial-gradient(ellipse at center,transparent 38%,rgba(0,0,0,.18) 72%,rgba(0,0,0,.48) 100%),
    linear-gradient(180deg,rgba(0,0,0,.14),transparent 20%,transparent 78%,rgba(0,0,0,.26));
}
.kd3d-door-frame{
  position:absolute;
  inset:0;
  z-index:18;
  pointer-events:none;
  opacity:0;
  transform:scale(.92);
  transform-origin:center;
  will-change:transform,opacity;
}
.kd3d-door-frame span{
  position:absolute;
  background:linear-gradient(90deg,#111820,#29333d,#0b1118);
  box-shadow:0 0 45px rgba(0,0,0,.65);
}
.kd3d-door-frame span:nth-child(1){left:0;top:0;bottom:0;width:9vw;min-width:80px}
.kd3d-door-frame span:nth-child(2){right:0;top:0;bottom:0;width:9vw;min-width:80px}
.kd3d-door-frame span:nth-child(3){left:0;right:0;top:0;height:10vh;min-height:64px}
.kd3d-scene-card{
  position:absolute;
  z-index:30;
  left:clamp(24px,6vw,96px);
  top:50%;
  width:min(500px,calc(100% - 48px));
  padding:30px 32px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:28px;
  background:rgba(255,255,255,.91);
  box-shadow:0 28px 90px rgba(0,0,0,.28);
  backdrop-filter:blur(20px);
  transform:translateY(-50%);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  will-change:transform,opacity;
}
.kd3d-scene-card:first-of-type{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.kd3d-scene-card.is-transition{
  left:auto;
  right:clamp(24px,6vw,96px);
  top:auto;
  bottom:clamp(116px,15vh,170px);
  transform:none;
  width:min(430px,calc(100% - 48px));
  color:#fff;
  background:rgba(5,13,24,.72);
  border-color:rgba(255,255,255,.14);
}
.kd3d-tag{
  display:inline-flex;
  margin-bottom:14px;
  padding:7px 11px;
  border-radius:999px;
  background:rgba(11,99,182,.11);
  color:#0b63b6;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.kd3d-scene-card.is-transition .kd3d-tag{
  color:#fff;
  background:rgba(255,255,255,.12);
}
.kd3d-scene-card h3{
  margin:0 0 12px;
  color:#06101f;
  font-size:clamp(27px,2.7vw,42px);
  font-weight:650;
  line-height:1.06;
  letter-spacing:-.04em;
}
.kd3d-scene-card.is-transition h3{color:#fff}
.kd3d-scene-card p{
  margin:0;
  color:#526070;
  font-size:16px;
  line-height:1.65;
}
.kd3d-scene-card.is-transition p{color:rgba(255,255,255,.78)}
.kd3d-button{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-top:20px;
  padding:13px 18px;
  border-radius:999px;
  background:#0b63b6;
  color:#fff;
  font-weight:650;
  box-shadow:0 14px 30px rgba(11,99,182,.24);
  transition:transform .2s ease,background .2s ease;
}
.kd3d-button:hover{transform:translateY(-2px);background:#084d92}
.kd3d-nav{
  position:absolute;
  z-index:35;
  left:clamp(24px,6vw,96px);
  bottom:clamp(24px,4vh,42px);
  display:flex;
  align-items:center;
  gap:9px;
  max-width:calc(100% - 190px);
  padding:10px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  background:rgba(5,13,24,.62);
  backdrop-filter:blur(18px);
  box-shadow:0 22px 58px rgba(0,0,0,.25);
}
.kd3d-nav-label{
  padding:0 10px;
  color:rgba(255,255,255,.62);
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.kd3d-nav button{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:10px 13px;
  border:0;
  border-radius:15px;
  background:transparent;
  color:rgba(255,255,255,.74);
  cursor:pointer;
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.kd3d-nav button i{
  font-style:normal;
  font-size:11px;
  letter-spacing:.1em;
  opacity:.6;
}
.kd3d-nav button span{font-size:13px;font-weight:650}
.kd3d-nav button:hover,.kd3d-nav button.active{
  color:#fff;
  background:rgba(255,255,255,.13);
  transform:translateY(-1px);
}
.kd3d-nav button.passed{color:rgba(255,255,255,.55)}
.kd3d-progress{
  position:absolute;
  z-index:35;
  right:clamp(20px,3.5vw,58px);
  top:50%;
  display:grid;
  justify-items:center;
  gap:10px;
  transform:translateY(-50%);
  padding:15px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;
  background:rgba(5,13,24,.55);
  backdrop-filter:blur(16px);
}
.kd3d-progress span,.kd3d-progress em{
  color:#fff;
  font-size:12px;
  font-style:normal;
  font-weight:700;
  letter-spacing:.12em;
}
.kd3d-progress i{
  position:relative;
  width:4px;
  height:120px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.16);
}
.kd3d-progress i b{
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:0;
  border-radius:inherit;
  background:linear-gradient(180deg,#74b9ff,#0b63b6);
}
.kd3d-scroll-hint{
  position:absolute;
  z-index:35;
  right:clamp(20px,3.5vw,58px);
  bottom:clamp(24px,4vh,42px);
  display:grid;
  justify-items:end;
  gap:3px;
  color:#fff;
  text-align:right;
  transition:opacity .2s ease;
}
.kd3d-scroll-hint strong{font-size:13px;font-weight:650}
.kd3d-scroll-hint small{color:rgba(255,255,255,.62);font-size:11px}
.kd3d-scroll-hint i{margin-top:6px;font-style:normal;font-size:20px}
.kd3d-no-gsap .kd3d-scroll{min-height:auto}
.kd3d-no-gsap .kd3d-stage,
.kd3d-reduced .kd3d-stage{height:min(820px,100vh)}
.kd3d-no-gsap .kd3d-layer:first-child,
.kd3d-reduced .kd3d-layer:first-child{opacity:1!important;visibility:visible!important;transform:none!important}
.kd3d-no-gsap .kd3d-scene-card:first-of-type,
.kd3d-reduced .kd3d-scene-card:first-of-type{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.hp048-glass-strip .hp048-metric-link{display:block;color:inherit}
.hp048-glass-strip .hp048-metric-link:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
@media(max-width:1000px){
  .kd3d-nav{left:18px;right:86px;max-width:none;overflow:auto}
  .kd3d-nav-label{display:none}
  .kd3d-scene-card{left:18px;width:min(470px,calc(100% - 110px))}
  .kd3d-scene-card.is-transition{right:18px;width:min(420px,calc(100% - 110px))}
}
@media(max-width:700px){
  .kd3d-intro{padding:30px 0 38px}
  .kd3d-stage{min-height:560px}
  .kd3d-scene-card,
  .kd3d-scene-card.is-transition{
    left:16px;
    right:16px;
    top:auto;
    bottom:124px;
    width:auto;
    padding:20px 21px;
    border-radius:22px;
    transform:none;
  }
  .kd3d-scene-card h3{font-size:26px}
  .kd3d-scene-card p{font-size:14px}
  .kd3d-nav{left:12px;right:12px;bottom:12px;padding:7px;border-radius:18px}
  .kd3d-nav button{min-height:38px;padding:8px 10px}
  .kd3d-nav button span{font-size:12px}
  .kd3d-progress,.kd3d-scroll-hint{display:none}
  .kd3d-door-frame span:nth-child(1),.kd3d-door-frame span:nth-child(2){min-width:42px}
}
@media(prefers-reduced-motion:reduce){
  .kd3d-discover-link i{animation:none}
}

/* v0.5.6 – ruhigere, kleinere und weniger schwere Typografie auf allen Seiten */
body,
button,
input,
select,
textarea{
  font-family:'Inter','Segoe UI Variable','Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
}

h1,h2,h3,h4,h5,h6{
  font-weight:600 !important;
  letter-spacing:-.025em;
}

h1{
  font-size:clamp(2.2rem,1.55rem + 2.25vw,4.25rem) !important;
  line-height:1.02 !important;
}

h2{
  font-size:clamp(1.8rem,1.35rem + 1.45vw,3.05rem) !important;
  line-height:1.08 !important;
}

h3{
  font-size:clamp(1.2rem,1.04rem + .58vw,1.75rem) !important;
  line-height:1.15 !important;
}

.page-hero h1,
.cms-page-intro-copy h1,
.history-intro h1,
.career-hero h1,
.contact-hero h1,
.legal-page h1,
.hero .slide-content h1{
  max-width:18ch;
  font-size:clamp(2.35rem,1.65rem + 2.45vw,4.5rem) !important;
  font-weight:600 !important;
}

.section-title h2,
.card h2,
.cms-separator h2,
.career-page-head h2,
.news-admin-note h2,
.history-card h2,
.cms-gallery-panel h2,
.cms-feature-box h3{
  font-weight:600 !important;
}

.section-title h2,
.card h2,
.cms-separator h2,
.career-page-head h2,
.news-admin-note h2,
.cms-gallery-panel h2{
  font-size:clamp(1.75rem,1.35rem + 1.3vw,2.9rem) !important;
}

.kicker,
.eyebrow,
.section-title .kicker,
.page-hero .kicker,
.cms-page-intro-copy .kicker{
  font-weight:700;
  letter-spacing:.14em;
}

/* ================================================================
   KONTUR CMS 0.5.9.17 – einheitliche Standardformatierung für
   Seiten- und Blocküberschriften nach dem Stil der Home-Kacheln
   ================================================================ */
:root{
  --kontur-heading-font:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --kontur-heading-color:#06101f;
  --kontur-heading-size:clamp(34px,4.4vw,64px);
  --kontur-heading-weight:700;
  --kontur-heading-line:1.04;
  --kontur-heading-spacing:-1.2px;
}

/* Abschnitts- und Blocktitel */
.section-title h2,
.section > .wrap > .card > h2,
.cms-split-feature > .card h2,
.cms-text-image > .card h2,
.cms-separator > .wrap > h2,
.career-page-head h2,
.news-admin-note h2,
.cms-plz-search h2,
.cms-newsletter-copy h2,
.cms-gallery-copy h2,
.cms-table-card > h2,
.request-banner-head h2,
.group-balance .section-title h2,
.group-benefits .section-title h2,
.home-tiles-section .section-title h2,
.home-card-slider-heading h2,
.cms-page-intro-copy h1,
.cms-page-intro > .wrap > h1,
.page-hero h1,
.request-page-intro h1{
  font-family:var(--kontur-heading-font) !important;
  font-size:var(--kontur-heading-size) !important;
  font-weight:var(--kontur-heading-weight) !important;
  line-height:var(--kontur-heading-line) !important;
  letter-spacing:var(--kontur-heading-spacing) !important;
  color:var(--kontur-heading-color) !important;
  text-wrap:balance;
}

/* Einheitliche Abstände der Standardüberschriften. */
.section-title h2,
.section > .wrap > .card > h2,
.cms-split-feature > .card h2,
.cms-text-image > .card h2,
.cms-separator > .wrap > h2,
.career-page-head h2,
.news-admin-note h2,
.cms-plz-search h2,
.cms-newsletter-copy h2,
.cms-gallery-copy h2,
.cms-table-card > h2,
.request-banner-head h2,
.home-tiles-section .section-title h2,
.home-card-slider-heading h2{
  margin-top:0 !important;
  margin-bottom:16px !important;
}

/* Auf dunklen Themen bleibt die standardisierte Typografie erhalten,
   die Farbe wechselt ausschließlich zugunsten der Lesbarkeit auf Weiß. */
.cms-theme-original h2,
.cms-theme-blue h2,
.cms-theme-navy h2,
.cms-theme-graphite h2,
.request-banner-head h2{
  color:#fff !important;
}

@media (max-width:760px){
  :root{
    --kontur-heading-size:clamp(32px,10vw,46px);
    --kontur-heading-spacing:-.8px;
  }
}

/* ================================================================
   KONTUR CMS 0.5.9.18 – leichtere, einheitliche Überschriftentypografie
   ================================================================ */
:root{
  --kontur-heading-font:'Inter','Segoe UI Variable','Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --kontur-heading-color:#0a223b;
  --kontur-heading-size:clamp(34px,4vw,60px);
  --kontur-heading-weight:560;
  --kontur-heading-line:1.04;
  --kontur-heading-spacing:-.035em;
}

/* Dieselbe Schriftfamilie und ein ruhigeres Gewicht für alle großen Titel. */
h1,
h2,
h3,
.page-hero h1,
.cms-page-intro-copy h1,
.cms-page-intro > .wrap > h1,
.request-page-intro h1,
.section-title h2,
.section > .wrap > .card > h2,
.cms-split-feature > .card h2,
.cms-text-image > .card h2,
.cms-separator > .wrap > h2,
.career-page-head h2,
.news-admin-note h2,
.cms-plz-search h2,
.cms-newsletter-copy h2,
.cms-gallery-copy h2,
.cms-table-card > h2,
.request-banner-head h2,
.group-balance .section-title h2,
.group-benefits .section-title h2,
.home-tiles-section .section-title h2,
.home-card-slider-heading h2,
.cms-feature-box h3,
.card h2,
.card h3{
  font-family:var(--kontur-heading-font) !important;
  font-weight:var(--kontur-heading-weight) !important;
  letter-spacing:var(--kontur-heading-spacing) !important;
  font-synthesis:none;
}

/* Seiten- und zentrale Blocküberschriften verwenden dieselbe Standardgröße. */
.page-hero h1,
.cms-page-intro-copy h1,
.cms-page-intro > .wrap > h1,
.request-page-intro h1,
.section-title h2,
.section > .wrap > .card > h2,
.cms-split-feature > .card h2,
.cms-text-image > .card h2,
.cms-separator > .wrap > h2,
.career-page-head h2,
.news-admin-note h2,
.cms-plz-search h2,
.cms-newsletter-copy h2,
.cms-gallery-copy h2,
.cms-table-card > h2,
.request-banner-head h2,
.group-balance .section-title h2,
.group-benefits .section-title h2,
.home-tiles-section .section-title h2,
.home-card-slider-heading h2{
  font-size:var(--kontur-heading-size) !important;
  line-height:var(--kontur-heading-line) !important;
  color:var(--kontur-heading-color) !important;
  text-wrap:balance;
}

/* Helle Überschriften auf dunklen beziehungsweise bebilderten Blöcken. */
.cms-theme-original h1,
.cms-theme-original h2,
.cms-theme-original h3,
.cms-theme-blue h1,
.cms-theme-blue h2,
.cms-theme-blue h3,
.cms-theme-navy h1,
.cms-theme-navy h2,
.cms-theme-navy h3,
.cms-theme-graphite h1,
.cms-theme-graphite h2,
.cms-theme-graphite h3,
.request-banner-head h2,
.hero h1,
.hero h2,
.hero h3{
  color:#fff !important;
}

@media (max-width:760px){
  :root{
    --kontur-heading-size:clamp(31px,9.2vw,44px);
    --kontur-heading-spacing:-.028em;
  }
}

/* KONTUR 0.9.0.27 – kompakter Anfrageablauf */
.request-banner-section-v09027{padding-top:clamp(38px,5vw,72px)}
.request-banner-v09027{background:linear-gradient(135deg,#071b32 0%,#0a5797 100%)}
.request-banner-head-v09027{align-items:stretch}
.request-banner-copy-v09027{max-width:760px;align-self:center}
.request-banner-head-v09027 .request-banner-copy-v09027>p{max-width:760px;margin-bottom:0}
.request-response-note-v09027{width:min(360px,100%);padding:20px 22px;border:1px solid rgba(255,255,255,.18);border-radius:var(--cms-card-radius,24px)!important;background:rgba(255,255,255,.10);backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:center;gap:5px}
.request-response-note-v09027 span{font-size:12px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#bcdcf5}
.request-response-note-v09027 strong{font-size:clamp(20px,2vw,28px);line-height:1.12;color:#fff}
.request-response-note-v09027 small{font-size:14px;line-height:1.5;color:#dcebf7}
.request-process-v09027{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 clamp(24px,4vw,54px) 24px;border:1px solid rgba(255,255,255,.16);border-radius:var(--cms-card-radius,24px)!important;overflow:hidden;background:rgba(255,255,255,.16)}
.request-process-step{display:flex;gap:13px;min-height:116px;padding:18px;background:rgba(4,34,62,.58)}
.request-process-step b{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#07539a;font-size:12px}
.request-process-step div{display:flex;flex-direction:column;gap:5px}
.request-process-step strong{font-size:15px;color:#fff}
.request-process-step span{font-size:13px;line-height:1.45;color:#cfe0ee}
.request-banner-v09027 .request-type-tabs{padding-top:2px}
.request-banner-v09027 .request-type-tabs button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px}
@media(max-width:980px){.request-process-v09027{grid-template-columns:repeat(2,minmax(0,1fr))}.request-banner-head-v09027{flex-direction:column}.request-response-note-v09027{width:100%}}
@media(max-width:620px){.request-process-v09027{grid-template-columns:1fr}.request-process-step{min-height:auto}}

/* ===== CMS 0.9.0.28 – Anfrageformular XXL: globale Rundungen ===== */
.request-banner-xxl .request-response-note-v09027,
.request-banner-xxl .request-process-v09027,
.request-banner-xxl .request-type-tabs button{
  border-radius:var(--cms-card-radius,24px)!important;
}
.request-banner-xxl .request-process-step b{
  border-radius:var(--cms-badge-radius,999px)!important;
}
\n\n/* ================================================================\n   KONTUR CMS 0.9.0.32 – Ansprechpartner: Bildschalter + globale Rundungen\n   ================================================================ */\n.cms-contact-shell{\n  border-radius:var(--cms-block-radius,24px) !important;\n}\n.card.person{\n  border-radius:var(--cms-card-radius,24px) !important;\n}\n.card.person .person-photo{\n  border-radius:var(--cms-media-radius,24px) !important;\n}\n.prokurist-badge,\n.prokurist-photo-badge,\n.card.person .role,\n.cms-plz-card .role{\n  border-radius:var(--cms-badge-radius,999px) !important;\n}\n.card.person .person-meta-item,\n.cms-plz-card .person-meta-item{\n  border-radius:var(--cms-card-radius,24px) !important;\n}\n.cms-plz-card{\n  border-radius:var(--cms-card-radius,24px) !important;\n}\n.cms-plz-card img{\n  border-radius:var(--cms-media-radius,24px) !important;\n}\n\n/* Ohne Profilbild: klare, hohe Visitenkarten statt Platzhaltergrafik. */\n.card.person.person-no-photo{\n  position:relative;\n  min-height:460px;\n  aspect-ratio:3 / 4;\n  padding:clamp(24px,2.5vw,34px) !important;\n  overflow:hidden;\n  background:\n    linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(244,249,255,.98) 100%) !important;\n}\n.card.person.person-no-photo::before{\n  content:'';\n  position:absolute;\n  inset:0 auto 0 0;\n  width:4px;\n  background:linear-gradient(180deg,#0b63b6 0%,#0a3f78 100%);\n}\n.card.person.person-no-photo .person-content{\n  min-height:100%;\n  height:100%;\n  gap:14px;\n}\n.card.person.person-no-photo .person-role-line{\n  min-height:0;\n  align-items:flex-start;\n}\n.card.person.person-no-photo h3{\n  font-size:clamp(28px,2.25vw,38px) !important;\n  line-height:1.02;\n  margin-top:4px !important;\n}\n.card.person.person-no-photo .person-meta{\n  margin-top:18px;\n}\n.card.person.person-no-photo .person-actions{\n  margin-top:auto;\n  padding-top:18px;\n}\n\n@media(max-width:1180px){\n  .card.person.person-no-photo{aspect-ratio:auto;min-height:430px;}\n}\n@media(max-width:760px){\n  .card.person.person-no-photo{min-height:0;aspect-ratio:auto;}\n}\n