/* DARGE JET — shared site styles (fonts, base, header, footer, contact modal) */

@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url('../fonts/inter-latin.woff2') format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url('../fonts/inter-latin-ext.woff2') format('woff2-variations');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:300 700;src:url('../fonts/space-grotesk-latin.woff2') format('woff2-variations');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Space Grotesk';font-style:normal;font-display:swap;font-weight:300 700;src:url('../fonts/space-grotesk-latin-ext.woff2') format('woff2-variations');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}



  :root{
    --bg-void:#0d0d0d;
    --bg-surface:#1C1C19;
    --bg-surface-2:#242420;
    --bg-hero:#131311;
    --accent:#10BB82;
    --accent-dim:rgba(16,187,130,0.16);
    --accent-line:rgba(16,187,130,0.55);
    --sage:#6B8F6F;
    --terracotta:#A0522D;
    --text-1:#F5F3ED;
    --text-2:rgba(245,243,237,0.82);
    --text-3:rgba(245,243,237,0.65);
    --border-1:rgba(245,243,237,0.08);
    --border-2:rgba(245,243,237,0.14);
    --radius:20px;
    --wrap:1440px;
    --ease:cubic-bezier(.16,.84,.44,1);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0; color:var(--text-1);
    background:
      radial-gradient(circle at 18% 0%, rgba(16,187,130,0.12), transparent 45%),
      radial-gradient(circle at 88% 28%, rgba(16,187,130,0.09), transparent 45%),
      radial-gradient(circle at 12% 68%, rgba(16,187,130,0.08), transparent 45%),
      radial-gradient(circle at 92% 96%, rgba(16,187,130,0.10), transparent 45%),
      var(--bg-void);
    background-attachment:fixed;
    font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  h1, h2, h3, .dj-display{ font-family:"Space Grotesk","Inter",sans-serif; letter-spacing:-0.01em; }
  .dj-wrap{ max-width:var(--wrap); margin:0 auto; padding:0 56px; }
  a{ color:inherit; text-decoration:none; }
  ::selection{ background:var(--accent); color:#0B241A; }

  /* ===== REVEAL ON SCROLL ===== */
  .reveal{
    opacity:0; transform:translateY(24px);
    transition:opacity .8s var(--ease) .1s, transform .8s var(--ease) .1s;
  }
  .reveal.is-visible{ opacity:1; transform:translateY(0); }
  .reveal-stagger.is-visible{ transition-delay:calc(0.1s + var(--i,0) * 0.08s); }

  @media (prefers-reduced-motion: reduce){
    .reveal, .reveal-stagger{ transition:none; opacity:1; transform:none; }
    html{ scroll-behavior:auto; }
  }

  /* ===== CURVED PATH ===== */
  .dj-curved-track-container{
    position: absolute; 
    top: 0; left: 0;
    width: 100%;
    pointer-events: none; 
    z-index: 0; 
  }
  .dj-svg-line{
    position: absolute;
    top: 0; left: 0;
    overflow: visible;
  }
  #djPathFill{
    filter: drop-shadow(0 0 3px rgba(16,187,130,0.4)) drop-shadow(0 0 8px rgba(16,187,130,0.18));
  }
  .dj-track-dot{
    position: absolute;
    top: 0; left: 0;
    width: 14px; height: 14px;
    background: #10BB82;
    border-radius: 50%;
    box-shadow: 0 0 12px 5px rgba(16,187,130,0.4), 0 0 24px 6px rgba(16,187,130,0.18);
    opacity: 0;
    transition: opacity 0.3s ease;
    margin-left: -7px; 
    margin-top: -7px;  
    z-index: 1;
  }

  /* ===== HEADER (sticky + glass) ===== */
  
  
  
  
  
  
  
  

  
  
  
  
  
  
  
  
  
  
  

  
  
  
  .dj-btn-primary{
    background-color:var(--accent); color:#0B241A; border:none; border-radius:10px;
    padding:14px 24px; font-size:15px; font-weight:700; cursor:pointer; white-space:nowrap;
    box-shadow:0 0 0 rgba(16,187,130,0); transition:box-shadow .25s ease, transform .2s ease;
  }
  .dj-btn-primary:hover{ box-shadow:0 8px 24px rgba(16,187,130,0.35); transform:translateY(-1px); }

  /* ===== SECTION SHELL (generous spacing) ===== */
  .dj-eyebrow{
    display:inline-flex; align-items:center; gap:12px; color:var(--accent);
    font-size:14px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; margin-bottom:26px;
  }
  .dj-eyebrow::before{
    content:""; width:28px; height:2px; background:var(--accent);
    box-shadow:0 0 8px rgba(16,187,130,0.7); border-radius:2px;
  }
  .dj-divider{
    height:1px; margin:0 auto 110px; max-width:var(--wrap);
    background:linear-gradient(to right, transparent, rgba(16,187,130,0.5) 50%, transparent);
  }

  /* ===== HERO ===== */
  .dj-hero{
    position: relative;
    z-index: 2;
    min-height:100vh; padding:230px 0; display:flex; flex-direction:column; justify-content:center;
    background:transparent; border-bottom:1px solid var(--border-1);
  }
  .hero-grid{ display:grid; grid-template-columns:1.05fr 0.95fr; gap:136px; align-items:center; }
  .hero-kicker{ color:var(--text-3); font-size:15px; font-weight:500; margin:0 0 24px 0; letter-spacing:.01em; }
  .hero-title{
    color:var(--text-1); font-size:clamp(42px, 5vw, 68px); font-weight:700; line-height:1.1; margin:0 0 32px 0;
  }
  .hero-sub{
    color:var(--text-2); font-size:18px; line-height:1.7; margin:0 0 48px 0; max-width:480px;
  }
  .hero-actions{ display:flex; flex-wrap:wrap; gap:18px; margin-bottom:48px; }
  .dj-btn-ghost{
    background:transparent; color:var(--text-1); border:1px solid var(--border-2); border-radius:10px;
    padding:16px 30px; font-size:15px; font-weight:600; cursor:pointer; transition:border-color .2s ease, background .2s ease;
  }
  .dj-btn-ghost:hover{ border-color:var(--text-2); background:rgba(255,255,255,0.03); }
  .dj-btn-primary.lg{ padding:16px 32px; font-size:16px; }
  .hero-check-list{ display:flex; flex-direction:column; gap:16px; }
  .hero-check{ display:flex; align-items:center; gap:12px; }
  .hero-check span{ color:var(--text-2); font-size:15px; }
  .hero-visual{
    background:radial-gradient(circle at 30% 20%, rgba(16,187,130,0.15), transparent 60%), var(--bg-surface);
    border:1px solid var(--border-2); border-radius:var(--radius); height:460px;
    display:flex; align-items:center; justify-content:center; text-align:center; padding:40px;
    position:relative; overflow:hidden;
  }
  .hero-visual::before{
    content:""; position:absolute; inset:0;
    background-image:radial-gradient(rgba(255,255,255,0.05) 1px, transparent 1px);
    background-size:28px 28px; opacity:.6;
  }
  .hero-visual span{ position:relative; color:var(--text-3); font-size:16px; }

  /* ===== FEATURE BLOCKS (2–5) ===== */
  .feature-block{
    position: relative;
    z-index: 2;
    min-height:100vh; padding:230px 0; display:flex; flex-direction:column; justify-content:center;
    background:transparent; border-top:1px solid var(--border-1);
  }
  .feature-block.alt{ background:transparent; }
  .feature-grid{ display:grid; grid-template-columns:1fr 0.92fr; gap:128px; align-items:center; }
  .legal-audit-grid{ grid-template-columns:1fr; }
  .legal-audit-grid>div{ max-width:800px; }
  .feature-grid.reverse{ grid-template-columns:0.92fr 1fr; }
  .feature-grid.reverse .feature-visual{ order:-1; }
  .feature-title{ font-size:clamp(32px,4vw,50px); font-weight:700; line-height:1.18; margin:0 0 26px 0; max-width:560px; }
  .feature-desc{ color:var(--text-2); font-size:18px; line-height:1.75; margin:0 0 40px 0; max-width:500px; }
  .feature-note{ color:var(--text-3); font-size:13.5px; line-height:1.7; margin-top:32px; max-width:480px; }
  .feature-visual{
    background:radial-gradient(circle at 70% 25%, rgba(16,187,130,0.12), transparent 60%), var(--bg-surface);
    border:1px solid var(--border-2); border-radius:var(--radius); height:440px;
    display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
  }
  .feature-visual::before{
    content:""; position:absolute; inset:0;
    background-image:radial-gradient(rgba(255,255,255,0.045) 1px, transparent 1px);
    background-size:28px 28px;
  }
  .feature-visual span{ position:relative; color:var(--text-3); font-size:16px; }

  /* ===== CAROUSEL (pain points and solutions) ===== */
  .dj-carousel{
    position: relative;
    z-index: 2;
    min-height:100vh; padding:230px 0; display:flex; flex-direction:column; justify-content:center;
    background-color:transparent;
    background-image:radial-gradient(circle, rgba(255,255,255,0.05) 1px, transparent 1px);
    background-size:28px 28px; border-top:1px solid var(--border-1);
  }
  .carousel-head{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:66px; flex-wrap:wrap; gap:12px; }
  .carousel-head h3{ font-size:36px; font-weight:700; margin:0; }
  .carousel-head p{ color:var(--text-2); font-size:16px; margin:0; }
  .carousel-row{ overflow:hidden; padding:14px 4px; }
  .carousel-track{ display:flex; width:max-content; gap:24px; }
  .carousel-group{ display:flex; gap:24px; flex-shrink:0; }
  .djtrackL{ animation-name:djScrollL; animation-timing-function:linear; animation-iteration-count:infinite; }
  .djtrackR{ animation-name:djScrollR; animation-timing-function:linear; animation-iteration-count:infinite; }
  .dj-wrap:hover .carousel-track{ animation-play-state:paused; }
  @keyframes djScrollL{ 0%{ transform:translateX(0); } 100%{ transform:translateX(-50%); } }
  @keyframes djScrollR{ 0%{ transform:translateX(-50%); } 100%{ transform:translateX(0); } }
  .djtag2{
    display:inline-flex; align-items:center; gap:16px; white-space:nowrap;
    background-color:var(--bg-surface) !important; border:1px solid var(--border-2); border-radius:16px;
    padding:24px 32px; color:var(--text-2) !important; font-size:16px; cursor:default;
    box-shadow:0 10px 24px -14px rgba(0,0,0,0.6);
    flex-shrink:0; transition:all .25s var(--ease);
  }
  .djtag2:hover{
    border-color:rgba(16,187,130,0.55); color:var(--text-1) !important;
    background-color:rgba(16,187,130,0.07) !important; transform:scale(1.045);
    box-shadow:0 14px 30px -12px rgba(16,187,130,0.3);
  }
  .djtag2[data-tag]{ cursor:pointer; }
  .djtag2.djon{
    background-color:var(--accent) !important; border-color:var(--accent); color:#0B241A !important;
    font-weight:700; transform:scale(1.03);
  }
  .djtag2.djon .djarrow{ color:#0B241A; }
  .djtag2 .djarrow{ color:var(--accent); font-size:16px; }

  .carousel-cta-row{ text-align:center; margin-top:8px; }
  .carousel-cta{
    position:relative;
    background:transparent; color:var(--text-3); border:1px solid var(--border-2); border-radius:12px;
    padding:16px 34px; font-size:15px; font-weight:600; cursor:pointer;
    opacity:.45; pointer-events:none; transition:all .4s var(--ease);
  }
  .carousel-cta.show{
    opacity:1; pointer-events:auto; color:#0B241A !important;
    background-color:var(--accent); border-color:var(--accent);
    box-shadow:0 0 22px rgba(16,187,130,0.4);
  }
  .carousel-cta.show::after{
    content:""; position:absolute; inset:-6px; border-radius:16px; pointer-events:none;
    box-shadow:0 0 30px rgba(16,187,130,0.55);
    opacity:0; animation:djGlowPulse 2.4s ease-in-out infinite;
  }

  /* ===== WIDE QUIZ (80–90vw) ===== */
  .dj-quiz{
    position: relative;
    z-index: 2;
    min-height:100vh; padding:230px 0; display:flex; flex-direction:column; justify-content:center;
    background:transparent; border-top:1px solid var(--border-1);
  }
  .quiz-head{ font-size:clamp(32px,3.8vw,46px); font-weight:700; text-align:center; margin:0 0 64px 0; }
  .quiz-shell{
    width:88vw; max-width:1280px; margin:0 auto; padding:96px;
    background:rgba(28,28,25,0.55); border:1px solid rgba(245,243,237,0.08); border-radius:var(--radius);
    box-shadow:0 30px 60px -30px rgba(0,0,0,0.5);
  }
  .djprogress-row{ display:flex; justify-content:space-between; margin-bottom:12px; }
  #djStepLabel{ color:var(--text-2); font-size:14px; }
  .djprogress-track{ height:8px; background:rgba(255,255,255,0.08); border-radius:6px; overflow:hidden; margin-bottom:52px; }
  #djProgressFill{ height:100%; width:25%; background-color:var(--accent); border-radius:6px; transition:width .35s ease; }
  .djstep h3{ color:var(--text-1); font-size:26px; font-weight:700; text-align:center; margin:0 0 12px 0; }
  .djstep .djsub{ color:var(--text-2); font-size:16px; text-align:center; margin:0 0 40px 0; line-height:1.5; }
  .djcard-grid{ display:grid; grid-template-columns:1fr 1fr; gap:32px; max-width:100%; margin:0 auto; }
  .djcard{
    background:rgba(255,255,255,0.035); border:1px solid rgba(245,243,237,0.09); border-radius:18px;
    padding:44px; cursor:pointer;
    box-shadow:0 12px 30px -18px rgba(0,0,0,0.5);
    transition:transform .35s var(--ease), border-color .35s ease, background .35s ease, box-shadow .35s ease;
  }
  .djcard:hover{
    transform:translateY(-4px); border-color:rgba(16,187,130,0.45);
    background:rgba(16,187,130,0.045); box-shadow:0 20px 40px -18px rgba(16,187,130,0.25);
  }
  .djcard-icon-wrap{
    width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center;
    background:radial-gradient(circle at 35% 30%, rgba(16,187,130,0.22), rgba(16,187,130,0.03) 72%);
    margin-bottom:22px;
  }
  .djcard-icon-wrap svg{
    width:24px; height:24px; stroke:var(--accent); fill:none;
    filter:drop-shadow(0 0 5px rgba(16,187,130,0.55));
  }
  .djcard-title{ color:var(--text-1); font-size:18px; font-weight:700; margin:16px 0 10px 0; }
  .djcard-sub{ color:var(--text-2); font-size:15px; line-height:1.6; }
  .djtaggrid{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; margin-bottom:44px; max-width:1000px; margin-left:auto; margin-right:auto; }
  .djtagbtn{
    background-color:rgba(255,255,255,0.03) !important; border:1px solid rgba(245,243,237,0.1); border-radius:10px;
    padding:14px 20px; color:var(--text-2) !important; font-size:14px; cursor:pointer; transition:all .25s var(--ease);
  }
  .djtagbtn.djon{ background-color:var(--accent) !important; border-color:var(--accent); color:#0B241A !important; font-weight:700; }
  .djstep-nav{ display:flex; justify-content:space-between; align-items:center; max-width:1000px; margin:0 auto; }
  
  /* Full-size BACK button */
  .djback{ 
    background:transparent; color:var(--text-2); border:1px solid var(--border-2); border-radius:10px;
    padding:14px 24px; font-size:14px; font-weight:600; cursor:pointer; transition:border-color .2s ease, color .2s ease;
  }
  .djback:hover{ border-color:var(--text-1); color:var(--text-1); }
  
  .djnextbtn{
    background-color:var(--accent) !important; color:#0B241A !important; font-weight:700 !important;
    border:none !important; border-radius:10px; padding:15px 32px; font-size:15px; cursor:pointer;
    opacity:1 !important; box-shadow:0 0 15px rgba(16,187,130,0.35); transition:transform .2s ease;
  }
  .djnextbtn:hover{ transform:translateY(-1px); }
  .volume-display{ text-align:center; margin-bottom:12px; }
  #djVolumeLabel{ color:var(--accent); font-size:36px; font-weight:800; font-family:"Space Grotesk",sans-serif; }
  #djVolumeSub{ color:var(--text-2); font-size:14px; margin-top:8px; }
  .slider-wrap{ padding:0 12px; margin:40px auto 10px; max-width:680px; }
  input[type=range]{ -webkit-appearance:none; appearance:none; width:100%; height:10px; border-radius:6px; background:var(--bg-surface-2); outline:none; }
  input[type=range]::-webkit-slider-thumb{
    -webkit-appearance:none; width:28px; height:28px; border-radius:50%;
    background-color:var(--accent); border:3px solid var(--bg-hero); cursor:pointer; box-shadow:0 0 10px rgba(16,187,130,0.6);
  }
  input[type=range]::-moz-range-thumb{
    width:28px; height:28px; border-radius:50%; background-color:var(--accent);
    border:3px solid var(--bg-hero); cursor:pointer; box-shadow:0 0 10px rgba(16,187,130,0.6);
  }
  .tick-row{ display:flex; justify-content:space-between; padding:0 10px; margin:0 auto 48px; max-width:680px; }
  .djtick{ width:2px; height:10px; background:var(--border-2); }
  input.djinput, textarea.djinput{
    background-color:rgba(255,255,255,0.03) !important; color:var(--text-1) !important;
    border:1px solid rgba(245,243,237,0.1) !important;
    width:100%; box-sizing:border-box; border-radius:10px; padding:16px 20px; font-size:15px; outline:none;
    transition:border-color .2s ease, background .2s ease; font-family:inherit;
  }
  .djinput::placeholder{ color:var(--text-3) !important; }
  .djinput:focus{ border-color:var(--accent) !important; background-color:rgba(16,187,130,0.05) !important; }
  #djStep4 > div{ max-width:600px; margin:0 auto; }
  .messenger-row{ display:flex; gap:10px; margin-bottom:20px; }
  .messenger-btn{
    flex:1; background-color:rgba(255,255,255,0.03) !important; border:1px solid rgba(245,243,237,0.1) !important;
    border-radius:10px; padding:15px 10px; color:var(--text-2) !important; font-size:14px;
    font-weight:600; cursor:pointer; transition:all .25s var(--ease);
  }
  .messenger-btn.active-telegram{ background-color:#2AABEE !important; color:#fff !important; border:none !important; }
  .messenger-btn.active-whatsapp{ background-color:#25D366 !important; color:#fff !important; border:none !important; }
  .messenger-btn.active-call{ background-color:#444440 !important; color:#fff !important; border:none !important; }
  .djconsent-row{ display:flex; align-items:flex-start; gap:12px; margin-bottom:28px; }
  .djconsent-row input{ accent-color:var(--accent); width:18px; height:18px; margin-top:2px; flex-shrink:0; }
  .djconsent-row label{ color:var(--text-3); font-size:13px; line-height:1.55; }
  .djconsent-row a{ color:var(--accent); text-decoration:underline; }
  .djsubmitbtn{
    position:relative;
    width:100%; background-color:var(--accent) !important; color:#0B241A !important; font-weight:700 !important;
    border:none !important; border-radius:12px; padding:18px; font-size:16px; cursor:pointer;
    box-shadow:0 0 18px rgba(16,187,130,0.35); transition:transform .2s ease;
  }
  .djsubmitbtn::after{
    content:""; position:absolute; inset:-6px; border-radius:16px; pointer-events:none;
    box-shadow:0 0 32px rgba(16,187,130,0.65);
    opacity:0; animation:djGlowPulse 2.4s ease-in-out infinite;
  }
  @keyframes djGlowPulse{
    0%, 100%{ opacity:0; }
    50%{ opacity:1; }
  }
  .djsubmitbtn:hover{ transform:translateY(-1px); }
  #djConsentError{ display:none; color:#E8998E; font-size:13px; text-align:center; margin-top:12px; }
  #djFormWrap{ transition:opacity .3s ease; }
  #djLoading{ display:none; text-align:center; padding:100px 0; }
  #djLoadingText{ color:var(--text-1); font-size:20px; font-weight:600; }

  /* Legacy orb removed; original visual language retained. */
/* ===== FOOTER ===== */
  .dj-footer{ 
    position: relative;
    z-index: 2;
    padding:84px 0; border-top:1px solid var(--border-1); background:transparent; 
  }
  .footer-inner{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-bottom:36px; }
  
  .footer-copy{ color:var(--text-3); font-size:14px; }
  .footer-meta{ display:flex; flex-wrap:wrap; gap:12px 28px; padding-top:32px; border-top:1px solid var(--border-1); }
  .footer-meta span{ color:var(--text-3); font-size:14px; display:flex; align-items:center; gap:8px; }
  .footer-meta span::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--accent); flex-shrink:0; }

  /* ===== MOBILE MENU (hamburger) ===== */
  
  
  
  
  
  

  
  
  
  .dj-mobile-item{
    color:var(--text-2); font-size:18px; font-weight:500; padding:16px 4px;
    border-bottom:1px solid var(--border-1); cursor:pointer; transition:color .2s ease;
  }
  .dj-mobile-item:hover{ color:var(--accent); }
  

  /* ===== RESPONSIVE ===== */
  @media (max-width:1080px){
    
    
    
    
    
    .dj-wrap{ padding:0 24px; }
    .hero-grid{ grid-template-columns:1fr; }
    .feature-grid, .feature-grid.reverse{ grid-template-columns:1fr; }
    .feature-grid.reverse .feature-visual{ order:0; }
    .quiz-shell{ padding:40px; width:92vw; }
    .dj-section, .dj-hero, .feature-block, .dj-carousel, .dj-quiz{ min-height:auto; padding:110px 0; }
  }
  @media (max-width:680px){
    .djcard-grid{ grid-template-columns:1fr; }
    
    
    
    
    .quiz-shell{ padding:26px; }
    .feature-visual{ height:320px; }
  }


/* ===== GERMAN CONTENT / ORIGINAL-STYLE RESTORATION ===== */

html{ scroll-padding-top: var(--header-height); }
body{ overflow-x: hidden; }
button, input, textarea{ font: inherit; }
button{ color: inherit; }
.sr-only{ position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.skip-link{ position:fixed; left:16px; top:12px; z-index:3000; transform:translateY(-180%); background:var(--accent); color:#08261b; padding:12px 16px; border-radius:8px; font-weight:700; }
.skip-link:focus{ transform:none; }









.hero-title{
  font-size:clamp(50px,6.2vw,92px);
  line-height:1.02;
  letter-spacing:-.045em;
  max-width:820px;
  margin:0 0 54px;
}
.hero-title-line{
  display:block;
  opacity:0;
  transform:translateY(22px);
  filter:blur(6px);
  animation:heroWordIn .76s var(--ease) forwards;
}
.hero-title-line + .hero-title-line{ margin-top:.24em; }
.hero-title-line:nth-child(1){ animation-delay:.35s; }
.hero-title-line:nth-child(2){ animation-delay:1.15s; }
.hero-title-line:nth-child(3){ animation-delay:1.95s; }
.hero-after-words{
  opacity:0;
  transform:translateY(20px);
  animation:heroInfoIn .86s var(--ease) 2.95s forwards;
}
@keyframes heroWordIn {
  to{ opacity:1; transform:none; filter:none; }
}
@keyframes heroInfoIn {
  to{ opacity:1; transform:none; }
}
.hero-kicker{ color:var(--accent); text-transform:uppercase; letter-spacing:.09em; font-size:13px; font-weight:700; }
.hero-sub{ max-width:610px; font-size:19px; }
.hero-visual{ align-items:stretch; text-align:left; padding:44px; }
.hero-plan{ position:relative; z-index:1; width:100%; display:flex; flex-direction:column; justify-content:center; }
.hero-plan-label{ color:var(--accent); font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; margin-bottom:14px; }
.hero-plan h2{ font-size:clamp(28px,3vw,44px); line-height:1.04; margin:0 0 28px; }
.hero-plan-list{ display:grid; gap:0; border-top:1px solid var(--border-1); }
.hero-plan-item{ display:grid; grid-template-columns:42px 1fr; gap:14px; padding:19px 0; border-bottom:1px solid var(--border-1); }
.hero-plan-number{ color:var(--accent); font-weight:700; font-size:12px; }
.hero-plan-item strong{ display:block; font-size:15px; margin-bottom:6px; }
.hero-plan-item p{ color:var(--text-2); font-size:13px; line-height:1.55; margin:0; }

.feature-block{ scroll-margin-top:var(--header-height); }
.feature-label{ color:var(--accent); text-transform:uppercase; letter-spacing:.08em; font-size:13px; font-weight:700; margin-bottom:20px; }
.feature-list{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 22px; margin:0 0 34px; padding:0; list-style:none; }
.feature-list li{ position:relative; padding-left:18px; color:var(--text-2); line-height:1.55; }
.feature-list li::before{ content:""; position:absolute; left:0; top:.63em; width:7px; height:7px; background:var(--accent); border-radius:50%; box-shadow:0 0 8px rgba(16,187,130,.45); }
.feature-visual{ padding:42px; align-items:stretch; }
.process-card{ position:relative; z-index:1; width:100%; display:flex; flex-direction:column; justify-content:center; }
.process-card-label{ color:var(--text-3); font-size:12px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:20px; }
.process-flow{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.process-pill{ border:1px solid var(--border-2); background:rgba(255,255,255,.025); padding:12px 16px; border-radius:10px; color:var(--text-2); font-size:14px; }
.process-arrow{ color:var(--accent); }
.process-note{ margin-top:24px; color:var(--text-3); font-size:13px; line-height:1.6; }
.security-note{ border-left:2px solid var(--accent); padding-left:18px; color:var(--text-3); line-height:1.65; margin-top:30px; }

.dj-carousel{ scroll-margin-top:var(--header-height); }
.carousel-head h2{ font-size:clamp(34px,4vw,52px); margin:0; }
.carousel-row{ overflow:hidden; }
.djtag2{ appearance:none; font-family:inherit; }
.djtag2:focus-visible, .djtagbtn:focus-visible, .djcard:focus-visible, .dj-btn-primary:focus-visible, .dj-btn-ghost:focus-visible, .djback:focus-visible, .djnextbtn:focus-visible, .djsubmitbtn:focus-visible, a:focus-visible{ outline:3px solid rgba(16,187,130,.75); outline-offset:4px; }
.carousel-category{ color:var(--accent); font-size:12px; text-transform:uppercase; letter-spacing:.09em; margin:22px 0 8px 4px; }
.carousel-cta-row{ margin-top:46px; }
.carousel-selection-status{ color:var(--text-2); text-align:center; min-height:24px; margin-top:18px; }

.insights-grid{ display:grid; grid-template-columns:1.1fr .9fr; gap:100px; align-items:center; }
.setups-heading{max-width:640px;margin:0 auto 56px}
.setups-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.setup-card{padding:30px 28px;border:1px solid var(--border-1);border-radius:18px;background:rgba(255,255,255,.02)}
.setup-number{display:block;margin:0 0 10px;color:var(--accent);font-size:12.5px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.setup-card h3{margin:0 0 12px;color:var(--text-1);font-size:19px;line-height:1.32}
.setup-flow{margin:0 0 14px;color:var(--accent);font-size:14px;font-weight:650;line-height:1.6}
.setup-text{margin:0;color:var(--text-2);font-size:15px;line-height:1.7}
@media(max-width:860px){.setups-grid{grid-template-columns:1fr}}
.network-placeholder{ position:relative; z-index:1; width:100%; display:grid; gap:14px; }
.network-item{ border:1px solid var(--border-2); border-radius:14px; padding:20px; background:rgba(255,255,255,.025); }
.network-item strong{ display:block; margin-bottom:6px; }
.network-item span{ color:var(--text-3); font-size:13px; }
.about-quote{ font-size:clamp(24px,3vw,38px); line-height:1.25; margin:0; }

.compliance-preview{ background:rgba(28,28,25,.55); border:1px solid var(--border-1); border-radius:var(--radius); padding:44px; }
.compliance-preview h3{ margin-top:0; font-size:24px; }
.compliance-preview p{ color:var(--text-2); line-height:1.7; }
.compliance-preview .dj-btn-ghost{ display:inline-flex; }

.dj-quiz{ scroll-margin-top:var(--header-height); }
.quiz-shell{ position:relative; z-index:2; }
.djcard{ appearance:none; width:100%; text-align:left; color:inherit; }
.djcard[aria-pressed="true"]{ border-color:var(--accent); background:rgba(16,187,130,.09); box-shadow:0 18px 42px -18px rgba(16,187,130,.32); }
.djtagbtn{ appearance:none; }
.djtagbtn[aria-pressed="true"]{ background-color:var(--accent)!important; border-color:var(--accent); color:#0B241A!important; font-weight:700; }
.quiz-field-label{ display:block; color:var(--text-2); font-size:14px; margin-bottom:10px; }
.quiz-runtime-note{ color:var(--text-3); font-size:13px; line-height:1.55; margin:0 0 20px; padding:14px 16px; border:1px solid var(--border-1); border-radius:10px; }
.quiz-result{ display:none; margin-top:24px; padding:18px 20px; border:1px solid rgba(16,187,130,.35); background:rgba(16,187,130,.08); border-radius:12px; color:var(--text-1); line-height:1.6; }
.quiz-result.show{ display:block; }
.djconsent-row label{ color:var(--text-2); }
.djconsent-row label::first-letter{ font-size:0; }

.footer-brand{ display:flex; align-items:center; gap:18px; }
.footer-brand img{ width:82px; height:82px; object-fit:contain; }
.footer-links{ display:flex; flex-wrap:wrap; gap:18px 30px; }
.footer-links a{ color:var(--text-2); font-size:14px; }
.footer-links a:hover{ color:var(--accent); }

@media (prefers-reduced-motion: reduce){
  .hero-title-line, .hero-after-words{
    opacity:1; transform:none; filter:none; animation:none;
  }
  .carousel-track{ animation:none!important; }
  .dj-track-dot{ display:none; }
}

@media (max-width:1180px){
  
  
  
  
  
  
  .hero-grid, .feature-grid, .feature-grid.reverse, .insights-grid{ gap:70px; }
}
@media (max-width:1080px){
  
  
  
  
  
  
  
  
  .hero-grid, .feature-grid, .feature-grid.reverse, .insights-grid{ grid-template-columns:1fr; }
  .feature-grid.reverse .feature-visual{ order:0; }
  .hero-visual, .feature-visual{ height:auto; min-height:360px; }
  .feature-list{ grid-template-columns:1fr; }
}
@media (max-width:680px){
  
  
  
  .dj-wrap{ padding-inline:18px; }
  .dj-hero, .feature-block, .dj-carousel, .dj-quiz{ padding:94px 0; }
  .hero-title{ font-size:clamp(46px,15vw,66px); }
  .hero-sub{ font-size:17px; }
  .hero-actions{ flex-direction:column; align-items:stretch; }
  .hero-actions a, .hero-actions button{ text-align:center; width:100%; }
  .hero-visual, .feature-visual{ padding:26px; min-height:320px; }
  .quiz-shell{ width:calc(100% - 24px); padding:24px 18px; }
  .djcard{ padding:26px; }
  .djstep-nav{ gap:12px; flex-wrap:wrap; }
  .djback, .djnextbtn{ flex:1; min-width:130px; }
  .messenger-row{ flex-direction:column; }
  .footer-inner{ align-items:flex-start; }
  .footer-brand img{ width:72px; height:72px; }
}


/* Extra spacing for the first block only */
.dj-hero{ padding-top:250px; padding-bottom:250px; }
.hero-grid{ gap:150px; }
.hero-kicker{ margin-bottom:36px; }
.hero-sub{ margin-bottom:56px; max-width:520px; }
.hero-actions{ margin-bottom:56px; }
.hero-check-list{ gap:20px; }

@media (max-width:1080px){
  .dj-hero{ padding-top:132px; padding-bottom:132px; }
  .hero-grid{ gap:84px; }
}
@media (max-width:680px){
  .dj-hero{ padding-top:96px; padding-bottom:110px; }
  .hero-title{ margin-bottom:40px; }
  .hero-title-line + .hero-title-line{ margin-top:.19em; }
}


/* ===== FINAL RESTORE: HEADER / FOOTER VISIBILITY ===== */
@media (max-width:680px){
  
  
  
  
  
}

.dj-footer{
  display:block;
  visibility:visible;
  opacity:1;
}
.footer-inner, .footer-meta, .footer-links, .footer-brand{
  visibility:visible;
  opacity:1;
}
.footer-links a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  color:rgba(245,243,237,.72);
  font-size:15px;
}
.footer-copy{ color:rgba(245,243,237,.58); }
.footer-brand img{ display:block; flex:0 0 auto; }

@media (max-width:680px){
  .dj-footer{ padding:64px 0; }
  .footer-inner{ flex-direction:column; align-items:flex-start; gap:22px; }
  .footer-meta{ width:100%; padding-top:24px; }
  .footer-links{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:8px 18px; }
  .footer-links a{ width:100%; }
}


/* ===== ACTUAL HEADER/FOOTER FIX ===== */












/* Removes the white system button style from the Lösungen trigger. */










/* The footer becomes a separate clean zone; the curved line does not show through. */
.dj-footer{
  position:relative;
  z-index:20;
  display:block;
  padding:66px 0 34px;
  background:#0d0d0d;
  border-top:1px solid rgba(245,243,237,.08);
}

.footer-top{
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto minmax(140px,1fr);
  align-items:center;
  gap:40px;
  padding-bottom:42px;
}

.footer-brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  min-width:0;
}

.footer-brand img{
  display:block;
  width:68px;
  height:41px;
  object-fit:contain;
  flex:0 0 auto;
}

.footer-brand span{
  color:rgba(245,243,237,.62);
  font-size:15px;
  line-height:1.5;
  margin-top:2px;
}

.footer-nav-groups{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:40px;
}

.footer-nav-col{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  min-width:120px;
}

.footer-col-title{
  display:block;
  color:rgba(245,243,237,.38);
  font-size:12px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:2px;
}

.footer-nav-col a, .footer-nav-col button{
  display:inline-flex;
  align-items:center;
  color:rgba(245,243,237,.70);
  font-size:15px;
  font-weight:500;
}

.footer-nav-col a:hover, .footer-nav-col a:focus-visible, .footer-nav-col button:hover{
  color:var(--accent);
}

.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:24px;
  padding-top:26px;
  border-top:1px solid rgba(245,243,237,.08);
  color:rgba(245,243,237,.44);
  font-size:14px;
}

.footer-cta{
  color:var(--accent);
  font-weight:700;
  justify-self:end;
}

@media (max-width:1180px) {
  
  
  
  
  
  
  
  .footer-top{ grid-template-columns:1fr; gap:30px; }
  .footer-nav-groups{ justify-content:flex-start; }
  .footer-cta{ justify-self:start; }
}

@media (max-width:1080px) {
  
  
  
  
  
  
  
}

@media (max-width:680px) {
  
  
  
  
  
  .dj-footer{ padding:50px 0 28px; }
  .footer-brand img{ width:60px; height:36px; }
  .footer-top{ gap:24px; padding-bottom:30px; }
  .footer-links{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 18px; width:100%; }
  .footer-bottom{ align-items:flex-start; flex-direction:column; }
}

/* Modal Styles */
.dj-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}
.dj-modal[data-open="true"]{opacity:1;visibility:visible}
.dj-modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.dj-modal-content{position:relative;z-index:1;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;background:rgba(13,13,13,.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(245,243,237,.12);border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.4);animation:slideUp .3s cubic-bezier(.16,.84,.44,1)}
@keyframes slideUp{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}
.dj-modal-inner{padding:40px}
.dj-modal-title{color:var(--text-1);font-size:clamp(20px,5vw,24px);font-weight:600;margin:0 0 28px;line-height:1.2}
.dj-modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;padding:0;background:transparent;border:1px solid rgba(245,243,237,.2);border-radius:8px;color:var(--text-1);font-size:20px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;z-index:2}
.dj-modal-close:hover{background:rgba(245,243,237,.08);border-color:rgba(245,243,237,.4)}
.dj-modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Form Styles */
.dj-contact-form{display:flex;flex-direction:column;gap:20px}
.dj-form-group{display:flex;flex-direction:column;gap:8px}
.dj-form-label{color:var(--text-2);font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}
.dj-required{color:var(--accent);margin-left:2px}
.dj-form-input{width:100%;padding:12px 16px;background:rgba(245,243,237,.05);border:1px solid rgba(245,243,237,.15);border-radius:12px;color:var(--text-1);font-size:14px;transition:all .2s ease;font-family:inherit}
.dj-form-input::placeholder{color:rgba(245,243,237,.4)}
.dj-form-input:focus{outline:none;background:rgba(245,243,237,.08);border-color:var(--accent);box-shadow:0 0 0 3px rgba(16,187,130,.15)}
.dj-form-input:invalid{border-color:rgba(255,100,100,.6)}

.dj-contact-actions{flex-direction:row;gap:12px;margin-top:8px}
.dj-btn{padding:12px 20px;border:1px solid;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-align:center;display:flex;align-items:center;justify-content:center;gap:6px;flex:1}
.dj-btn-primary{background:var(--accent);color:#0d0d0d;border-color:var(--accent)}
.dj-btn-primary:hover{background:rgba(16,187,130,.9);box-shadow:0 8px 20px rgba(16,187,130,.25)}
.dj-btn-primary:focus-visible{outline:2px solid rgba(16,187,130,.6);outline-offset:2px}
.dj-btn-secondary{background:transparent;color:var(--text-1);border-color:rgba(245,243,237,.25)}
.dj-btn-secondary:hover{background:rgba(245,243,237,.08);border-color:rgba(245,243,237,.5)}
.dj-btn-secondary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Contact Modal Specific Styles */
.dj-contact-header{margin-bottom:28px;text-align:center}
.dj-contact-title{color:var(--text-1);font-size:24px;font-weight:700;margin:0 0 12px;line-height:1.2}
.dj-contact-subtitle{color:var(--text-2);font-size:14px;line-height:1.6;margin:0}

.dj-contact-quicklinks{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:28px}
.dj-quicklink-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 12px;background:rgba(245,243,237,.05);border:1px solid rgba(245,243,237,.15);border-radius:14px;color:var(--text-1);text-decoration:none;transition:all .2s ease;cursor:pointer;font-size:12px;font-weight:500;text-align:center;line-height:1.4}
.dj-quicklink-btn:hover{background:rgba(16,187,130,.1);border-color:var(--accent);color:var(--text-1)}
.dj-quicklink-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dj-quicklink-icon{font-size:20px;display:block}
.dj-quicklink-text{display:block}

.dj-contact-divider{display:flex;align-items:center;gap:12px;margin-bottom:28px;color:var(--text-3);font-size:12px}
.dj-contact-divider::before{content:'';flex:1;height:1px;background:rgba(245,243,237,.12)}
.dj-divider-text{white-space:nowrap}
.dj-contact-divider::after{content:'';flex:1;height:1px;background:rgba(245,243,237,.12)}

.dj-form-textarea{width:100%;padding:12px 16px;background:rgba(245,243,237,.05);border:1px solid rgba(245,243,237,.15);border-radius:12px;color:var(--text-1);font-size:14px;font-family:inherit;transition:all .2s ease;resize:vertical;min-height:100px}
.dj-form-textarea::placeholder{color:rgba(245,243,237,.4)}
.dj-form-textarea:focus{outline:none;background:rgba(245,243,237,.08);border-color:var(--accent);box-shadow:0 0 0 3px rgba(16,187,130,.15)}

.dj-checkbox-group{margin-top:8px;margin-bottom:8px}
.dj-checkbox-label{display:flex;align-items:flex-start;gap:10px;color:var(--text-2);font-size:12px;line-height:1.5;cursor:pointer}
.dj-checkbox-input{width:18px;height:18px;min-width:18px;margin-top:2px;background:rgba(245,243,237,.05);border:1px solid rgba(245,243,237,.25);border-radius:4px;cursor:pointer;accent-color:var(--accent);transition:all .2s ease}
.dj-checkbox-input:checked{background:var(--accent);border-color:var(--accent)}
.dj-checkbox-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dj-checkbox-text{flex:1}

.dj-contact-submit{width:100%;padding:14px 20px;background:var(--accent);color:#0d0d0d;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:4px}
.dj-contact-submit:hover{background:rgba(16,187,130,.9);box-shadow:0 8px 20px rgba(16,187,130,.25)}
.dj-contact-submit:focus-visible{outline:2px solid rgba(16,187,130,.6);outline-offset:2px}
.dj-contact-submit:disabled{opacity:.6;cursor:not-allowed}

/* Success Message */
.dj-contact-success{text-align:center}
.dj-success-icon{font-size:48px;line-height:1;margin-bottom:16px;display:block;animation:successPop .5s cubic-bezier(.16,.84,.44,1)}
@keyframes successPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}
.dj-success-title{color:var(--text-1);font-size:20px;font-weight:700;margin:0 0 12px;line-height:1.2}
.dj-success-text{color:var(--text-2);font-size:14px;line-height:1.6;margin:0 0 20px}
.dj-success-close{padding:12px 24px;background:var(--accent);color:#0d0d0d;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}
.dj-success-close:hover{background:rgba(16,187,130,.9);box-shadow:0 8px 20px rgba(16,187,130,.25)}
.dj-success-close:focus-visible{outline:2px solid rgba(16,187,130,.6);outline-offset:2px}

@media(max-width:640px){
  .dj-modal-content{width:95%;max-width:100%}
  .dj-modal-inner{padding:32px 24px}
  .dj-contact-actions{flex-direction:column}
  .dj-btn{width:100%}
}



/* DARGE JET header: single isolated implementation */
:root{--header-height:88px}
.site-header{position:sticky;top:0;z-index:1000;padding:0;background:transparent;pointer-events:none}
.header-panel{position:relative;width:100%;max-width:none;min-height:70px;margin:0;padding:16px clamp(16px,3vw,48px);display:flex;align-items:center;justify-content:space-between;gap:28px;border:0;background:transparent;box-shadow:none;pointer-events:auto}.site-header.is-scrolled .header-panel{background:linear-gradient(180deg,rgba(9,11,10,.82),rgba(9,11,10,.7));backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);box-shadow:0 10px 30px rgba(0,0,0,.22)}

.header-logo{display:flex;align-items:center;justify-content:flex-start;flex:none;min-width:0;width:200px}
.header-logo img{display:block;width:200px!important;height:auto!important;max-width:none!important;object-fit:contain!important;object-position:left center!important;transform:none!important;filter:none!important;image-rendering:auto}
.header-nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:34px;min-width:0;background:transparent}
.header-nav-link,.solutions-trigger{appearance:none;border:0;background:transparent;color:rgba(245,243,237,.82);font:550 17px/1 'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;white-space:nowrap;padding:12px 0;cursor:pointer;transition:color .16s ease;position:relative}
.header-nav-link:hover,.solutions-trigger:hover,.solutions-trigger[aria-expanded=true]{color:#10bb82}.header-nav-link::after,.solutions-trigger::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:2px;background:#10bb82;border-radius:2px;box-shadow:0 0 10px rgba(16,187,130,.75);transform:scaleX(0);transform-origin:center;transition:transform .22s ease}.header-nav-link:hover::after,.solutions-trigger:hover::after,.solutions-trigger[aria-expanded=true]::after{transform:scaleX(1)}
.solutions-nav{position:relative}
.solutions-trigger{display:flex;align-items:center;gap:7px}
.solutions-trigger svg{transition:transform .16s ease}
.solutions-trigger[aria-expanded=true] svg{transform:rotate(180deg)}
.solutions-dropdown{position:absolute;top:calc(100% + 8px);left:-12px;width:245px;padding:8px;margin:0;list-style:none;background:rgba(22,23,21,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.09);border-radius:14px;box-shadow:0 18px 38px rgba(0,0,0,.28);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease,visibility .15s ease}
.solutions-dropdown[data-open=true]{opacity:1;visibility:visible;transform:translateY(0)}
.solutions-dropdown a{display:block;padding:10px 11px;border-radius:9px;color:rgba(245,243,237,.78);font-size:14.5px;line-height:1.25}
.solutions-dropdown a:hover,.solutions-dropdown a:focus-visible{color:#10bb82;background:rgba(16,187,130,.10)}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 17px;border:1px solid #10bb82;border-radius:12px;background:#10bb82;color:#0b241a;font-size:14.5px;font-weight:700;line-height:1;white-space:nowrap;box-shadow:0 8px 20px rgba(16,187,130,.16);transition:transform .16s ease,filter .16s ease}
.header-cta:hover{transform:translateY(-1px);filter:brightness(1.05)}
.header-menu-button{display:none;width:44px;height:44px;padding:0;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:rgba(255,255,255,.035);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.header-menu-button span{display:block;width:19px;height:2px;border-radius:3px;background:rgba(245,243,237,.92);transition:transform .16s ease,opacity .16s ease}
.header-menu-button[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.header-menu-button[aria-expanded=true] span:nth-child(2){opacity:0}
.header-menu-button[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-header-menu{display:none;position:absolute;top:calc(100% + 9px);left:0;right:0;padding:9px;border:1px solid rgba(255,255,255,.09);border-radius:15px;background:rgba(18,19,18,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 18px 38px rgba(0,0,0,.28)}
.mobile-header-menu[data-open=true]{display:block}
.mobile-header-menu a,.mobile-header-menu button,.mobile-solutions-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:12px;border:0;border-radius:10px;background:transparent;color:rgba(245,243,237,.84);font:550 16px/1.2 'Inter',sans-serif;text-align:left;cursor:pointer}
.mobile-header-menu a:hover,.mobile-header-menu button:hover,.mobile-solutions-trigger:hover{color:#10bb82;background:rgba(255,255,255,.035)}
.mobile-solutions-list{display:none;padding:2px 0 5px 12px}
.mobile-solutions-list[data-open=true]{display:block}
.mobile-solutions-list a{font-size:14.5px;color:rgba(245,243,237,.70)}
.mobile-header-menu .mobile-full-cta{margin-top:7px;justify-content:center;min-height:44px;background:#10bb82;color:#0b241a;font-weight:750}
.header-nav-link:focus-visible,.solutions-trigger:focus-visible,.solutions-dropdown a:focus-visible,.header-cta:focus-visible,.header-menu-button:focus-visible,.mobile-header-menu a:focus-visible,.mobile-header-menu button:focus-visible,.mobile-solutions-trigger:focus-visible{outline:3px solid rgba(16,187,130,.78);outline-offset:3px}
@media(max-width:1024px){:root{--header-height:78px}.header-panel{min-height:70px;padding-left:24px;padding-right:24px}.header-logo{width:155px}.header-logo img{width:155px!important;height:auto!important}.header-nav{display:none}.header-menu-button{display:flex}.mobile-header-menu{display:none}.mobile-header-menu[data-open=true]{display:block}}
@media(max-width:640px){:root{--header-height:70px}.site-header{padding:0}.header-panel{min-height:66px;padding:12px 12px 12px 16px;border-radius:0;gap:10px}.header-logo{width:125px}.header-logo img{width:125px!important;height:auto!important}.header-cta{display:none}.header-menu-button{grid-column:3}.mobile-header-menu{top:calc(100% + 8px);left:10px;right:10px} }
@media(prefers-reduced-motion:reduce){.header-panel,.solutions-trigger svg,.solutions-dropdown,.header-cta,.header-menu-button span,.solution-card-refined{transition:none}}


/* ===== HERO: reduced cognitive load ===== */
.dj-hero{
  position:relative;
  z-index:2;
  min-height:calc(100vh - 70px);
  padding:110px 0 90px;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:transparent;
  border-bottom:1px solid var(--border-1);
}
.hero-grid-new{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:clamp(48px,6vw,88px);
  align-items:center;
}
.hero-copy{min-width:0;}
.hero-kicker{
  margin:0 0 20px;
  color:var(--accent);
  font-size:12px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.hero-title-new{
  max-width:680px;
  margin:0 0 26px;
  color:var(--text-1);
  font-size:clamp(44px,5vw,72px);
  font-weight:700;
  line-height:.98;
  letter-spacing:-.04em;
}
.hero-title-line{display:block;}
.hero-title-line + .hero-title-line{margin-top:.08em;}
.hero-sub-new{
  max-width:560px;
  margin:0 0 32px;
  color:rgba(245,243,237,.68);
  font-size:clamp(16px,1.4vw,18px);
  line-height:1.55;
}
.hero-actions-new{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:22px;
  margin:0 0 26px;
}
.hero-primary{
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border:1px solid var(--accent);
  border-radius:12px;
  background:var(--accent);
  color:#051b13;
  font-size:15px;
  font-weight:750;
  text-decoration:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.hero-primary:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(16,187,130,.18);}
.hero-text-link{
  color:rgba(245,243,237,.78);
  font-size:15px;
  font-weight:650;
  text-decoration:none;
  transition:color .18s ease,transform .18s ease;
}
.hero-text-link:hover{color:var(--accent);transform:translateX(2px);}
.hero-primary:focus-visible,.hero-text-link:focus-visible,.hero-visual:focus-visible{outline:3px solid rgba(16,187,130,.55);outline-offset:4px;}
.hero-benefits{
  display:flex;
  flex-wrap:wrap;
  gap:10px 24px;
  margin:0;
  padding:0;
  list-style:none;
}
.hero-benefits li{
  position:relative;
  padding-left:17px;
  color:rgba(245,243,237,.58);
  font-size:13.5px;
  line-height:1.45;
}
.hero-benefits li::before{
  content:"";
  position:absolute;
  left:0;
  top:.48em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 0 3px rgba(16,187,130,.09);
}
.hero-visual{
  position:relative;
  min-height:340px;
  height:auto;
  padding:34px;
  border:1px solid rgba(245,243,237,.11);
  border-radius:22px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  overflow:hidden;
  text-align:left;
  color:inherit;
  text-decoration:none;
  background:linear-gradient(145deg,rgba(30,31,28,.84),rgba(19,20,18,.78));
  box-shadow:0 24px 60px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025);
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.hero-visual:hover{transform:translateY(-3px);border-color:rgba(16,187,130,.3);background:linear-gradient(145deg,rgba(31,33,29,.9),rgba(19,21,18,.84));}
.hero-visual::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 78% 18%,rgba(16,187,130,.13),transparent 42%);
  pointer-events:none;
}
.hero-visual-content{position:relative;width:100%;}
.hero-card-eyebrow{display:block;margin-bottom:13px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;}
.hero-visual h2{margin:0 0 18px;color:var(--text-1);font-size:clamp(25px,2.5vw,34px);line-height:1.1;letter-spacing:-.025em;}
.hero-process-line{display:flex;align-items:center;gap:10px;margin:0 0 22px;color:rgba(245,243,237,.7);font-size:13px;font-weight:650;}
.hero-process-line i{display:block;flex:1;height:1px;background:rgba(245,243,237,.16);position:relative;}
.hero-process-line i::after{content:"";position:absolute;right:0;top:50%;width:5px;height:5px;border-radius:50%;background:var(--accent);transform:translateY(-50%);box-shadow:0 0 10px rgba(16,187,130,.55);}
.hero-visual p{max-width:440px;margin:0 0 18px;color:rgba(245,243,237,.6);font-size:15px;line-height:1.55;}
.hero-card-link{color:var(--accent);font-size:14px;font-weight:700;}
.hero-copy,.hero-visual{animation:heroEnter .62s cubic-bezier(.2,.75,.25,1) both;}
.hero-sub-new,.hero-actions-new,.hero-benefits{animation:heroEnter .55s .18s cubic-bezier(.2,.75,.25,1) both;}
@keyframes heroEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ===== Vorgehen directly after hero ===== */
.vorgehen-section{
  position:relative;
  z-index:2;
  padding:120px 0;
  border-bottom:1px solid var(--border-1);
  background:rgba(255,255,255,.008);
}
.vorgehen-head{max-width:680px;margin-bottom:54px;}
.vorgehen-head h2{margin:0 0 16px;font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.035em;}
.vorgehen-head p{margin:0;color:rgba(245,243,237,.62);font-size:17px;line-height:1.65;}
.vorgehen-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.vorgehen-step{min-height:190px;padding:24px;border:1px solid rgba(245,243,237,.09);border-radius:16px;background:rgba(255,255,255,.018);}
.vorgehen-step span{display:block;margin-bottom:28px;color:var(--accent);font-size:12px;font-weight:750;letter-spacing:.08em;}
.vorgehen-step h3{margin:0 0 12px;font-size:18px;line-height:1.25;}
.vorgehen-step p{margin:0;color:rgba(245,243,237,.54);font-size:14px;line-height:1.55;}
@media(max-width:1200px){
  .dj-hero{padding:96px 0 80px;}
  .hero-grid-new{grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);}
  .vorgehen-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:860px){
  .hero-grid-new{grid-template-columns:1fr;gap:44px;}
  .hero-visual{min-height:300px;}
}
@media(max-width:640px){
  .dj-hero{min-height:auto;padding:72px 0;}
  .hero-title-new{font-size:clamp(42px,13vw,56px);}
  .hero-actions-new{align-items:flex-start;gap:18px;}
  .hero-primary{width:100%;}
  .hero-benefits{display:grid;gap:9px;}
  .hero-visual{min-height:270px;padding:26px 22px;border-radius:18px;}
  .hero-process-line{gap:7px;font-size:12px;}
  .vorgehen-section{padding:84px 0;}
  .vorgehen-head{margin-bottom:34px;}
  .vorgehen-grid{grid-template-columns:1fr;}
  .vorgehen-step{min-height:0;}
}
@media(prefers-reduced-motion:reduce){
  .hero-copy,.hero-visual,.hero-sub-new,.hero-actions-new,.hero-benefits{animation:none!important;}
  .hero-primary,.hero-text-link,.hero-visual{transition:none!important;}
}

/* ===== TASK 3: focused hero, methodology flow and compact solutions overview ===== */
.hero-refined{min-height:calc(100vh - 70px);padding:104px 0 82px;display:flex;align-items:center;position:relative;z-index:2;border-bottom:1px solid var(--border-1);overflow:hidden}
.hero-grid-refined{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:clamp(48px,6vw,88px);align-items:center}
@media(min-width:1600px){
.hero-refined .dj-wrap{max-width:1680px;margin-inline:auto;padding-inline:64px}
.hero-refined .hero-grid-refined{grid-template-columns:minmax(0,1.08fr) minmax(400px,.92fr);gap:92px}
}
.hero-copy-refined{min-width:0}
.hero-eyebrow-refined,.section-eyebrow-refined{margin:0 0 20px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.3}
.hero-title-refined{max-width:680px;margin:0 0 26px;color:var(--text-1);font-size:clamp(42px,4.6vw,66px);line-height:.98;letter-spacing:-.045em;font-weight:700}
.hero-title-refined span{display:block}.hero-title-refined span+span{margin-top:.08em}
.hero-description-refined{max-width:590px;margin:0 0 30px;color:rgba(245,243,237,.68);font-size:clamp(16px,1.4vw,18px);line-height:1.55}
.hero-actions-refined{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-bottom:9px}
.hero-primary-refined{display:inline-flex;min-height:48px;padding:0 22px;align-items:center;justify-content:center;border-radius:12px;background:var(--accent);color:#061d14;font-size:15px;font-weight:750;transition:transform .18s ease,box-shadow .18s ease}
.hero-primary-refined:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(16,187,130,.2)}
.hero-text-link-refined{display:inline-flex;align-items:center;gap:5px;color:rgba(245,243,237,.76);font-size:15px;font-weight:650;transition:color .18s ease,transform .18s ease}
.hero-text-link-refined:hover{color:var(--accent);transform:translateX(2px)}
.hero-cta-note{margin:0 0 25px;color:rgba(245,243,237,.48);font-size:12.5px;line-height:1.4}
.hero-benefits-refined{display:flex;flex-wrap:wrap;gap:9px 26px;margin:0;padding:0;list-style:none;color:rgba(245,243,237,.58);font-size:13.5px}
.hero-benefits-refined li{position:relative;padding-left:16px}.hero-benefits-refined li:before{content:"";position:absolute;left:0;top:.48em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.hero-method-card{position:relative;min-height:310px;padding:34px;border:1px solid rgba(245,243,237,.1);border-radius:22px;display:flex;align-items:flex-end;background:linear-gradient(145deg,rgba(30,31,28,.78),rgba(18,20,18,.76));overflow:hidden;box-shadow:0 22px 56px rgba(0,0,0,.18);transition:transform .2s ease,border-color .2s ease}
.hero-method-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 18%,rgba(16,187,130,.14),transparent 42%);pointer-events:none}
.hero-method-card:hover{transform:translateY(-3px);border-color:rgba(16,187,130,.32)}
.hero-method-inner{position:relative;width:100%}.hero-method-eyebrow{display:block;margin-bottom:12px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase}
.hero-method-card h2{max-width:430px;margin:0 0 25px;font-size:clamp(24px,2.3vw,32px);line-height:1.12;letter-spacing:-.03em}
.hero-method-track{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0 0 22px}.hero-method-track i{position:relative;height:2px;background:rgba(245,243,237,.15)}.hero-method-track i:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:50%;background:var(--accent);transform:translateY(-50%);box-shadow:0 0 12px rgba(16,187,130,.45)}.hero-method-track i:last-child:after{content:"";position:absolute;right:0;top:50%;width:8px;height:8px;border-radius:50%;background:var(--accent);transform:translateY(-50%)}
.hero-method-card p{margin:0 0 16px;color:rgba(245,243,237,.58);font-size:14.5px}.hero-method-link{color:var(--accent);font-size:14px;font-weight:700}
.hero-copy-refined,.hero-method-card{animation:task3Enter .62s cubic-bezier(.2,.75,.25,1) both}.hero-description-refined,.hero-actions-refined,.hero-cta-note,.hero-benefits-refined{animation:task3Enter .52s .18s cubic-bezier(.2,.75,.25,1) both}@keyframes task3Enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.vorgehen-refined{position:relative;z-index:2;padding:118px 0;border-bottom:1px solid var(--border-1)}
.vorgehen-heading-refined{max-width:790px;margin-bottom:54px}.vorgehen-heading-refined h2,.solutions-heading h2{margin:0 0 18px;font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.035em}.vorgehen-heading-refined>p:last-child,.solutions-heading>p:last-child{margin:0;color:rgba(245,243,237,.62);font-size:17px;line-height:1.65}
.vorgehen-flow-refined{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}.vorgehen-flow-refined:before{content:"";position:absolute;left:4%;right:4%;top:25px;height:1px;background:linear-gradient(90deg,rgba(16,187,130,.25),rgba(16,187,130,.6),rgba(16,187,130,.25))}.vorgehen-flow-refined li{position:relative;padding:0 25px 30px;border-right:1px solid rgba(245,243,237,.08)}.vorgehen-flow-refined li:first-child{padding-left:0}.vorgehen-flow-refined li:last-child{padding-right:0;border-right:0}.step-number{position:relative;z-index:1;display:inline-flex;width:50px;height:50px;align-items:center;justify-content:center;margin-bottom:25px;border:1px solid rgba(16,187,130,.38);border-radius:50%;background:#151713;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em}.vorgehen-flow-refined h3{margin:0 0 13px;font-size:19px;line-height:1.25}.vorgehen-flow-refined p{margin:0 0 18px;color:rgba(245,243,237,.56);font-size:14px;line-height:1.58}.vorgehen-flow-refined strong{display:block;color:rgba(245,243,237,.78);font-size:13.5px;line-height:1.5;font-weight:650}
.vorgehen-cta-refined{margin-top:42px;padding:25px 28px;border:1px solid rgba(245,243,237,.09);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(255,255,255,.015)}.vorgehen-cta-refined p{margin:0;font-size:18px;font-weight:650}.vorgehen-cta-refined>div{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.solutions-overview{position:relative;z-index:2;padding:120px 0;border-bottom:1px solid var(--border-1)}.solutions-heading{max-width:780px;margin-bottom:48px}.solutions-grid-refined{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.solution-card-refined{position:relative;min-height:330px;padding:32px;border:1px solid rgba(245,243,237,.09);border-radius:20px;display:flex;flex-direction:column;background:linear-gradient(145deg,rgba(28,28,25,.72),rgba(18,19,17,.7));transition:transform .16s ease,border-color .16s ease,background-color .16s ease}
.solution-card-refined>a::after,.solution-card-refined .solution-links button::after{content:"";position:absolute;inset:0}
.solution-card-orientation{grid-column:1/-1;border-color:rgba(16,187,130,.20)}
.solution-card-orientation .solution-problem,.solution-card-orientation .solution-answer{max-width:640px}
.solution-card-refined:focus-within{outline:3px solid rgba(16,187,130,.78);outline-offset:3px}
@media(hover:hover) and (pointer:fine){.solution-card-refined:hover{transform:translateY(-2px);border-color:rgba(16,187,130,.30);background:linear-gradient(145deg,rgba(28,28,25,.80),rgba(18,19,17,.78))}}.solution-index{margin-bottom:22px;color:var(--accent);font-size:11.5px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.solution-card-refined h3{margin:0 0 16px;font-size:24px;line-height:1.18}.solution-card-refined p{font-size:14.5px;line-height:1.58}.solution-problem{margin:0 0 12px;color:rgba(245,243,237,.74)}.solution-answer{margin:0 0 18px;color:rgba(245,243,237,.54)}.solution-card-refined ul{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 24px;padding:0;list-style:none;color:rgba(245,243,237,.58);font-size:13px}.solution-card-refined li{position:relative;padding-left:13px}.solution-card-refined li:before{content:"";position:absolute;left:0;top:.5em;width:5px;height:5px;border-radius:50%;background:rgba(16,187,130,.78)}.solution-card-refined>a,.solution-links{margin-top:auto}.solution-card-refined a{color:var(--accent);font-size:14px;font-weight:700}.solution-links{display:flex;gap:18px;flex-wrap:wrap}
.security-standard-refined{margin-top:20px;padding:24px 28px;border:1px solid rgba(245,243,237,.09);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(255,255,255,.014)}.security-standard-refined>div{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.security-standard-refined span{font-size:15px;font-weight:700}.security-standard-refined ul{display:flex;gap:8px 20px;flex-wrap:wrap;margin:0;padding:0;list-style:none;color:rgba(245,243,237,.56);font-size:13px}.security-standard-refined li{position:relative;padding-left:13px}.security-standard-refined li:before{content:"";position:absolute;left:0;top:.5em;width:5px;height:5px;border-radius:50%;background:var(--accent)}.security-standard-refined>a{flex:none;color:var(--accent);font-size:14px;font-weight:700}
.hero-primary-refined:focus-visible,.hero-text-link-refined:focus-visible,.hero-method-card:focus-visible,.solution-card-refined a:focus-visible,.security-standard-refined>a:focus-visible{outline:3px solid rgba(16,187,130,.55);outline-offset:4px}
@media(max-width:1200px){.hero-refined{padding:96px 0 80px}.vorgehen-flow-refined{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 0}.vorgehen-flow-refined:before{display:none}.vorgehen-flow-refined li:nth-child(2){border-right:0}.vorgehen-flow-refined li:nth-child(3){padding-left:0}}
@media(max-width:860px){.hero-grid-refined{grid-template-columns:1fr;gap:42px}.hero-method-card{min-height:270px}.vorgehen-cta-refined,.security-standard-refined{align-items:flex-start;flex-direction:column}.solutions-grid-refined{grid-template-columns:1fr}}
@media(max-width:640px){.hero-refined{min-height:auto;padding:72px 0}.hero-title-refined{font-size:clamp(40px,12vw,54px)}.hero-actions-refined{align-items:flex-start}.hero-primary-refined{width:100%}.hero-benefits-refined{display:grid;gap:8px}.hero-method-card{min-height:245px;padding:26px 22px;border-radius:18px}.vorgehen-refined,.solutions-overview{padding:84px 0}.vorgehen-heading-refined,.solutions-heading{margin-bottom:36px}.vorgehen-flow-refined{display:block;padding-left:30px}.vorgehen-flow-refined:before{display:block;left:9px;right:auto;top:14px;bottom:30px;width:1px;height:auto;background:rgba(16,187,130,.35)}.vorgehen-flow-refined li,.vorgehen-flow-refined li:first-child,.vorgehen-flow-refined li:nth-child(3){padding:0 0 36px 20px;border:0}.step-number{position:absolute;left:-30px;top:0;width:20px;height:20px;font-size:0;background:var(--accent);border:4px solid #151713}.vorgehen-cta-refined{padding:22px}.vorgehen-cta-refined>div{width:100%;align-items:flex-start;flex-direction:column}.solution-card-refined{min-height:0;padding:25px 22px}.security-standard-refined{padding:22px}.security-standard-refined>div{align-items:flex-start;flex-direction:column;gap:14px}.security-standard-refined ul{display:grid;gap:8px}}
@media(prefers-reduced-motion:reduce){.hero-copy-refined,.hero-method-card,.hero-description-refined,.hero-actions-refined,.hero-cta-note,.hero-benefits-refined{animation:none!important}.hero-primary-refined,.hero-text-link-refined,.hero-method-card{transition:none!important}}


/* ===== v111 PATCHES ===== */
/* Carousel: flex child must not grow to the width of its tracks (mobile overflow fix) */
.dj-carousel > .dj-wrap{min-width:0;width:100%}
/* Legal and stub pages: long German words must not overflow on mobile */
.legal-card h1{overflow-wrap:break-word;hyphens:auto}
@media (max-width:600px){.legal-card{padding:30px 20px}}
/* Long button labels may wrap on small screens */
@media (max-width:480px){.dj-btn-primary{white-space:normal;text-align:center;max-width:100%}}
/* Footer contact trigger rendered as a plain link */
.footer-link-btn{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;text-align:left;cursor:pointer}
.solution-link-btn{background:none;border:0;padding:0;cursor:pointer;text-align:left;font-family:inherit;font-size:14px;font-weight:700;color:var(--accent)}
.solution-link-btn:focus-visible,.footer-link-btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}
/* Contact modal: three quick links (Telegram, WhatsApp, e-mail) */
.dj-contact-quicklinks{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:420px){.dj-contact-quicklinks{grid-template-columns:1fr}.dj-quicklink-btn{flex-direction:row;justify-content:flex-start;padding:14px 16px}}
.dj-quicklink-icon svg{width:22px;height:22px;display:block}
.dj-form-error{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:rgba(220,90,70,.12);border:1px solid rgba(220,90,70,.45);color:#ffd9d2;font-size:13px;line-height:1.45}
.dj-contact-note{margin:10px 0 0;text-align:center;font-size:12.5px;line-height:1.5;color:var(--text-3)}
/* Forms: honeypot, success state, error links, busy button */
.dj-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.dj-form-error a{color:#fff;font-weight:600;text-decoration:underline}
.dj-form-success{text-align:center;padding:12px 0 4px}
.dj-form-success:focus{outline:none}
.dj-form-success p{margin:0 0 20px;color:var(--text-1);font-size:16px;line-height:1.6}
.dj-form-success .dj-success-icon{font-size:30px;color:var(--accent);margin-bottom:10px}
.dj-success-btn{padding:12px 22px;border-radius:12px;border:1px solid var(--border-2);background:transparent;color:var(--text-1);font:inherit;font-weight:600;cursor:pointer}
.dj-success-btn:hover{border-color:var(--accent)}
.dj-success-btn:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.dj-contact-submit[disabled],.djsubmitbtn[disabled],.sec-check-btn[disabled]{opacity:.65;cursor:progress}
/* Empty required fields are not red before the first submit; errors use aria-invalid */
.dj-form-input:invalid{border-color:rgba(245,243,237,.15)}
[aria-invalid="true"]{border-color:#e07a68!important}
.dj-contact-privacy{margin:4px 0 0;font-size:12px;line-height:1.5;color:var(--text-3);text-align:center}
.dj-contact-privacy a{color:var(--text-2)}
.quiz-privacy{text-align:left;margin-top:12px}
.sec-check-privacy{margin-top:14px}
.sec-check-privacy a{color:var(--accent)}
.sec-service-link{margin:22px 0 0;font-size:15px}
.sec-service-link a{color:var(--accent);font-weight:600;text-decoration:none}
.sec-service-link a:hover{text-decoration:underline}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* The hidden attribute always wins (forms are hidden after a successful send) */
[hidden]{display:none!important}
/* FAQ (index) */
.dj-faq{position:relative;z-index:2;padding:110px 0;border-bottom:1px solid var(--border-1)}.dj-faq h2{margin:14px 0 36px;color:var(--text-1);font-size:clamp(27px,3.1vw,36px);line-height:1.22}.dj-faq-list{display:grid;gap:12px;max-width:860px}.dj-faq-item{border:1px solid rgba(245,243,237,.09);border-radius:16px;background:linear-gradient(145deg,rgba(28,28,25,.72),rgba(18,19,17,.7))}.dj-faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding:20px 24px;color:var(--text-1);font-size:17px;font-weight:600;line-height:1.4}.dj-faq-item summary::-webkit-details-marker{display:none}.dj-faq-item summary::after{content:"+";flex:none;color:var(--accent);font-size:22px;line-height:1}.dj-faq-item[open] summary::after{content:"\2212"}.dj-faq-item summary:focus-visible{outline:3px solid rgba(16,187,130,.55);outline-offset:3px;border-radius:16px}.dj-faq-item p{margin:0;padding:0 24px 22px;color:var(--text-2);font-size:16px;line-height:1.7}@media(max-width:640px){.dj-faq{padding:72px 0}.dj-faq-item summary{padding:18px}.dj-faq-item p{padding:0 18px 18px}}
/* Header with 8 menu items: tighter gaps on small desktops */
@media(max-width:1320px){.header-nav{gap:24px}}@media(max-width:1180px){.header-nav{gap:16px}.header-nav-link{font-size:14.5px}}@media(max-width:1100px){.header-nav{gap:12px}.header-nav-link{font-size:14px}}
/* Service menu: 10 entries with full names */
.solution-card-refined{min-height:230px}
.solutions-dropdown{width:340px}
.footer-nav-col--services{max-width:320px}
.footer-nav-col--services a{line-height:1.35}
/* Where am I: current page and current service stay highlighted in the menu */
.header-nav-link[aria-current=page],.solutions-trigger.is-current{color:#10bb82}
.header-nav-link[aria-current=page]::after,.solutions-trigger.is-current::after{transform:scaleX(1)}
.solutions-dropdown a[aria-current=page]{position:relative;color:#F5F3ED;font-weight:600;background:rgba(16,187,130,.14)}
.solutions-dropdown a[aria-current=page]::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:2px;background:#10bb82;box-shadow:0 0 8px rgba(16,187,130,.7)}
.mobile-header-menu a[aria-current=page],.mobile-solutions-trigger.is-current{color:#10bb82!important;font-weight:650}

/* v169: footer logo aligned with the link columns */
.footer-top{align-items:start}
.footer-brand img{width:112px;height:auto}
.footer-cta{align-self:start;margin-top:28px}
@media(max-width:760px){.footer-brand img{width:92px;height:auto}.footer-cta{margin-top:0}}
/* v172: seven process steps (4 + 3 on desktop) */
.vorgehen-flow-7{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:34px}
.vorgehen-flow-7:before{display:none}
.vorgehen-flow-7 li,.vorgehen-flow-7 li:first-child,.vorgehen-flow-7 li:last-child{padding:0 25px 6px;border-right:1px solid rgba(245,243,237,.08)}
.vorgehen-flow-7 li:nth-child(4n+1){padding-left:0}
.vorgehen-flow-7 li:nth-child(4n),.vorgehen-flow-7 li:last-child{border-right:0}
.vorgehen-flow-7 .step-number{margin-bottom:18px}
.step-opt{display:inline-block;margin-left:6px;padding:2px 8px;border:1px solid rgba(16,187,130,.4);border-radius:999px;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}
.vorgehen-cta-note{display:block;margin-top:6px;color:rgba(245,243,237,.56);font-size:15px;font-weight:450}
@media(max-width:1200px){.vorgehen-flow-7{grid-template-columns:repeat(2,minmax(0,1fr))}.vorgehen-flow-7 li:nth-child(4n+1){padding-left:25px}.vorgehen-flow-7 li:nth-child(odd){padding-left:0}.vorgehen-flow-7 li:nth-child(4n){border-right:1px solid rgba(245,243,237,.08)}.vorgehen-flow-7 li:nth-child(even),.vorgehen-flow-7 li:last-child{border-right:0}}
@media(max-width:640px){.vorgehen-flow-7{display:block}.vorgehen-flow-7 li,.vorgehen-flow-7 li:nth-child(n){padding:0 0 28px 20px;border:0}}
/* v173: process notes, languages, form data note, Darge AI note */
.vorgehen-notes{list-style:none;margin:30px 0 0;padding:22px 0 0;border-top:1px solid rgba(245,243,237,.08);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 40px}
.vorgehen-notes li{position:relative;padding-left:18px;color:rgba(245,243,237,.72);font-size:15px;line-height:1.55}
.vorgehen-notes li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
.vorgehen-langs{display:block;margin-top:10px;color:var(--accent);font-size:14.5px;font-weight:650;letter-spacing:.02em}
@media(max-width:760px){.vorgehen-notes{grid-template-columns:1fr}}
.dj-form-note{margin:4px 0 14px;color:rgba(245,243,237,.55);font-size:13px;line-height:1.5}
.tg-ai-note{margin:10px 0 0;color:rgba(245,243,237,.55);font-size:12.5px;line-height:1.5}
.dj-contact-quicklinks + .tg-ai-note{margin:-4px 0 18px;text-align:center}
/* v174: skip link appears only for keyboard users */
.skip-link{transform:translateY(-200%);opacity:0;pointer-events:none}
.skip-link:focus{transform:translateY(-200%);opacity:0}
.skip-link:focus-visible{transform:none;opacity:1;pointer-events:auto}

/* v175: numbers 01-07 instead of dots on phones */
@media(max-width:640px){
  .vorgehen-flow-7{display:block;padding-left:0}
  .vorgehen-flow-7:before{display:block;left:15px;top:16px;bottom:40px}
  .vorgehen-flow-7 li,.vorgehen-flow-7 li:nth-child(n){position:relative;padding:0 0 30px 50px;border:0}
  .vorgehen-flow-7 .step-number{position:absolute;left:0;top:-4px;width:32px;height:32px;margin:0;font-size:11px;background:#151713;border:1px solid rgba(16,187,130,.55);color:var(--accent)}
}
/* v175: the connecting line stays, but calmer: thinner glow on desktop, fainter on phones */
#djPathFill{stroke:rgba(16,187,130,.38);filter:drop-shadow(0 0 2px rgba(16,187,130,.22))}
#djPathBg{stroke:rgba(16,187,130,.06)}
@media(max-width:760px){#djPathFill{stroke:rgba(16,187,130,.2);filter:none}#djPathBg{stroke:rgba(16,187,130,.04)}}
/* the line passes under the text: a soft dark halo around text on phones */
@media(max-width:760px){main :is(h2,h3,p,li,.ln-text){text-shadow:0 0 6px #0d0d0d,0 0 12px #0d0d0d}}
/* v176: the connecting line, much calmer (line -3 steps, glow -2) */
#djPathFill{stroke:rgba(16,187,130,.16);filter:drop-shadow(0 0 1px rgba(16,187,130,.12))}
#djPathBg{stroke:rgba(16,187,130,.035)}
.dj-track-dot{width:9px;height:9px;margin:-4.5px 0 0 -4.5px;background:rgba(16,187,130,.55);box-shadow:0 0 6px 1px rgba(16,187,130,.2)}
@media(max-width:760px){#djPathFill{stroke:rgba(16,187,130,.1);filter:none}#djPathBg{stroke:rgba(16,187,130,.025)}}

/* v176: So arbeiten wir — vertical steps, light and interactive */
.vs-wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start}
.vs-steps{list-style:none;margin:0;padding:0}
.vs-step{position:relative;border-radius:16px;transition:background-color .35s ease}
.vs-step:not(:last-child)::before{content:"";position:absolute;left:30px;top:52px;bottom:-8px;width:1px;background:rgba(245,243,237,.1)}
.vs-step.is-open:not(:last-child)::after{content:"";position:absolute;left:29px;top:52px;width:3px;height:26px;border-radius:3px;background:linear-gradient(rgba(16,187,130,0),rgba(16,187,130,.9));animation:vsPulse 1.8s ease-in-out infinite}
@keyframes vsPulse{0%{transform:translateY(0);opacity:0}25%{opacity:1}100%{transform:translateY(calc(100% + 40px));opacity:0}}
.vs-head{appearance:none;display:flex;align-items:center;gap:18px;width:100%;padding:10px 12px;border:0;background:none;color:rgba(245,243,237,.62);font:inherit;text-align:left;cursor:pointer;border-radius:16px;transition:color .3s ease,transform .3s cubic-bezier(.2,.7,.3,1)}
.vs-num{flex:none;display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(16,187,130,.3);border-radius:50%;background:#131512;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.06em;transition:background-color .3s ease,border-color .3s ease,box-shadow .3s ease}
.vs-title{font-family:"Space Grotesk",Inter,sans-serif;font-size:19px;font-weight:650;line-height:1.3}
.vs-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.3,.7,.3,1)}
.vs-body>div{overflow:hidden}
.vs-body p{margin:0;padding:0 12px 16px 68px;color:rgba(245,243,237,.66);font-size:15.5px;line-height:1.6}
.vs-step.is-open{background:rgba(16,187,130,.045)}
.vs-step.is-open .vs-head{color:var(--text-1);transform:translateX(4px) scale(1.02)}
.vs-step.is-open .vs-num{background:rgba(16,187,130,.14);border-color:var(--accent);box-shadow:0 0 18px -4px rgba(16,187,130,.55)}
.vs-step.is-open .vs-body{grid-template-rows:1fr}
.vs-step.is-next .vs-num{animation:vsNext 1.8s ease-in-out infinite}
@keyframes vsNext{0%,40%{box-shadow:0 0 0 0 rgba(16,187,130,0)}70%{box-shadow:0 0 0 6px rgba(16,187,130,.14)}100%{box-shadow:0 0 0 10px rgba(16,187,130,0)}}
.vs-head:hover{color:var(--text-1)}
.vs-head:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.vs-step .step-opt{margin-left:8px}
.vs-notes{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.vs-notes li{padding:18px 20px 18px 22px;border:1px solid var(--border-1);border-left:2px solid rgba(16,187,130,.5);border-radius:14px;background:rgba(255,255,255,.02);color:rgba(245,243,237,.74);font-size:15px;line-height:1.55}
@media(max-width:900px){.vs-wrap{grid-template-columns:1fr}}
@media(max-width:640px){.vs-title{font-size:17px}.vs-body p{padding-left:12px}.vs-head{gap:14px;padding:10px 6px}.vs-step:not(:last-child)::before,.vs-step.is-open:not(:last-child)::after{left:24px}}
@media(prefers-reduced-motion:reduce){.vs-step.is-open::after,.vs-step.is-next .vs-num{animation:none}.vs-head,.vs-body{transition:none}}

/* v176: soft green hover on cards everywhere (mouse only, no layout shift) */
@media(hover:hover) and (pointer:fine){
  .ln-card,.wissen-topic-card,.setup-card,.tr-card,.sec-principle-card,.sec-reg-card,.legal-card,.se-card{transition:border-color .3s ease,box-shadow .3s ease,background-color .3s ease}
  .ln-card:hover,.wissen-topic-card:hover,.setup-card:hover,.tr-card:hover,.sec-principle-card:hover,.sec-reg-card:hover,.legal-card:hover,.se-card:hover{border-color:rgba(16,187,130,.32);background-color:rgba(16,187,130,.035);box-shadow:0 18px 44px -30px rgba(16,187,130,.45)}
}
/* v177: generated legal texts */
.legal-text h2{margin:38px 0 12px;font-size:clamp(20px,2.2vw,24px);line-height:1.3;scroll-margin-top:calc(var(--header-height,90px) + 20px)}
.legal-text h3{margin:26px 0 10px;font-size:18px}
.legal-text p,.legal-text li{color:rgba(245,243,237,.78);font-size:15.5px;line-height:1.7;overflow-wrap:anywhere}
.legal-text ul{margin:0 0 16px;padding-left:20px}
.legal-text li{margin:6px 0}
.legal-text a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.legal-text ul.index{columns:2;column-gap:32px;list-style:none;padding:18px 20px;border:1px solid var(--border-1);border-radius:14px;background:rgba(255,255,255,.02)}
.legal-text ul.index li{break-inside:avoid;margin:4px 0}
@media(max-width:700px){.legal-text ul.index{columns:1}}
/* v178: arrow on the line (logo dart), calm glow */
.dj-track-dot{width:20px;height:20px;margin:-10px 0 0 -10px;background:none;border-radius:0;box-shadow:none;transform-origin:50% 50%;transition:opacity .3s ease}
.dj-track-dot svg{display:block;fill:rgba(16,187,130,.85);filter:drop-shadow(0 0 3px rgba(16,187,130,.4))}
/* v178: steps more spacious and slower */
.vs-step{margin-bottom:10px}
.vs-head{padding:22px 14px;transition:color .5s ease,transform .5s cubic-bezier(.2,.7,.3,1)}
.vs-title{font-size:20px}
.vs-num{width:42px;height:42px}
.vs-body{transition:grid-template-rows .55s cubic-bezier(.3,.7,.3,1)}
.vs-body p{padding:0 14px 24px 74px;font-size:16px;line-height:1.65}
.vs-step{transition:background-color .5s ease}
.vs-step:not(:last-child)::before{left:35px;top:66px;bottom:-12px}
.vs-step.is-open:not(:last-child)::after{left:34px;top:66px;height:34px}
@media(max-width:640px){.vs-head{padding:16px 6px}.vs-body p{padding:0 8px 18px 8px}.vs-step:not(:last-child)::before,.vs-step.is-open:not(:last-child)::after{left:27px;top:58px}}

/* v183 phones: slimmer header, about a third less empty space between sections */
@media(max-width:640px){
  :root{--header-height:62px}
  .header-panel{min-height:58px;padding:7px 12px 7px 14px}
  .header-logo{width:92px}
  .header-logo img{width:92px!important}
  .header-menu-button{width:42px;height:42px}
  main > section:not(.svc-hero):not(.dj-hero):not(.hero-refined),
  main > div > section:not(.svc-hero):not(.dj-hero):not(.hero-refined){padding-top:56px!important;padding-bottom:56px!important}
  main > section.dj-hero, main > section.hero-refined{padding-top:44px!important;padding-bottom:56px!important}
}
