:root{--headings-color:#0d1b2a;--text-color:rgba(13,27,42,0.62);}
    .logo img,.nav-logo img{mix-blend-mode:multiply;} .main-footer .logo img{filter:none;mix-blend-mode:normal;max-height:44px;}
    .char-animation,.char-animation *{opacity:1!important;visibility:visible!important;transform:none!important;}
    @keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
    @keyframes zoomIn{from{transform:scale(1.07);opacity:0}to{transform:scale(1);opacity:1}}
    @keyframes shimmer-sweep{0%{transform:translateX(-150%) skewX(-15deg)}100%{transform:translateX(250%) skewX(-15deg)}}
    @keyframes fadeInUp{0%{transform:translateY(55px);opacity:0}62%{transform:translateY(-9px);opacity:1}78%{transform:translateY(5px)}91%{transform:translateY(-2px)}100%{transform:translateY(0)}}
    @keyframes fadeInLeft{0%{transform:translateX(-70px);opacity:0}60%{transform:translateX(11px);opacity:1}78%{transform:translateX(-7px)}92%{transform:translateX(3px)}100%{transform:translateX(0)}}
    @keyframes fadeInRight{0%{transform:translateX(70px);opacity:0}60%{transform:translateX(-11px);opacity:1}78%{transform:translateX(7px)}92%{transform:translateX(-3px)}100%{transform:translateX(0)}}
    @keyframes fadeInDown{0%{transform:translateY(-45px);opacity:0}62%{transform:translateY(8px);opacity:1}80%{transform:translateY(-4px)}100%{transform:translateY(0)}}
    @keyframes hz-slide-bounce-left{0%{transform:translateX(-110%);opacity:0}55%{transform:translateX(18px);opacity:1}72%{transform:translateX(-10px);opacity:1}85%{transform:translateX(6px);opacity:1}94%{transform:translateX(-2px);opacity:1}100%{transform:translateX(0);opacity:1}}
    @keyframes hz-slide-bounce-right{0%{transform:translateX(110%);opacity:0}55%{transform:translateX(-18px);opacity:1}72%{transform:translateX(10px);opacity:1}85%{transform:translateX(-6px);opacity:1}94%{transform:translateX(2px);opacity:1}100%{transform:translateX(0);opacity:1}}
    [data-hz-anim]{opacity:0;will-change:transform,opacity}
    [data-hz-anim].hz-in{animation-duration:0.92s;animation-fill-mode:both;animation-timing-function:cubic-bezier(0.22,1,0.36,1)}
    [data-hz-anim="left"].hz-in{animation-name:hz-slide-bounce-left}
    [data-hz-anim="right"].hz-in{animation-name:hz-slide-bounce-right}
    .preloader:before{display:none!important;content:none!important;} .preloader:after{display:none!important;}

    /* HERO */
    .hz-hero{position:relative;min-height:88vh;display:flex;align-items:center;overflow:hidden;}
    .hz-hero-bg{position:absolute;inset:0;z-index:0;} .hz-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%;animation:zoomIn 1.3s forwards;}
    .hz-hero-ov{position:absolute;inset:0;z-index:1;background: linear-gradient(135deg, rgba(30, 127, 186, 0.75) 0%, rgba(20, 90, 135, 0.65) 50%, rgba(44, 151, 222, 0.35) 100%);}
    .hz-hero-cnt{position:relative;z-index:2;padding:6rem 0 5rem;width:100%;}
    .hz-bc{font-size:0.76rem;color:rgba(255,255,255,0.38);display:flex;align-items:center;gap:0.4rem;margin-bottom:1.1rem;} .hz-bc a{color:rgba(255,255,255,0.5);text-decoration:none;} .hz-bc .s{opacity:0.28;}
    .hz-ey{display:inline-flex;align-items:center;gap:0.55rem;background:rgba(30,127,186,0.2);border:1px solid rgba(var(--theme-accent-light-rgb), 0.4);color:rgba(255,255,255,0.92);font-size:0.7rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:0.32rem 1rem;border-radius:40px;margin-bottom:1.4rem;}
    .hz-hero h1{font-family:var(--heading-font-family);font-size:clamp(2.8rem,6vw,5.2rem);color:#fff;line-height:1.04;font-weight:700;text-transform:uppercase;margin-bottom:0.8rem;}
    .hz-hero h1 em{font-style:normal;color:var(--theme-accent-light);}
    .hz-hero-sub{font-size:0.95rem;color:rgba(255,255,255,0.6);line-height:1.78;max-width:520px;margin-bottom:2rem;}
    .hz-hero-btns{display:flex;gap:0.8rem;flex-wrap:wrap;margin-bottom:2.5rem;}
    .hz-stats{display:flex;gap:2.2rem;flex-wrap:wrap;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.1);}
    .hz-stat .n{font-family:var(--heading-font-family);font-size:2.4rem;color:var(--theme-accent-light);line-height:1;font-weight:700;}
    .hz-stat .l{font-size:0.65rem;color:rgba(255,255,255,0.42);text-transform:uppercase;letter-spacing:0.06em;margin-top:0.1rem;}
    @media(max-width:768px){.hz-hero{min-height:90svh}.hz-hero-cnt{padding:4rem 1.2rem 3.5rem}.hz-hero h1{font-size:clamp(2rem,9vw,3.2rem)}.hz-hero-btns{flex-direction:column;gap:0.6rem}.hz-stats{gap:1.5rem}}

    /* SHARED HEADER */
    .hz-sh{margin-bottom:2.2rem;}
    .hz-sh .st{font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.13em;color:var(--theme-color1);display:block;margin-bottom:0.45rem;}
    .hz-sh h2{font-family:var(--heading-font-family);font-size:clamp(1.55rem,3.2vw,2.4rem);font-weight:700;color:var(--headings-color);line-height:1.18;margin:0;}
    .hz-sh p{font-size:0.9rem;color:var(--text-color);line-height:1.75;margin:0.7rem 0 0;max-width:580px;}

    /* WARUM JETZT — DARK */
    .hz-warum { background: linear-gradient(135deg, #1e7fba 0%, #145a87 100%);padding:5rem 0;}
    .hz-warum-label{font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--theme-accent-light);display:block;text-align:center;margin-bottom:0.5rem;}
    .hz-warum h2{font-family:var(--heading-font-family);font-size:clamp(1.5rem,3vw,2.4rem);color:#fff;font-weight:700;text-align:center;margin-bottom:0.6rem;line-height:1.2;}
    .hz-warum-intro { font-size: 0.95rem; color: rgba(255,255,255,0.90); text-align: center; max-width: 600px; margin: 0 auto 3rem; line-height: 1.72; }
    .hz-warum-card { background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.24); border-radius: 16px; padding: 2rem 1.8rem; transition: all 0.25s; height: 100%; backdrop-filter: blur(6px); }
    .hz-warum-card:hover { background: rgba(255,255,255,0.18); border-color: #ffffff; }
    .hz-warum-ico { width: 52px; height: 52px; border-radius: 14px; background: rgba(255,255,255,0.20); display: grid; place-items: center; font-size: 1.3rem; color: #ffffff; margin-bottom: 1.2rem; }
    .hz-warum-card h4{font-family:var(--heading-font-family);font-size:1.05rem;font-weight:700;color:#fff;margin-bottom:0.6rem;}
    .hz-warum-card p { font-size: 0.88rem; color: rgba(255,255,255,0.92); line-height: 1.75; margin: 0; }

    /* PRODUCT SPLITS */
    .hz-prod{padding:5rem 0;}
    .hz-prod-img{border-radius:18px;overflow:hidden;height:360px;min-height:0;position:relative;}
    .hz-prod-img img{width:100%;height:100%;object-fit:cover;display:block;}
    .hz-prod-img.hz-prod-img-diagram{background:#fff;border:1px solid rgba(30,127,186,0.12);}
    .hz-prod-img.hz-prod-img-diagram img{object-fit:contain;}
    .hz-prod-badge{position:absolute;top:1.2rem;left:1.2rem;background:rgba(20,90,135,0.88);color:#fff;font-size:0.68rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:0.32rem 1rem;border-radius:20px;backdrop-filter:blur(6px);}
    .hz-prod-body{padding:1rem 0 1rem 2rem;}
    .hz-prod-body-rev{padding:1rem 2rem 1rem 0;}
    .hz-prod-ico{width:52px;height:52px;border-radius:14px;background:rgba(30,127,186,0.08);display:grid;place-items:center;font-size:1.3rem;color:var(--theme-color1);margin-bottom:1.2rem;}
    .hz-prod-body h3,.hz-prod-body-rev h3{font-family:var(--heading-font-family);font-size:clamp(1.4rem,2.8vw,2rem);font-weight:700;color:var(--headings-color);margin-bottom:0.6rem;line-height:1.2;}
    .hz-prod-body p,.hz-prod-body-rev p{font-size:0.9rem;color:var(--text-color);line-height:1.78;margin-bottom:1.4rem;}
    .hz-feat-row{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.8rem;}
    .hz-feat-item{display:flex;align-items:flex-start;gap:0.8rem;}
    .hz-feat-item .ico{width:34px;height:34px;border-radius:10px;background:rgba(30,127,186,0.08);display:grid;place-items:center;font-size:0.85rem;color:var(--theme-color1);flex-shrink:0;}
    .hz-feat-item .txt h6{font-family:var(--heading-font-family);font-size:0.88rem;font-weight:700;color:var(--headings-color);margin-bottom:0.15rem;}
    .hz-feat-item .txt p{font-size:0.82rem;color:var(--text-color);line-height:1.6;margin:0;}
    .hz-prod-tags{display:flex;flex-wrap:wrap;gap:0.45rem;margin-bottom:1.6rem;}
    .hz-prod-tag{background:rgba(30,127,186,0.07);border:1px solid rgba(30,127,186,0.16);color:#1e7fba;font-size:0.7rem;font-weight:600;padding:0.28rem 0.75rem;border-radius:20px;}
    .hz-prod-cta{display:inline-flex;align-items:center;gap:0.5rem;color:var(--theme-color1);font-size:0.85rem;font-weight:700;text-decoration:none;cursor:pointer;border:none;background:none;padding:0;font-family:inherit;transition:gap 0.2s;}
    .hz-prod-cta:hover{gap:0.8rem;}
    @media(max-width:992px){.hz-prod-img{height:320px}.hz-prod-body,.hz-prod-body-rev{padding:2rem 0 0;}}
    @media(max-width:576px){.hz-prod-img{height:260px}}

    /* EINSPARUNGEN STRIP — DARK */
    .hz-einspar { background: linear-gradient(135deg, #1e7fba 0%, #145a87 100%);padding:5rem 0;position:relative;overflow:hidden;}
    .hz-einspar::before{content:'';position:absolute;top:-100px;right:-100px;width:400px;height:400px;border-radius:50%;background:rgba(30,127,186,0.18);pointer-events:none;}
    .hz-einspar::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.025),transparent);animation:shimmer-sweep 6s ease-in-out infinite;pointer-events:none;}
    .hz-einspar-label{font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:var(--theme-accent-light);display:block;margin-bottom:0.5rem;position:relative;z-index:1;}
    .hz-einspar h2{font-family:var(--heading-font-family);font-size:clamp(1.4rem,3vw,2.2rem);color:#fff;font-weight:700;margin-bottom:0.5rem;position:relative;z-index:1;line-height:1.2;}
    .hz-einspar-sub { font-size: 0.92rem; color: rgba(255,255,255,0.90); line-height: 1.7; max-width: 520px; position: relative; z-index: 1; margin-bottom: 0; }
    .hz-einspar-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;position:relative;z-index:1;}
    .hz-num-box { background: rgba(255,255,255,0.14); border: 1px solid rgba(255,255,255,0.25); border-radius: 14px; padding: 1.4rem 1.2rem; transition: border-color 0.2s; backdrop-filter: blur(6px); }
    .hz-num-box:hover { background: rgba(255,255,255,0.20); border-color: #ffffff; }
    .hz-num-box .n { font-family: var(--heading-font-family); font-size: 2.1rem; color: #ffffff !important; font-weight: 700; line-height: 1; text-shadow: 0 1px 4px rgba(0,0,0,0.3); }
    .hz-num-box .l { font-size: 0.78rem; color: rgba(255,255,255,0.92); margin-top: 0.4rem; line-height: 1.45; font-weight: 500; }

    /* FÖRDERUNG DARK CARD */
    .hz-foerd{padding:5rem 0;}
    .hz-foerd-inner { background: linear-gradient(135deg, #1e7fba 0%, #145a87 100%);border-radius:22px;padding:3.5rem;position:relative;overflow:hidden;}
    .hz-foerd-inner::before{content:'';position:absolute;top:-80px;right:-80px;width:350px;height:350px;border-radius:50%;background:rgba(30,127,186,0.2);pointer-events:none;}
    .hz-foerd-inner::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.03),transparent);animation:shimmer-sweep 5s ease-in-out infinite;pointer-events:none;}
    .hz-foerd-label{font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.1em;color:var(--theme-accent-light);margin-bottom:0.8rem;position:relative;z-index:1;}
    .hz-foerd-inner h2{font-family:var(--heading-font-family);font-size:clamp(1.5rem,3vw,2.2rem);color:#fff;font-weight:700;margin-bottom:0.6rem;line-height:1.2;position:relative;z-index:1;}
    .hz-foerd-inner p { font-size: 0.95rem; color: rgba(255,255,255,0.92); line-height: 1.75; margin-bottom: 0; position: relative; z-index: 1; }
    .hz-foerd-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr) !important;
      gap: 1.2rem !important;
      margin-top: 2.2rem;
      position: relative;
      z-index: 1;
    }
    .hz-foerd-box {
      background: rgba(255,255,255,0.14) !important;
      border: 1px solid rgba(255,255,255,0.26) !important;
      border-radius: 14px !important;
      padding: 1.2rem 1rem !important;
      backdrop-filter: blur(6px) !important;
      transition: all 0.2s;
      min-width: 0 !important;
    }
    .hz-foerd-box .amt {
      font-family: 'Oswald', sans-serif !important;
      font-size: 1.22rem !important;
      color: #ffffff !important;
      font-weight: 600 !important;
      line-height: 1.2 !important;
      white-space: nowrap !important;
      hyphens: none !important;
      text-shadow: 0 1px 4px rgba(0,0,0,0.3);
    }
    .hz-foerd-box .lbl {
      font-size: 0.82rem !important;
      color: rgba(255,255,255,0.92) !important;
      margin-top: 0.35rem;
      line-height: 1.45;
      font-weight: 400;
    }
    @media (max-width: 991px) {
      .hz-foerd-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }
    @media (max-width: 576px) {
      .hz-foerd-grid {
        grid-template-columns: 1fr !important;
      }
    }
    .hz-foerd-cta{margin-top:2.2rem;position:relative;z-index:1;}

    /* STEPS GRID */
    .hz-steps{padding:5rem 0;background:#f4f7fb;}
    .hz-step-card{background:#fff;border-radius:16px;padding:1.8rem;border:1px solid rgba(30,127,186,0.08);height:100%;transition:border-color 0.22s,box-shadow 0.22s;}
    .hz-step-card:hover{border-color:rgba(30,127,186,0.25);box-shadow:0 6px 24px rgba(30,127,186,0.1);}
    .hz-step-num{font-family:var(--heading-font-family);font-size:2.8rem;font-weight:700;color:rgba(30,127,186,0.12);line-height:1;margin-bottom:0.8rem;}
    .hz-step-card h5{font-family:var(--heading-font-family);font-size:1rem;font-weight:700;color:var(--headings-color);margin-bottom:0.5rem;}
    .hz-step-card p{font-size:0.86rem;color:var(--text-color);line-height:1.72;margin:0;}

    /* REFERENZEN */
    .hz-ref{padding:5rem 0;}
    .hz-ref-card{border-radius:16px;overflow:hidden;position:relative;height:280px;cursor:pointer;}
    .hz-ref-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.5s;}
    .hz-ref-card:hover img{transform:scale(1.06);}
    .hz-ref-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,18,42,0.9) 0%,rgba(8,18,42,0.04) 65%);transition:background 0.3s;}
    .hz-ref-card:hover .hz-ref-ov{background:linear-gradient(to top,rgba(8,18,42,0.96) 0%,rgba(8,18,42,0.2) 65%);}
    .hz-ref-lbl{position:absolute;bottom:1.1rem;left:1.1rem;right:1.1rem;}
    .hz-ref-lbl span{font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:rgba(255,255,255,0.52);display:block;margin-bottom:0.2rem;}
    .hz-ref-lbl h5{font-family:var(--heading-font-family);font-size:1rem;font-weight:700;margin:0;color:#fff;}

    /* CTA */
    .hz-cta{position:relative;overflow:hidden;padding:5rem 0;}
    .hz-cta-bg{position:absolute;inset:0;z-index:0;} .hz-cta-bg img{width:100%;height:100%;object-fit:cover;}
    .hz-cta-ov{position:absolute;inset:0;z-index:1;background: linear-gradient(135deg, rgba(30, 127, 186, 0.75) 0%, rgba(20, 90, 135, 0.65) 50%, rgba(44, 151, 222, 0.35) 100%);}
    .hz-cta-sh{position:absolute;inset:0;z-index:2;pointer-events:none;}
    .hz-cta-sh::after{content:'';position:absolute;top:0;left:0;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.055),transparent);animation:shimmer-sweep 3.8s ease-in-out infinite;}
    .hz-cta-cnt{position:relative;z-index:3;}
    .hz-cta-cnt h2{font-family:var(--heading-font-family);font-size:clamp(1.5rem,3.2vw,2.4rem);color:#fff;font-weight:700;line-height:1.18;margin-bottom:0.6rem;}
    .hz-cta-cnt p{color:rgba(255,255,255,0.58);font-size:0.92rem;line-height:1.72;margin:0;}
    .hz-cta-btns{display:flex;gap:0.8rem;flex-wrap:wrap;justify-content:flex-end;align-items:center;}
    @media(max-width:768px){.hz-cta-btns{justify-content:flex-start;margin-top:1.5rem}}

    /* FAQ */
    .hz-faq{padding:5rem 0;background:#f4f7fb;}
    .hz-acc-item{background:#fff;border-radius:12px;margin-bottom:0.6rem;border:1px solid rgba(13,27,42,0.08);box-shadow:0 2px 10px rgba(13,27,42,0.05);overflow:hidden;transition:box-shadow 0.22s,border-color 0.22s;}
    .hz-acc-item.open{box-shadow:0 6px 24px rgba(30,127,186,0.13);border-color:rgba(30,127,186,0.24);}
    .hz-acc-trigger{width:100%;background:none;border:none;padding:1.1rem 1.3rem;display:flex;align-items:flex-start;justify-content:space-between;gap:0.8rem;text-align:left;cursor:pointer;}
    .hz-acc-trigger span{font-family:var(--heading-font-family);font-size:0.9rem;font-weight:700;color:var(--headings-color);line-height:1.35;flex:1;}
    .hz-acc-arrow{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:rgba(30,127,186,0.08);display:grid;place-items:center;font-size:0.65rem;color:var(--theme-color1);transition:transform 0.25s,background 0.25s;margin-top:0.05rem;}
    .hz-acc-item.open .hz-acc-arrow{transform:rotate(45deg);background:var(--theme-color1);color:#fff;}
    .hz-acc-body{max-height:0;overflow:hidden;transition:max-height 0.38s ease;}
    .hz-acc-item.open .hz-acc-body{max-height:500px;}
    .hz-acc-body-inner{padding:0 1.3rem 1.3rem;font-size:0.88rem;color:var(--text-color);line-height:1.78;}
