
:root{
  --ose-blue:#07579d;
  --ose-blue-dark:#063d74;
  --ose-blue-soft:#eaf3fb;
  --ose-orange:#f58200;
  --ose-orange-dark:#d96800;
  --text:#1d2a38;
  --muted:#5e6b78;
  --line:#dfe7ee;
  --bg:#ffffff;
  --bg-soft:#f6f9fc;
  --shadow:0 18px 50px rgba(22,57,91,.10);
  --radius:18px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav{
  min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px
}
.brand{display:flex;align-items:center;gap:15px;min-width:260px}
.brand img{width:115px;height:auto}
.brand-text strong{display:block;font-size:1.08rem;color:var(--ose-blue-dark)}
.brand-text span{display:block;color:var(--muted);font-size:.82rem}
.menu{display:flex;align-items:center;gap:28px;font-size:.95rem;font-weight:650}
.menu a{padding:29px 0 26px;border-bottom:3px solid transparent}
.menu a:hover,.menu a.active{color:var(--ose-blue);border-bottom-color:var(--ose-orange)}
.menu-toggle{display:none;border:0;background:none;font-size:1.6rem;color:var(--ose-blue)}
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 82% 20%,rgba(7,87,157,.13),transparent 30%),
    linear-gradient(135deg,#fff 0%,#f7fbff 58%,#edf6ff 100%);
  border-bottom:1px solid var(--line);
}
.hero:after{
  content:"";position:absolute;right:-110px;bottom:-150px;width:520px;height:520px;
  border:2px solid rgba(245,130,0,.12);border-radius:50%;
}
.hero-grid{
  min-height:620px;display:grid;grid-template-columns:1.02fr .98fr;
  align-items:center;gap:54px;padding:72px 0 58px;position:relative;z-index:1
}
.eyebrow{
  color:var(--ose-orange);font-weight:800;text-transform:uppercase;
  letter-spacing:.08em;font-size:.82rem;margin-bottom:12px
}
h1,h2,h3{line-height:1.12;margin:0}
h1{font-size:clamp(2.6rem,5vw,5rem);color:var(--ose-blue-dark);letter-spacing:-.035em}
.hero p.lead{font-size:1.18rem;color:var(--muted);max-width:680px;margin:24px 0 28px}
.actions{display:flex;flex-wrap:wrap;gap:14px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:14px 20px;border-radius:9px;border:2px solid transparent;
  font-weight:750;transition:.2s ease
}
.btn-primary{background:var(--ose-orange);color:#fff}
.btn-primary:hover{background:var(--ose-orange-dark);transform:translateY(-1px)}
.btn-secondary{border-color:var(--ose-blue);color:var(--ose-blue);background:#fff}
.btn-secondary:hover{background:var(--ose-blue-soft)}
.hero-visual{
  position:relative;min-height:430px;display:flex;align-items:center;justify-content:center
}
.screen{
  width:min(610px,100%);background:#101820;border-radius:16px;padding:12px;
  box-shadow:0 30px 80px rgba(11,49,84,.24);transform:perspective(900px) rotateY(-4deg)
}
.screen-inner{
  background:#edf2f6;border-radius:8px;overflow:hidden;min-height:340px;
  display:grid;grid-template-columns:145px 1fr
}
.sidebar{background:#e7edf2;padding:18px 12px;border-right:1px solid #cfd9e2}
.sidebar .dot{height:10px;width:10px;border-radius:50%;display:inline-block;margin-right:5px}
.sidebar .bar{height:9px;border-radius:6px;background:#c8d3dd;margin:15px 0}
.sidebar .bar:nth-child(3){width:70%}
.sidebar .bar:nth-child(4){width:86%}
.app{padding:22px;background:#fff}
.app-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}
.app-title{height:14px;width:140px;border-radius:8px;background:#b8c7d4}
.app-chip{height:26px;width:90px;border-radius:6px;background:#e6f0f8}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kpi{height:74px;border:1px solid #d9e2e9;border-radius:9px;background:#fafcfd}
.chart{
  height:150px;margin-top:16px;border:1px solid #d9e2e9;border-radius:9px;
  background:
    linear-gradient(to top, transparent 95%, #e9eef2 95%),
    linear-gradient(to right, transparent 95%, #eef2f5 95%);
  background-size:100% 30px,55px 100%;
  position:relative
}
.chart:after{
  content:"";position:absolute;left:9%;right:7%;bottom:24%;height:48%;
  clip-path:polygon(0 78%,12% 62%,24% 69%,37% 38%,51% 50%,64% 23%,78% 36%,100% 2%,100% 12%,78% 49%,64% 37%,51% 63%,37% 50%,24% 81%,12% 74%,0 91%);
  background:linear-gradient(90deg,var(--ose-blue),var(--ose-orange));
  opacity:.9
}
.logo-badge{
  position:absolute;right:-4px;bottom:8px;background:white;border-radius:16px;padding:12px 16px;
  box-shadow:var(--shadow);border:1px solid var(--line);width:150px
}
.logo-badge img{width:100%}
.section{padding:88px 0}
.section.soft{background:var(--bg-soft)}
.section-head{max-width:780px;margin-bottom:38px}
.section-head h2{font-size:clamp(2rem,3.5vw,3.3rem);color:var(--ose-blue-dark);letter-spacing:-.025em}
.section-head p{color:var(--muted);font-size:1.05rem;margin:16px 0 0}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{
  background:#fff;border:1px solid var(--line);border-radius:var(--radius);
  padding:28px;box-shadow:0 8px 25px rgba(22,57,91,.05);
  transition:.2s ease;min-height:260px
}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#c8d7e4}
.icon{
  width:58px;height:58px;border-radius:16px;background:var(--ose-blue-soft);
  display:grid;place-items:center;font-size:1.6rem;color:var(--ose-blue);margin-bottom:22px
}
.card h3{font-size:1.22rem;color:var(--ose-blue-dark);margin-bottom:12px}
.card p{color:var(--muted);margin:0 0 16px}
.card .link{color:var(--ose-orange);font-weight:800}
.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}
.split h2{font-size:clamp(2rem,3.6vw,3.4rem);color:var(--ose-blue-dark)}
.split p{color:var(--muted);font-size:1.04rem}
.panel{
  background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow)
}
.process{
  display:grid;grid-template-columns:repeat(2,1fr);gap:12px
}
.process div{
  border:1px solid var(--line);border-radius:12px;padding:18px;background:#fbfdff
}
.process strong{display:block;color:var(--ose-blue-dark);margin-bottom:5px}
.benefits{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.benefit{background:#fff;padding:28px 20px;text-align:center}
.benefit b{display:block;color:var(--ose-blue-dark);margin:8px 0}
.benefit span{color:var(--muted);font-size:.93rem}
.cta{background:linear-gradient(135deg,var(--ose-blue-dark),var(--ose-blue));color:#fff}
.cta-grid{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:46px 0}
.cta h2{font-size:clamp(1.8rem,3vw,2.7rem)}
.cta p{margin:8px 0 0;color:#dfefff}
.page-hero{background:linear-gradient(135deg,#f9fcff,#edf6ff);padding:82px 0;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(2.5rem,4.5vw,4.4rem)}
.page-hero p{font-size:1.12rem;color:var(--muted);max-width:780px}
.content-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}
.prose h2{color:var(--ose-blue-dark);font-size:2rem;margin:0 0 18px}
.prose h3{color:var(--ose-blue-dark);margin-top:32px}
.prose p,.prose li{color:var(--muted)}
.prose ul{padding-left:22px}
.feature-list{display:grid;gap:12px}
.feature{
  display:flex;gap:14px;padding:16px;border:1px solid var(--line);
  border-radius:12px;background:#fff
}
.feature-mark{color:var(--ose-orange);font-weight:900}
.form{
  display:grid;gap:14px
}
.form label{font-weight:700;color:var(--ose-blue-dark)}
.form input,.form textarea{
  width:100%;padding:13px 14px;border:1px solid #cfdbe5;border-radius:9px;
  font:inherit;background:#fff
}
.form textarea{min-height:150px;resize:vertical}
.note{font-size:.88rem;color:var(--muted)}
footer{background:#082f56;color:#dce9f4}
.footer-grid{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:36px;padding:52px 0}
.footer-logo{display:flex;align-items:center;gap:14px}
.footer-logo img{width:95px;background:#fff;border-radius:10px;padding:6px}
.footer-logo strong{font-size:1.2rem;color:#fff}
footer h4{color:#fff;margin:0 0 14px}
footer a{display:block;color:#dce9f4;margin:7px 0;font-size:.92rem}
footer a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding:18px 0;color:#b8cce0;font-size:.86rem}
.notice{
  padding:12px 16px;background:#fff8ed;border:1px solid #ffd59e;border-radius:10px;color:#7a4a12
}
@media (max-width:980px){
  .menu{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;border-bottom:1px solid var(--line);padding:15px 24px;flex-direction:column;gap:0;align-items:stretch}
  .menu.open{display:flex}
  .menu a{padding:13px 0;border-bottom:1px solid var(--line)}
  .menu-toggle{display:block}
  .hero-grid,.split,.content-grid{grid-template-columns:1fr}
  .hero-grid{padding-top:46px}
  .hero-visual{min-height:360px}
  .cards{grid-template-columns:repeat(2,1fr)}
  .benefits{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .container{width:min(var(--max),calc(100% - 28px))}
  .nav{min-height:72px}
  .brand{min-width:0}
  .brand img{width:88px}
  .brand-text span{display:none}
  .menu{top:72px}
  h1{font-size:2.55rem}
  .hero-grid{min-height:auto;padding:42px 0}
  .hero-visual{min-height:280px}
  .screen-inner{grid-template-columns:90px 1fr;min-height:250px}
  .cards,.process,.benefits,.footer-grid{grid-template-columns:1fr}
  .section{padding:64px 0}
  .cta-grid{align-items:flex-start;flex-direction:column}
  .logo-badge{width:105px}
}

/* Rechtliche Inhalte */
.legal-content{max-width:980px}.legal-content h1{font-size:2.2rem;color:var(--ose-blue-dark);margin:38px 0 18px}.legal-content h2{font-size:1.65rem;margin:34px 0 14px}.legal-content h3{font-size:1.3rem;color:var(--ose-blue-dark);margin:28px 0 12px}.legal-content p{margin:0 0 16px}.legal-content pre{white-space:pre-wrap;font:inherit;background:#f8fafc;border-left:4px solid var(--ose-orange);padding:14px 18px;border-radius:8px}.legal-content table{width:100%;border-collapse:collapse;margin:18px 0}.legal-content td,.legal-content th{vertical-align:top;padding:10px;border-bottom:1px solid var(--line)}.legal-content a{color:var(--ose-blue);text-decoration:underline}.legal-content blockquote{margin:18px 0;padding:12px 18px;border-left:4px solid var(--ose-orange);background:#fff8ed}


/* ==========================================================
   O.S.E. V4 – 39 Jahre (1987–2026)
   Das bestehende O.S.E.-Logo bleibt unverändert erhalten.
   ========================================================== */
.anniversary-logo{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex:0 0 auto;
  margin-left:12px;
}
.anniversary-logo img{
  display:block;
  width:165px;
  height:auto;
  object-fit:contain;
}
.footer-anniversary{
  margin-top:18px;
  max-width:180px;
  padding:7px 9px;
  background:#fff;
  border-radius:10px;
}
.footer-anniversary img{
  width:100%;
  height:auto;
}
@media (max-width:1180px){
  .menu{gap:18px;font-size:.90rem}
  .anniversary-logo img{width:135px}
  .brand{min-width:220px}
  .brand img{width:100px}
}
@media (max-width:980px){
  .anniversary-logo{
    margin-left:auto;
    margin-right:8px;
  }
  .anniversary-logo img{width:120px}
}
@media (max-width:640px){
  .anniversary-logo img{width:92px}
  .brand-text{display:none}
  .footer-anniversary{max-width:145px}
}


/* ===== V5: eEvolution Modulübersicht ===== */
.erp-intro{
  max-width:900px;
  font-size:1.08rem;
  color:var(--muted);
}
.erp-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:28px 0 0;
}
.erp-nav a{
  display:inline-flex;
  padding:9px 13px;
  border:1px solid var(--line);
  border-radius:999px;
  background:#fff;
  color:var(--ose-blue-dark);
  font-weight:700;
  font-size:.9rem;
}
.erp-nav a:hover{border-color:var(--ose-orange);color:var(--ose-orange)}
.module-area-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.module-area{
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  padding:28px;
  box-shadow:0 10px 28px rgba(22,57,91,.06);
  scroll-margin-top:110px;
}
.module-area-head{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:18px;
}
.module-area-icon{
  width:72px;
  height:72px;
  flex:0 0 72px;
}
.module-area h3{
  font-size:1.5rem;
  color:var(--ose-blue-dark);
}
.module-area .area-sub{
  margin:4px 0 0;
  color:var(--ose-orange);
  font-weight:800;
  font-size:.86rem;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.module-area > p{color:var(--muted)}
.module-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px 12px;
  margin:20px 0 0;
  padding:0;
  list-style:none;
}
.module-list li{
  position:relative;
  padding:10px 12px 10px 31px;
  border-radius:10px;
  background:var(--bg-soft);
  color:#33465a;
  font-size:.94rem;
  border:1px solid #e8eef3;
}
.module-list li:before{
  content:"";
  position:absolute;
  left:12px; top:16px;
  width:8px; height:8px;
  border-radius:50%;
  background:var(--ose-orange);
}
.module-basics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin-top:28px;
}
.module-basic{
  padding:20px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
}
.module-basic strong{
  display:block;
  color:var(--ose-blue-dark);
  margin-bottom:6px;
}
.module-basic span{color:var(--muted);font-size:.92rem}
.erp-highlight{
  border-left:5px solid var(--ose-orange);
  padding:22px 24px;
  border-radius:0 14px 14px 0;
  background:#fff8ef;
  color:#4a5360;
  margin-top:34px;
}
.source-note{
  margin-top:26px;
  color:var(--muted);
  font-size:.84rem;
}
@media(max-width:980px){
  .module-area-grid{grid-template-columns:1fr}
  .module-basics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .module-list,.module-basics{grid-template-columns:1fr}
  .module-area{padding:21px}
  .module-area-icon{width:58px;height:58px;flex-basis:58px}
}


/* ===== V8: Kontaktmöglichkeiten & PHP-Formular ===== */
.contact-options{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin:30px 0 42px;
}
.contact-option{
  display:flex;
  align-items:flex-start;
  gap:16px;
  padding:22px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:0 8px 24px rgba(22,57,91,.05);
  transition:.2s ease;
}
.contact-option:hover{
  transform:translateY(-3px);
  border-color:#c8d7e4;
  box-shadow:var(--shadow);
}
.contact-option .contact-icon{
  width:52px;height:52px;flex:0 0 52px;
  border-radius:14px;background:var(--ose-blue-soft);
  display:grid;place-items:center;
  color:var(--ose-blue);font-size:1.35rem;font-weight:800;
}
.contact-option strong{display:block;color:var(--ose-blue-dark);font-size:1.05rem}
.contact-option span{display:block;color:var(--muted);margin-top:3px}
.contact-option .contact-link{color:var(--ose-orange);font-weight:800;margin-top:8px}
.form select{
  width:100%;
  padding:13px 14px;
  border:1px solid #cfdbe5;
  border-radius:9px;
  font:inherit;
  background:#fff;
}
.form .form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.form-consent{
  display:flex;
  align-items:flex-start;
  gap:10px;
  font-size:.9rem;
  color:var(--muted);
}
.form-consent input{
  width:auto;
  margin-top:4px;
}
.honeypot{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
.form-message{
  padding:14px 16px;
  border-radius:10px;
  margin-bottom:18px;
  display:none;
}
.form-message.success{
  display:block;
  background:#effaf2;
  border:1px solid #b9e2c2;
  color:#245b30;
}
.form-message.error{
  display:block;
  background:#fff3f2;
  border:1px solid #efc3bf;
  color:#7a2924;
}
@media(max-width:900px){
  .contact-options{grid-template-columns:1fr}
}
@media(max-width:640px){
  .form .form-row{grid-template-columns:1fr}
}

/* V8.1 TeamViewer Support */
@media(max-width:1100px) and (min-width:901px){
  .contact-options{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* ===== V9: eEvolution Geschäftsprozesse ===== */
.process-map{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin-top:30px;
}
.process-domain{
  border-radius:18px;
  padding:22px;
  border:1px solid var(--line);
  background:#fff;
  min-height:240px;
}
.process-domain h3{color:var(--ose-blue-dark);margin-bottom:8px}
.process-domain p{color:var(--muted);font-size:.92rem}
.process-domain ul{list-style:none;padding:0;margin:16px 0 0}
.process-domain li{
  padding:7px 0 7px 17px;
  position:relative;
  border-bottom:1px solid #edf1f4;
  font-size:.9rem;
}
.process-domain li:before{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:var(--ose-orange);
  position:absolute;left:0;top:13px;
}
.domain-market{background:#f0fbf2}
.domain-sales{background:#f3fbf5}
.domain-company{background:#f7f8fa}
.domain-finance{background:#fbf3fb}
.domain-purchase{background:#fffceb}
.domain-production{background:#fff1f1}
.domain-logistics{background:#fff7ea}
.process-flow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:26px 0;
}
.process-flow span{
  padding:11px 14px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:999px;
  color:var(--ose-blue-dark);
  font-weight:800;
}
.process-flow b{color:var(--ose-orange);font-size:1.25rem}
.partner-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.partner-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:20px;
}
.partner-card strong{display:block;color:var(--ose-blue-dark);margin-bottom:6px}
.partner-card span{color:var(--muted);font-size:.9rem}
@media(max-width:1100px){.process-map{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .process-map,.partner-grid{grid-template-columns:1fr}
  .process-domain{min-height:0}
}


/* ===== V9.1: PDF-Gesamtansicht Geschäftsprozesse ===== */
.process-pdf-card{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);
  gap:34px;
  align-items:center;
  padding:34px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow);
}
.pdf-preview{
  min-height:220px;
  border-radius:18px;
  background:linear-gradient(145deg,var(--ose-blue-dark),var(--ose-blue));
  color:#fff;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:28px;
  transition:.2s ease;
}
.pdf-preview:hover{transform:translateY(-4px)}
.pdf-preview-icon{
  width:72px;height:72px;
  border-radius:16px;
  display:grid;place-items:center;
  background:#fff;
  color:var(--ose-orange);
  font-size:1.25rem;
  font-weight:900;
  margin-bottom:16px;
}
.pdf-preview strong{font-size:1.15rem}
.pdf-preview span{margin-top:6px;opacity:.8;font-size:.9rem}
@media(max-width:800px){
  .process-pdf-card{grid-template-columns:1fr;padding:24px}
}


/* ===== V9.2: Wisej.NET Architekturgrafik ===== */
.wisej-architecture-figure{
  margin:32px 0;
  padding:20px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow);
}
.wisej-architecture-figure a{
  display:block;
  border-radius:12px;
  overflow:hidden;
  background:#fff;
}
.wisej-architecture-figure img{
  width:100%;
  height:auto;
  display:block;
}
.wisej-architecture-figure figcaption{
  margin-top:14px;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.55;
  text-align:center;
}


/* ===== V9.3: eEvolution als Prozess-Stellwerk ===== */
.stellwerk-section{background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)}
.stellwerk-head{max-width:900px;margin-left:auto;margin-right:auto;text-align:center}
.stellwerk-head .lead{font-size:1.16rem;line-height:1.75}
.stellwerk-copy{
  max-width:1040px;
  margin:0 auto 28px;
  font-size:1.02rem;
  line-height:1.78;
  color:var(--text);
}
.stellwerk-copy p+p{margin-top:16px}
.stellwerk-figure{
  margin:32px auto;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
  box-shadow:var(--shadow);
}
.stellwerk-figure a{display:block;overflow:hidden;border-radius:12px}
.stellwerk-figure img{display:block;width:100%;height:auto}
.stellwerk-figure figcaption{
  max-width:900px;
  margin:14px auto 0;
  text-align:center;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.55;
}
.stellwerk-benefits{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin:28px 0;
}
.stellwerk-benefits div{
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
}
.stellwerk-benefits strong{
  display:block;
  color:var(--ose-blue-dark);
  margin-bottom:7px;
}
.stellwerk-benefits span{
  color:var(--muted);
  font-size:.92rem;
  line-height:1.55;
}
.stellwerk-claim{max-width:1050px;margin:28px auto 0}
@media(max-width:900px){
  .stellwerk-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .stellwerk-benefits{grid-template-columns:1fr}
  .stellwerk-figure{padding:9px}
}

/* 39 Jahre O.S.E. */
.anniversary-card{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,2fr);gap:46px;padding:42px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#fff 0%,#fff8ef 100%);box-shadow:var(--shadow)}
.anniversary-number{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid var(--line)}
.anniversary-years{font-size:clamp(92px,12vw,170px);line-height:.8;font-weight:800;letter-spacing:-.08em;color:var(--orange)}
.anniversary-label{margin-top:18px;font-size:34px;font-weight:800;color:var(--blue)}.anniversary-dates{margin-top:8px;font-size:20px;font-weight:700;color:var(--orange)}
.anniversary-copy .lead{font-size:1.2rem}.anniversary-quote{margin:28px 0;padding:22px 26px;border-left:5px solid var(--orange);border-radius:0 14px 14px 0;background:#fff;color:var(--blue);font-size:1.18rem;line-height:1.55}
.anniversary-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:28px 0}.anniversary-points>div{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}.anniversary-points strong,.anniversary-points span{display:block}.anniversary-points strong{color:var(--blue);margin-bottom:6px}.anniversary-closing{color:var(--blue)}
@media(max-width:850px){.anniversary-card{grid-template-columns:1fr;padding:26px}.anniversary-number{padding-bottom:28px;border-right:0;border-bottom:1px solid var(--line)}.anniversary-points{grid-template-columns:1fr}}


/* ===== Prozessbeschreibung nach Farbgebung des O.S.E.-Prozessmodells ===== */
.process-topic-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:30px;
}
.process-topic{
  --topic:#07579d;
  --topic-bg:#f6f9fc;
  position:relative;
  overflow:hidden;
  padding:28px;
  border-radius:18px;
  border:1px solid color-mix(in srgb,var(--topic) 28%,#dfe7ee);
  border-top:7px solid var(--topic);
  background:var(--topic-bg);
  box-shadow:0 8px 24px rgba(22,57,91,.05);
}
.process-topic h3{color:#20364d;font-size:1.38rem;margin:4px 0 14px}
.process-topic p{color:#4f5f6e;margin:0 0 13px}
.process-topic-kicker{
  color:var(--topic);
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:900;
  font-size:.82rem;
}
.process-topic-link{
  margin-top:18px;
  padding:13px 15px;
  border-radius:10px;
  background:rgba(255,255,255,.76);
  color:#34495d;
  font-size:.92rem;
}
.process-topic-sales{--topic:#69b84a;--topic-bg:#f1faee}
.process-topic-production{--topic:#e94a3b;--topic-bg:#fff0ef}
.process-topic-purchase{--topic:#e8c900;--topic-bg:#fffbea}
.process-topic-logistics{--topic:#e9a04a;--topic-bg:#fff5e8}
.process-topic-tech{--topic:#64a8cf;--topic-bg:#eef7fc}
.process-topic-finance{--topic:#7bbd3e;--topic-bg:#f1f9e9}
.process-topic-hr{--topic:#cb55c5;--topic-bg:#fbf0fb}
.process-topic-web{--topic:#26bcd2;--topic-bg:#ebfafc}

.business-chain{
  display:flex;
  align-items:stretch;
  gap:8px;
  margin-top:30px;
  overflow-x:auto;
  padding:8px 2px 18px;
}
.chain-step{
  --chain:#07579d;
  flex:1 0 145px;
  min-width:145px;
  padding:18px 14px;
  border-radius:14px;
  background:#fff;
  border-top:5px solid var(--chain);
  border-left:1px solid var(--line);
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  text-align:center;
}
.chain-step span{
  display:grid;
  place-items:center;
  width:30px;height:30px;
  margin:0 auto 10px;
  border-radius:50%;
  color:#fff;background:var(--chain);
  font-weight:900;
}
.chain-step strong{display:block;color:#233b53}
.chain-step small{display:block;margin-top:6px;color:var(--muted);line-height:1.35}
.chain-arrow{display:flex;align-items:center;color:var(--ose-orange);font-size:1.4rem;font-weight:900}
.chain-sales{--chain:#69b84a}
.chain-purchase{--chain:#e8c900}
.chain-production{--chain:#e94a3b}
.chain-logistics{--chain:#e9a04a}
.chain-finance{--chain:#7bbd3e}
.process-stellwerk-text{margin-top:26px}
@media(max-width:850px){
  .process-topic-grid{grid-template-columns:1fr}
}


/* ===== Prozesskacheln: Hintergrundfarben entsprechend Prozessgrafik ===== */
.process-topic{
  color:#17324d;
}
.process-topic h3,
.process-topic p,
.process-topic .process-topic-link{
  color:inherit;
}

/* Vertrieb – Grün */
.process-topic-sales{
  --topic:#69b84a;
  --topic-bg:#dff1d6;
  background:#dff1d6;
}

/* Produktion – Rot */
.process-topic-production{
  --topic:#e94a3b;
  --topic-bg:#f8d8d5;
  background:#f8d8d5;
}

/* Einkauf – Gelb */
.process-topic-purchase{
  --topic:#e8c900;
  --topic-bg:#fff3a8;
  background:#fff3a8;
}

/* Logistik – Orange */
.process-topic-logistics{
  --topic:#e9a04a;
  --topic-bg:#f9dfbd;
  background:#f9dfbd;
}

/* Entwicklung & Qualität – Blau */
.process-topic-tech{
  --topic:#64a8cf;
  --topic-bg:#d7ebf6;
  background:#d7ebf6;
}

/* Rechnungswesen – Grün */
.process-topic-finance{
  --topic:#7bbd3e;
  --topic-bg:#e0f0cf;
  background:#e0f0cf;
}

/* Personalwesen – Violett */
.process-topic-hr{
  --topic:#cb55c5;
  --topic-bg:#f0d5ef;
  background:#f0d5ef;
}

/* Web & E-Commerce – Türkis */
.process-topic-web{
  --topic:#26bcd2;
  --topic-bg:#d1f0f4;
  background:#d1f0f4;
}

.process-topic-link{
  background:rgba(255,255,255,.58);
  border:1px solid rgba(255,255,255,.75);
}


/* ===== FINAL FIX: Prozesskacheln sichtbar und mit festen PDF-Farben ===== */
.process-explained .process-topic-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:22px !important;
  margin-top:30px !important;
}
.process-explained .process-topic{
  display:block !important;
  padding:28px !important;
  border-radius:18px !important;
  border:1px solid rgba(0,0,0,.08) !important;
  box-shadow:0 8px 24px rgba(22,57,91,.08) !important;
  color:#18324a !important;
  overflow:hidden !important;
}
.process-explained .process-topic h3{
  margin:4px 0 14px !important;
  color:#18324a !important;
  font-size:1.38rem !important;
}
.process-explained .process-topic p{
  margin:0 0 13px !important;
  color:#33495d !important;
}
.process-explained .process-topic-kicker{
  text-transform:uppercase !important;
  letter-spacing:.07em !important;
  font-weight:900 !important;
  font-size:.82rem !important;
}
.process-explained .process-topic-link{
  margin-top:18px !important;
  padding:13px 15px !important;
  border-radius:10px !important;
  background:rgba(255,255,255,.62) !important;
  border:1px solid rgba(255,255,255,.82) !important;
}

/* Farben nach Prozessmodell */
.process-explained .process-topic-sales{
  background:#DFF0D4 !important;
  border-top:7px solid #67B346 !important;
}
.process-explained .process-topic-sales .process-topic-kicker{color:#4B8F31 !important;}

.process-explained .process-topic-production{
  background:#F7D3D0 !important;
  border-top:7px solid #E94B3C !important;
}
.process-explained .process-topic-production .process-topic-kicker{color:#C7392D !important;}

.process-explained .process-topic-purchase{
  background:#FFF1A6 !important;
  border-top:7px solid #E5C900 !important;
}
.process-explained .process-topic-purchase .process-topic-kicker{color:#9A8700 !important;}

.process-explained .process-topic-logistics{
  background:#F8DFBF !important;
  border-top:7px solid #E79A43 !important;
}
.process-explained .process-topic-logistics .process-topic-kicker{color:#B56B17 !important;}

.process-explained .process-topic-tech{
  background:#D8EBF5 !important;
  border-top:7px solid #64A8CF !important;
}
.process-explained .process-topic-tech .process-topic-kicker{color:#367DA7 !important;}

.process-explained .process-topic-finance{
  background:#E1F0D0 !important;
  border-top:7px solid #78B93C !important;
}
.process-explained .process-topic-finance .process-topic-kicker{color:#548B25 !important;}

.process-explained .process-topic-hr{
  background:#EFD3EE !important;
  border-top:7px solid #C653C0 !important;
}
.process-explained .process-topic-hr .process-topic-kicker{color:#9E3598 !important;}

.process-explained .process-topic-web{
  background:#D2F0F4 !important;
  border-top:7px solid #28B9CD !important;
}
.process-explained .process-topic-web .process-topic-kicker{color:#15899A !important;}

@media(max-width:850px){
  .process-explained .process-topic-grid{
    grid-template-columns:1fr !important;
  }
}


/* ===== Prozesskette: optimierte Darstellung ===== */
.business-chain-flow{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px 34px !important;
  overflow:visible !important;
  padding:10px 0 20px !important;
  align-items:stretch !important;
}
.business-chain-flow .chain-step{
  position:relative;
  display:flex !important;
  align-items:center !important;
  gap:15px !important;
  min-width:0 !important;
  padding:20px !important;
  text-align:left !important;
  border-radius:16px !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-left:6px solid var(--chain) !important;
  border-top:1px solid rgba(0,0,0,.08) !important;
  background:#fff !important;
  box-shadow:0 7px 18px rgba(22,57,91,.07) !important;
}
.business-chain-flow .chain-number{
  flex:0 0 42px !important;
  width:42px !important;
  height:42px !important;
  margin:0 !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  background:var(--chain) !important;
  color:#fff !important;
  font-size:1.05rem !important;
  font-weight:900 !important;
}
.business-chain-flow .chain-content strong{
  display:block !important;
  color:#183c68 !important;
  font-size:1.03rem !important;
  margin-bottom:4px !important;
}
.business-chain-flow .chain-content small{
  display:block !important;
  color:#5b6875 !important;
  font-size:.86rem !important;
  line-height:1.35 !important;
}
.business-chain-flow .chain-arrow{
  display:none !important;
}
.business-chain-flow .chain-sales{--chain:#69b84a;background:#f4faef !important;}
.business-chain-flow .chain-purchase{--chain:#e5c900;background:#fffbea !important;}
.business-chain-flow .chain-production{--chain:#e94a3b;background:#fff3f1 !important;}
.business-chain-flow .chain-logistics{--chain:#e79a43;background:#fff7ed !important;}
.business-chain-flow .chain-finance{--chain:#78b93c;background:#f4faee !important;}

/* Verbindungspfeile zwischen den Kacheln */
.business-chain-flow .chain-step:not(:nth-of-type(15))::after{
  content:"→";
  position:absolute;
  right:-27px;
  top:50%;
  transform:translateY(-50%);
  color:#f18700;
  font-size:1.45rem;
  font-weight:900;
}
@media(max-width:1100px){
  .business-chain-flow{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .business-chain-flow .chain-step::after{display:none !important;}
}
@media(max-width:650px){
  .business-chain-flow{grid-template-columns:1fr !important;gap:14px !important;}
}

/* ===== Hauptmenü: Service als Untermenü von eEvolution ===== */
.menu-dropdown{position:relative;display:inline-flex;align-items:center}
.menu-dropdown>a{display:inline-flex;align-items:center;gap:5px}
.menu-caret{font-size:.72em;line-height:1}
.menu-dropdown-content{
  display:none;
  position:absolute;
  z-index:1000;
  top:100%;
  left:0;
  min-width:180px;
  padding:8px;
  background:#fff;
  border:1px solid #dce5ed;
  border-radius:10px;
  box-shadow:0 12px 28px rgba(20,55,88,.16);
}
.menu-dropdown-content a{
  display:block !important;
  padding:10px 12px !important;
  white-space:nowrap;
  border-radius:7px;
}
.menu-dropdown-content a:hover{background:#f3f7fa}
.menu-dropdown:hover .menu-dropdown-content,
.menu-dropdown:focus-within .menu-dropdown-content{display:block}
@media(max-width:900px){
  .menu-dropdown{display:block}
  .menu-dropdown-content{
    position:static;
    display:block;
    box-shadow:none;
    border:0;
    padding:0 0 0 16px;
    background:transparent;
  }
}


/* ===== Responsive Fix: 39-Jahre-Logo im Header vollständig sichtbar ===== */
.topbar{
  overflow:visible !important;
}
.nav{
  width:min(var(--max),calc(100% - 28px)) !important;
  max-width:100% !important;
  overflow:visible !important;
}
.anniversary-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  min-width:0 !important;
  margin-left:8px !important;
  overflow:visible !important;
}
.anniversary-logo img{
  display:block !important;
  width:150px !important;
  max-width:150px !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:center !important;
}

/* Etwas kompakter auf mittleren Desktop-/Tabletbreiten */
@media (max-width:1180px){
  .nav{
    gap:14px !important;
  }
  .menu{
    gap:15px !important;
    font-size:.88rem !important;
  }
  .brand{
    min-width:190px !important;
  }
  .brand img{
    width:92px !important;
  }
  .anniversary-logo img{
    width:125px !important;
    max-width:125px !important;
  }
}

/* Tablet: Menü klappt wie vorgesehen zu; Jubiläumslogo bleibt vollständig sichtbar */
@media (max-width:980px){
  .nav{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    min-height:76px !important;
  }
  .brand{
    flex:1 1 auto !important;
    min-width:0 !important;
  }
  .anniversary-logo{
    order:2 !important;
    margin-left:auto !important;
    margin-right:6px !important;
  }
  .anniversary-logo img{
    width:112px !important;
    max-width:112px !important;
  }
  .menu-toggle{
    order:3 !important;
    flex:0 0 auto !important;
  }
  .menu{
    width:100% !important;
    max-width:100% !important;
  }
}

/* Kleine Tablets / große Smartphones */
@media (max-width:760px){
  .brand img{
    width:82px !important;
  }
  .brand-text strong{
    font-size:.98rem !important;
  }
  .anniversary-logo img{
    width:96px !important;
    max-width:96px !important;
  }
}

/* Smartphones: Logo weiterhin vollständig, aber kompakter */
@media (max-width:560px){
  .nav{
    width:calc(100% - 18px) !important;
    gap:7px !important;
  }
  .brand{
    max-width:calc(100% - 145px) !important;
  }
  .brand-text{
    display:none !important;
  }
  .brand img{
    width:76px !important;
  }
  .anniversary-logo{
    margin-left:auto !important;
    margin-right:2px !important;
  }
  .anniversary-logo img{
    width:82px !important;
    max-width:82px !important;
  }
  .menu-toggle{
    width:38px !important;
    padding:4px !important;
  }
}


/* ===== eEvolution: Software-made-in-Germany-Siegel neben ERP-System ===== */
.made-in-germany-badge{
  display:inline-block !important;
  width:112px !important;
  max-width:112px !important;
  height:auto !important;
  margin-left:18px !important;
  vertical-align:middle !important;
  object-fit:contain !important;
  flex:0 0 auto !important;
}
h1:has(.made-in-germany-badge),
h2:has(.made-in-germany-badge),
h3:has(.made-in-germany-badge),
h4:has(.made-in-germany-badge),
.eyebrow:has(.made-in-germany-badge){
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
}
@media(max-width:700px){
  .made-in-germany-badge{
    width:88px !important;
    max-width:88px !important;
    margin-left:10px !important;
  }
}


/* ===== FIX Service-Menü: ausschließlich unter eEvolution ===== */
@media (min-width:901px){
  .menu-dropdown > .menu-dropdown-content{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  .menu-dropdown:hover > .menu-dropdown-content,
  .menu-dropdown:focus-within > .menu-dropdown-content{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
}


/* ===== FINAL FIX: Header bei wechselnder Breite wirklich zentrieren =====
   Der komplette sichtbare Header-Inhalt bleibt innerhalb einer symmetrisch
   zentrierten Fläche. Kein Element darf rechts aus dem Container herauslaufen. */
.topbar .nav{
  width:calc(100% - 40px) !important;
  max-width:1280px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:clamp(12px,1.4vw,24px) !important;
  overflow:visible !important;
}

.topbar .brand{
  flex:0 1 245px !important;
  min-width:205px !important;
}

.topbar .menu{
  flex:1 1 auto !important;
  min-width:0 !important;
  justify-content:center !important;
  gap:clamp(13px,1.55vw,26px) !important;
}

.topbar .menu > a,
.topbar .menu-dropdown > a{
  white-space:normal !important;
  text-align:center !important;
}

.topbar .anniversary-logo{
  flex:0 0 auto !important;
  margin-left:0 !important;
  margin-right:0 !important;
  justify-content:flex-end !important;
}
.topbar .anniversary-logo img{
  width:clamp(105px,9.2vw,145px) !important;
  max-width:145px !important;
  height:auto !important;
}

/* In der kritischen Zwischenbreite werden zuerst Textabstände,
   Firmenbeschreibung und Jubiläumslogo kompakter – nicht der Container verschoben. */
@media (max-width:1320px) and (min-width:981px){
  .topbar .nav{
    width:calc(100% - 32px) !important;
    gap:12px !important;
  }
  .topbar .brand{
    flex-basis:205px !important;
    min-width:185px !important;
    gap:10px !important;
  }
  .topbar .brand img{
    width:88px !important;
  }
  .topbar .brand-text span{
    font-size:.76rem !important;
  }
  .topbar .menu{
    gap:12px !important;
    font-size:.84rem !important;
  }
  .topbar .anniversary-logo img{
    width:108px !important;
    max-width:108px !important;
  }
}

/* Bei noch engerer Desktopbreite Firmen-Untertitel ausblenden.
   So bleiben linker und rechter Rand identisch. */
@media (max-width:1120px) and (min-width:981px){
  .topbar .brand{
    flex-basis:165px !important;
    min-width:155px !important;
  }
  .topbar .brand-text span{
    display:none !important;
  }
  .topbar .menu{
    gap:9px !important;
    font-size:.80rem !important;
  }
  .topbar .anniversary-logo img{
    width:96px !important;
    max-width:96px !important;
  }
}

/* Tablet/Mobil: ebenfalls exakt symmetrischer Außenabstand */
@media (max-width:980px){
  .topbar .nav{
    width:calc(100% - 28px) !important;
    max-width:none !important;
    margin-inline:auto !important;
  }
}

@media (max-width:560px){
  .topbar .nav{
    width:calc(100% - 18px) !important;
    margin-inline:auto !important;
  }
}


/* ===== Prozessfunktionen / Ein- und Ausgangsparameter aus Visio-Modellen ===== */
.process-io-legend{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:24px 0 30px;
}
.process-io-legend span{
  padding:13px 15px;
  border-radius:10px;
  background:#f6f8fa;
  border:1px solid var(--line);
  font-size:.88rem;
  line-height:1.45;
}
.process-io-legend b{color:var(--ose-blue-dark)}
.process-io-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.process-io-card{
  --io:#07579d;
  --io-bg:#f4f8fb;
  position:relative;
  padding:26px;
  border-radius:18px;
  background:var(--io-bg);
  border:1px solid rgba(0,0,0,.08);
  border-top:7px solid var(--io);
  box-shadow:0 8px 24px rgba(22,57,91,.06);
}
.process-io-title span{
  display:block;
  color:var(--io);
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:900;
  margin-bottom:4px;
}
.process-io-title h3{
  color:#183b61;
  margin:0 0 18px;
  font-size:1.32rem;
}
.process-io-block{
  margin-top:15px;
  padding-top:14px;
  border-top:1px solid rgba(30,58,84,.12);
}
.process-io-block h4{
  display:inline-flex;
  align-items:center;
  margin:0 0 8px;
  color:#233e59;
  font-size:.96rem;
}
.process-io-block.input h4:before,
.process-io-block.output h4:before{
  display:grid;
  place-items:center;
  width:22px;height:22px;
  margin-right:7px;
  border-radius:50%;
  font-weight:900;
  color:#fff;
  font-size:.78rem;
}
.process-io-block.input h4:before{content:"→";background:#497ca7}
.process-io-block.output h4:before{content:"←";background:var(--io)}
.process-io-block p{
  margin:0;
  color:#465b6e;
  line-height:1.6;
}
.process-io-block ul{
  margin:0;
  padding-left:19px;
  color:#465b6e;
}
.process-io-block li{margin:5px 0}
.process-io-links{
  margin-top:18px;
  padding:12px 14px;
  border-radius:10px;
  background:rgba(255,255,255,.64);
  border:1px solid rgba(255,255,255,.8);
  color:#395066;
  font-size:.9rem;
}
.io-sales{--io:#67b346;--io-bg:#e4f2dc}
.io-web{--io:#28b9cd;--io-bg:#daf2f5}
.io-purchase{--io:#d6b900;--io-bg:#fff3b8}
.io-tech{--io:#579dc7;--io-bg:#dcecf5}
.io-production{--io:#e24b3e;--io-bg:#f6dad7}
.io-logistics{--io:#e2913b;--io-bg:#f8e3c7}
.io-service{--io:#329cd0;--io-bg:#dbedf8}
.io-hr{--io:#bd52b8;--io-bg:#efd9ee}
.io-finance{--io:#72ad38;--io-bg:#e4f0d5}
.io-central{--io:#6d7c8b;--io-bg:#e8edf1}
@media(max-width:980px){
  .process-io-legend{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process-io-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .process-io-legend{grid-template-columns:1fr}
  .process-io-card{padding:20px}
}


/* ===== Papierlose Fertigung mit eEvolution ERP ===== */
.paperless-section .lead{max-width:980px}
.paperless-highlight{
  margin:24px 0 30px;
  padding:20px 22px;
  border-left:5px solid var(--ose-orange);
  border-radius:0 14px 14px 0;
  background:#fff7ec;
  color:#43566a;
  line-height:1.65;
}
.paperless-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
}
.paperless-card{
  position:relative;
  padding:28px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(22,57,91,.06);
}
.paperless-card h3{
  margin:5px 0 14px;
  color:var(--ose-blue-dark);
  font-size:1.32rem;
}
.paperless-card p{color:#526273;line-height:1.66}
.paperless-card ul{padding-left:20px;color:#526273}
.paperless-card li{margin:8px 0}
.paperless-icon{
  display:grid;
  place-items:center;
  width:44px;height:44px;
  border-radius:12px;
  background:var(--ose-blue-soft);
  color:var(--ose-blue);
  font-weight:900;
}
.paperless-benefit{
  background:linear-gradient(145deg,#fff,#f5fafc);
}
.paperless-steps{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.paperless-step{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
}
.paperless-step>span{
  flex:0 0 36px;
  width:36px;height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--ose-orange);
  color:#fff;
  font-weight:900;
}
.paperless-step strong{display:block;color:var(--ose-blue-dark)}
.paperless-step small{display:block;margin-top:5px;color:var(--muted);line-height:1.45}
.paperless-tech-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
}
.paperless-tech-grid>div{
  padding:20px;
  border-radius:14px;
  border:1px solid var(--line);
  background:#f8fafc;
}
.paperless-tech-grid strong{display:block;color:var(--ose-blue-dark);margin-bottom:7px}
.paperless-tech-grid span{color:var(--muted);font-size:.92rem;line-height:1.5}
.paperless-green-section{background:#f3f8ef}
.paperless-green-panel{border-top:5px solid #6eaf41}
@media(max-width:1050px){
  .paperless-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .paperless-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .paperless-grid,
  .paperless-tech-grid,
  .paperless-steps{grid-template-columns:1fr}
}


/* ===== Kundenbericht RFID / Tenwinkel ===== */
.customer-story-section{background:linear-gradient(180deg,#fff 0%,#f7fafc 100%)}
.customer-story-hero{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(240px,.55fr);
  gap:34px;
  align-items:center;
  padding:30px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow);
}
.story-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:14px;
}
.story-meta span{
  padding:7px 10px;
  border-radius:999px;
  background:#eef5fa;
  color:var(--ose-blue-dark);
  font-size:.82rem;
  font-weight:800;
}
.customer-story-copy h3,
.story-process-copy h3,
.story-publication h3{color:var(--ose-blue-dark);font-size:1.65rem}
.story-cover{margin:0;text-align:center}
.story-cover img{
  width:100%;
  max-width:285px;
  height:auto;
  border-radius:12px;
  box-shadow:0 12px 28px rgba(18,52,83,.14);
}
.story-cover figcaption,
.story-process-image figcaption{
  margin-top:10px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.4;
}
.customer-story-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  margin:28px 0;
}
.story-card{
  padding:24px;
  border-radius:16px;
  border:1px solid var(--line);
  background:#fff;
}
.story-number{
  display:grid;
  place-items:center;
  width:42px;height:42px;
  border-radius:12px;
  background:var(--ose-orange);
  color:#fff;
  font-weight:900;
  margin-bottom:12px;
}
.story-card h3{color:var(--ose-blue-dark);margin:0 0 10px}
.story-card p{color:#526273;line-height:1.62}
.story-process-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,1fr);
  gap:28px;
  align-items:center;
  margin:34px 0;
  padding:30px;
  border-radius:20px;
  background:#eef6fb;
  border:1px solid #d9e8f2;
}
.story-process-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:20px;
}
.story-process-list>div{
  padding:15px;
  background:#fff;
  border-radius:12px;
}
.story-process-list strong{display:block;color:var(--ose-blue-dark);margin-bottom:5px}
.story-process-list span{color:var(--muted);font-size:.9rem;line-height:1.45}
.story-process-image{margin:0}
.story-process-image img{
  display:block;
  width:100%;
  height:auto;
  border-radius:14px;
  box-shadow:0 10px 24px rgba(18,52,83,.12);
}
.story-results{margin:40px 0}
.story-publication{
  display:grid;
  grid-template-columns:140px minmax(0,1fr);
  gap:24px;
  align-items:center;
  margin-top:36px;
  padding:24px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.story-publication>img{
  width:120px;
  height:150px;
  object-fit:cover;
  border-radius:12px;
}
@media(max-width:900px){
  .customer-story-hero,
  .story-process-panel{grid-template-columns:1fr}
  .story-cover img{max-width:230px}
}
@media(max-width:700px){
  .customer-story-grid,
  .story-process-list{grid-template-columns:1fr}
  .story-publication{grid-template-columns:1fr}
  .story-publication>img{width:100px;height:125px}
}


/* ===== Intelli-Variants Presseinformation 2014 ===== */
.iv-press-section .lead{max-width:1000px}
.iv-press-intro{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);
  gap:30px;
  align-items:center;
}
.iv-press-copy h3{color:var(--ose-blue-dark);font-size:1.55rem}
.iv-press-image{margin:0;text-align:center}
.iv-press-image img{
  display:block;
  width:100%;
  max-width:520px;
  height:auto;
  margin:auto;
  border-radius:14px;
  background:#fff;
  box-shadow:0 9px 24px rgba(20,55,88,.10);
}
.iv-press-image figcaption{
  margin-top:9px;
  color:var(--muted);
  font-size:.82rem;
}
.iv-problem-solution-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:28px;
}
.iv-problem-card{
  padding:24px;
  border-radius:16px;
  background:#f7f9fb;
  border-top:5px solid #75889a;
}
.iv-problem-card.iv-consequence{background:#fff4f1;border-top-color:#dd694e}
.iv-problem-card.iv-solution{background:#eef7ed;border-top-color:#66aa4a}
.iv-card-kicker{
  color:var(--ose-orange);
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:.78rem;
  font-weight:900;
}
.iv-problem-card h3,.iv-management-card h3{color:var(--ose-blue-dark)}
.iv-function-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.iv-function-grid article{
  padding:22px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:15px;
}
.iv-function-grid h3{color:var(--ose-blue-dark);font-size:1.08rem}
.iv-function-grid ul{padding-left:19px;color:#526273}
.iv-function-grid li{margin:7px 0}
.iv-rule-panel{border-top:5px solid var(--ose-orange)}
.iv-two-column-copy{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.iv-price-formula{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:center;
  min-height:160px;
}
.iv-price-formula span,.iv-price-formula strong{
  padding:14px 17px;
  border-radius:10px;
  background:#eef4f8;
  color:var(--ose-blue-dark);
}
.iv-price-formula strong{background:#fff0df;color:#b86100}
.iv-price-formula b{color:var(--ose-orange);font-size:1.3rem}
.iv-bom-grid,.iv-generation-grid{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);
  gap:28px;
  align-items:center;
}
.iv-mini-points{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
.iv-mini-points span{
  padding:7px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  font-size:.84rem;
  color:#445c70;
}
.iv-management-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
}
.iv-management-card{
  padding:26px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--line);
}
.iv-inline-figure{margin:20px 0 0;text-align:center}
.iv-inline-figure img{
  max-width:100%;
  height:auto;
  max-height:220px;
  object-fit:contain;
}
.iv-partner-quote{
  margin:0;
  padding:22px;
  border-left:5px solid var(--ose-orange);
  background:#fff8ee;
  border-radius:0 14px 14px 0;
  color:var(--ose-blue-dark);
  font-size:1.18rem;
  line-height:1.55;
}
@media(max-width:1000px){
  .iv-function-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .iv-problem-solution-grid{grid-template-columns:1fr}
}
@media(max-width:850px){
  .iv-press-intro,.iv-bom-grid,.iv-generation-grid,.iv-management-grid,.iv-two-column-copy{grid-template-columns:1fr}
}
@media(max-width:650px){
  .iv-function-grid{grid-template-columns:1fr}
}


/* ===== eEvolution Power BI Modul ===== */
.module-card-powerbi{border-top:4px solid #f07d00}
.module-icon-bi{
  display:grid;place-items:center;
  width:54px;height:54px;border-radius:14px;
  background:linear-gradient(135deg,#0b4d87,#f07d00);
  color:#fff;font-weight:900;font-size:1.05rem;
}
.pbi-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);
  gap:24px;align-items:stretch;
}
.pbi-highlight{border-top:5px solid var(--ose-orange)}
.pbi-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.pbi-tags span{
  padding:7px 10px;border-radius:999px;
  background:#eef5fa;color:var(--ose-blue-dark);
  font-size:.82rem;font-weight:800;
}
.pbi-benefit-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;margin:30px 0 46px;
}
.pbi-benefit-grid article{
  padding:22px;background:#fff;border:1px solid var(--line);
  border-radius:16px;
}
.pbi-icon{
  display:grid;place-items:center;width:42px;height:42px;
  border-radius:12px;background:var(--ose-orange);color:#fff;
  font-weight:900;margin-bottom:12px;
}
.pbi-benefit-grid h3{color:var(--ose-blue-dark);font-size:1.05rem}
.pbi-components-head{margin-top:12px}
.pbi-component-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
}
.pbi-component-card{
  padding:22px;border-radius:16px;background:#fff;
  border:1px solid var(--line);border-bottom:4px solid #8fa4b7;
}
.pbi-primary-card{border-bottom-color:var(--ose-orange);background:#fff8ef}
.pbi-component-title{font-weight:900;color:var(--ose-blue-dark);font-size:1.05rem;margin-bottom:9px}
.pbi-process{
  display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  gap:10px;align-items:center;margin:34px 0;padding:22px;
  background:#eef6fb;border-radius:18px;border:1px solid #d9e8f2;
}
.pbi-process>div{padding:15px;background:#fff;border-radius:12px;min-height:112px}
.pbi-process strong{display:block;color:var(--ose-blue-dark);margin-bottom:6px}
.pbi-process span{font-size:.88rem;color:var(--muted);line-height:1.45}
.pbi-process>b{color:var(--ose-orange);font-size:1.35rem}
.pbi-mittelstand{
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:28px;padding:28px;border-radius:18px;background:#fff;border:1px solid var(--line);
}
.pbi-mittelstand h3{color:var(--ose-blue-dark);font-size:1.45rem}
.pbi-checks{display:grid;gap:9px;align-content:center}
.pbi-checks span{padding:10px 12px;background:#f6f9fb;border-radius:10px;color:#41576a}
.pbi-actions{margin-top:24px}
@media(max-width:1000px){
  .pbi-benefit-grid,.pbi-component-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pbi-process{grid-template-columns:1fr}
  .pbi-process>b{transform:rotate(90deg);text-align:center}
}
@media(max-width:800px){
  .pbi-hero-grid,.pbi-mittelstand{grid-template-columns:1fr}
}
@media(max-width:620px){
  .pbi-benefit-grid,.pbi-component-grid{grid-template-columns:1fr}
}


/* ===== Intelli-Variants Panel Designer ===== */
.iv-paneldesigner-section .lead{max-width:1000px}
.iv-pd-compare{
  display:grid;
  grid-template-columns:minmax(0,.8fr) auto minmax(0,1.2fr);
  gap:18px;align-items:center;margin:28px 0 38px;
}
.iv-pd-compare figure,.iv-pd-design-grid figure,.iv-pd-dragdrop figure,.iv-pd-runtime,.iv-pd-table-grid figure{margin:0}
.iv-pd-compare img,.iv-pd-design-grid img,.iv-pd-dragdrop img,.iv-pd-runtime img,.iv-pd-table-grid img{
  width:100%;height:auto;display:block;border-radius:14px;
  box-shadow:0 9px 24px rgba(20,55,88,.10);
}
.iv-pd-label{
  display:inline-block;margin-bottom:9px;padding:6px 10px;border-radius:999px;
  background:#eef4f8;color:var(--ose-blue-dark);font-size:.8rem;font-weight:900;
}
.iv-pd-featured .iv-pd-label{background:#fff0df;color:#b86100}
.iv-pd-compare figcaption,.iv-pd-design-grid figcaption,.iv-pd-runtime figcaption,.iv-pd-table-grid figcaption{
  margin-top:8px;color:var(--muted);font-size:.82rem;line-height:1.4;
}
.iv-pd-arrow{font-size:2rem;color:var(--ose-orange);font-weight:900}
.iv-pd-intro-grid{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);
  gap:24px;align-items:stretch;
}
.iv-pd-highlight{border-top:5px solid var(--ose-orange)}
.iv-pd-card-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px;
}
.iv-pd-card-grid article{
  padding:22px;border-radius:16px;background:#fff;border:1px solid var(--line);
  box-shadow:0 6px 18px rgba(20,55,88,.04);
}
.iv-pd-card-icon{
  display:grid;place-items:center;width:42px;height:42px;border-radius:12px;
  background:#eef5fa;color:var(--ose-blue);font-size:1.2rem;font-weight:900;margin-bottom:12px;
}
.iv-pd-card-grid h3{color:var(--ose-blue-dark);font-size:1.08rem}
.iv-pd-design-grid{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center;
}
.iv-pd-design-copy h3,.iv-pd-dragdrop h3,.iv-pd-table-grid h3{color:var(--ose-blue-dark);font-size:1.4rem}
.iv-pd-chips,.iv-pd-table-types{
  display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;
}
.iv-pd-chips span,.iv-pd-table-types span{
  padding:7px 10px;border-radius:999px;background:#fff;border:1px solid var(--line);
  color:#435a6e;font-size:.82rem;font-weight:700;
}
.iv-pd-dragdrop{
  display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:28px;align-items:center;margin-top:34px;padding:26px;border-radius:18px;background:#fff;
}
.iv-pd-rule-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;
}
.iv-pd-rule-grid>div{
  padding:15px;border-radius:12px;background:#f6f9fb;border:1px solid var(--line);
}
.iv-pd-rule-grid strong{display:block;color:var(--ose-blue-dark);margin-bottom:5px}
.iv-pd-rule-grid span{color:var(--muted);font-size:.88rem;line-height:1.4}
.iv-pd-table-grid{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px;align-items:center;
}
.iv-pd-table-types span{background:#fff7ed;border-color:#f1d3ae;color:#9b5705}
.iv-pd-closing{margin-top:26px}
@media(max-width:950px){
  .iv-pd-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .iv-pd-compare{grid-template-columns:1fr}
  .iv-pd-arrow{transform:rotate(90deg);text-align:center}
  .iv-pd-intro-grid,.iv-pd-design-grid,.iv-pd-dragdrop,.iv-pd-table-grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .iv-pd-card-grid,.iv-pd-rule-grid{grid-template-columns:1fr}
}


/* ===== Kontaktformular: einfaches CAPTCHA ===== */
.captcha-field{margin-top:18px}
.captcha-box{
  display:grid;
  grid-template-columns:minmax(220px,auto) minmax(90px,140px);
  gap:12px;
  align-items:center;
}
.captcha-question{
  display:flex;
  align-items:center;
  min-height:46px;
  padding:0 14px;
  border-radius:10px;
  background:#eef5fa;
  color:var(--ose-blue-dark);
  font-weight:800;
}
.captcha-box input[type="number"]{
  width:100%;
}
.captcha-field small{
  display:block;
  margin-top:7px;
  color:var(--muted);
}
@media(max-width:560px){
  .captcha-box{grid-template-columns:1fr}
}


/* ===== Intelli-Variants Erfolgsstory Evers Türenwerk ===== */
.iv-success-story .lead{max-width:1000px}
.iv-story-hero{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:30px;align-items:center;padding:30px;border-radius:20px;
  background:#fff;border:1px solid var(--line);box-shadow:0 9px 26px rgba(20,55,88,.07);
}
.iv-story-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.iv-story-meta span{
  padding:7px 10px;border-radius:999px;background:#eef5fa;
  color:var(--ose-blue-dark);font-size:.8rem;font-weight:800;
}
.iv-story-copy h3{color:var(--ose-blue-dark);font-size:1.55rem}
.iv-story-hero-image,.iv-story-feature figure,.iv-story-production-grid figure,.iv-story-cnc-grid figure,.iv-story-standard-grid figure{margin:0}
.iv-story-hero-image img,.iv-story-feature img,.iv-story-production-grid img,.iv-story-cnc-grid img,.iv-story-standard-grid img{
  display:block;width:100%;height:auto;border-radius:14px;
  box-shadow:0 10px 25px rgba(20,55,88,.12);
}
.iv-story-hero-image figcaption,.iv-story-feature figcaption,.iv-story-production-grid figcaption,.iv-story-cnc-grid figcaption,.iv-story-standard-grid figcaption{
  margin-top:8px;color:var(--muted);font-size:.82rem;line-height:1.4;
}
.iv-story-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;margin-top:26px;
}
.iv-story-card{
  padding:24px;border-radius:16px;background:#fff;border:1px solid var(--line);
}
.iv-story-number{
  display:grid;place-items:center;width:42px;height:42px;border-radius:12px;
  background:var(--ose-orange);color:#fff;font-weight:900;margin-bottom:12px;
}
.iv-story-card h3{color:var(--ose-blue-dark)}
.iv-story-feature{
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:30px;align-items:center;
}
.iv-story-benefits{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;margin-top:20px;
}
.iv-story-benefits>div{
  padding:14px;border-radius:12px;background:#fff;border:1px solid var(--line);
}
.iv-story-benefits strong{display:block;color:var(--ose-blue-dark);margin-bottom:5px}
.iv-story-benefits span{font-size:.88rem;color:var(--muted);line-height:1.4}
.iv-story-production-grid{
  display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);
  gap:30px;align-items:center;
}
.iv-story-production-grid h3{color:var(--ose-blue-dark);font-size:1.45rem}
.iv-story-cnc-grid{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
  gap:28px;align-items:center;
}
.iv-story-cnc-flow{display:grid;gap:9px}
.iv-story-cnc-flow>div{
  padding:15px 17px;border-radius:12px;background:#fff;border-left:5px solid var(--ose-orange);
}
.iv-story-cnc-flow strong{display:block;color:var(--ose-blue-dark);margin-bottom:4px}
.iv-story-cnc-flow span{font-size:.9rem;color:var(--muted)}
.iv-story-cnc-flow>b{color:var(--ose-orange);font-size:1.2rem;padding-left:20px}
.iv-story-cnc-message{
  display:flex;gap:14px;align-items:center;margin-top:24px;padding:18px 20px;
  border-radius:14px;background:#edf7ea;border-left:5px solid #67aa49;
}
.iv-story-cnc-message strong{color:#477e31;white-space:nowrap}
.iv-story-cnc-message span{color:#43576a}
.iv-story-standard-grid{
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:30px;align-items:center;
}
.iv-story-result-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;margin-top:28px;
}
.iv-story-result-grid>div{
  padding:18px;border-radius:14px;background:#f6f9fb;border:1px solid var(--line);
}
.iv-story-result-grid strong{display:block;color:var(--ose-blue-dark);margin-bottom:6px}
.iv-story-result-grid span{font-size:.88rem;color:var(--muted);line-height:1.45}
@media(max-width:950px){
  .iv-story-hero,.iv-story-feature,.iv-story-production-grid,.iv-story-cnc-grid,.iv-story-standard-grid{grid-template-columns:1fr}
  .iv-story-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .iv-story-grid,.iv-story-benefits,.iv-story-result-grid{grid-template-columns:1fr}
  .iv-story-cnc-message{display:block}
  .iv-story-cnc-message strong{display:block;margin-bottom:7px;white-space:normal}
}
