
  :root{--navy:#0d1b3a;--navy-2:#132a5c;--blue:#3d5a92;--blue-light:#eef1f8;--sky:#6f8fc4;--bg:#ffffff;--bg-soft:#f5f8ff;--card:#ffffff;--border:#e7ecf7;--radius:10px;--shadow:0 10px 28px rgba(13,27,58,.05);--maxw:1320px;}
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;font-family:"Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg);overflow-x:hidden;overflow-x:clip;}
  img{max-width:100%;display:block;}
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
  section{position:relative;scroll-margin-top:84px;}
  /* ---------- reveal animation engine ---------- */
  .rv{opacity:0;transition:opacity 1.1s cubic-bezier(.22,1,.36,1), transform 1.1s cubic-bezier(.22,1,.36,1);will-change:transform,opacity;}
  .rv-left{transform:translateX(-34px);}
  .rv-right{transform:translateX(34px);}
  .rv-up{transform:translateY(28px);}
  .rv-scale{transform:scale(.94) translateY(14px);}
  .rv.in{opacity:1;transform:none;will-change:auto;}
  .rv-d1{transition-delay:.1s;}
  .rv-d2{transition-delay:.2s;}
  .rv-d3{transition-delay:.3s;}
  .rv-d4{transition-delay:.4s;}
  .rv-d5{transition-delay:.5s;}
  .rv-d6{transition-delay:.6s;}
  /* ---------- header ---------- */
  header{position:sticky;top:0;z-index:100;backdrop-filter:blur(10px);}
  .nav{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;max-width:var(--maxw);margin:0 auto;}
  .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.05rem;color:var(--navy);}
  .brand img{height:38px;width:auto;}
  .navlinks{display:flex;gap:28px;color:var(--navy-2);}
  .navlinks a{opacity:.85;transition:opacity .2s;}
  .navlinks a:hover{opacity:1;color:var(--blue);}
  .cta{background:var(--navy);color:#fff;padding:11px 22px;border-radius:30px;font-weight:600;font-size:.9rem;transition:transform .25s, background .25s;white-space:nowrap;}
  .cta:hover{background:var(--blue);transform:translateY(-2px);}
  .menu-cb{position:absolute;opacity:0;width:0;height:0;pointer-events:none;}
  .burger{display:none;font-size:1.5rem;color:var(--navy);cursor:pointer;line-height:1;padding:6px;}
  .burger-icon-close{display:none;}
  .lang-switch{display:flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;color:var(--muted);}
  .lang-switch button{background:none;border:none;padding:2px 3px;cursor:pointer;color:var(--muted);font-weight:700;font-size:.82rem;font-family:inherit;transition:color .2s;}
  .lang-switch button.active{color:var(--navy);}
  .lang-switch button:hover{color:var(--blue);}
  main{display:block;}
  .lang-switch a{padding:2px 3px;color:var(--muted);font-weight:700;font-size:.82rem;transition:color .2s;}
  .lang-switch a.active{color:var(--navy);}
  .lang-switch a:hover{color:var(--blue);}
  .lang-switch .sep{color:var(--border);}
  /* ---------- legal overlay ---------- */
  .legal-overlay{position:fixed;inset:0;background:rgba(13,20,38,.55);z-index:1000;display:none;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto;}
  .legal-overlay.open{display:flex;}
  .legal-panel{background:#fff;border-radius:20px;max-width:820px;width:100%;padding:40px 44px 50px;position:relative;box-shadow:0 30px 80px rgba(0,0,0,.3);}
  .legal-close{position:absolute;top:20px;right:20px;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:#fff;font-size:1.1rem;cursor:pointer;color:var(--navy);line-height:1;}
  .legal-close:hover{background:var(--blue-light);}
  .legal-panel h2{color:var(--navy);margin:0 0 6px;font-size:1.6rem;}
  .legal-panel .legal-note{color:var(--muted);font-size:.85rem;margin:0 0 28px;}
  .legal-panel h3{color:var(--navy);font-size:1.05rem;margin:28px 0 10px;}
  .legal-panel h4{color:var(--navy);font-size:.95rem;margin:18px 0 6px;}
  .legal-panel p{color:var(--muted);font-size:.9rem;margin:0 0 12px;}
  .legal-panel ul{color:var(--muted);font-size:.9rem;margin:0 0 12px;padding-left:20px;}
  body.no-scroll{overflow:hidden;}
  /* ---------- hero ---------- */
  .hero{padding:40px 0 34px;overflow:hidden;}
  .hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center;}
  .kicker{display:none;}
  h1{font-size:clamp(2rem,3.9vw,3rem);font-weight:800;color:var(--navy);margin:0 0 16px;}
  .accent{color:var(--blue);font-weight:700;}
  .lead{max-width:600px;margin:0 0 20px;}
  .btnrow{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:22px;}
  .btn-primary{background:var(--navy);color:#fff;padding:18px 34px;border-radius:30px;font-weight:700;font-size:1.02rem;transition:.25s;display:inline-block;box-shadow:0 12px 26px rgba(13,27,58,.22);}
  .btn-primary:hover{background:var(--blue);transform:translateY(-2px);box-shadow:0 16px 32px rgba(13,27,58,.26);}
  .btn-ghost{border:1.5px solid var(--border);color:var(--navy);padding:14px 28px;border-radius:30px;font-weight:600;transition:.25s;display:inline-block;}
  .btn-ghost:hover{border-color:var(--blue);color:var(--blue);}
  .stat-row{display:flex;gap:16px;flex-wrap:nowrap;}
  .stat{white-space:nowrap;}
  .stat .lbl{white-space:inherit;}
  .stat{display:flex;align-items:center;gap:10px;}
  .stat .num{font-size:1.5rem;font-weight:800;color:var(--navy);}
  .hero-visual{position:relative;aspect-ratio:492/316;height:auto;}
  @media(min-width:1101px){
    .hero-visual{margin:0;}
  }
  .hv-card{position:absolute;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--border);overflow:hidden;}
  .hv-1{width:62%;height:60%;top:0;left:6%;}
  .hv-2{width:46%;height:42%;bottom:0;right:0;}
  .hv-3{width:40%;height:34%;top:8%;right:0;background:var(--navy);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:16px;}
  .hv-1 img,.hv-2 img{width:100%;height:100%;object-fit:cover;}
  .hv-1,.hv-2{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--blue-light),#ffffff);}
  .hv-1 svg,.hv-2 svg{width:60%;height:60%;}
  .hv-map.hv-1{width:100%;height:100%;top:0;left:0;padding:6px;}
  .hv-map .hero-route-map{width:100%;height:100%;}
  .hv-3 .big{font-size:2rem;font-weight:800;}
  .hv-3 .small{font-size:.8rem;opacity:.8;margin-top:4px;}
  .float-badge{position:absolute;bottom:-8%;left:2%;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy);font-size:.9rem;}
  .float-badge .dot{width:10px;height:10px;border-radius:50%;background:#3ecf8e;}
  /* ---------- section titles ---------- */
  .eyebrow{display:none;}
  .h2{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;color:var(--navy);margin:0 0 12px;}
  .sub{font-weight:500;max-width:none;}
  .head-row{display:flex;flex-direction:column;align-items:flex-start;row-gap:8px;}
  .head-row > .sub{width:100%;margin:0;}
  /* ---------- about / warum ---------- */
  .about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center;}
  .about-graphic{background:radial-gradient(420px 300px at 20% 15%, var(--blue-light) 0%, transparent 65%),
               linear-gradient(160deg,#f5f8ff,#ffffff);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:36px 24px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center;}
  .about-graphic-cap{font-size:1.15rem;font-weight:800;color:var(--navy);max-width:280px;line-height:1.35;}
  .about-text p{font-weight:500;}
  .about-text strong{color:var(--navy);}
  .pill-intro{color:var(--navy);font-weight:700;font-size:.94rem;margin-top:14px;margin-bottom:0;}
  .pillrow{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;}
  .pill{padding:9px 16px;border-radius:20px;font-size:.85rem;font-weight:700;}
  /* ---------- services ---------- */
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
  .svc-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .3s, box-shadow .3s;position:relative;}
  .svc-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(13,27,58,.09);}
  .svc-icon-row{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
  .svc-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex:none;}
  .svc-icon svg{width:26px;height:26px;}
  .svc-icon-label{font-weight:800;font-size:.8rem;text-transform:uppercase;}
  .svc-card h3{color:var(--navy);font-size:1.2rem;margin:0 0 6px;line-height:1.25;}
  .svc-card p{color:var(--muted);font-weight:500;font-size:.95rem;margin:0 0 10px;}
  .svc-note{margin-top:24px;text-align:center;}
  .svc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
  .svc-list li{display:flex;gap:10px;align-items:flex-start;}
  .svc-list li::before{content:"";width:7px;height:7px;border-radius:50%;margin-top:7px;flex:none;}
  /* ---------- network ---------- */
  .net-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;align-items:center;}
  .net-badges{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .net-badge{background:#fff;border:1px solid var(--border);border-radius:10px;padding:28px 22px;text-align:center;box-shadow:var(--shadow);font-weight:700;color:var(--navy);font-size:.96rem;}
  .net-badge .ic{font-size:2.6rem;margin-bottom:12px;display:block;line-height:1;}
  .net-hinweis{grid-column:1/-1;font-size:.78rem;color:var(--muted);margin:4px 0 0;}
  /* ---------- growth chart ---------- */
  .chart-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px 26px 18px;}
  .chart-head2{margin-bottom:8px;}
  .chart-head2 h3{font-size:1.35rem;margin:0 0 4px;color:var(--navy);}
  .chart-head2 p{color:var(--muted);margin:0;font-size:.88rem;}
  .legend{display:flex;flex-direction:column;gap:8px;margin:0 0 26px;}
  .legend span{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:700;color:var(--navy);}
  .legend .sw{width:11px;height:11px;border-radius:3px;display:inline-block;flex:none;}
  .chart-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .chart-plot{position:relative;height:300px;margin-left:68px;margin-top:34px;margin-bottom:40px;min-width:1000px;}
  .gridline{position:absolute;left:0;right:0;border-top:1px dashed var(--border);}
  .gridline .glbl{position:absolute;left:-68px;top:-10px;font-size:.8rem;font-weight:600;color:var(--muted);width:60px;text-align:right;}
  .bars{position:absolute;left:0;right:0;top:0;bottom:0;display:flex;align-items:flex-end;gap:20px;z-index:1;}
  .bar-col{flex:1;min-width:44px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;}
  .seg{width:100%;max-width:52px;height:0;transition:height 1.3s cubic-bezier(.22,1,.36,1);display:flex;align-items:center;justify-content:center;overflow:visible;position:relative;}
  .seg.mt{background:#3d5a92;}
  .seg.bca{background:#3f8f8b;}
  .seg.imt{background:#d9a441;}
  .bar-col .seg:last-child{border-radius:0 0 5px 5px;}
  .bar-col .seg:first-child{border-radius:5px 5px 0 0;}
  .seg .total{position:absolute;top:-26px;left:50%;transform:translateX(-50%);font-size:.86rem;font-weight:800;color:var(--navy);white-space:nowrap;opacity:0;transition:opacity .5s .9s;background:#fff;padding:1px 6px;border-radius:6px;z-index:5;}
  .seg .val{color:#fff;font-size:.74rem;font-weight:800;white-space:nowrap;opacity:0;transition:opacity .5s .9s;background:rgba(0,0,0,.3);padding:3px 7px;border-radius:5px;}
  .bars.in .seg .total,.bars.in .seg .val{opacity:1;}
  .seg.mt .val{background:rgba(13,27,58,.3);}
  .seg.bca .val{background:rgba(13,27,58,.3);}
  .seg.imt .val{background:rgba(255,255,255,.4);color:var(--navy);}
  .bar-yr{position:absolute;bottom:-30px;font-size:.86rem;font-weight:600;color:var(--navy-2);}
  .chart-caption{margin:0;}
  /* ---------- certificates ---------- */
  .cert-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
  .cert-card{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow);transition:transform .3s;}
  .cert-card:hover{transform:translateY(-4px);}
  .cert-card .imgwrap{height:140px;background:#fafbff;display:flex;align-items:center;justify-content:center;padding:12px;}
  .cert-card img{max-height:100%;max-width:100%;object-fit:contain;box-shadow:0 2px 10px rgba(13,27,58,.12);}
  .cert-card .cap{padding:12px 14px;border-top:1px solid var(--border);color:var(--navy);text-align:center;}
  .cert-slot{display:block;background:var(--bg-soft);border:1.5px dashed var(--border);}
  .cert-slot .imgwrap{background:transparent;}
  .cert-slot .plus{font-size:2.4rem;font-weight:300;color:var(--blue);line-height:1;}
  .cert-slot .cap{border-top:1px dashed var(--border);color:var(--blue);}
  .cert-slot-sub{display:block;font-weight:500;color:var(--muted);font-size:.76rem;margin-top:4px;}
  .cert-slot:hover{border-color:var(--blue);background:var(--blue-light);}
  /* ---------- brand portfolio ---------- */
  .brand-grid{display:grid;gap:10px;}
  .brand-tile{display:flex;flex-direction:column;align-items:center;transition:opacity 1.1s cubic-bezier(.22,1,.36,1) calc(var(--i,0) * 45ms),
               transform .4s cubic-bezier(.22,1,.36,1) calc(var(--i,0) * 45ms),
               filter .3s;}
  .brand-tile:hover{transform:translateY(-3px);}
  .brand-tile .cat-ic{filter:saturate(.8);transition:filter .3s;}
  .brand-tile:hover .cat-ic{filter:saturate(1.1);}
  .brand-tile .cat-ic{font-size:1.9rem;line-height:1;}
  .brand-tile .name{font-weight:700;color:var(--navy);font-size:.98rem;text-align:center;}
  .brand-cta{margin-top:22px;text-align:center;}
  .brand-cta a{color:var(--blue);font-weight:700;text-decoration:underline;}
  /* ---------- team ---------- */
  .team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px;}
  .team-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .3s, box-shadow .3s;display:flex;flex-direction:column;}
  .team-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(13,27,58,.09);}
  .team-avatar{width:200px;height:240px;overflow:hidden;margin-bottom:18px;flex:none;}
  .team-avatar img{width:100%;height:100%;object-fit:cover;object-position:center top;image-rendering:auto;}
  .team-card h3{color:var(--navy);font-size:1.15rem;margin:0 0 4px;flex:none;}
  .team-role{color:var(--blue);font-weight:700;font-size:.85rem;margin-bottom:10px;flex:none;}
  .team-card p{font-weight:500;margin:0 0 10px;flex:1 1 auto;}
  .team-tags{display:flex;flex-wrap:wrap;gap:8px;flex:none;}
  .team-tags .pill{font-size:.76rem;padding:6px 12px;}
  /* ---------- successful projects ---------- */
  .project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
  .project-card{background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);min-height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 16px;transition:transform .3s, box-shadow .3s;overflow:hidden;}
  .project-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(13,27,58,.08);}
  .project-card img{max-width:80%;max-height:72px;object-fit:contain;transition:transform .35s var(--ease,ease);}
  .project-card:hover img{transform:scale(1.07);}
  .project-card .cat-ic{font-size:1.8rem;line-height:1;}
  .project-card .name{font-weight:700;color:var(--navy);font-size:.86rem;text-align:center;}
  .proj-status{font-size:.72rem;font-weight:500;font-style:italic;color:var(--muted);}
  /* ---------- partners ---------- */
  .partner-strip{display:flex;gap:26px;flex-wrap:wrap;justify-content:center;}
  .partner-logo{background:#fff;border:1px solid var(--border);border-radius:12px;padding:26px 28px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:260px;transition:transform .3s, box-shadow .3s;}
  .partner-logo:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(13,27,58,.09);}
  .partner-logo img{height:42px;width:auto;max-width:200px;object-fit:contain;}
  .partner-badge{display:inline-flex;align-items:center;gap:6px;background:var(--blue-light);color:var(--blue);font-size:.74rem;font-weight:700;padding:6px 14px;border-radius:20px;letter-spacing:.01em;white-space:nowrap;}
  /* ---------- contact / footer ---------- */
  .contact-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px;}
  .contact-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:18px 22px;box-shadow:var(--shadow);margin-bottom:12px;}
  .contact-card h4{margin:0 0 8px;color:var(--navy);}
  .contact-card p{margin:0;color:var(--muted);font-weight:500;font-size:.92rem;}
  .contact-card a{color:var(--blue);font-weight:600;}
  .mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;z-index:200;background:#fff;padding:70px 28px 28px;flex-direction:column;gap:4px;overflow-y:auto;}
  .mobile-menu.open{display:flex;}
  .mobile-menu-close{position:absolute;top:16px;right:20px;width:40px;height:40px;border-radius:50%;background:var(--bg-soft);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--navy);cursor:pointer;}
  #menuToggle:checked ~ .mobile-menu{display:flex;}
  #menuToggle:checked ~ header .burger-icon{display:none;}
  #menuToggle:checked ~ header .burger-icon-close{display:block;}
  .mobile-menu a{padding:14px 4px;border-bottom:1px solid var(--border);color:var(--navy-2);font-weight:600;font-size:1.05rem;}
  .mobile-menu a.cta{border-bottom:none;background:var(--navy);color:#fff;border-radius:30px;padding:15px 24px;margin-top:14px;}
  body.menu-open{overflow:hidden;}
  @media(max-width:920px){
    .navlinks{display:none;}
    .header-cta-desktop, .nav > .cta{display:none;}
    .burger{display:block;}
    .svc-grid{grid-template-columns:1fr;}
    .team-grid{grid-template-columns:1fr;}
    .cert-grid{grid-template-columns:repeat(2,1fr);}
    .project-grid{grid-template-columns:repeat(2,1fr);}
  }
  @media(max-width:1180px){
    .stat-row{gap:14px;}
    .stat{gap:5px;}
    .stat .num{font-size:1.1rem;}
    .stat .lbl{font-size:.74rem;}
  }
  @media(max-width:480px){
    .lang-switch{display:none;}
    .cert-grid{grid-template-columns:1fr 1fr;}
    .project-grid{grid-template-columns:1fr;}
  }
  /* svc heading on one line (desktop/tablet), team photo alignment */
  @media(min-width:700px){
    #leistungen .h2{white-space:nowrap;font-size:clamp(1.4rem,3vw,2.4rem);}
  }
  .about-gateway img{width:100%;height:auto;display:block;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 9%,#000 91%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 12%,#000 88%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0,#000 9%,#000 91%,transparent 100%),linear-gradient(to bottom,transparent 0,#000 12%,#000 88%,transparent 100%);mask-composite:intersect;}
  .about-text .h2{margin-bottom:14px;}
  @media(max-width:920px){
    .about-grid{grid-template-columns:1fr;gap:24px;}
  }
  @media(max-width:700px){
    .about-gateway-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -20px;padding:0 20px;}
    .about-gateway img{min-width:680px;}
  }
  .team-avatar{position:relative;}
  /* ---------- contact: Berlin line-art ---------- */
  .contact-wrap{align-items:stretch;}
  .contact-left{display:flex;flex-direction:column;}
  #kontakt .btn-primary::after{content:" →";}
  .loc-card h4{display:flex;align-items:center;gap:10px;}
  .loc-ic{width:20px;height:20px;color:var(--blue);flex:none;}
  .loc-sub{margin-bottom:14px !important;}
  @media (prefers-reduced-motion: reduce){
    .rv{opacity:1;transform:none;transition:none;}
  }
  .about-grid > *{min-width:0;}
  .cc-row{display:flex;align-items:center;gap:16px;}
  .cc-ic{width:42px;height:42px;border-radius:10px;background:var(--blue-light);color:var(--navy);display:flex;align-items:center;justify-content:center;flex:none;}
  .ci{width:20px;height:20px;}
  .loc-card{background:linear-gradient(180deg,#f5f8ff,#eef1f8);}
  .loc-pin{color:var(--navy);}
  .route{list-style:none;margin:6px 0 0;padding:0;display:flex;justify-content:space-between;position:relative;}
  .route::before{content:"";position:absolute;left:12%;right:12%;top:20px;border-top:2px dotted #b9c7e2;}
  .route li{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;font-size:.76rem;color:var(--muted);}
  .route li .ci{box-sizing:content-box;width:20px;height:20px;padding:10px;border-radius:50%;background:#fff;border:1px solid var(--border);color:var(--navy);margin-bottom:8px;position:relative;}
  .route li b{color:var(--navy);font-weight:700;}
  .route li{padding:0 6px;min-width:0;}
  .net-wrap > *{min-width:0;}
  .net-visual img{width:100%;max-width:720px;height:auto;display:block;object-fit:contain;margin-left:auto;}
  @media (prefers-reduced-motion: reduce){
    }
  /* ---------- footer ---------- */
  footer{background:var(--navy);padding:42px 0 18px;}
  .foot-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 400px;gap:36px;padding-bottom:28px;align-items:start;}
  .foot-brand{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
  .foot-brand img{width:48px;height:48px;object-fit:contain;flex:none;}
  .foot-brand strong{color:#fff;font-size:1.3rem;font-weight:700;letter-spacing:-.01em;}
  .foot-tag{margin:0;font-size:.88rem;font-weight:400;}
  .foot-tag br{display:none;}
  .foot-tag span{display:block;line-height:1.5;}
  .foot-tag br + span{margin-top:8px;}
  footer h5{color:#fff;font-size:1.3rem;font-weight:700;letter-spacing:-.01em;margin:0 0 12px;height:48px;display:flex;align-items:center;}
  .foot-nav{display:grid;grid-template-columns:repeat(2,max-content);grid-template-rows:repeat(3,auto);grid-auto-flow:column;justify-content:start;gap:8px 44px;font-size:.88rem;line-height:1.5;}
  .foot-imp{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.88rem;line-height:1.5;}
  .foot-imp a{text-decoration:underline;text-underline-offset:2px;}
  .legal-panel a{color:var(--blue);text-decoration:underline;}
  .legal-panel mark.todo{background:#ffe48a;color:#5a4300;padding:0 3px;border-radius:3px;}
  footer a{transition:color .3s;}
  footer a:hover{color:#fff;}
  .foot-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:16px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 400px;align-items:center;gap:8px 36px;}
  .foot-legal a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
  @media(max-width:920px){
    .foot-top{grid-template-columns:1fr 1fr;gap:28px 32px;}
    .foot-top > div:nth-child(3){grid-column:1/-1;justify-self:start;}
    .foot-bottom{grid-template-columns:1fr;justify-items:start;}
  }
  @media(max-width:600px){
    footer{padding:32px 0 18px;}
    .foot-top{grid-template-columns:1fr;gap:24px;padding-bottom:22px;}
    .foot-nav{gap:8px 28px;}
  }
  /* =====================================================================
     Visual refinement – premium / international / soft blue language.
     Only presentation (spacing, colour, borders, shadows, backgrounds).
     ===================================================================== */
  :root{--edge:rgba(47,95,214,.09);--soft-shadow:0 14px 40px rgba(13,27,58,.045);--hover-glow:0 20px 50px rgba(47,95,214,.12);--grid-dots:radial-gradient(rgba(47,95,214,.10) 1px,transparent 1.2px);}
  body{line-height:1.6;}
  header{background:rgba(255,255,255,.78);border-bottom:1px solid rgba(47,95,214,.08);}
  .nav{padding-top:18px;padding-bottom:18px;}
  .navlinks{letter-spacing:.005em;}
  /* backgrounds: ice-blue depth, faint map-like dot grid */
  .hero{background:radial-gradient(900px 480px at 88% -8%,rgba(47,95,214,.10) 0%,rgba(244,248,255,0) 62%),
      radial-gradient(700px 420px at 4% 108%,rgba(111,143,196,.10) 0%,rgba(244,248,255,0) 65%),
      #fff;}
  .section.soft{background:radial-gradient(800px 360px at 100% 0%,rgba(47,95,214,.06) 0%,rgba(244,248,255,0) 70%),
      linear-gradient(180deg,#f6f9ff 0%,#f1f6fd 100%);}
  #kontakt{background:radial-gradient(760px 420px at 8% 100%,rgba(47,95,214,.07) 0%,rgba(255,255,255,0) 70%),#fff;}
  /* typography: confident headings, calm body */
  h1{letter-spacing:-.03em;line-height:1.06;margin-bottom:20px;}
  .h2{letter-spacing:-.025em;line-height:1.12;margin-bottom:14px;}
  .lead{font-weight:400;margin-bottom:26px;}
  .sub,.about-text p,.svc-card p,.team-card p,.brand-cta{font-weight:400;}
  .about-text p{margin-bottom:14px;}
  .head-row{margin-bottom:26px;}
  /* hero visual: light composition, thin edge, glowing routes */
  .hv-map.hv-1{background:radial-gradient(ellipse 62% 60% at 26% 42%,rgba(47,95,214,.10) 0%,rgba(238,241,248,0) 70%),
      var(--grid-dots) 0 0/26px 26px,
      linear-gradient(160deg,#f6f9ff,#fff);border:1px solid var(--edge);box-shadow:0 22px 56px rgba(13,27,58,.06);}
  .hero-route-map [id^="rt"]{filter:drop-shadow(0 0 3px rgba(47,95,214,.35));}
  /* cards: lighter, part of the page */
  .svc-card,.team-card,.cert-card,.project-card,.partner-logo,.chart-card,.contact-card,.brand-tile{background:rgba(255,255,255,.72);border:1px solid var(--edge);box-shadow:var(--soft-shadow);border-radius:10px;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s,border-color .5s;}
  .svc-card{padding:32px 28px;}
  .team-card{padding:24px;}
  .svc-card:hover,.team-card:hover,.cert-card:hover,.project-card:hover,.partner-logo:hover,.contact-card:hover,.brand-tile:hover{transform:translateY(-3px);box-shadow:var(--hover-glow);border-color:rgba(47,95,214,.22);}
  .brand-tile{box-shadow:none;}
  .brand-tile:hover{box-shadow:var(--hover-glow);}
  .chart-card{box-shadow:var(--soft-shadow);}
  .cert-card .cap{border-top-color:var(--edge);}
  .team-avatar{border-radius:10px;box-shadow:0 0 0 1px var(--edge);}
  .pill{background:rgba(47,95,214,.07);color:var(--blue);}
  /* services: calmer icons */
  .svc-icon{background:var(--blue-light);color:var(--navy);border-radius:10px;}
  .svc-icon svg *{stroke:#0d1b3a;}
  .svc-icon-label{color:var(--blue);letter-spacing:.14em;}
  .svc-list li::before{background:var(--sky);}
  @media(max-width:600px){
    .svc-card{padding:26px 22px;}
  }
  .net-visual{overflow:hidden;}
  .net-visual img{margin-top:-3%;margin-bottom:-1.5%;}
  @media(max-width:920px){
    #netzwerk.section{padding:32px 0;}
  }
  #leistungen .svc-note{margin-top:18px;margin-bottom:0;}
  .brand-grid{grid-template-columns:repeat(7,minmax(0,1fr));}
  @media(max-width:1000px){
    .brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  }
  @media(min-width:921px) and (max-width:1250px){
    .svc-list li{font-size:.82rem;}
  }
  .svc-list li{line-height:1.45;}
  .svc-card{display:flex;flex-direction:column;}
  /* services: title / ruled 2-line description / bullet list */
  .svc-card h3{margin-bottom:14px;}
  .svc-card > p{font-size:.8rem;line-height:1.55;letter-spacing:-.005em;padding:14px 0;margin:0 0 16px;border-top:1px solid var(--edge);border-bottom:1px solid var(--edge);}
  @media(min-width:921px){
    .svc-card > p{min-height:calc(2 * 1.55em + 28px);}
  }
  @media(min-width:921px){
    .svc-card{padding-left:22px;padding-right:22px;}
  }
  /* readability: stronger contrast, calmer weights, slightly larger small text */
  :root{--ink:#111c33;--muted:#1f2b45;}
  body{text-rendering:optimizeLegibility;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;}
  p,li{font-weight:500;}
  .lead{line-height:1.6;color:#1b2740;}
  .sub{font-size:1.08rem;line-height:1.65;color:#1f2b45;}
  .about-text p{font-size:1.04rem;line-height:1.7;color:#1f2b45;}
  .svc-card > p{font-weight:500;}
  .svc-list li{font-size:.96rem;color:#111c33;font-weight:500;}
  .team-card p{font-size:.97rem;line-height:1.68;color:#1f2b45;}
  .team-role,.svc-icon-label{font-weight:700;}
  .team-tags .pill,.pill{font-size:.8rem;font-weight:600;}
  .cert-card .cap{font-size:.86rem;font-weight:700;}
  .stat .lbl{font-size:.82rem;font-weight:500;color:#1f2b45;}
  .brand-cta{font-size:1rem;color:#1f2b45;}
  .navlinks{font-weight:600;font-size:.96rem;}
  .contact-card p,.contact-card a{font-size:.98rem;}
  .contact-card h4{font-size:1.06rem;}
  .loc-sub,.route li,.route li span{font-size:.84rem;color:#1f2b45;}
  .route li b{font-size:.88rem;}
  footer{color:#d3dbf0;}
  .foot-tag,.foot-nav,.foot-imp,.foot-nav a{color:#d3dbf0;}
  .foot-bottom{color:#aab5d3;font-size:.84rem;}
  .foot-legal a{color:#d3dbf0;}
  .chart-card .legend span{font-size:.9rem;}
  .gridline .glbl,.bar-yr{font-size:.86rem;color:#1f2b45;}
  .contact-wrap > *{min-width:0;}
  @media(max-width:920px){
    .hero-grid,.about-grid,.net-wrap,.contact-wrap{grid-template-columns:minmax(0,1fr);}
  }
  /* brand grid: refined line icons, uniform size and weight */
  .brand-tile{background:#fff;border:1px solid rgba(47,95,214,.12);border-radius:8px;gap:10px;padding:18px 12px 16px;}
  .brand-tile .ic{width:48px;height:48px;flex:none;fill:none;stroke:#0d1b3a;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:#0d1b3a;}
  .brand-tile .ic *{vector-effect:non-scaling-stroke;}
  .brand-tile:hover{border-color:rgba(47,95,214,.28);}
  /* ---- one text system: same running-text style in every section ---- */
  .sub,.about-text p,.team-card p,.brand-cta,.svc-note,.lead{font-size:1.02rem;font-weight:500;line-height:1.65;color:var(--muted);letter-spacing:0;}
  .lead{font-size:1.14rem;}
  /* hero intro stays larger */
  .svc-list li,.contact-card p,.loc-sub,.cert-card .cap,.legend span{font-weight:500;color:var(--ink);}
  .svc-list li,.contact-card p{font-size:.96rem;line-height:1.5;}
  .svc-card > p{color:var(--muted);}
  .about-text p strong,.about-text .accent{font-weight:700;}
  .chart-caption{font-size:1.02rem;font-weight:500;color:var(--muted);}
  .foot-tag,.foot-imp,.foot-nav{font-weight:500;}
  .hero .lead{margin-bottom:30px;}
  @media(min-width:921px){
    .hero-visual{aspect-ratio:auto;height:auto;min-height:0;}
  }
  /* ---------- line chart (Wachstum) ---------- */
  .lc{background:#fff;border:1px solid var(--border);border-radius:14px;padding:30px 30px 28px;box-shadow:var(--shadow);}
  .lc-head h3{margin:0;font-size:1.55rem;font-weight:800;color:var(--navy);letter-spacing:-.015em;line-height:1.2;}
  .lc-head p{margin:6px 0 0;color:#4a5470;font-size:1.05rem;font-weight:500;}
  .lc-body{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:28px;margin-top:22px;align-items:start;}
  .lc-scroll{overflow:visible;}
  .lc-plot svg{display:block;width:100%;height:auto;font-family:inherit;}
  .lc-legend{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:14px;padding-left:6px;}
  .lg{display:flex;align-items:flex-start;gap:10px;}
  .lg b{display:block;font-size:.88rem;font-weight:600;color:var(--navy);line-height:1.3;}
  .lg small{display:block;font-size:.78rem;color:#6a7490;font-weight:500;}
  .lg-ic{position:relative;width:34px;height:2.5px;background:var(--c);border-radius:2px;margin-top:10px;flex:none;}
  .lg-ic::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;background:var(--c);border:2px solid #fff;box-sizing:content-box;}
  .lg-total{height:4.5px;}
  .lg-total::after{width:15px;height:15px;margin:-7.5px 0 0 -7.5px;}
  .lc-side{background:var(--bg-soft);border-radius:10px;padding:22px 22px 20px;}
  .lc-side h4{margin:0 0 6px;font-size:1.05rem;font-weight:800;color:var(--navy);line-height:1.25;}
  .lc-big{font-size:1.9rem;font-weight:800;color:var(--navy);margin:8px 0 14px;letter-spacing:-.02em;}
  .lc-side hr{border:0;border-top:1px solid var(--border);margin:0 0 16px;}
  .lc-side ul{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:14px;}
  .lc-side li{display:flex;gap:12px;align-items:flex-start;}
  .lc-side li i{width:11px;height:11px;border-radius:50%;flex:none;margin-top:6px;}
  .lc-side li b{display:block;font-weight:500;font-size:.92rem;color:#1f2b45;line-height:1.3;}
  .lc-side li strong{display:block;font-size:.95rem;color:var(--navy);margin-top:2px;}
  .lc-side li small{display:block;font-size:.88rem;color:#4a5470;}
  .lc-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:26px;}
  .lc-card{display:flex;gap:16px;align-items:flex-start;background:var(--bg-soft);border-radius:10px;padding:20px 20px;}
  .lc-ico{width:34px;height:34px;color:var(--navy);flex:none;}
  .lc-ico svg{width:34px;height:34px;}
  .lc-card h5{margin:0 0 6px;font-size:.98rem;font-weight:800;color:var(--navy);line-height:1.25;}
  .lc-card p{margin:0;font-size:.86rem;line-height:1.5;color:#4a5470;font-weight:500;}
  /* animation: lines draw one after another, then the summary fades in */
  .lc-line{stroke-dasharray:1;stroke-dashoffset:1;transition-property:stroke-dashoffset;transition-timing-function:linear;}
  .lc-dot,.lc-lab{opacity:0;transition:opacity .22s ease-out;}
  .lc.in .lc-line{stroke-dashoffset:0;}
  .lc.in .lc-dot,.lc.in .lc-lab{opacity:1;}
  .lc-side,.lc-legend,.lc-card{opacity:0;transform:translateY(10px);transition:opacity .7s ease-out,transform .7s ease-out;}
  .lc.in .lc-legend{opacity:1;transform:none;transition-delay:.15s;}
  .lc.in .lc-side{opacity:1;transform:none;transition-delay:.3s;}
  .lc.in .lc-card{opacity:1;transform:none;}
  .lc.in .lc-card:nth-child(1){transition-delay:.35s;}
  .lc.in .lc-card:nth-child(2){transition-delay:.45s;}
  .lc.in .lc-card:nth-child(3){transition-delay:.55s;}
  .lc.in .lc-card:nth-child(4){transition-delay:.65s;}
  @media(max-width:1100px){
    .lc-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  }
  @media(max-width:920px){
    .lc-body{grid-template-columns:minmax(0,1fr);}
    .lc-chart{min-width:0;}
    .lc{padding:22px 18px;}
  }
  @media(max-width:600px){
    .lc-head{padding:0 8px;}
  }
  @media (prefers-reduced-motion: reduce){
    .lc-line{stroke-dashoffset:0;transition:none !important;}
    .lc-dot,.lc-lab,.lc-side,.lc-legend,.lc-card{opacity:1;transform:none;transition:none !important;}
  }
  @media(max-width:920px){
    #about .about-text{order:1;}
    #about .about-gateway{order:2;}
    #about .about-gateway-scroll{overflow:visible;margin:0;padding:0;}
    #about .about-gateway img{min-width:0;width:100%;}
  }
  @media(min-width:700px){
    #about .about-text .h2{white-space:nowrap;font-size:clamp(1.25rem,2.3vw,2rem);}
  }
  @media(max-width:600px){
    .stat-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex-wrap:nowrap;gap:0 8px;}
    .stat{flex-direction:column;align-items:flex-start;gap:2px;white-space:normal;min-width:0;}
    .stat .num{font-size:1.05rem;line-height:1.15;}
    .stat .lbl{font-size:.68rem;line-height:1.25;}
  }
  .hero-visual{display:flex;flex-direction:column;}
  .hero-visual .hv-map{position:relative !important;flex:1 1 auto;min-height:0;width:100%;height:auto;}
  .hero-visual .hero-route-map{width:100%;height:auto;display:block;}
  .hero-visual .stat-row{margin:0;padding:14px 22px 16px;gap:0;justify-content:space-between;}
  .hero-visual .stat{padding:0;margin:0;border:0;}
  .hero-visual{background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible;}
  .hero-visual .hv-map{border:0 !important;box-shadow:none !important;background:transparent !important;border-radius:0 !important;}
  .hero-visual .stat-row{background:transparent;border-radius:0;}
  @media(min-width:921px){
    .hero-grid{align-items:center;}
    .hero-visual{align-self:stretch;}
  }
  @media(max-width:920px){
    .hero-visual{aspect-ratio:auto;height:auto;}
    .hero-visual .hv-map{flex:none;height:auto;aspect-ratio:492/316;overflow:visible;}
    .hero-visual .hv-map .hero-route-map{height:100%;}
  }
  @media(max-width:600px){
    .hero-visual .stat-row{display:flex;justify-content:space-between;gap:6px;padding:14px 14px 16px;}
    .hero-visual .stat{white-space:nowrap;}
    .hero-visual .stat .lbl{white-space:nowrap;font-size:.64rem;}
    .hero-visual .stat .num{font-size:1rem;}
  }
  @media(max-width:920px){
    .hero-grid{gap:18px;}
    .hero .lead{margin-bottom:0;}
    .hero{padding-bottom:clamp(40px,6vw,64px);}
  }
  @media(max-width:600px){
    #wachstum .head-row{margin-bottom:14px;}
    .lc{padding:16px 8px 14px;}
    .lc-head h3{font-size:1.05rem;}
    .lc-head p{font-size:.85rem;margin-top:3px;}
    .lc-body{gap:12px;margin-top:10px;}
    .lc-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin-top:6px;padding-left:4px;}
    .lg{gap:6px;}
    .lg b{font-size:.68rem;}
    .lg small{font-size:.62rem;}
    .lg-ic{width:20px;margin-top:7px;}
    .lg-ic::after{width:8px;height:8px;margin:-4px 0 0 -4px;}
    .lg-total::after{width:10px;height:10px;margin:-5px 0 0 -5px;}
    .lc-side{padding:12px 12px 10px;}
    .lc-side h4{font-size:.8rem;margin:0;}
    .lc-big{font-size:1.3rem;margin:2px 0 8px;}
    .lc-side hr{margin:0 0 8px;}
    .lc-side ul{margin:6px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;}
    .lc-side li{gap:5px;}
    .lc-side li i{width:8px;height:8px;margin-top:4px;}
    .lc-side li b{font-size:.6rem;line-height:1.2;}
    .lc-side li strong{font-size:.68rem;margin-top:1px;}
    .lc-side li small{font-size:.62rem;}
    .lc-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;}
    .lc-card{padding:10px;gap:8px;}
    .lc-ico,.lc-ico svg{width:20px;height:20px;}
    .lc-card h5{font-size:.7rem;margin-bottom:3px;overflow-wrap:anywhere;hyphens:auto;}
    .lc-card > div{min-width:0;}
    .lc-card p{font-size:.64rem;line-height:1.35;}
  }
  .hero-grid > div:first-child{container-type:inline-size;}
  .hero h1{font-size:min(3.4rem,5.55cqw);letter-spacing:-.04em;white-space:nowrap;}
  @media(max-width:600px){
    .hero .lead{font-size:.95rem;line-height:1.55;}
  }
  .hero .lead .accent{font-weight:700;color:var(--blue);}
  /* ===== background accents (decorative only) ===== */
  .section > .wrap{position:relative;z-index:1;}
  .section::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(900px 480px at 88% -8%,rgba(47,95,214,.06) 0%,rgba(244,248,255,0) 62%),radial-gradient(700px 420px at 4% 108%,rgba(111,143,196,.06) 0%,rgba(244,248,255,0) 65%);}
  #kontakt::after{background:radial-gradient(900px 420px at 50% 112%,rgba(47,95,214,.07) 0%,rgba(244,248,255,0) 66%),radial-gradient(520px 360px at 100% 60%,rgba(111,143,196,.05) 0%,rgba(244,248,255,0) 70%);}
  @media(max-width:920px){
  }
  @media(max-width:600px){
    .lang-switch{display:flex !important;margin-left:auto;margin-right:6px;font-size:.78rem;}
  }
  @media(max-width:480px){
    .route li{padding:0 2px;font-size:.66rem;}
    .route li b{font-size:.68rem;overflow-wrap:anywhere;hyphens:auto;}
  }
  .section{padding:40px 0;}
  #leistungen.section{padding:40px 0 22px;}
  #netzwerk.section{padding:24px 0;}
  @media(max-width:600px){
    .section{padding:32px 0;}
    #wachstum.section{padding:32px 0;}
  }
  header .brand img{height:50px;}
  @media(max-width:600px){
    header .brand img{height:42px;}
  }
  @media(max-width:920px){
    .nav{flex-wrap:wrap;row-gap:6px;padding-top:8px;padding-bottom:8px;}
    .nav > .cta{display:inline-flex !important;order:5;flex:1 1 100%;width:100%;justify-content:center;padding:8px 16px;font-size:.8rem;}
    section{scroll-margin-top:112px;}
  }
  @media(max-width:920px){
    .nav > .cta{background:#fff;color:var(--blue);border:1px solid var(--navy);box-shadow:none;}
    .nav > .cta:hover{background:var(--blue-light);color:var(--navy);box-shadow:none;}
  }
  @media(max-width:920px){
    .nav{flex-wrap:nowrap;gap:10px;row-gap:0;padding-top:10px;padding-bottom:10px;}
    .nav > .cta{order:0;flex:0 1 auto;width:auto;margin-left:auto;white-space:normal;text-align:center;line-height:1.15;padding:7px 12px;font-size:.7rem;}
    .nav > .cta::after{display:none;}
    .lang-switch{margin-left:0 !important;margin-right:0 !important;}
    section{scroll-margin-top:76px;}
  }
  @media(max-width:600px){
    header .brand img{height:34px;}
    .nav{gap:8px;padding-left:16px;padding-right:16px;}
    .nav > .cta{font-size:.62rem;padding:6px 9px;max-width:112px;}
    .lang-switch{font-size:.7rem;gap:3px;}
  }
  header .brand img{flex:none;}
  @media(max-width:340px){header .brand img{height:26px;}.nav{padding-left:10px;padding-right:10px;gap:5px;}.nav > .cta{font-size:.54rem;padding:5px 6px;max-width:88px;}.lang-switch{font-size:.62rem;}}
  /* ===== compact mobile (spacing / sizes only, nothing removed) ===== */
  @media(max-width:600px){
    .section{padding:24px 0 !important;}
    #leistungen.section{padding:24px 0 14px !important;}
    .wrap{padding-left:16px;padding-right:16px;}
    body{line-height:1.5;}
    .h2{font-size:1.45rem;line-height:1.15;margin-bottom:8px;}
    #leistungen .h2{font-size:1.2rem;}
    .sub,.about-text p,.team-card p,.brand-cta{font-size:.9rem;line-height:1.5;}
    .about-text p{margin-bottom:8px;}
    .head-row{margin-bottom:12px;gap:4px;}
    .hero{padding-top:20px;padding-bottom:28px;}
    .hero .lead{font-size:.9rem;margin-bottom:0;}
    .svc-grid{gap:12px;}
    .svc-card{padding:16px 16px 12px;}
    .svc-card h3{font-size:1.05rem;margin-bottom:6px;}
    .svc-list li{padding:6px 0;font-size:.88rem;line-height:1.35;}
    .svc-note{margin-top:12px;font-size:.88rem;}
    .net-wrap{gap:16px;}
    .cert-grid{gap:14px 10px;}
    .cert-card .imgwrap{height:100px;padding:8px;}
    .cert-card .cap{font-size:.74rem;padding-top:8px;}
    .brand-tile{padding:10px 6px 8px;gap:6px;}
    .brand-tile .ic{width:34px;height:34px;}
    .brand-tile .name{font-size:.9rem;}
    .brand-cta{margin-top:14px;}
    .project-card{min-height:84px;padding:12px 10px;}
    .project-grid{gap:0;}
    .team-grid{gap:16px;}
    .team-card{padding:14px;}
    .team-avatar{margin-bottom:12px;}
    .team-card h3{font-size:1.15rem;}
    .team-role{margin-bottom:10px;}
    .team-card p{margin-bottom:12px;}
    .contact-card{padding:12px 14px;margin-bottom:8px;}
    .loc-visual{margin-top:16px;}
    footer{padding:24px 0 14px;}
    .foot-top{gap:18px;padding-bottom:14px;margin-bottom:0;}
    .foot-bottom{padding-top:12px;gap:4px;}
    .lc{margin-top:0;}
  }
  @supports not (container-type:inline-size){.hero h1{white-space:normal;font-size:clamp(1.7rem,6vw,3rem);}}
  .team-card p{min-height:calc(6 * 1.68em);}
  .team-tags{margin-top:auto;}
  @media(max-width:920px){.team-card p{min-height:0;}}
  h1 .accent,.h2 .accent{color:#2f5fd6;font-weight:800;background:linear-gradient(90deg,#2f5fd6,#6f8fc4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone;}
  /* all section headings share the hero H1 size (--hs is synced from the H1 by script) */
  .h2,#leistungen .h2,#about .about-text .h2{font-size:var(--hs,2rem)!important;}
  @media(max-width:1100px){#leistungen .h2,#about .about-text .h2{white-space:normal!important;}}
  .net-head{grid-column:1/-1;}
  @media(min-width:921px){.net-head .h2{white-space:nowrap;}.net-wrap{row-gap:6px;}}
  /* services on small screens: same three cards as desktop, side by side, swipeable */
  @media(min-width:701px) and (max-width:920px){
    .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:12px !important;}
    .svc-grid .svc-card{padding:20px 16px !important;}
    .svc-grid .svc-card h3{font-size:1.02rem !important;}
    .svc-grid .svc-card > p{font-size:.78rem;}
    .svc-grid .svc-list li{font-size:.82rem !important;}
  }
  @media(max-width:700px){
    .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important;margin:0 -8px;}
    .svc-grid .svc-card{padding:9px 6px 6px !important;border-radius:12px;}
    .svc-grid .svc-icon-row{flex-direction:column;align-items:flex-start;gap:3px;margin-bottom:6px;}
    .svc-grid .svc-icon{width:26px;height:26px;border-radius:7px;}
    .svc-grid .svc-icon svg{width:15px;height:15px;}
    .svc-grid .svc-icon-label{font-size:.54rem;letter-spacing:.06em;}
    .svc-grid .svc-card h3{font-size:min(.8rem,3.3vw) !important;line-height:1.18;margin-bottom:5px !important;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere;min-height:2.36em;}
    .svc-grid .svc-card > p{font-size:min(.66rem,2.85vw);line-height:1.32;padding:6px 0;margin-bottom:5px;min-height:calc(6 * 1.32em + 12px);hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere;color:#1f2b45;}
    .svc-grid .svc-list{gap:0;}
    .svc-grid .svc-list li{padding:3px 0 !important;font-size:min(.66rem,2.85vw) !important;line-height:1.28 !important;gap:4px;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere;color:#0d1b3a;font-weight:500;}
    .svc-grid .svc-list li::before{width:4px;height:4px;margin-top:4px;}
  }
  @media(max-width:700px){#leistungen .svc-note{white-space:nowrap;font-size:min(.88rem,2.95vw);letter-spacing:-.01em;margin-top:12px;}}
  @media(max-width:920px){
    #netzwerk .net-wrap{gap:0 !important;}
    #netzwerk .net-head .h2{margin-bottom:10px !important;}
    #netzwerk .net-wrap p.sub{margin:0 0 8px !important;}
    #netzwerk .net-visual img{margin-top:-1% !important;margin-bottom:-5% !important;}
  }
  /* "Ihr Zertifikat hier?" – plus on a blank white sheet, like the certificate thumbnails */
  .cert-slot{border:1px solid var(--edge) !important;background:rgba(255,255,255,.72) !important;}
  .cert-slot .imgwrap{background:#fafbff !important;}
  .cert-slot .sheet{height:100%;aspect-ratio:.72;background:#fff;border:1px solid #dfe5f3;box-shadow:0 4px 14px rgba(13,27,58,.10);display:flex;align-items:center;justify-content:center;border-radius:2px;}
  .cert-slot .plus{font-size:2.2rem;font-weight:300;color:var(--blue);line-height:1;}
  .cert-slot .cap{border-top:1px solid var(--edge) !important;}
  /* certificate lightbox */
  .cert-card:not(.cert-slot){cursor:zoom-in;}
  .lb{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;background:rgba(13,27,58,0);transition:background .4s ease,backdrop-filter .4s ease,-webkit-backdrop-filter .4s ease;-webkit-tap-highlight-color:transparent;}
  .lb.on{display:flex;}
  .lb.open{background:rgba(13,27,58,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
  .lb-fig{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px;max-width:92vw;}
  .lb-img{display:block;background:#fff;border-radius:6px;box-shadow:0 30px 80px rgba(0,0,0,.45);transform-origin:50% 50%;will-change:transform,opacity;cursor:zoom-out;}
  .lb-cap{color:#fff;font-weight:600;font-size:.95rem;text-align:center;opacity:0;transition:opacity .3s ease .15s;}
  .lb.open .lb-cap{opacity:1;}
  .lb-x{position:absolute;top:14px;right:16px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;font-size:1.6rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .3s ease,background .2s;}
  .lb.open .lb-x{opacity:1;}
  .lb-x:hover{background:rgba(255,255,255,.28);}
  @media(prefers-reduced-motion:reduce){.lb,.lb-cap,.lb-x{transition:none;}}
  /* header: collapse to burger before the full menu runs out of room */
  .navlinks a{white-space:nowrap;}
  @media(min-width:921px) and (max-width:1200px){
    .navlinks{display:none;}
    .burger{display:block;}
    .nav > .cta{margin-left:auto;margin-right:14px;}
  }
  /* brands: typography first – small quiet icon, name in the lead */
  .brand-tile{gap:9px;padding:20px 10px 18px;}
  .brand-tile .ic{width:17px;height:17px;stroke-width:1.6;opacity:.55;}
  .brand-tile .name{font-size:1.1rem;font-weight:800;letter-spacing:-.015em;line-height:1.15;color:var(--navy);}
  .brand-tile:hover .ic{opacity:.9;color:#2f5fd6;stroke:#2f5fd6;}
  @media(max-width:600px){
    .brand-tile{padding:12px 4px 10px;gap:6px;}
    .brand-tile .ic{width:14px;height:14px;}
    .brand-tile .name{font-size:min(.95rem,3.5vw);letter-spacing:-.03em;}
  }
  /* section headings match the hero H1 in size, tracking and leading */
  .h2,#leistungen .h2,#about .about-text .h2{letter-spacing:-.04em !important;line-height:1.06 !important;}
  /* location card: text + route on the left, office entrance photo with a curved edge on the right */
  .loc-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;padding:0 !important;overflow:hidden;background:linear-gradient(180deg,#f5f8ff,#eef1f8);}
  .loc-body{padding:16px 0 16px 22px;position:relative;z-index:1;}
  .loc-eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#6f8fc4;}
  .loc-city{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:800;letter-spacing:-.04em;line-height:1.05;color:var(--navy);margin:2px 0 10px;}
  .loc-card .route{display:flex;flex-direction:column;justify-content:flex-start;margin:0;gap:9px;position:relative;}
  .loc-card .route::before{content:"";position:absolute;left:17px;top:18px;bottom:18px;width:0;border-top:0;border-left:2px solid #1f3f7a;}
  .loc-card .route li{flex:none;flex-direction:row;align-items:center;text-align:left;gap:14px;padding:0;position:relative;}
  .loc-card .route .rt-ic{width:36px;height:36px;border-radius:50%;background:#173b7a;color:#fff;display:flex;align-items:center;justify-content:center;flex:none;position:relative;z-index:1;}
  .loc-card .route .rt-ic .ci{box-sizing:border-box;width:20px;height:20px;padding:0;margin:0;background:none;border:0;color:#fff;}
  .loc-card .route li div{display:flex;flex-direction:column;gap:1px;min-width:0;}
  .loc-card .route li b{font-size:.95rem;font-weight:800;color:var(--navy);line-height:1.2;}
  .loc-card .route li div > a{font-size:.84rem;color:var(--muted);}
  .loc-card .route li div > a:hover{color:var(--blue);}
  .loc-card .route li div > span{font-size:.84rem;color:var(--muted);}
  .loc-photo{position:relative;min-height:0;}
  .loc-photo::before{content:"";position:absolute;inset:0 0 0 -14px;background:linear-gradient(160deg,#cfdcf7,#b9ccf1);}
  .loc-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;}
  @media(max-width:600px){
    .loc-card{grid-template-columns:1fr;}
    .loc-body{padding:18px 18px 14px;}
    .loc-photo{min-height:0;height:170px;}
    .loc-photo::before{display:none;}
  }
  /* contact: icons share one top line with the card headings */
  .contact-card.cc-row{align-items:flex-start;}
  /* footer: quiet Berlin line-art on the right */
  .foot-sky{align-self:stretch;width:100%;opacity:.6;position:relative;min-height:110px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);}
  .foot-sky img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 100%;}
  @media(min-width:921px){
    .foot-top{grid-template-columns:clamp(250px,23.6vw,340px) minmax(0,1fr) clamp(250px,23.6vw,340px);column-gap:clamp(20px,2.8vw,40px);}
    .foot-top > .foot-sky{order:2;}
    .foot-top > .foot-nav-col{order:3;width:100%;}
    .foot-top .foot-nav{grid-template-columns:1fr 1fr;justify-content:stretch;}
  }
  @media(max-width:920px){.foot-sky{max-width:520px;height:120px;}}
  /* contact: wide location card across the whole row */
  .contact-wrap > .loc-card{grid-column:1/-1;}
  @media(min-width:921px){
    .contact-wrap > .loc-card{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);min-height:0;max-width:1040px;width:100%;justify-self:center;}
    .contact-wrap > .loc-card .loc-body{padding:20px 0 20px 34px;display:flex;flex-direction:column;justify-content:center;}
    .contact-wrap > .loc-card .loc-city{font-size:clamp(2.2rem,3.6vw,3rem);margin:2px 0 14px;}
    .contact-wrap > .loc-card .route{gap:10px;}
    .contact-wrap > .loc-card .route .rt-ic{width:42px;height:42px;}
    .contact-wrap > .loc-card .route::before{left:20px;top:21px;bottom:21px;}
    .contact-wrap > .loc-card .route li b{font-size:1.05rem;}
    .contact-wrap > .loc-card .route li div > span,.contact-wrap > .loc-card .route li div > a{font-size:.92rem;}
    .contact-wrap > .loc-card .loc-eyebrow{font-size:.85rem;}
  }
  /* contact: button and the last card end on the same line */
  @media(min-width:921px){
    .contact-left .btnrow{margin-top:auto !important;margin-bottom:0 !important;padding-top:26px;}
    .contact-right{display:flex;flex-direction:column;gap:12px;}
    .contact-right > .cc-list{flex:1 1 auto;margin:0 !important;}
  }
  /* office photo develops out of white when the card scrolls into view */
  .loc-photo::before{opacity:0;}
  .loc-card.in .loc-photo::before{opacity:1;transition:opacity 1.6s ease-out .25s;}
  .loc-photo img{opacity:0;filter:grayscale(1) brightness(1.5);}
  .loc-card.in .loc-photo img{opacity:1;filter:none;transition:opacity 1s ease-out .25s,filter 1.8s ease-out .25s;}
  @media(prefers-reduced-motion:reduce){.loc-photo::before{opacity:1 !important;transition:none !important;}.loc-photo img{opacity:1 !important;filter:none !important;transform:none !important;transition:none !important;}}
  /* contact: one card with three rows; wide office card with route button */
  .cc-list{padding:6px 26px !important;display:flex;flex-direction:column;}
  .cc-item{display:flex;align-items:center;gap:18px;padding:16px 0;flex:1 1 auto;}
  .cc-item + .cc-item{border-top:1px solid var(--edge);}
  .cc-item h4{margin:0 0 4px;}
  .cc-dot{color:#9aa8c7;margin:0 4px;}
  .loc-route-btn{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:9px 18px;border:1px solid #a9bbe0;border-radius:999px;background:#fff;color:var(--navy) !important;font-weight:700;font-size:.9rem;width:max-content;transition:background .25s,border-color .25s;}
  .loc-route-btn .ci{width:18px;height:18px;}
  .loc-route-btn:hover{background:var(--blue-light);border-color:var(--blue);}
  @media(min-width:921px){
    .contact-wrap > .loc-card{max-width:none;}
  }
  /* contact on phones: compact rows, each phone number on its own line */
  @media(max-width:920px){
    .cc-dot{display:none;}
    .cc-item p a[href^="tel"]{display:block;white-space:nowrap;}
  }
  @media(max-width:600px){
    .cc-list{padding:2px 16px !important;}
    .cc-item{padding:10px 0;gap:14px;}
    .cc-item h4{margin:0 0 1px;font-size:1rem;}
    .cc-item p,.cc-item p a{font-size:.94rem;line-height:1.35;}
    .cc-list .cc-ic{width:36px;height:36px;}
    .contact-left .btnrow{padding-top:6px;}
    .contact-wrap{gap:14px;}
    .loc-body{padding:14px 16px 12px;}
  }
  /* footer bottom row on the same three-part grid as the columns above */
  @media(min-width:921px){
    .foot-bottom{grid-template-columns:clamp(250px,23.6vw,340px) minmax(0,1fr) clamp(250px,23.6vw,340px);column-gap:clamp(20px,2.8vw,40px);}
    .foot-bottom > :nth-child(2){justify-self:center;text-align:center;}
    .foot-bottom > :last-child{justify-self:start;text-align:left;}
  }
  /* route icons: gate, S-Bahn, office – all the same size */
  @media(min-width:921px){
    .contact-wrap > .loc-card .route .rt-ic .ci{width:23px;height:23px;}
  }
  /* request form (Wunschmarke) */
  .req-overlay{position:fixed;inset:0;z-index:1100;display:none;align-items:flex-start;justify-content:center;padding:36px 16px;overflow-y:auto;background:rgba(13,20,38,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
  .req-overlay.open{display:flex;}
  .req-panel{position:relative;background:#fff;border-radius:18px;width:100%;max-width:620px;padding:34px 34px 30px;box-shadow:0 30px 80px rgba(0,0,0,.35);margin:auto;}
  .req-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;border:1px solid var(--border);background:#fff;font-size:1.05rem;cursor:pointer;color:var(--navy);line-height:1;}
  .req-close:hover{background:var(--blue-light);}
  .req-panel h2{margin:0 0 6px;font-size:1.5rem;color:var(--navy);letter-spacing:-.02em;padding-right:40px;}
  .req-sub{margin:0 0 18px;color:var(--muted);font-size:.95rem;line-height:1.5;}
  .req-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
  .req-f{display:block;margin-bottom:14px;}
  .req-f > span{display:block;font-size:.84rem;font-weight:700;color:var(--navy);margin-bottom:6px;}
  .req-f input,.req-f textarea{width:100%;box-sizing:border-box;border:1px solid #cdd8ee;border-radius:10px;padding:11px 13px;font:inherit;font-size:.96rem;color:var(--navy);background:#fbfcff;transition:border-color .2s,box-shadow .2s;}
  .req-f textarea{resize:vertical;min-height:110px;}
  .req-f input:focus,.req-f textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(61,90,146,.16);background:#fff;}
  .req-f .bad{border-color:#d64545;}
  .req-alt{margin:12px 0 0;text-align:center;font-size:.9rem;color:var(--muted);}
  .req-alt a{color:var(--navy);font-weight:800;text-decoration:underline;text-underline-offset:3px;}
  .req-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
  .req-consent{display:flex;gap:10px;align-items:flex-start;font-size:.84rem;color:var(--muted);line-height:1.45;margin:2px 0 14px;}
  .req-consent input{margin-top:3px;flex:none;width:17px;height:17px;}
  .req-consent a{color:var(--blue);text-decoration:underline;}
  .req-err{margin:0 0 12px;color:#b3261e;font-size:.88rem;font-weight:600;}
  .req-err a{color:#b3261e;text-decoration:underline;}
  .req-send{border:0;cursor:pointer;width:100%;justify-content:center;}
  .req-send[disabled]{opacity:.65;cursor:progress;}
  .req-done{text-align:center;padding:14px 4px 6px;}
  .req-ok{width:58px;height:58px;border-radius:50%;margin:0 auto 14px;background:#e6f4ec;color:#1f7a4a;font-size:1.8rem;display:flex;align-items:center;justify-content:center;font-weight:700;}
  .req-done p{color:var(--muted);margin:0 0 18px;}
  .req-done-close{border:0;cursor:pointer;}
  @media(max-width:600px){
    .req-overlay{padding:12px;}
    .req-panel{padding:26px 18px 20px;border-radius:14px;}
    .req-row{grid-template-columns:1fr;gap:0;}
    .req-panel h2{font-size:1.25rem;}
  }
  /* phones & tablets: card rows keep the desktop arrangement (services 3, projects 4, certificates 4, team 2) */
  @media(max-width:920px){
    .cert-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:6px !important;}
    .cert-card{border-radius:8px;}
    .cert-card .imgwrap{height:clamp(80px,17vw,150px) !important;padding:5px !important;}
    .cert-card .cap{font-size:min(.78rem,2.4vw) !important;padding:6px 3px !important;line-height:1.25;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere;}
    .cert-slot .sheet{aspect-ratio:.72;}
    .cert-slot .plus{font-size:1.4rem;}
    .project-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:6px !important;}
    .project-card{min-height:70px !important;padding:8px 4px !important;gap:3px;}
    .project-card img{max-height:clamp(30px,8vw,60px);}
    .project-card .name{font-size:min(.8rem,2.5vw) !important;line-height:1.2;overflow-wrap:anywhere;hyphens:auto;-webkit-hyphens:auto;}
    .project-card .cat-ic{font-size:1.2rem;}
    .team-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:8px !important;}
    .team-card{padding:10px !important;}
    .team-avatar{width:100% !important;height:auto !important;aspect-ratio:5/6;margin-bottom:8px !important;}
    .team-card h3{font-size:min(1.1rem,3.6vw) !important;margin:0 0 2px !important;}
    .team-role{font-size:min(.8rem,2.6vw) !important;}
    .team-card p{font-size:min(.9rem,2.9vw) !important;line-height:1.42 !important;margin-bottom:8px !important;min-height:0 !important;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere;}
    .team-tags{gap:4px !important;}
    .team-tags .pill{font-size:min(.7rem,2.3vw) !important;padding:3px 7px !important;}
  }
  /* highlighted words inside body text: bolder and clearer */
  p .accent,.sub .accent,.lead .accent,.svc-note .accent,.brand-cta .accent,.about-text .accent,.about-text p strong{font-weight:900 !important;color:#1e4a9a !important;}
  .about-text p strong{color:inherit !important;}
  .brand-cta a{font-weight:900 !important;color:#1e4a9a !important;text-decoration:underline;text-underline-offset:3px;}
  .lead-br{display:none;}
  @media(max-width:700px){.lead-br{display:block;content:"";margin-top:6px;}}
  /* services dropdown + card links */
  .nav-dd{position:relative;}
  .nav-dd > a::after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.7;}
  .nav-dd-menu{position:absolute;left:-14px;top:100%;min-width:230px;padding:8px;margin-top:10px;background:#fff;border:1px solid var(--edge);border-radius:12px;box-shadow:0 18px 44px rgba(13,27,58,.14);opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .2s,transform .2s,visibility .2s;z-index:120;display:flex;flex-direction:column;}
  .nav-dd-menu::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px;}
  .nav-dd:hover .nav-dd-menu,.nav-dd:focus-within .nav-dd-menu{opacity:1;visibility:visible;transform:none;}
  .nav-dd-menu a{padding:10px 12px;border-radius:8px;white-space:nowrap;opacity:1;color:var(--navy);font-weight:700;font-size:.92rem;}
  .nav-dd-menu a:hover{background:var(--blue-light);color:var(--blue);}
  .mobile-menu a.sub-link{padding:10px 4px 10px 22px;font-size:.95rem;font-weight:600;color:var(--blue);}
  .svc-more{display:inline-block;margin-top:14px;font-weight:800;font-size:.9rem;color:#1e4a9a;text-decoration:none;}
  .svc-more:hover{text-decoration:underline;text-underline-offset:3px;}
  .svc-card{display:flex;flex-direction:column;}
  .svc-card .svc-more{margin-top:auto;padding-top:14px;}
  @media(max-width:700px){.svc-grid .svc-more{font-size:.78rem;padding-top:6px;margin-top:auto;}}
  /* service pages */
  .crumbs{font-size:.84rem;color:var(--muted);margin:0 0 18px;}
  .crumbs a{color:var(--muted);}
  .crumbs a:hover{color:var(--blue);text-decoration:underline;}
  .sp-hero{padding:46px 0 38px;background:radial-gradient(900px 420px at 88% -10%,rgba(47,95,214,.10),transparent 62%),var(--bg-soft);}
  .sp-h1{margin:0 0 14px;font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:800;letter-spacing:-.035em;line-height:1.1;color:var(--navy);max-width:880px;}
  .sp-lead{margin:0 0 24px;font-size:1.1rem;line-height:1.6;color:#1f2b45;max-width:760px;font-weight:500;}
  .sp-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
  .sp-cta .btn-primary{border:0;cursor:pointer;}
  .btn-ghost{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border:1px solid #a9bbe0;border-radius:999px;background:#fff;color:var(--navy);font-weight:700;}
  .btn-ghost:hover{background:var(--blue-light);border-color:var(--blue);}
  .sp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:26px;}
  .sp-card{background:#fff;border:1px solid var(--edge);border-radius:var(--radius);padding:24px 24px 22px;box-shadow:var(--soft-shadow,0 8px 24px rgba(13,27,58,.05));}
  .sp-card h3{margin:0 0 8px;font-size:1.12rem;color:var(--navy);}
  .sp-card p{margin:0;color:#1f2b45;line-height:1.6;font-size:.98rem;}
  .sp-steps{counter-reset:s;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0 0;padding:0;list-style:none;}
  .sp-steps li{position:relative;background:#fff;border:1px solid var(--edge);border-radius:var(--radius);padding:22px 18px 18px;counter-increment:s;}
  .sp-steps li::before{content:counter(s);display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:#173b7a;color:#fff;font-weight:800;margin-bottom:12px;}
  .sp-steps b{display:block;color:var(--navy);margin-bottom:4px;}
  .sp-steps span{color:#1f2b45;font-size:.94rem;line-height:1.55;}
  .sp-faq{margin-top:22px;display:grid;gap:10px;max-width:900px;}
  .sp-faq details{background:#fff;border:1px solid var(--edge);border-radius:12px;padding:0 20px;}
  .sp-faq summary{cursor:pointer;list-style:none;padding:16px 0;font-weight:800;color:var(--navy);display:flex;justify-content:space-between;gap:16px;}
  .sp-faq summary::-webkit-details-marker{display:none;}
  .sp-faq summary::after{content:"+";font-weight:700;color:var(--blue);font-size:1.3rem;line-height:1;}
  .sp-faq details[open] summary::after{content:"–";}
  .sp-faq details p{margin:0 0 16px;color:#1f2b45;line-height:1.6;}
  .sp-note{margin:22px 0 0;max-width:900px;color:var(--muted);font-size:.9rem;line-height:1.55;}
  .sp-cta-band{background:linear-gradient(160deg,#0d1b3a,#132a5c);color:#fff;border-radius:16px;padding:32px 30px;display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap;}
  .sp-cta-band h2{margin:0 0 6px;font-size:1.5rem;letter-spacing:-.02em;}
  .sp-cta-band p{margin:0;color:#c3cfeb;max-width:560px;}
  .sp-cta-band .btn-primary{background:#fff;color:#0d1b3a;border:0;cursor:pointer;}
  .sp-more{margin-top:26px;display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
  .sp-more > span{font-weight:800;color:var(--navy);margin-right:6px;}
  .sp-more a{padding:9px 16px;border:1px solid #a9bbe0;border-radius:999px;font-weight:700;color:var(--navy);background:#fff;}
  .sp-more a:hover{background:var(--blue-light);border-color:var(--blue);}
  .sp-hero + .section{padding-top:44px;}
  @media(max-width:920px){.sp-steps{grid-template-columns:repeat(2,minmax(0,1fr));}.sp-grid{grid-template-columns:1fr;}}
  @media(max-width:600px){.sp-hero{padding:26px 0 24px;}.sp-lead{font-size:1rem;}.sp-steps{grid-template-columns:1fr;}.sp-card{padding:18px;}.sp-cta-band{padding:22px 18px;}.crumbs{font-size:.78rem;}.btn-ghost{padding:11px 18px;}}

/* Mobile: Kopfzeile beim Scrollen vollständig sichtbar halten */
html{overflow-x:clip;}
header{top:0;-webkit-transform:translateZ(0);transform:translateZ(0);will-change:transform;}
/* Zertifikate: Vorschaubilder im Hochformat, nicht gestreckt */
.cert-grid .cert-card .imgwrap img{width:auto !important;height:100% !important;max-width:100% !important;max-height:100% !important;flex:0 0 auto !important;align-self:center !important;object-fit:contain;}
