
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:auto}html.lenis,html.lenis body{height:auto}
  .btn, /* button-font-normalized */
  h1,h2,h3,h4,.sec-title,.cta-title,.card-title,.feat-title,.step-title,.prod-title,.faq-q{font-family:'Space Grotesk',sans-serif;}.lenis.lenis-smooth{scroll-behavior:auto}
  body{font-family:'DM Sans',sans-serif;background:#050505;color:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5}
  img{display:block;max-width:100%}a{text-decoration:none;color:inherit}
  ::selection{background:rgba(245,197,0,.35);color:#fff}
  

  /* ACCESSIBILITY: Skip-to-Content */
  .skip-link{position:absolute;top:-100px;left:16px;z-index:9999;background:var(--gold);color:#000;padding:12px 24px;border-radius:8px;font-weight:700;font-size:.9rem;transition:top .2s}
  .skip-link:focus{top:16px}

  /* ACCESSIBILITY: Focus-Visible */
  :focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
  button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}

  /* ACCESSIBILITY: Reduced Motion */
  @media(prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
    
    
    .reveal{opacity:1!important;transform:none!important}
  }
/* VIEW TRANSITIONS API — smooth cross-page navigation */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-fade-out .15s ease-out}
::view-transition-new(root){animation:vt-fade-in .2s ease-in}
@keyframes vt-fade-out{from{opacity:1}to{opacity:0}}
@keyframes vt-fade-in{from{opacity:0}to{opacity:1}}

/* CONTAINER QUERIES — responsive Karten ohne Media Queries */
.card-container{container-type:inline-size}
@container(max-width:300px){.card-container .card-grid{grid-template-columns:1fr}}
@container(min-width:301px){.card-container .card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}

/* SCROLL-DRIVEN ANIMATIONS — leichtgewichtig ohne JS */
@supports(animation-timeline:scroll()){
  .reveal{animation:revealUp linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
  @keyframes revealUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
}

/* CONTENT-VISIBILITY — Browser überspringt Rendering für off-screen Sektionen */
.sec,.faq-wrap,.footer-main,.trust-bar{content-visibility:auto;contain-intrinsic-size:auto 600px}
.hero{content-visibility:visible}/* Hero immer sofort rendern */

/* @STARTING-STYLE — Eingangs-Animationen ohne JavaScript */
@supports(selector(:popover-open)){
  .sec,.trust-badge,.card{
    opacity:1;transition:opacity .6s ease,transform .6s ease;
  }
  @starting-style{
    .sec,.trust-badge,.card{opacity:0;transform:translateY(20px)}
  }
}

/* CSS NESTING — Hover-Effekte für interaktive Elemente */
@supports(selector(&)){
  .btn{
    &:hover{filter:brightness(1.15);transform:translateY(-1px)}
    &:active{transform:translateY(0);filter:brightness(.95)}
  }
  .trust-badge{
    &:hover{transform:translateY(-3px);box-shadow:0 8px 32px rgba(245,197,0,.15)}
  }
}

/* VIEW TRANSITIONS — smooth cross-page animations */
@view-transition{navigation:auto}
::view-transition-old(root){animation:.2s ease-out vt-fade-out}
::view-transition-new(root){animation:.3s ease-in vt-fade-in}
.hero{view-transition-name:hero}
.nav-logo img{view-transition-name:logo}

  /* GRAIN OVERLAY */
  .grain{position:fixed;inset:0;z-index:9000;pointer-events:none;opacity:.018;will-change:auto}
  .grain::after{content:'';position:absolute;inset:-50%;width:200%;height:200%;will-change:transform;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grainAnim 3s steps(4) infinite}
  @keyframes grainAnim{0%{transform:translate(0,0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%,0)}70%{transform:translate(0,15%)}80%{transform:translate(3%,35%)}90%{transform:translate(-10%,10%)}100%{transform:translate(0,0)}}

  /* AMBIENT GLOW ORBS */
  .ambient-orb{position:fixed;border-radius:50%;pointer-events:none;z-index:-1;filter:blur(120px);opacity:0;transition:opacity 2s ease}
  .ambient-orb.visible{opacity:1}
  .ambient-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(245,197,0,.04) 0%,transparent 70%);top:-200px;right:-200px}
  .ambient-orb-2{width:500px;height:500px;background:radial-gradient(circle,rgba(245,197,0,.03) 0%,transparent 70%);bottom:20%;left:-150px}

  /* SCROLL PROGRESS */
  .scroll-progress{position:fixed;top:0;left:0;height:2px;background:var(--gold);z-index:9998;transform-origin:left;transform:scaleX(0);will-change:transform}

  /* CURSOR */
  .cursor{position:fixed;width:10px;height:10px;background:var(--gold);border-radius:50%;pointer-events:none;z-index:9997;transform:translate3d(-50%,-50%,0);transition:width .4s var(--spring),height .4s var(--spring),background .3s,opacity .3s;will-change:transform;box-shadow:0 0 12px rgba(245,197,0,.3)}
  .cursor.hover{width:64px;height:64px;background:rgba(245,197,0,.15);mix-blend-mode:normal;box-shadow:0 0 40px rgba(245,197,0,.1)}
  .cursor-label{position:fixed;pointer-events:none;z-index:9997;font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);opacity:0;transform:translate(-50%,-50%);transition:opacity .3s}
  .cursor.hover+.cursor-label{opacity:1}
  @media(max-width:1024px){.cursor,.cursor-label{display:none}}

  /* PRELOADER */
  
  /* QUOTES STAGE */
  
  
  .pq-stars{font-size:clamp(1.4rem,2.5vw,2rem);color:#1dbf73;letter-spacing:4px;margin-bottom:10px}
  .pq-source{font-family:'Space Grotesk',sans-serif;font-size:clamp(.65rem,1vw,.8rem);font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:24px}
  .pq-text{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.4rem,3.5vw,2.6rem);font-weight:700;line-height:1.25;color:rgba(255,255,255,.88);margin-bottom:20px}
  .pq-author{font-family:'DM Sans',sans-serif;font-size:clamp(.75rem,1.1vw,.9rem);color:var(--gold);font-weight:500;letter-spacing:.12em;text-transform:uppercase}
  /* LINE ACCENT */
  .pq-line{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:2px;width:0;background:var(--gold);border-radius:2px}
  /* LOGO WRAP */
  
  
  
  
  
  
  
  

  /* CINEMATIC ENHANCEMENTS */
  
  
  
  
  
  

  /* NAV */
  
  
  
  
  
  
  @media(max-width:1200px){}
  .burger{display:none;width:28px;height:20px;position:relative;cursor:pointer}
  @media(max-width:1024px){.burger{display:block}}
  .burger span{position:absolute;left:0;width:100%;height:1.5px;background:#fff;border-radius:2px;transition:.3s var(--ease)}
  .burger span:nth-child(1){top:0}.burger span:nth-child(2){top:50%;transform:translateY(-50%)}.burger span:nth-child(3){bottom:0}
  .burger.open span:nth-child(1){top:50%;transform:translateY(-50%) rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){bottom:50%;transform:translateY(50%) rotate(-45deg)}
  .mob-menu{display:none;position:fixed;inset:0;background:rgba(5,5,5,.98);z-index:599;align-items:center;justify-content:center;flex-direction:column;gap:12px}
  .mob-menu.open{display:flex}
  .mob-menu a{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.8rem,5vw,3rem);font-weight:700;color:var(--mid);transition:color .2s,letter-spacing .3s}
  .mob-menu a:hover{color:var(--gold);letter-spacing:3px}
  .mob-menu .mob-cta{margin-top:28px;font-size:1rem;background:var(--gold);color:#000;padding:18px 40px;border-radius:50px;font-weight:800}

  /* HERO */
  
  
  
  
  3%{opacity:1}14%{opacity:1;transform:scale(1.06)}17%{opacity:0}100%{opacity:0}}
  
  
  
  
  @keyframes tagPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(245,197,0,.4)}50%{opacity:.5;box-shadow:0 0 0 8px rgba(245,197,0,0)}}
  
  
  
  
  
  
  .btn-main{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:#000;font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:700;padding:18px 38px;border-radius:60px;border:none;cursor:pointer;position:relative;overflow:hidden;transition:transform .4s var(--spring),box-shadow .4s;box-shadow:0 8px 32px rgba(245,197,0,.2)}
  .btn-main .btn-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transition:left .6s;pointer-events:none}
  
  
  .btn-ghost{display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.82);font-size:1rem;font-weight:600;padding:18px 24px;transition:color .3s}
  .btn-ghost:hover{color:#fff}
  .btn-ghost svg{transition:transform .3s}
  .btn-ghost:hover svg{transform:translateX(4px)}
  
  
  .scroll-dot{width:1px;height:52px;position:relative;overflow:hidden}
  .scroll-dot::after{content:'';position:absolute;width:100%;height:40%;background:var(--gold);top:-40%;animation:scrollDot 2.2s ease infinite}
  @keyframes scrollDot{0%{top:-40%}100%{top:100%}}
  .scroll-txt{font-size:.65rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,.65);writing-mode:vertical-lr}
  
  .live-dot{width:6px;height:6px;background:#22c55e;border-radius:50%;animation:livePulse 1.5s ease infinite}
  @keyframes livePulse{0%,100%{opacity:1}50%{opacity:.3}}
  @keyframes imgfilmPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.03)}}
  @keyframes playPulse{0%{box-shadow:0 0 0 0 rgba(245,197,0,.5)}70%{box-shadow:0 0 0 18px rgba(245,197,0,0)}100%{box-shadow:0 0 0 0 rgba(245,197,0,0)}}

  /* HERO TRUST BAR */
  
  
  
  
  
  
  
  
  @media(max-width:540px){}


  /* HERO FÖRDER-BADGE */
  
  
  
  
  @media(max-width:480px){}
  /* METRICS TICKER */
  .ticker{border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;white-space:nowrap}
  .ticker-track{display:flex;animation:ticker 30s linear infinite}
  .ticker-item{display:flex;align-items:center;gap:40px;padding:22px 40px;flex-shrink:0}
  .ticker-item span{font-family:'Space Grotesk',sans-serif;font-size:1rem;font-weight:700;color:rgba(255,255,255,.85)}
  .ticker-sep{width:4px;height:4px;background:var(--gold);border-radius:50%;flex-shrink:0;opacity:.4}
  @keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

  /* SECTIONS */
  .sec{padding:clamp(88px,9vw,140px) clamp(24px,6vw,80px);position:relative}
  .tag{display:flex;align-items:center;justify-content:center;gap:10px;font-size:.65rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:18px}
  .tag-dash{width:28px;height:1px;background:var(--gold)}
  
  .h2 em{font-style:normal;font-family:'Space Grotesk',sans-serif;font-weight:800;color:var(--gold);background:linear-gradient(135deg,#FFD000,#F5C500,#FFE566);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 16px rgba(245,197,0,.15))}
  .h2.dark em{-webkit-text-fill-color:var(--gold);background:none}
  .lead{font-size:clamp(.9rem,1.5vw,1.06rem);color:var(--muted);line-height:1.85;max-width:560px;text-align:center;margin-left:auto;margin-right:auto}
  .lead.dark{color:rgba(0,0,0,.85)}
  .center{text-align:center}.center .lead{margin:0 auto}

  /* SPLIT LAYOUT */
  .split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,110px);align-items:center}
  .s-visual{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3}
  .s-visual img{width:100%;height:100%;object-fit:cover;transform:scale(1.15);transition:transform 1.5s var(--ease)}
  .s-visual.revealed img{transform:scale(1)}
  .s-visual-mask{position:absolute;inset:0;background:#050505;z-index:2;transform-origin:left}
  .s-body .lead{margin-bottom:32px}
  .checks{display:flex;flex-direction:column;gap:14px;margin-bottom:40px}
  .chk{display:flex;align-items:center;gap:10px;font-size:.88rem;font-weight:500;color:var(--mid)}

  .chk-icon{width:16px;height:16px;flex-shrink:0;position:relative;display:inline-flex;align-items:center;justify-content:center;margin-top:1px}
  .chk-icon::after{content:'';width:5px;height:9px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg) translate(-1px,-2px)}

  /* TRUST BAR */
  .trust-bar{background:rgba(255,255,255,.02);border-bottom:1px solid var(--border);padding:24px clamp(16px,6vw,80px);display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}
  @media(min-width:768px){.trust-bar{grid-template-columns:repeat(4,1fr);gap:clamp(12px,2vw,24px)}}
  .trust-badge{display:flex;align-items:center;gap:12px;padding:14px 16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:14px;transition:border-color .3s,box-shadow .3s,transform .3s;height:100%}
  .trust-badge:hover{border-color:rgba(245,197,0,.4);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.3),0 0 30px rgba(245,197,0,.12)}
  .trust-badge-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}
  .trust-badge-icon.tp{background:rgba(0,182,122,.25)}
  .trust-badge-icon.ku{background:rgba(153,204,0,.25)}
  .trust-badge-icon.hb{background:rgba(200,50,50,.2)}
  .trust-badge-score{font-family:'Space Grotesk',sans-serif;font-size:1.4rem;font-weight:800;color:#fff;line-height:1}
  .trust-badge-stars{display:flex;gap:1px;margin-top:2px}
  .trust-badge-star{color:var(--gold);font-size:.65rem}
  .trust-badge-star.tp-star{color:#00b67a}
  .trust-badge-star.ku-star{color:#99cc00}
  .trust-badge-info{font-size:.65rem;color:rgba(255,255,255,.85);margin-top:1px}

  /* BEKANNT AUS PRESS BAR */
  .press-bar{padding:20px clamp(24px,6vw,80px);display:flex;align-items:center;justify-content:center;gap:20px;border-bottom:1px solid var(--border);background:rgba(255,255,255,.015)}
  .press-label{font-size:.6rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.35);white-space:nowrap}
  .press-logos{display:flex;align-items:center;gap:clamp(16px,3vw,32px);flex-wrap:wrap;justify-content:center}
  .press-logo-item{text-decoration:none;opacity:.35;transition:opacity .3s;display:flex;align-items:center}
  .press-logo-item:hover{opacity:.8}
  .press-logo-name{color:#fff;line-height:1.15;text-align:center;white-space:nowrap}
  .press-sep{width:1px;height:20px;background:rgba(255,255,255,.1);flex-shrink:0}
  @media(max-width:600px){.press-bar{flex-direction:column;gap:10px;padding:14px}.press-label{margin-bottom:2px}.press-sep{display:none}.press-logos{gap:18px}}
  .usp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
  .usp-card{background:var(--card);border:1px solid var(--border);border-radius:22px;padding:40px 32px;text-align:left;transition:border-color .5s,transform .6s var(--ease),box-shadow .6s var(--ease);position:relative;overflow:hidden}
  .usp-card:hover{border-color:rgba(245,197,0,.72);transform:translateY(-6px);box-shadow:var(--glow-gold-hover)}
  .usp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .5s}
  .usp-card:hover::before{opacity:1}
  .usp-emoji{font-size:2rem;margin-bottom:20px;display:block}
  .usp-title{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:10px;letter-spacing:-.3px}
  .usp-desc{font-size:.88rem;color:var(--muted);line-height:1.78}

  /* LIVE COUNTER BAR */
  .live-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:clamp(48px,6vw,80px) clamp(24px,6vw,80px);background:#050505}
  .live-stat{text-align:center;padding:24px 16px}
  .live-stat-num{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.4rem,3vw,2.2rem);font-weight:800;color:#fff;letter-spacing:-1px;display:flex;align-items:center;justify-content:center;gap:8px}
  .live-stat-lbl{font-size:.75rem;color:var(--muted);margin-top:6px}
  .live-stat-pulse{display:inline-flex;align-items:center}
  .live-stat-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;animation:livePulse 2s ease-in-out infinite}
  @keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}
  @keyframes textShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
  @keyframes livePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}
  @media(max-width:768px){.live-bar{grid-template-columns:1fr 1fr;gap:8px;padding:40px 20px}}
  @media(max-width:480px){.live-bar{grid-template-columns:1fr 1fr;gap:4px;padding:32px 16px}.live-stat{padding:16px 8px}.live-stat-num{font-size:1.2rem}.live-stat-lbl{font-size:.65rem}}

  /* BAUENGEL SECTION */
  .engel-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,100px);align-items:center}
  .engel-steps{display:flex;flex-direction:column;gap:20px;margin-top:32px}
  .engel-step{display:flex;gap:16px;align-items:flex-start}
  .engel-num{width:36px;height:36px;flex-shrink:0;background:rgba(245,197,0,.08);border:1px solid rgba(245,197,0,.15);border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'Space Grotesk',sans-serif;font-size:.88rem;font-weight:800;color:var(--gold)}
  .engel-step-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:4px}
  .engel-step-desc{font-size:.88rem;color:var(--muted);line-height:1.7}

  /* DESIGN / BLACK MODULES */
  .design-visual{position:relative;border-radius:24px;overflow:hidden;aspect-ratio:16/10}
  .design-visual img{width:100%;height:100%;object-fit:cover}
  .design-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,.7) 0%,transparent 50%)}
  .design-badge{position:absolute;bottom:24px;left:24px;z-index:1;display:flex;align-items:center;gap:10px;background:rgba(5,5,5,.75);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 18px}
  .design-badge-txt{font-size:.75rem;color:var(--mid);font-weight:600}

  /* PORTAL / DIGITAL SECTION */
  .portal-features{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:32px}
  .portal-feat{background:rgba(255,255,255,.03);border:1px solid var(--border);border-radius:16px;padding:24px;transition:border-color .4s}
  .portal-feat:hover{border-color:rgba(245,197,0,.7)}
  .portal-feat-icon{font-size:1.6rem;margin-bottom:12px}
  .portal-feat-title{font-size:1rem;font-weight:700;color:#fff;margin-bottom:6px}
  .portal-feat-desc{font-size:.88rem;color:var(--muted);line-height:1.7}

  /* STROMPREIS TICKER */
  .price-ticker{background:#0a0a0a;padding:clamp(48px,6vw,80px) clamp(24px,6vw,80px);overflow:hidden;position:relative}
  .price-ticker::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(220,38,38,.3),transparent)}
  .price-graph{max-width:700px;margin:40px auto 0;position:relative;height:200px;display:flex;align-items:stretch;gap:3px}
  .price-bar{flex:1;background:rgba(220,38,38,.15);border-radius:4px 4px 0 0;position:relative;transition:height 1s var(--ease);height:0;align-self:flex-end}
  .price-bar.pv{background:rgba(245,197,0,.15)}
  .price-bar-group{display:flex;gap:2px;align-items:flex-end;flex:1;flex-direction:row;position:relative;height:100%}
  .price-bar-label{position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);font-size:.55rem;color:rgba(255,255,255,.4);white-space:nowrap}
  .price-bar-inner{position:absolute;bottom:0;left:0;right:0;border-radius:4px 4px 0 0}
  .price-bar .grid-bar{background:linear-gradient(to top,rgba(220,38,38,.6),rgba(220,38,38,.3))}
  .price-bar .pv-bar{background:linear-gradient(to top,rgba(245,197,0,.6),rgba(245,197,0,.3))}
  .price-legend{display:flex;justify-content:center;gap:28px;margin-top:24px}
  .price-legend-item{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--muted)}
  .price-legend-dot{width:10px;height:10px;border-radius:3px}
  .price-legend-dot.red{background:rgba(220,38,38,.6)}
  .price-legend-dot.gold{background:rgba(245,197,0,.6)}
  .price-compare{display:flex;justify-content:center;gap:48px;margin-top:32px;flex-wrap:wrap}
  .price-card{text-align:center}
  .price-card-num{font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:800;letter-spacing:-1px}
  .price-card-num.red{color:rgba(220,38,38,.8)}
  .price-card-num.gold{color:var(--gold)}
  .price-card-lbl{font-size:.75rem;color:var(--muted);margin-top:4px}

  /* CO2 CONVERTER */
  .co2{background:#050505;padding:clamp(48px,6vw,80px) clamp(24px,6vw,80px);text-align:center}
  .co2-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:800px;margin:40px auto 0}
  .co2-card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:28px 20px;transition:border-color .4s,transform .5s var(--ease)}
  .co2-card:hover{border-color:rgba(245,197,0,.72);transform:translateY(-4px)}
  .co2-emoji{font-size:2rem;margin-bottom:12px}
  .co2-num{font-family:'Space Grotesk',sans-serif;font-size:1.6rem;font-weight:800;color:var(--gold);letter-spacing:-1px}
  .co2-txt{font-size:.75rem;color:var(--muted);margin-top:4px;line-height:1.4}

  /* NRW MAP */
  .nrw-map{background:#0a0a0a;padding:clamp(64px,7vw,100px) clamp(24px,6vw,80px);overflow:hidden}
  .nrw-map-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,64px);align-items:center;margin-top:48px}
  .map-container{height:420px;border-radius:20px;overflow:hidden;border:1px solid var(--border)}
  .map-stats{display:flex;flex-direction:column;gap:16px}
  .map-stat{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:22px 28px;display:flex;align-items:center;gap:16px;transition:border-color .3s}
  .map-stat:hover{border-color:rgba(245,197,0,.72)}
  .map-stat-icon{width:44px;height:44px;background:rgba(245,197,0,.08);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .map-stat-num{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:800;color:#fff}
  .map-stat-lbl{font-size:.75rem;color:var(--muted);margin-top:2px}

  /* PROJECT TIMELINE */
  .timeline{padding:clamp(64px,7vw,100px) clamp(24px,6vw,80px);background:#050505;overflow:hidden}
  .tl-track{position:relative;max-width:800px;margin:48px auto 0}
  .tl-line{position:absolute;left:24px;top:0;bottom:0;width:2px;background:var(--border)}
  .tl-progress{position:absolute;left:24px;top:0;width:2px;background:var(--gold);height:0%;transition:height .1s}
  .tl-step{position:relative;padding-left:64px;padding-bottom:48px;opacity:.3;transform:translateX(-10px);transition:opacity .6s,transform .6s var(--ease)}
  .tl-step.active{opacity:1;transform:none}
  .tl-dot{position:absolute;left:16px;top:4px;width:18px;height:18px;border-radius:50%;background:#1a1a1a;border:2px solid var(--border);transition:all .4s}
  .tl-step.active .tl-dot{background:var(--gold);border-color:var(--gold);box-shadow:0 0 16px rgba(245,197,0,.4)}
  .tl-week{font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:6px;opacity:0;transition:opacity .4s}
  .tl-step.active .tl-week{opacity:1}
  .tl-title{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:6px}
  .tl-desc{font-size:.88rem;color:var(--muted);line-height:1.7;max-width:500px}

  /* ROOF CONFIGURATOR */
  .roof-cfg{background:#0a0a0a;padding:clamp(64px,7vw,100px) clamp(24px,6vw,80px);text-align:center}
  .roof-options{display:flex;justify-content:center;gap:16px;margin:40px auto 24px;flex-wrap:wrap}
  .roof-opt{background:var(--card);border:2px solid var(--border);border-radius:16px;padding:24px 28px;cursor:pointer;transition:all .3s var(--ease);text-align:center;min-width:120px}
  .roof-opt:hover,.roof-opt.selected{border-color:var(--gold);background:rgba(245,197,0,.06)}
  .roof-opt-icon{font-size:2rem;margin-bottom:8px}
  .roof-opt-name{font-size:.88rem;font-weight:700;color:#fff}
  .roof-result{max-width:600px;margin:0 auto;background:var(--card);border:1px solid var(--border);border-radius:20px;padding:32px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  .roof-res{text-align:center}
  .roof-res-num{font-family:'Space Grotesk',sans-serif;font-size:1.4rem;font-weight:800;color:var(--gold)}
  .roof-res-lbl{font-size:.65rem;color:var(--muted);margin-top:4px}
  .roof-visual{max-width:500px;margin:32px auto 0;position:relative}
  .roof-svg{width:100%;height:auto}

  /* VIDEO TESTIMONIALS */
  .vid-testis{display:flex;gap:16px;margin-top:48px;overflow-x:auto;padding-bottom:16px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
  .vid-testis::-webkit-scrollbar{height:4px}
  .vid-testis::-webkit-scrollbar-track{background:rgba(255,255,255,.03)}
  .vid-testis::-webkit-scrollbar-thumb{background:rgba(245,197,0,.3);border-radius:2px}
  .vid-testi{flex-shrink:0;width:320px;scroll-snap-align:start;background:var(--card);border:1px solid var(--border);border-radius:20px;overflow:hidden;transition:border-color .4s}
  .vid-testi:hover{border-color:rgba(245,197,0,.72)}
  .vid-thumb{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden}
  .vid-thumb img{width:100%;height:100%;object-fit:cover}
  .vid-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3)}
  .vid-play-btn{width:48px;height:48px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center}
  .vid-play-btn::after{content:'';width:0;height:0;border-left:14px solid #000;border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:3px}
  .vid-body{padding:20px}
  .vid-name{font-size:.88rem;font-weight:700;color:#fff}
  .vid-loc{font-size:.75rem;color:var(--muted);margin-top:2px}
  .vid-quote{font-size:.88rem;color:var(--mid);margin-top:10px;line-height:1.6;font-style:italic}

  /* STICKY CTA BAR */
  .sticky-cta{position:fixed;top:-60px;left:0;right:0;z-index:550;height:54px;background:rgba(5,5,5,.92);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,72px);transition:top .4s var(--ease)}
  .sticky-cta.visible{top:0}
  .sticky-cta-left{display:flex;align-items:center;gap:12px}
  .sticky-cta-logo img{height:20px;width:auto;opacity:.7}
  .sticky-cta-text{font-size:.75rem;color:var(--muted);display:none}
  .sticky-cta-btn{background:var(--gold);color:#000;font-size:.75rem;font-weight:800;padding:9px 22px;border-radius:50px;letter-spacing:.5px;transition:all .3s var(--ease);white-space:nowrap}
  .sticky-cta-btn:hover{background:#fff;transform:translateY(-1px);box-shadow:0 8px 24px rgba(245,197,0,.3)}
  .sticky-cta-phone{font-size:.75rem;font-weight:600;color:var(--muted);display:flex;align-items:center;gap:6px;transition:color .2s}
  .sticky-cta-phone:hover{color:#fff}
  @media(min-width:768px){.sticky-cta-text{display:block}}


  /* AI CHATBOT */
  .chat-toggle{position:fixed;bottom:24px;right:16px;z-index:500;width:56px;height:56px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 32px rgba(245,197,0,.3);transition:all .3s var(--ease);border:none}
  .chat-toggle:hover{transform:scale(1.08);box-shadow:0 12px 40px rgba(245,197,0,.4)}
  .chat-toggle svg{width:24px;height:24px;fill:#000}
  .wa-toggle{display:none !important;position:fixed;bottom:88px;right:16px;z-index:500;width:48px;height:48px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(37,211,102,.35);transition:all .3s var(--ease);text-decoration:none}
  .wa-toggle:hover{transform:scale(1.08);box-shadow:0 10px 32px rgba(37,211,102,.5)}
  .wa-toggle svg{width:22px;height:22px}
  .chat-panel{display:none;position:fixed;bottom:92px;right:16px;z-index:500;width:min(380px,calc(100vw - 32px));max-height:min(520px,calc(100dvh - 120px));background:rgba(10,10,10,.96);backdrop-filter:blur(24px);border:1px solid var(--border);border-radius:20px;display:none;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.6)}
  .chat-panel.open{display:flex}
  .chat-head{padding:18px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
  .chat-head-left{display:flex;align-items:center;gap:10px}
  .chat-head-avatar{width:32px;height:32px;background:var(--gold);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.88rem;font-weight:900;color:#000}
  .chat-head-name{font-size:.88rem;font-weight:700;color:#fff}
  .chat-head-status{font-size:.65rem;color:#22c55e;display:flex;align-items:center;gap:4px}
  .chat-head-status::before{content:'';width:5px;height:5px;background:#22c55e;border-radius:50%}
  .chat-close{background:none;border:none;color:var(--muted);font-size:1.2rem;cursor:pointer;padding:4px}
  .chat-msgs{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px;max-height:340px}
  .chat-msg{max-width:85%;padding:12px 16px;border-radius:16px;font-size:.88rem;line-height:1.6;animation:chatIn .3s var(--ease)}
  @keyframes chatIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  .chat-msg.bot{background:rgba(255,255,255,.06);color:var(--mid);align-self:flex-start;border-bottom-left-radius:4px}
  .chat-msg.user{background:var(--gold);color:#000;align-self:flex-end;border-bottom-right-radius:4px;font-weight:500}
  .chat-msg.typing{color:var(--muted);font-style:italic}
  .chat-input-wrap{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px}
  .chat-input{flex:1;background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:12px;padding:10px 14px;color:#fff;font-family:'DM Sans',sans-serif;font-size:.88rem;outline:none;transition:border-color .3s}
  .chat-input:focus{border-color:rgba(245,197,0,.78)}
  .chat-input::placeholder{color:rgba(255,255,255,.7)}
  .chat-send{background:var(--gold);border:none;border-radius:10px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .2s;flex-shrink:0}
  .chat-send:hover{opacity:.85}
  .chat-send svg{width:16px;height:16px;fill:#000}
  .chat-quick{display:flex;gap:6px;flex-wrap:wrap;padding:0 20px 12px}
  .chat-quick-btn{background:rgba(245,197,0,.08);border:1px solid rgba(245,197,0,.15);color:var(--gold);font-size:.75rem;font-weight:600;padding:6px 12px;border-radius:50px;cursor:pointer;transition:all .2s;white-space:nowrap}
  .chat-quick-btn:hover{background:rgba(245,197,0,.15);border-color:rgba(245,197,0,.78)}
  @media(max-width:480px){
    .chat-panel{right:0;left:0;bottom:0;width:100%;max-height:100vh;border-radius:20px 20px 0 0}
    .chat-toggle{bottom:16px;right:16px;width:50px;height:50px}
    .wa-toggle{bottom:74px;right:16px;width:42px;height:42px}
    .wa-toggle svg{width:18px;height:18px}
  }

  @media(max-width:1024px){.co2-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:768px){
    .co2-grid{grid-template-columns:1fr 1fr}
    .nrw-map-wrap{grid-template-columns:1fr}
    .map-container{height:280px}
    .price-graph{height:140px}
    .price-compare{flex-direction:column;gap:16px;align-items:center}
    .tl-step{padding-left:48px;padding-bottom:36px}
    .tl-title{font-size:1rem}
    .roof-result{grid-template-columns:1fr 1fr 1fr}
    .roof-options{flex-wrap:wrap}
    .roof-opt{min-width:80px;padding:16px 18px}
    .vid-testi{width:240px}
    .trust-bar{gap:12px;padding:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:flex-start}
    .trust-badge{flex-shrink:0;min-width:fit-content}
    .engel-grid{grid-template-columns:1fr}
    .calc-results{grid-template-columns:1fr 1fr}
    .calc-range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);margin-top:8px;width:100%}
  }

  @media(max-width:1024px){
    .usp-grid{grid-template-columns:1fr 1fr}
    .portal-features{grid-template-columns:1fr}
  }
  @media(max-width:768px){
    .usp-grid{grid-template-columns:1fr}
    .engel-grid{grid-template-columns:1fr}
    .trust-bar{gap:12px}
    .trust-badge{padding:8px 14px}
  }

  /* SAVINGS CALCULATOR */
  .savings{background:linear-gradient(180deg,#0c0c0c 0%,#050505 100%);padding:clamp(64px,7vw,100px) clamp(24px,6vw,80px);text-align:center;position:relative;overflow:hidden}
  .savings::before{content:'';position:absolute;top:50%;left:50%;width:600px;height:600px;background:radial-gradient(circle,rgba(245,197,0,.06) 0%,transparent 70%);transform:translate(-50%,-50%);pointer-events:none}
  .savings-num{font-family:'Space Grotesk',sans-serif;font-size:clamp(5rem,14vw,12rem);font-weight:800;letter-spacing:clamp(-4px,-1vw,-8px);line-height:.9;background:linear-gradient(135deg,#FFD000,#F5C500,#FFD000);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:32px 0 16px}
  .savings-label{font-size:clamp(.9rem,1.5vw,1.1rem);color:var(--muted);margin-bottom:8px}
  .savings-sub{font-size:.88rem;color:rgba(255,255,255,.8);max-width:400px;margin:0 auto}

  /* CALCULATOR */
  .calc-box{max-width:680px;margin:0 auto;text-align:left;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:36px 32px}
  .calc-slider-wrap{position:relative;z-index:2;margin-bottom:28px}
  .calc-slider-label{font-size:.85rem;color:rgba(255,255,255,.6);margin-bottom:4px}
  .calc-value{font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:800;color:var(--gold);margin-bottom:12px}
  .calc-range{-webkit-appearance:none;appearance:none;width:100%;height:8px;background:rgba(255,255,255,.1);border-radius:99px;outline:none;cursor:pointer;position:relative;z-index:3}
  .calc-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;background:var(--gold);border-radius:50%;cursor:grab;box-shadow:0 0 12px rgba(245,197,0,.4);position:relative;z-index:4}
  .calc-range::-moz-range-thumb{width:28px;height:28px;background:var(--gold);border:none;border-radius:50%;cursor:grab;box-shadow:0 0 12px rgba(245,197,0,.4)}
  .calc-range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);margin-top:8px;width:100%}
  .calc-results{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:16px;margin-bottom:20px}
  .calc-result{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:18px 14px;text-align:center}
  .calc-result.highlight{border-color:rgba(245,197,0,.3);background:rgba(245,197,0,.06)}
  .calc-result-num{font-family:'Space Grotesk',sans-serif;font-size:1.4rem;font-weight:800;color:#fff;margin-bottom:4px}
  .calc-result.highlight .calc-result-num{color:var(--gold);font-size:1.6rem}
  .calc-result-lbl{font-size:.7rem;color:rgba(255,255,255,.5);line-height:1.3}

  /* BENTO */
  .bento{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:60px}
  .b-card{background:var(--card);border:1px solid var(--border);border-radius:22px;padding:40px;transition:border-color .5s,transform .6s var(--ease),box-shadow .6s var(--ease);overflow:hidden;position:relative}
  .b-card:hover{border-color:rgba(245,197,0,.7);transform:translateY(-8px);box-shadow:var(--glow-gold-hover)}
  .b-card.c8{grid-column:span 8}.b-card.c4{grid-column:span 4}.b-card.c6{grid-column:span 6}
  .b-card.gold{background:var(--gold);border-color:transparent}
  .b-card.gold:hover{transform:translateY(-8px)}
  .b-card.has-img{padding:0;min-height:300px}
  .b-img{position:absolute;inset:0}
  .b-img img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 1.2s var(--ease)}
  .b-card:hover .b-img img{transform:scale(1.08)}
  .b-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,.95) 0%,rgba(5,5,5,.25) 60%,transparent 100%)}
  .b-inner{position:relative;z-index:1;padding:40px;display:flex;flex-direction:column;justify-content:flex-end;height:100%}
  .b-emoji{font-size:2rem;margin-bottom:20px}
  .b-stat{font-family:'Space Grotesk',sans-serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;letter-spacing:-2px;line-height:1;color:var(--gold);margin-bottom:12px}
  .b-card.gold .b-stat{color:#000}
  .b-title{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:8px;letter-spacing:-.3px}
  .b-card.gold .b-title{color:#000}
  .b-desc{font-size:.88rem;color:var(--muted);line-height:1.75}
  .b-card.gold .b-desc{color:rgba(0,0,0,.85)}

  /* FULLBLEED PARALLAX */
  .fullbleed{position:relative;margin:40px 0;min-height:80vh;display:flex;align-items:center;overflow:hidden}
  .fb-img{position:absolute;inset:-20% 0;z-index:0}
  .fb-img img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
  .fb-img::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,rgba(5,5,5,.96) 0%,rgba(5,5,5,.70) 45%,rgba(5,5,5,.15) 100%)}
  .fb-text{position:relative;z-index:1;padding:clamp(60px,8vw,120px) clamp(24px,6vw,80px);max-width:580px}
  .fb-text .lead{color:rgba(255,255,255,.8);margin:18px 0 44px}
  .fb-stats{display:flex;gap:52px;flex-wrap:wrap}
  .fs-num{font-family:'Space Grotesk',sans-serif;font-size:2rem;font-weight:800;letter-spacing:-2px;color:var(--gold);line-height:1}
  .fs-lbl{font-size:.75rem;color:rgba(255,255,255,.7);font-weight:600;margin-top:6px;letter-spacing:.5px}

  /* STEPS */
  .steps-sec{padding:clamp(64px,7vw,100px) 0}
  .steps-head{padding:0 clamp(24px,6vw,80px);text-align:center;margin-bottom:56px}
  .steps-track{display:flex;gap:20px;padding:0 clamp(24px,6vw,80px)}
  .step{flex:1;min-width:0;background:var(--card);border:1px solid var(--border);border-radius:24px;padding:48px 36px;position:relative;overflow:hidden;transition:border-color .5s,transform .6s var(--ease),box-shadow .6s var(--ease)}
  .step:hover{border-color:rgba(245,197,0,.75);transform:translateY(-8px);box-shadow:var(--glow-gold-hover)}
  .step::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .5s}
  .step:hover::before{opacity:1}
  .step-num{font-family:'Space Grotesk',sans-serif;font-size:clamp(3rem,6vw,5rem);font-weight:800;color:rgba(245,197,0,.7);-webkit-text-fill-color:rgba(245,197,0,.7);background-clip:text;line-height:1;letter-spacing:-4px;margin-bottom:24px}
  .step h3{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:14px;letter-spacing:-.5px}
  .step p{font-size:.88rem;color:var(--muted);line-height:1.8}

  /* TESTIMONIALS */
  .testis{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:60px;overflow:hidden;max-width:900px;margin-left:auto;margin-right:auto}

  /* VIDEO TESTIMONIALS */
  .vtestis{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:0;max-width:1100px;margin-left:auto;margin-right:auto}
  .vtesti{cursor:pointer;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.07);transition:transform .4s var(--ease),box-shadow .4s var(--ease),border-color .4s}
  .vtesti:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 32px 80px rgba(0,0,0,.7),var(--glow-gold);border-color:rgba(245,197,0,.3)}
  .vtesti.vtesti-center{transform:scale(1.04)}
  .vtesti.vtesti-center:hover{transform:translateY(-6px) scale(1.06)}
  .vtesti-img-wrap{position:relative;aspect-ratio:9/14;overflow:hidden}
  .vtesti-img-wrap img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .4s}
  .vtesti:hover .vtesti-img-wrap img{transform:scale(1.04)}
  .vtesti-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85) 0%,rgba(0,0,0,.15) 50%,rgba(0,0,0,.0) 100%)}
  .vtesti-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(245,197,0,.5);transition:transform .2s,box-shadow .2s;padding-left:4px}
  .vtesti:hover .vtesti-play{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 12px 40px rgba(245,197,0,.7)}
  .vtesti-info{position:absolute;bottom:0;left:0;right:0;padding:20px}
  .vtesti-name{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:700;color:#fff;margin-bottom:6px;text-shadow:0 1px 4px rgba(0,0,0,.8)}
  .vtesti-stars{font-size:.8rem;color:var(--gold);display:flex;align-items:center;gap:8px}
  .vtesti-tag{font-size:.72rem;font-weight:600;color:rgba(255,255,255,.75);background:rgba(255,255,255,.1);padding:2px 8px;border-radius:100px;border:1px solid rgba(255,255,255,.15)}
  #vtestiModal{display:none}
  #vtestiModal.open{display:flex !important}
  .test{background:var(--card);border:1px solid var(--border);border-radius:22px;padding:36px;display:flex;flex-direction:column;gap:18px;transition:border-color .5s,transform .6s var(--ease),box-shadow .6s var(--ease)}
  .test:hover{border-color:rgba(245,197,0,.7);transform:translateY(-6px);box-shadow:var(--glow-gold-hover)}
  .test-stars{display:flex;gap:3px}
  .test-star{color:var(--gold);font-size:.75rem}
  .test-txt{font-size:.88rem;color:var(--mid);line-height:1.82;font-style:italic;flex:1}
  .test-who{display:flex;align-items:center;gap:14px;padding-top:18px;border-top:1px solid var(--border)}
  .test-av{width:46px;height:46px;border-radius:50%;overflow:hidden;flex-shrink:0;border:2px solid rgba(245,197,0,.15)}
  .test-av img{width:100%;height:100%;object-fit:cover;object-position:center top}
  .test-name{font-size:.88rem;font-weight:700;color:#fff}
  .test-loc{font-size:.75rem;color:var(--muted);margin-top:3px}

  /* GOLD BAR */
  .gold-bar{background:linear-gradient(135deg,#F5C500 0%,#FFD000 50%,#F5C500 100%);background-size:200% 100%;animation:goldShimmer 6s ease infinite;padding:clamp(56px,7vw,88px) clamp(24px,6vw,80px);position:relative;overflow:hidden}
  @keyframes goldShimmer{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
  .gold-bar::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 200px,rgba(0,0,0,.02) 200px,rgba(0,0,0,.02) 201px)}
  .gold-bar::after{content:'';position:absolute;right:-50px;top:-120px;width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);pointer-events:none}
  .g-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;position:relative;z-index:1}
  .g-num{font-family:'Space Grotesk',sans-serif;font-size:clamp(2rem,5vw,5rem);font-weight:800;letter-spacing:clamp(-1px,-.5vw,-3px);color:#000;line-height:1}
  .g-lbl{font-size:.88rem;font-weight:600;color:rgba(0,0,0,.9);margin-top:8px}


/* ABLAUF */
.ablauf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0}
.ablauf-step{position:relative;padding:36px 32px 36px 72px;border-bottom:1px solid var(--border)}
.ablauf-step:nth-child(odd){border-right:1px solid var(--border)}
@media(min-width:900px){.ablauf-step:nth-last-child(-n+2){border-bottom:none}}
@media(max-width:899px){.ablauf-step:last-child{border-bottom:none}}
.ablauf-num{position:absolute;left:28px;top:36px;font-family:'Space Grotesk',sans-serif;font-size:1.6rem;font-weight:700;color:var(--gold);opacity:.25;line-height:1}
.ablauf-icon{position:absolute;left:26px;top:62px;font-size:1rem}
.ablauf-step-title{font-size:.95rem;font-weight:700;margin-bottom:6px;line-height:1.3}
.ablauf-time{display:inline-block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);background:rgba(245,197,0,.08);border:1px solid rgba(245,197,0,.2);padding:3px 9px;border-radius:100px;margin-bottom:10px}
.ablauf-step p{font-size:.82rem;color:var(--muted);line-height:1.65}
.ablauf-cta-row{display:flex;justify-content:center;margin-top:48px}
@media(max-width:600px){.ablauf-step{padding:28px 24px 28px 60px}.ablauf-num{left:16px;top:28px}.ablauf-icon{left:14px;top:54px}}

/* FAQ */
  .faq-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,90px);align-items:start}
  .faq-photo{border-radius:24px;overflow:hidden;aspect-ratio:3/4;position:relative}
  .faq-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 1.5s var(--ease)}
  .faq-photo:hover img{transform:scale(1.05)}
  .faq-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,5,5,.8) 0%,transparent 50%)}
  .faq-cap{position:absolute;bottom:24px;left:24px;right:24px;z-index:1;font-size:.75rem;color:rgba(255,255,255,.78);line-height:1.65}
  .faq-list{display:flex;flex-direction:column}
  .faq-item{border-bottom:1px solid var(--border);overflow:hidden}
  .faq-q{width:100%;background:none;border:none;padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:700;color:#fff;text-align:left;cursor:pointer;transition:color .3s}
  .faq-q:hover{color:var(--gold)}
  .faq-plus{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.04);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:300;color:rgba(255,255,255,.78);transition:all .4s var(--ease);flex-shrink:0}
  .faq-item.open .faq-plus{background:var(--gold);border-color:var(--gold);color:#000;transform:rotate(45deg)}
  .faq-a{max-height:0;transition:max-height .5s var(--ease)}
  .faq-item.open .faq-a{max-height:300px}
  .faq-a p{padding-bottom:24px;font-size:.88rem;color:var(--muted);line-height:1.85}

  /* CTA */
  .cta{position:relative;text-align:center;overflow:hidden}
  .cta-bg{position:absolute;inset:0}
  .cta-bg img{width:100%;height:100%;object-fit:cover;object-position:center 35%}
  .cta-bg::after{content:'';position:absolute;inset:0;background:rgba(5,5,5,.7)}
  .cta-content{position:relative;z-index:1;padding:clamp(110px,14vw,180px) clamp(24px,6vw,80px)}
  .cta 
  .cta .lead{color:rgba(255,255,255,.75);margin:18px auto 52px}
  .trust-row{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:32px}
  .trust-i{display:flex;align-items:center;gap:7px;font-size:.75rem;font-weight:500;color:rgba(255,255,255,.72)}
  .trust-i::before{content:'';width:5px;height:5px;background:var(--gold);border-radius:50%}

  /* FOOTER */
  footer{background:#030303;border-top:1px solid var(--border);padding:clamp(64px,8vw,100px) clamp(24px,6vw,80px) 40px}
  .f-grid{display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;gap:56px;padding-bottom:56px;border-bottom:1px solid var(--border)}
  .f-logo img{height:24px;width:auto;margin-bottom:18px;opacity:.7}
  .f-about{font-size:.88rem;color:rgba(255,255,255,.82);line-height:1.8;margin-bottom:24px}
  .f-phone{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;font-weight:700;color:var(--gold);transition:opacity .3s}
  .f-phone:hover{opacity:.7}
  .f-col h6{font-size:.65rem;font-weight:700;letter-spacing:3.5px;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:20px}
  .f-col a{display:block;font-size:.88rem;color:rgba(255,255,255,.85);margin-bottom:12px;transition:color .2s,transform .2s}
  .f-col a:hover{color:#fff;transform:translateX(3px)}
  .f-bottom{padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}
  .f-copy{font-size:.75rem;color:rgba(255,255,255,.75)}
  .f-legal{display:flex;gap:20px}
  .f-legal a{font-size:.75rem;color:rgba(255,255,255,.78);transition:color .2s}
  .f-legal a:hover{color:rgba(255,255,255,.85)}

  /* RESPONSIVE */
  @media(max-width:1024px){
    .bento{grid-template-columns:repeat(6,1fr)}.b-card.c8,.b-card.c6{grid-column:span 6}.b-card.c4{grid-column:span 3}
    .testis{grid-template-columns:1fr}
    .vtestis{grid-template-columns:1fr 1fr}
    .vtesti.vtesti-center{transform:none}
    .vtesti-img-wrap{aspect-ratio:9/12}
    .g-grid{grid-template-columns:repeat(2,1fr);gap:36px}
    .f-grid{grid-template-columns:repeat(2,1fr);gap:36px}
    .cursor,.cursor-label{display:none!important}
  }
  @media(max-width:768px){
    .burger{display:block}
    .split{grid-template-columns:1fr}
    .bento{grid-template-columns:1fr}.b-card.c8,.b-card.c4,.b-card.c6{grid-column:span 1}
    .testis{grid-template-columns:1fr}
    .steps-track{flex-direction:column}
    .faq-wrap{grid-template-columns:1fr}.faq-photo{display:none}
    .f-grid{grid-template-columns:1fr}
    .f-bottom{flex-direction:column;align-items:flex-start}
    

    .s-body{text-align:center}.s-body .lead{text-align:center}.s-body .checks{align-items:center}.engel-grid .tag,.engel-grid h2,.engel-grid .lead,.engel-grid .engel-steps{text-align:center}
    
  }
  @media(max-width:480px){
    
    .btn-main,.btn-ghost{width:100%;justify-content:center}
    .vtestis{display:flex;flex-direction:column;gap:16px;padding:0 clamp(16px,4vw,24px)}
    .vtesti{width:100%;border-radius:16px}
    .vtesti.vtesti-center{transform:none}
    .vtesti-img-wrap{aspect-ratio:4/3}
    .vtesti-img-wrap{aspect-ratio:9/12}
    .vtesti-play{width:48px;height:48px}
    .g-grid{grid-template-columns:1fr}
    .fb-stats{flex-direction:column;gap:20px}
    .co2-grid{grid-template-columns:1fr}
    .co2-card{padding:20px 16px}
    .calc-box{padding:24px 16px}.calc-range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);margin-top:8px;width:100%}
    .calc-results{grid-template-columns:1fr}.calc-box .btn-gold{padding:14px 20px;font-size:.88rem;width:100%;justify-content:center;line-height:1.3}
    .calc-result-num{font-size:1.2rem}
    .calc-result.highlight .calc-result-num{font-size:1.4rem}
    .price-card-num{font-size:1.4rem}
    .roof-result{grid-template-columns:1fr}
    .roof-options{gap:8px}
    .roof-opt{min-width:70px;padding:14px 12px}
    .roof-opt-icon{font-size:1.4rem}
    .roof-opt-name{font-size:.75rem}
    .tl-step{padding-left:44px;padding-bottom:32px}
    .tl-desc{font-size:.75rem}
    .trust-bar{padding:16px}
    .trust-badge{padding:8px 12px}
    .trust-badge-score{font-size:1.2rem}
    .sec{padding:clamp(60px,8vw,100px) clamp(16px,4vw,40px)}
    .split{gap:32px}
    .lead{font-size:.88rem}
    
    
    
    
    
    .vid-testi{width:220px}
    .vid-body{padding:14px}
  /* ═══ GADGET: STROM-PREIS TICKER ═══ */
  /* ═══ GADGET: CO₂ LIVE-TICKER BOTTOM CENTER ═══ */





  @media(max-width:480px){}
    .b-card{padding:28px 22px}
    .bc-inner{padding:24px}
    .fullbleed{min-height:60vh}
    .map-container{height:240px}
    .savings{padding:clamp(48px,6vw,80px) 16px}
    .price-ticker{padding:clamp(48px,6vw,80px) 16px}
    .co2{padding:clamp(48px,6vw,80px) 16px}
    .roof-cfg{padding:clamp(48px,6vw,80px) 16px}
    .nrw-map{padding:clamp(48px,6vw,80px) 16px}
    .timeline{padding:clamp(48px,6vw,80px) 16px}
    .gold-bar{padding:clamp(40px,5vw,60px) 16px}
    footer{padding:48px 16px 32px}
    .f-grid{gap:32px;padding-bottom:32px}
    .foot-bottom,.f-bottom{flex-direction:column;align-items:flex-start}
  }



  /* QUOTE STRIPE */
  .quote-stripe{padding:clamp(48px,6vw,80px) clamp(16px,4vw,80px);background:#050505;border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04);text-align:center;overflow:hidden;position:relative}
  .quote-stripe::before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:300px;height:300px;background:radial-gradient(circle,rgba(245,197,0,.04) 0%,transparent 70%);pointer-events:none}
  .quote-stripe blockquote{font-family:'Space Grotesk',sans-serif;font-size:clamp(1.1rem,3vw,1.6rem);font-weight:600;color:rgba(255,255,255,.9);letter-spacing:-.5px;line-height:1.5;max-width:700px;margin:0 auto 16px;position:relative}
  .quote-stripe blockquote::before{content:'\201E';font-size:3rem;color:var(--gold);opacity:.4;position:absolute;top:-20px;left:-24px;font-family:Georgia,serif}
  .quote-stripe cite{font-style:normal;font-size:.8rem;color:var(--gold);font-weight:600;letter-spacing:.5px}
  @media(max-width:600px){.quote-stripe blockquote{font-size:1rem}.quote-stripe blockquote::before{display:none}}

  /* COOKIE TOAST */
  /* ── Cookie Consent Overlay (DSGVO/TTDSG) ── */
  .cookie-backdrop{position:fixed;inset:0;z-index:99998;background:rgba(0,0,0,.65);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;padding:20px}
  .cookie-backdrop.show{display:flex!important}
  .cookie-backdrop.hide{display:none!important}
  .cookie-box{background:rgba(18,18,22,.96);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);border-radius:20px;max-width:480px;width:100%;padding:32px 28px;box-shadow:0 24px 80px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.04);animation:cookieIn .4s cubic-bezier(.4,0,.2,1)}
  @keyframes cookieIn{from{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
  .cookie-box-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px}
  .cookie-box-logo svg{width:28px;height:28px;fill:var(--gold)}
  .cookie-box-logo span{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:1rem;color:#fff;letter-spacing:-.5px}
  .cookie-box h3{font-family:'Space Grotesk',sans-serif;font-weight:800;font-size:1.15rem;color:#fff;margin:0 0 8px;letter-spacing:-.3px}
  .cookie-box p{font-size:.82rem;color:rgba(255,255,255,.6);line-height:1.6;margin:0 0 20px}
  .cookie-box p a{color:var(--gold);text-decoration:none}
  .cookie-box p a:hover{text-decoration:underline}
  .cookie-cats{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
  .cookie-cat{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:12px}
  .cookie-cat-info{display:flex;flex-direction:column;gap:2px}
  .cookie-cat-name{font-size:.82rem;font-weight:700;color:#fff}
  .cookie-cat-desc{font-size:.7rem;color:rgba(255,255,255,.45)}
  .cookie-cat-toggle{position:relative;width:42px;height:24px;flex-shrink:0}
  .cookie-cat-toggle input{opacity:0;width:0;height:0}
  .cookie-cat-toggle .slider{position:absolute;inset:0;background:rgba(255,255,255,.12);border-radius:24px;cursor:pointer;transition:background .25s}
  .cookie-cat-toggle .slider:before{content:'';position:absolute;height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:transform .25s}
  .cookie-cat-toggle input:checked+.slider{background:var(--gold)}
  .cookie-cat-toggle input:checked+.slider:before{transform:translateX(18px)}
  .cookie-cat-toggle input:disabled+.slider{opacity:.5;cursor:default}
  .cookie-btns{display:flex;gap:8px}
  .cookie-btns button{flex:1;padding:13px 16px;border-radius:50px;font-size:.82rem;font-weight:700;cursor:pointer;border:none;transition:all .2s;letter-spacing:.2px}
  .cookie-btn-all{background:var(--gold);color:#000}
  .cookie-btn-all:hover{background:#ffe04a}
  .cookie-btn-save{background:rgba(255,255,255,.08);color:rgba(255,255,255,.8)}
  .cookie-btn-save:hover{background:rgba(255,255,255,.14);color:#fff}
  .cookie-btn-ess{background:transparent;color:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.1)!important}
  .cookie-btn-ess:hover{color:#fff;border-color:rgba(255,255,255,.2)!important}
  @media(max-width:480px){.cookie-box{padding:24px 20px;border-radius:16px}.cookie-btns{flex-direction:column}.cookie-btns button{flex:auto}}

  /* SCROLL TEXT REVEAL */
  .str-word{display:inline-block;color:rgba(255,255,255,.1);transition:color .6s cubic-bezier(.4,0,.2,1);will-change:color}
  .str-word.lit{color:rgba(255,255,255,.95)}
  .str-word.gold{color:rgba(245,197,0,.1)!important}
  .str-word.gold.lit{color:var(--gold)!important}
  .str-space { display: inline; }

  /* SECTION DIVIDER GLOW */
  .sec-glow{position:relative}
  .sec-glow::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(245,197,0,.12),rgba(245,197,0,.2),rgba(245,197,0,.12),transparent)}

  /* ENHANCED REVEAL (overridden by visual upgrade section below) */
  .reveal.in{opacity:1;transform:none;filter:blur(0)}
  
  .reveal-delay-1{transition-delay:.1s}
  .reveal-delay-2{transition-delay:.2s}
  .reveal-delay-3{transition-delay:.3s}


  /* Typing dots animation */
  .chat-dots{display:inline-flex;gap:4px;align-items:center;padding:2px 0}
  .chat-dots span{width:7px;height:7px;background:rgba(255,255,255,.5);border-radius:50%;animation:chatDot 1.2s infinite}
  .chat-dots span:nth-child(2){animation-delay:.2s}
  .chat-dots span:nth-child(3){animation-delay:.4s}
  @keyframes chatDot{0%,80%,100%{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}

  /* FLOATING BADGE PULSE */
  .img-float{position:absolute;bottom:20px;left:20px;z-index:3;background:rgba(5,5,5,.8);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px 22px;display:flex;align-items:center;gap:14px;animation:floatBadge 3s ease-in-out infinite}
  @keyframes floatBadge{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
  .img-float-icon{width:42px;height:42px;background:var(--gold);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1rem}
  .img-float-num{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:800;color:#fff;letter-spacing:-.5px;line-height:1}
  .img-float-lbl{font-size:.65rem;color:var(--muted);margin-top:2px}

  /* HORIZONTAL SCROLL */
  .hscroll-wrap{overflow:hidden}
  .hscroll-track{display:flex;gap:24px;will-change:transform}
  .hscroll-card{flex-shrink:0;width:clamp(280px,30vw,380px);background:var(--card);border:1px solid var(--border);border-radius:22px;padding:40px 32px;transition:border-color .5s}
  .hscroll-card:hover{border-color:rgba(245,197,0,.72)}
  .hscroll-dot{width:10px;height:10px;background:var(--gold);border-radius:50%;margin-bottom:18px}
  .hscroll-title{font-family:'Space Grotesk',sans-serif;font-size:1.2rem;font-weight:700;color:#fff;margin-bottom:10px}
  .hscroll-desc{font-size:.88rem;color:var(--muted);line-height:1.7}
  @media(max-width:768px){.hscroll-card{width:85vw}}

  /* COMPARISON TABLE */
  .compare{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:700px;margin-left:auto;margin-right:auto}
  .compare-col{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:24px;overflow:hidden}
  .compare-col.new{border-color:rgba(245,197,0,.75);background:rgba(245,197,0,.03)}
  .compare-label{font-family:"Space Grotesk",sans-serif;font-size:1rem;font-weight:700;color:#fff;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}
  .compare-col.old .compare-label{color:rgba(255,255,255,.82)}
  .compare-row{display:flex;justify-content:space-between;align-items:baseline;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04)}
  .compare-row:last-child{border-bottom:none}
  .compare-row span:first-child{font-size:.75rem;color:var(--muted)}
  .compare-row .val{font-size:.88rem;font-weight:600;color:#fff;text-align:right}
  .compare-col.old .val{color:rgba(255,255,255,.78)}
  .compare-col.new .val{color:var(--gold)}
  @media(max-width:480px){.compare{grid-template-columns:1fr;gap:12px}.compare-col{padding:20px}}


  /* ─── VIDEO PLAYER MODAL ─── */
  .vid-modal{position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;display:none;opacity:0;pointer-events:none;transition:opacity .3s}
  .vid-modal.open{display:flex;opacity:1;pointer-events:all}
  .vid-modal-inner{position:relative;width:min(900px,95vw)}
  .vid-modal-inner iframe{width:100%;aspect-ratio:16/9;border:none;border-radius:12px}
  .vid-modal-close{position:absolute;top:-44px;right:0;background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer;line-height:1;padding:8px}

  /* ─── VIDEO CARDS ─── */
  .vid-card{cursor:pointer;border-radius:16px;overflow:hidden;background:var(--card);border:1px solid var(--border);transition:transform .3s,border-color .3s}
  .vid-card:hover{transform:translateY(-4px);border-color:rgba(245,197,0,.82)}
  .vid-thumb-wrap{position:relative;overflow:hidden}
  .vid-thumb{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .5s}
  .vid-card:hover .vid-thumb{transform:scale(1.04)}
  .vid-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.25);transition:background .3s}
  .vid-card:hover .vid-overlay{background:rgba(0,0,0,.4)}
  .vid-play{width:64px;height:64px;background:rgba(245,197,0,.92);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;transition:transform .2s,background .2s;padding-left:4px}
  .vid-card:hover .vid-play{transform:scale(1.1);background:var(--gold)}
  .vid-label{position:absolute;bottom:0;left:0;right:0;padding:20px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.85))}
  .vid-label-name{color:#fff;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:.88rem}
  .vid-label-sub{color:var(--gold);font-size:.72rem;margin-top:2px}

  /* ─── UNTERNEHMENSFILM ─── */
  .uf-section{background:#050505;padding:clamp(64px,8vw,110px) clamp(24px,6vw,80px)}
  .uf-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);align-items:center;max-width:1200px;margin:0 auto}
  .uf-video{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/9;cursor:pointer}
  .uf-video img{width:100%;height:100%;object-fit:cover}
  .uf-video .vid-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);transition:background .3s}
  .uf-video:hover .vid-overlay{background:rgba(0,0,0,.5)}
  .uf-video .vid-play{width:80px;height:80px;font-size:1.8rem;padding-left:5px}
  @media(max-width:768px){.uf-inner{grid-template-columns:1fr}.uf-video{margin-bottom:8px}}

  /* ─── TESTIMONIAL VIDEO GRID ─── */
  .tv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
  @media(max-width:900px){.tv-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:480px){.tv-grid{grid-template-columns:1fr 1fr}}



  /* SOLAR NETZWERK */
  .solar-netz-section{background:#080808;padding:clamp(80px,9vw,130px) clamp(20px,5vw,80px);overflow:hidden;position:relative}
  .solar-netz-section::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:800px;height:400px;background:radial-gradient(ellipse,rgba(245,197,0,.06) 0%,transparent 70%);pointer-events:none}
  .solar-netz-header{text-align:center;margin-bottom:56px}
  .solar-netz-wrap{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:stretch;max-width:1300px;margin:0 auto}
  .solar-netz-map-container{position:relative;border-radius:20px;overflow:hidden;border:1px solid rgba(245,197,0,.2);box-shadow:0 0 60px rgba(245,197,0,.08);display:flex;flex-direction:column}
  #solarNetzMap{height:100%;min-height:520px;background:#0d0d0d}
  .solar-netz-live-badge{position:absolute;top:16px;left:16px;z-index:800;background:rgba(0,0,0,.75);backdrop-filter:blur(10px);border:1px solid rgba(245,197,0,.35);border-radius:999px;padding:5px 14px;font-size:.72rem;font-weight:700;color:#F5C500;display:flex;align-items:center;gap:8px;letter-spacing:.05em;text-transform:uppercase}
  .solar-netz-pulse{width:8px;height:8px;border-radius:50%;background:#F5C500;animation:netzPulse 1.8s ease-in-out infinite}
  @keyframes netzPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(245,197,0,.5)}50%{opacity:.7;box-shadow:0 0 0 6px rgba(245,197,0,0)}}
  .solar-netz-sidebar{display:flex;flex-direction:column;gap:14px}
  .solar-netz-stat{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px 24px;display:flex;align-items:center;gap:16px;transition:border-color .3s,background .3s}
  .solar-netz-stat:hover{border-color:rgba(245,197,0,.4);background:rgba(245,197,0,.04)}
  .solar-netz-stat-icon{width:42px;height:42px;background:rgba(245,197,0,.07);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
  .solar-netz-num{font-family:'Space Grotesk',sans-serif;font-size:1.15rem;font-weight:800;color:#fff}
  .solar-netz-lbl{font-size:.73rem;color:rgba(255,255,255,.45);margin-top:2px}
  .solar-netz-activity{background:rgba(245,197,0,.03);border:1px solid rgba(245,197,0,.15);border-radius:16px;padding:18px 20px;margin-top:4px}
  .solar-netz-activity-title{font-size:.75rem;font-weight:700;color:#F5C500;letter-spacing:.05em;text-transform:uppercase;margin-bottom:12px}
  .solar-netz-activity-list{display:flex;flex-direction:column;gap:8px}
  .solar-netz-activity-item{display:flex;align-items:center;gap:10px;font-size:.78rem;color:rgba(255,255,255,.65);animation:slideInActivity .4s ease}
  @keyframes slideInActivity{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
  .solar-netz-activity-dot{width:6px;height:6px;border-radius:50%;background:#F5C500;flex-shrink:0}
  .solar-netz-activity-time{color:rgba(255,255,255,.3);font-size:.7rem;margin-left:auto;flex-shrink:0}

  /* SPAR-TICKER */
  .spar-ticker-section{background:#050505;padding:clamp(72px,8vw,110px) clamp(20px,5vw,80px);overflow:hidden;position:relative}
  .spar-ticker-section::before{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:1000px;height:300px;background:radial-gradient(ellipse,rgba(245,197,0,.05) 0%,transparent 70%);pointer-events:none}
  .spar-ticker-header{text-align:center;margin-bottom:40px}
  .spar-ticker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;max-width:1200px;margin:0 auto 48px}
  .spar-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:16px;padding:18px 20px;position:relative;overflow:hidden;transition:border-color .3s,transform .3s}
  .spar-card:hover{border-color:rgba(245,197,0,.35);transform:translateY(-2px)}
  .spar-card::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(245,197,0,.04) 0%,transparent 60%);pointer-events:none}
  .spar-card-city{font-size:.7rem;color:rgba(255,255,255,.4);font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px}
  .spar-card-owner{font-size:.85rem;color:rgba(255,255,255,.7);margin-bottom:10px}
  .spar-card-kwh{font-family:'Space Grotesk',sans-serif;font-size:1.5rem;font-weight:800;color:#F5C500;line-height:1}
  .spar-card-sub{font-size:.72rem;color:rgba(255,255,255,.4);margin-top:3px}
  .spar-card-bar{height:3px;background:rgba(255,255,255,.07);border-radius:2px;margin-top:12px;overflow:hidden}
  .spar-card-bar-fill{height:100%;background:linear-gradient(90deg,#F5C500,#ffd740);border-radius:2px;transition:width 1.5s ease}
  .spar-card-new{position:absolute;top:12px;right:12px;background:#F5C500;color:#000;font-size:.62rem;font-weight:800;border-radius:999px;padding:2px 8px;text-transform:uppercase;letter-spacing:.04em}
  .spar-ticker-total{max-width:520px;margin:0 auto;background:linear-gradient(135deg,rgba(245,197,0,.08),rgba(245,197,0,.03));border:1px solid rgba(245,197,0,.25);border-radius:24px;padding:36px 40px;text-align:center}
  .spar-ticker-total-label{font-size:.8rem;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}
  .spar-ticker-total-num{font-family:'Space Grotesk',sans-serif;font-size:2.8rem;font-weight:900;color:#F5C500;letter-spacing:-1px;line-height:1}
  .spar-ticker-total-euro{font-size:1rem;color:rgba(255,255,255,.55);margin-top:4px}
  .spar-ticker-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px 20px;transition:border-color .3s}
  .spar-ticker-card:hover{border-color:rgba(245,197,0,.25)}

  @media(max-width:860px){
    .solar-netz-wrap{grid-template-columns:1fr}
    #solarNetzMap{height:360px}
    .spar-ticker-grid{grid-template-columns:repeat(2,1fr)}
  }
  @media(max-width:500px){
    .spar-ticker-grid{grid-template-columns:1fr}
  }



@keyframes vidPulse{0%{transform:scale(.8);opacity:.8}100%{transform:scale(1.6);opacity:0}}



.legal-overlay{position:fixed;inset:0;z-index:9998;background:rgba(10,10,10,.98);transform:translateY(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);overflow-y:scroll;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.legal-overlay.open{transform:translateY(0)}
.legal-overlay-nav{position:sticky;top:0;z-index:10;height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,40px);background:rgba(10,10,10,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06)}
.legal-overlay-title{font-family:'Space Grotesk',sans-serif;font-size:.9rem;font-weight:700;color:#fff}
.legal-close{background:none;border:none;color:rgba(255,255,255,.6);font-size:.8rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;transition:all .2s}
.legal-close:hover{background:rgba(255,255,255,.08);color:#fff}
.legal-body{max-width:720px;margin:0 auto;padding:clamp(32px,5vw,56px) clamp(20px,5vw,60px) 80px}
.legal-body h2{font-family:'Space Grotesk',sans-serif;font-size:1.05rem;font-weight:700;color:#fff;margin:36px 0 10px;letter-spacing:-.3px}
.legal-body h2:first-child{margin-top:0}
.legal-body p{font-size:.86rem;color:rgba(255,255,255,.65);line-height:1.75;margin-bottom:10px}
.legal-body a{color:var(--gold)}
.legal-body strong{color:rgba(255,255,255,.9)}
.legal-body ul{margin:0 0 12px 20px;color:rgba(255,255,255,.65);font-size:.86rem}
.legal-body li{margin-bottom:5px}
.legal-body .info-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:clamp(20px,3vw,32px);margin-bottom:36px}
.legal-body .info-card p{margin-bottom:6px}
.legal-body .legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:8px}
.legal-body .legal-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gold);margin-bottom:3px}
.legal-body .legal-value{color:rgba(255,255,255,.8);font-size:.86rem;font-weight:600}
.legal-body .legal-sep{border:none;border-top:1px solid rgba(255,255,255,.06);margin:32px 0}
@media(max-width:600px){.legal-body .legal-grid{grid-template-columns:1fr}}



.page-overlay{position:fixed;inset:0;z-index:9997;background:rgba(10,10,10,.98);transform:translateY(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column}
.page-overlay.open{transform:translateY(0)}
.page-overlay-nav{height:56px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,40px);background:rgba(10,10,10,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}
.page-overlay-title{font-family:'Space Grotesk',sans-serif;font-size:.9rem;font-weight:700;color:#fff}
.page-overlay-close{background:none;border:none;color:rgba(255,255,255,.6);font-size:.8rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;transition:all .2s}
.page-overlay-close:hover{background:rgba(255,255,255,.08);color:#fff}
.page-overlay iframe{flex:1;width:100%;border:none;background:var(--bg)}


.f-heading{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:12px;}


    .ablauf-lottie-wrap { display:flex; justify-content:center; margin-bottom:12px; }
    .ablauf-lottie-wrap lottie-player { opacity:1; }
  


  /* ── SECTION DIVIDER ── */
  .sec-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(220,38,38,.0) 5%,rgba(220,38,38,.55) 30%,rgba(220,38,38,.8) 50%,rgba(220,38,38,.55) 70%,rgba(220,38,38,.0) 95%,transparent 100%);position:relative;display:block}
  .sec-divider::after{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:40%;height:1px;background:rgba(220,38,38,.25);filter:blur(4px)}
  

@media(max-width:768px){
    .hero-overlay{background:linear-gradient(to bottom,rgba(0,0,0,.55) 0%,rgba(0,0,0,.4) 40%,rgba(0,0,0,.7) 100%)!important}
    #heroVideo{filter:brightness(.7)}
  }
  /* ── Marquee Trust Ticker ─────────────────────────────── */
  .bd-marquee-wrap{overflow:hidden;background:#07080f;padding:0}
  .bd-marquee-row{padding:13px 0;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
  .bd-marquee-row+.bd-marquee-row{border-top:none;margin-top:5px}
  .bd-marquee-track{display:flex;white-space:nowrap;animation:bdMarquee 22s linear infinite}
  .bd-marquee-track.bd-rev{animation-direction:reverse;animation-duration:17s}
  .bd-marquee-item{display:inline-flex;align-items:center;gap:14px;padding:0 26px;font-size:.8rem;font-weight:800;color:rgba(255,255,255,.62);letter-spacing:.5px}
  .bd-marquee-dot{width:4px;height:4px;border-radius:50%;background:var(--gold);flex-shrink:0}
  @keyframes bdMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ── WCAG 2.5.8: Touch Target Sizing (min 44px) ──────────── */
footer a, .f-col a, .footer a, .footer-links a, .nav-links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding-top: 4px;
  padding-bottom: 4px;
}
.nav-legal a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
}

/* ── Mobile font-size minimum (WCAG readability) ──────────── */
@media (max-width: 480px) {
  .f-col a, footer a, .footer a, .footer-links a {
    font-size: .82rem;
    padding: 8px 0;
    min-height: 44px;
  }
  .f-about {
    font-size: .82rem;
    line-height: 1.6;
  }
  .lead {
    font-size: .9rem;
  }
  .faq-a p {
    font-size: .88rem;
  }
  .chk {
    font-size: .82rem;
  }
  /* Ensure tiny text elements meet min 12px on mobile */
  .hero-trust-label, .hero-trust-tp-text {
    font-size: .68rem;
  }
}

/* ── Mobile Touch & Interaction Polish (2026-03-29) ──────── */

/* Touch feedback: remove blue highlight on tap */
a, button, input, select, textarea, [role="button"] {
  -webkit-tap-highlight-color: transparent;
}

/* Ensure all buttons meet 44px touch target on mobile */
@media (max-width: 768px) {
  .btn-main, .btn-ghost, .btn-gold {
    min-height: 48px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .faq-q {
    min-height: 48px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
  /* Prevent horizontal overflow from any edge cases */
  .section, section, .card, .ablauf-grid {
    max-width: 100vw;
    overflow-x: hidden;
  }
  /* Smooth scrolling for touch */
  .trust-bar, .vtestis, .bd-marquee-track {
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
  }
}

/* Small phones: extra padding and sizing */
@media (max-width: 380px) {
  .hero h1 {
    font-size: clamp(1.8rem, 9vw, 3rem);
  }
  .hero-sub {
    font-size: .9rem;
  }
  .btn-main, .btn-ghost, .btn-gold {
    font-size: .85rem;
    padding: 14px 20px;
  }
  .calc-box {
    padding: 20px 12px;
  }
  .calc-result-num {
    font-size: 1.1rem;
  }
  .mob-sticky-cta .msb-main {
    font-size: .82rem;
    padding: 12px 16px;
  }
  .mob-sticky-cta .msb-wa {
    padding: 12px 14px;
    font-size: .78rem;
  }
}

/* ═══════════════════════════════════════════════════════════
   VISUAL UPGRADES — Cinematic Preloader, Hero, Reveals, Particles
   ═══════════════════════════════════════════════════════════ */

/* ── UPGRADE 1: Cinematic Preloader Energy Pulse ── */
.pre-ring{position:absolute;border-radius:50%;border:1px solid rgba(245,197,0,.15);top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}
.pre-ring.pulse{animation:preRingPulse 2.5s ease-out forwards}
@keyframes preRingPulse{0%{opacity:.6;width:80px;height:80px;border-color:rgba(245,197,0,.4)}50%{opacity:.3}100%{opacity:0;width:500px;height:500px;border-color:rgba(245,197,0,0)}}
.pre-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--gold);pointer-events:none;opacity:0}
@keyframes preParticleFloat{0%{opacity:0;transform:translateY(0) scale(0)}15%{opacity:.7;transform:translateY(-20px) scale(1)}85%{opacity:.4}100%{opacity:0;transform:translateY(-200px) scale(.3)}}
.pre-shockwave{position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;border:2px solid var(--gold);transform:translate(-50%,-50%);pointer-events:none;opacity:0}
.pre-shockwave.fire{animation:shockwave .8s ease-out forwards}
@keyframes shockwave{0%{width:0;height:0;opacity:.8;border-width:3px}100%{width:120vmax;height:120vmax;opacity:0;border-width:0}}
.pre-quote.blur-out{filter:blur(8px);transform:translateY(-30px) scale(.95)!important;opacity:0!important;transition:all .6s cubic-bezier(.4,0,.2,1)!important}
.pre-quote.blur-in{filter:blur(0);transform:translateY(0) scale(1)!important;opacity:1!important;transition:all .6s cubic-bezier(.16,1,.3,1)!important}
.pre-bar{transition:width .6s ease;box-shadow:0 0 16px rgba(245,197,0,.6),0 0 40px rgba(245,197,0,.2)}

/* ── UPGRADE 2: Hero Parallax + Stagger + Counters ── */
.hero-vid{transition:transform .1s linear;will-change:transform}
.h-word{display:inline-block;opacity:0;transform:translateY(80px) rotateX(15deg);transition:transform .9s cubic-bezier(.16,1,.3,1),opacity .7s ease;transform-origin:bottom center}
.h-word.visible{opacity:1;transform:translateY(0) rotateX(0)}
.hero-trust-num{transition:color .3s}
.hero-cta-glow{position:absolute;inset:-6px;border-radius:50px;background:radial-gradient(ellipse,rgba(245,197,0,.25) 0%,transparent 70%);animation:ctaGlow 2s ease-in-out infinite;pointer-events:none;z-index:-1}
@keyframes ctaGlow{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.08)}}
.btn-main{position:relative;overflow:visible}

/* ── UPGRADE 3: Enhanced Scroll Reveals ── */
.reveal{opacity:0;transform:translateY(40px) scale(.97);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease;filter:blur(4px);will-change:opacity,transform}
.reveal.in{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
.reveal-left{opacity:0;transform:translateX(-60px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease;filter:blur(4px)}
.reveal-left.in{opacity:1;transform:translateX(0);filter:blur(0)}
.reveal-right{opacity:0;transform:translateX(60px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease;filter:blur(4px)}
.reveal-right.in{opacity:1;transform:translateX(0);filter:blur(0)}
.reveal-scale{opacity:0;transform:scale(.75);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1),filter .8s ease;filter:blur(6px)}
.reveal-scale.in{opacity:1;transform:scale(1);filter:blur(0)}

/* Stagger children in grids */
.b-card.reveal,.calc-result.reveal,.usp-card.reveal,.engel-card.reveal,.step-card.reveal{transition-delay:var(--stagger,0ms)}

/* ── UPGRADE 4: Calculator Visual Upgrade ── */
.calc-box{transition:border-color .4s ease,box-shadow .4s ease}
.calc-box.glow{border-color:rgba(245,197,0,.3)!important;box-shadow:0 0 40px rgba(245,197,0,.08),0 0 80px rgba(245,197,0,.04)!important}
.calc-house{width:100%;max-width:320px;margin:0 auto 24px;position:relative;height:140px}
.calc-house svg{width:100%;height:100%}
.calc-panel{fill:rgba(245,197,0,.1);stroke:rgba(245,197,0,.3);stroke-width:.5;transition:fill .4s ease,stroke .4s ease,filter .4s ease}
.calc-panel.lit{fill:rgba(245,197,0,.4);stroke:var(--gold);filter:drop-shadow(0 0 8px rgba(245,197,0,.4))}
.calc-result-num{transition:transform .2s ease}
.calc-result-num.bump{animation:numBump .3s ease}
@keyframes numBump{0%{transform:scale(1)}50%{transform:scale(1.12)}100%{transform:scale(1)}}
.calc-burst{position:absolute;top:50%;left:50%;pointer-events:none}
.calc-burst-dot{position:absolute;width:4px;height:4px;border-radius:50%;background:var(--gold);opacity:0}

/* ── UPGRADE 5: Energy Particles Canvas ── */
#energyCanvas{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.6}

/* ── UPGRADE 6: Navbar Scroll-Shrink ── */
.nav{transition:height .35s cubic-bezier(.16,1,.3,1),background .35s ease,box-shadow .35s ease,padding .35s ease}
.nav.scrolled{height:48px;background:rgba(5,5,5,.97);box-shadow:0 2px 24px rgba(0,0,0,.5),0 1px 0 rgba(245,197,0,.08)}
.nav.scrolled .nav-logo img{height:20px;transition:height .35s cubic-bezier(.16,1,.3,1)}

/* ── UPGRADE 7: 3D Tilt Cards (Bento) ── */
.b-card{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s ease,border-color .4s ease,transition-delay var(--stagger,0ms);transform-style:preserve-3d;will-change:transform}
.b-card:hover{border-color:rgba(245,197,0,.2)!important;box-shadow:0 20px 60px rgba(0,0,0,.4),0 0 30px rgba(245,197,0,.06)!important}

/* ── UPGRADE 8: Compare Table Glow + Slide-In ── */
.compare-col.new{border:1px solid rgba(245,197,0,.25);box-shadow:0 0 40px rgba(245,197,0,.06),0 0 80px rgba(245,197,0,.03);position:relative}
.compare-col.new::before{content:'';position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(180deg,rgba(245,197,0,.12),transparent 60%);z-index:0;pointer-events:none;border-radius:16px}
.compare-col.old{opacity:.7;filter:saturate(.6)}
.compare-col.old .val{color:rgba(255,100,100,.7)!important}
.compare-col.new .val{color:var(--gold)!important;font-weight:700}
.compare-row{opacity:0;transform:translateX(20px);transition:opacity .5s ease,transform .5s ease}
.compare.in .compare-row{opacity:1;transform:translateX(0)}
.compare.in .compare-col.old .compare-row{transform:translateX(0);animation:none}
.compare.in .compare-row:nth-child(2){transition-delay:.08s}
.compare.in .compare-row:nth-child(3){transition-delay:.16s}
.compare.in .compare-row:nth-child(4){transition-delay:.24s}
.compare.in .compare-row:nth-child(5){transition-delay:.32s}
.compare.in .compare-row:nth-child(6){transition-delay:.40s}

/* ── UPGRADE 9: Counter Glow on Count ── */
.live-stat-num.counting{text-shadow:0 0 20px rgba(245,197,0,.3)}

/* ── UPGRADE 10: Patrick Quote Gradient ── */
.quote-stripe{position:relative;overflow:hidden}
.quote-stripe::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(245,197,0,.06) 0%,rgba(245,197,0,.02) 25%,transparent 50%,rgba(245,197,0,.04) 75%,rgba(245,197,0,.06) 100%);background-size:300% 300%;animation:quoteGradient 8s ease-in-out infinite;z-index:0;pointer-events:none}
@keyframes quoteGradient{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
.quote-stripe blockquote,.quote-stripe cite{position:relative;z-index:1}

/* ── UPGRADE 11: Marquee Hover-Pause ── */
.bd-marquee-wrap:hover .bd-marquee-track{animation-play-state:paused}
.bd-marquee-item{transition:opacity .3s ease}
.bd-marquee-wrap:hover .bd-marquee-item{opacity:.7}
.bd-marquee-wrap:hover .bd-marquee-item:hover{opacity:1;color:var(--gold)}

/* ── UPGRADE 12: Scroll Progress Indicator ── */
.scroll-progress{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,rgba(245,197,0,.6),var(--gold),rgba(255,229,100,.9));z-index:9999;width:0%;transition:none;pointer-events:none;box-shadow:0 0 8px rgba(245,197,0,.4),0 0 20px rgba(245,197,0,.15)}

/* ── UPGRADE 13: Cursor Glow (Desktop) ── */
.cursor-glow{position:fixed;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(245,197,0,.04) 0%,rgba(245,197,0,.015) 30%,transparent 70%);pointer-events:none;z-index:1;transform:translate(-50%,-50%);transition:opacity .4s ease;opacity:0;will-change:transform}
.cursor-glow.active{opacity:1}
@media(max-width:768px){.cursor-glow{display:none}}
@media(hover:none){.cursor-glow{display:none}}

/* ── UPGRADE 14: Section Divider Glow Lines ── */
.section-glow{position:relative}
.section-glow::after{content:'';position:absolute;bottom:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(245,197,0,.15),rgba(245,197,0,.25),rgba(245,197,0,.15),transparent);pointer-events:none}

/* ── UPGRADE 15: Improved Mobile Comparison ── */
@media(max-width:600px){
  .compare-col{border-radius:14px!important;padding:20px 16px!important}
  .compare-col.new{box-shadow:0 0 30px rgba(245,197,0,.08),0 8px 32px rgba(0,0,0,.3)!important}
  .compare-col.old{opacity:.6;margin-bottom:8px}
  .compare-row .label{font-size:.78rem!important}
  .compare-row .val{font-size:.88rem!important}
}

/* ── Reduced Motion ── */
@media(prefers-reduced-motion:reduce){
  .pre-ring,.pre-particle,.pre-shockwave,.hero-cta-glow{display:none!important}
  .h-word{opacity:1!important;transform:none!important;transition:none!important}
  .reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .calc-panel{transition:none!important}
  .calc-result-num.bump{animation:none!important}
  #energyCanvas{display:none!important}
  .b-card{transform:none!important;transition:none!important}
  .compare-row{opacity:1!important;transform:none!important;transition:none!important}
  .quote-stripe::before{animation:none!important}
  .bd-marquee-track{animation-play-state:running!important}
  .cursor-glow{display:none!important}
  .scroll-progress{display:none!important}
}
