/* Lokal gehostete Schriften (kein Aufruf bei Google) */
@font-face{font-family:'Geist';src:url(assets/fonts/geist-latin-wght-normal.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Geist Mono';src:url(assets/fonts/geist-mono-latin-wght-normal.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url(assets/fonts/instrument-serif-latin-400-normal.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Instrument Serif';src:url(assets/fonts/instrument-serif-latin-400-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
/* =========================================================
   DEVORA — Design System v2
   Prinzipien: Zurückhaltung · ein Farbton (Blau) · Haarlinien ·
   Dot-Matrix · Horizont-Glow · Serif-Akzente · Mono-Labels
   ========================================================= */
:root{
  --bg:#02040b; --panel:#050a18;
  --ink:#f4f8ff; --mut:rgba(214,228,248,.62); --dim:rgba(214,228,248,.4);
  --line:rgba(190,215,250,.12); --line2:rgba(190,215,250,.22);
  --blue:#3d8bff; --ice:#b4d6ff;
  --ease:cubic-bezier(.16,1,.3,1);
  --sans:'Geist','Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  --mono:'Geist Mono',ui-monospace,'Cascadia Code',Consolas,monospace;
  --wide:'Michroma','Eurostile',var(--sans);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:auto}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:400;overflow-x:hidden;-webkit-font-smoothing:antialiased;line-height:1.5}
body.loading{overflow:hidden}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
svg{display:block}
::selection{background:rgba(95,159,233,.4);color:#fff}

.A{display:inline-block;width:.86em;height:.72em;background:currentColor;vertical-align:baseline;
  clip-path:polygon(0 100%,50% 0,100% 100%,80% 100%,50% 34%,20% 100%)}
.mono{font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-weight:400}
.serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em;font-size:1.08em;
  background:linear-gradient(180deg,#e6f2ff,#8cc0ff);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding-right:.04em}
.fade-text{background:linear-gradient(180deg,#fff 45%,rgba(255,255,255,.7) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.fade-text .serif{-webkit-text-fill-color:transparent}

/* Film-Grain */
.grain{position:fixed;inset:-50%;z-index:900;pointer-events:none;opacity:.055;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}100%{transform:translate(0,0)}}
.progress{position:fixed;top:0;left:0;right:0;height:1px;z-index:950;pointer-events:none}
.progress i{display:block;height:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,transparent,#fff)}

/* =========================================================
   INTRO — Logo-Reveal (Original-Logo)
   ========================================================= */
.intro{position:fixed;inset:0;z-index:1000;pointer-events:none;overflow:hidden}
.in-bg{position:absolute;inset:0;--x:50%;--y:44%;--r:0px;
  background:radial-gradient(70% 90% at 0% 0%,rgba(40,100,220,.42),transparent 70%),radial-gradient(70% 90% at 100% 100%,rgba(40,100,220,.36),transparent 70%),#02030a;
  -webkit-mask-image:radial-gradient(circle at var(--x) var(--y),transparent var(--r),#000 calc(var(--r) + 1.5px));
  mask-image:radial-gradient(circle at var(--x) var(--y),transparent var(--r),#000 calc(var(--r) + 1.5px))}
.in-bloom{position:absolute;left:50%;top:44%;width:80vmin;height:80vmin;margin:-40vmin 0 0 -40vmin;border-radius:50%;
  background:radial-gradient(circle,rgba(60,130,240,.34),rgba(30,80,200,.1) 50%,transparent 70%);filter:blur(24px);opacity:0}
#trail{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.in-logo{position:absolute;left:50%;top:50%;width:clamp(320px,50vw,760px);display:flex;flex-direction:column;align-items:center;gap:clamp(22px,5vh,48px)}
.in-star{position:relative;width:clamp(150px,19vw,290px)}
.in-star img{display:block;width:100%;opacity:0}
.in-word{position:relative;width:100%}
.w-size{display:block;width:100%;opacity:0}
.ltr{position:absolute;top:0;bottom:0;overflow:hidden}
.ltr img{display:block;height:auto;max-width:none}
.in-tag{width:81%}
.in-tag img{display:block;width:100%;opacity:0}
.shine{position:absolute;inset:0;display:block;pointer-events:none;-webkit-mask-image:var(--m);mask-image:var(--m);-webkit-mask-size:100% 100%;mask-size:100% 100%;
  background:linear-gradient(100deg,transparent 38%,rgba(255,255,255,.95) 50%,transparent 62%) 160% 0/300% 100% no-repeat;mix-blend-mode:plus-lighter}
.flare{position:absolute;left:50%;top:50%;width:min(96vw,1300px);height:2px;margin:-1px 0 0 calc(min(96vw,1300px)/-2);pointer-events:none;opacity:0;transform:scaleX(0);
  background:linear-gradient(90deg,transparent,rgba(120,180,255,.7) 30%,#fff 50%,rgba(120,180,255,.7) 70%,transparent);box-shadow:0 0 26px 4px rgba(110,170,255,.55)}
.ring{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:1.5px solid rgba(170,215,255,.9);box-shadow:0 0 24px rgba(110,170,255,.7);opacity:0;pointer-events:none}
.iris-ring{position:absolute;left:50%;top:50%;width:0;height:0;border-radius:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none;
  border:2px solid rgba(215,238,255,.95);box-shadow:0 0 60px 6px rgba(110,175,255,.7),inset 0 0 60px 6px rgba(110,175,255,.55)}

/* =========================================================
   NAV — breite Glas-Leiste mit Chips
   ========================================================= */
.nav-wrap{position:fixed;top:14px;left:0;right:0;z-index:900;display:flex;flex-direction:column;align-items:center;padding:0 16px;pointer-events:none}
.nav{position:relative;pointer-events:auto;display:flex;align-items:center;gap:20px;width:min(1240px,100%);padding:9px 9px 9px 18px;border-radius:18px;isolation:isolate}
.glass-layer{position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;
  background:linear-gradient(180deg,rgba(130,175,255,.17),rgba(30,55,125,.3));
  -webkit-backdrop-filter:blur(24px) saturate(200%) brightness(1.1);backdrop-filter:blur(24px) saturate(200%) brightness(1.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),inset 0 -1px 0 rgba(120,170,255,.2),0 18px 50px -12px rgba(5,20,90,.75),0 0 0 1px rgba(150,190,255,.15)}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.nav-star{height:28px;width:auto;display:block}
.nav-word{height:11px;width:auto;display:block}
.links{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px}
.pill{display:none}
.links a{display:block;padding:10px 18px;font-size:14px;font-weight:450;color:rgba(240,246,255,.78);border-radius:11px;
  background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);transition:background .35s,color .35s,box-shadow .35s}
.links a:hover{background:rgba(255,255,255,.16);color:#fff}
.links a.active{background:rgba(255,255,255,.22);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 0 0 1px rgba(255,255,255,.16)}
.nav-info{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;line-height:1.25;font-size:11px;color:rgba(225,238,255,.6)}
.nav-info b{font-weight:500;font-size:12.5px;color:#fff}
.nav-cta{flex:none;display:inline-flex;align-items:center;padding:12px 22px;border-radius:11px;font-size:14px;font-weight:550;color:#06102a;background:#f4f8ff;
  box-shadow:0 0 0 1px rgba(255,255,255,.4),0 6px 20px -6px rgba(140,190,255,.7);transition:transform .5s var(--ease),box-shadow .5s}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,255,255,.5),0 10px 28px -6px rgba(160,205,255,.95)}
.burger{display:none;position:relative;width:42px;height:42px;border-radius:12px;margin-left:auto;background:rgba(255,255,255,.1)}
.burger i{position:absolute;left:12px;right:12px;height:1.5px;border-radius:2px;background:#fff;transition:transform .4s var(--ease)}
.burger i:nth-child(1){top:17px}.burger i:nth-child(2){top:24px}
.burger[aria-expanded="true"] i:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
.burger[aria-expanded="true"] i:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}
.mobile-menu{pointer-events:none;opacity:0;transform:translateY(-12px) scale(.97);margin-top:10px;width:min(100%,420px);border-radius:20px;padding:10px;display:none;flex-direction:column;
  background:linear-gradient(180deg,rgba(40,80,170,.45),rgba(10,24,70,.7));-webkit-backdrop-filter:blur(26px) saturate(190%);backdrop-filter:blur(26px) saturate(190%);border:1px solid rgba(150,190,255,.25);transition:opacity .4s,transform .5s var(--ease)}
.mobile-menu a{padding:15px 18px;border-radius:12px;font-size:18px;font-weight:450}
.mobile-menu.open{opacity:1;transform:none;pointer-events:auto}
@media (max-width:1060px){.nav-info{display:none}.nav-cta{margin-left:auto}}
@media (max-width:860px){
  .links,.nav-cta{display:none}.burger{display:block}
  .nav{width:min(100%,460px);justify-content:space-between}.mobile-menu{display:flex}
}

/* =========================================================
   BUTTONS / TYPE
   ========================================================= */
.btn{position:relative;display:inline-flex;align-items:center;gap:12px;padding:15px 26px;border-radius:999px;font-size:15px;font-weight:500;transition:transform .5s var(--ease),box-shadow .5s,background .4s}
.btn-solid{color:#04091a;background:#f4f8ff}
.btn-solid:hover{transform:translateY(-2px);box-shadow:0 10px 40px -6px rgba(140,190,255,.6)}
.btn-solid svg{transition:transform .5s var(--ease)}.btn-solid:hover svg{transform:translateX(4px)}
.btn-ghost{color:#fff;border:1px solid rgba(255,255,255,.25);background:rgba(3,8,24,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.btn-ghost:hover{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.4)}
.btn-bracket{position:relative;align-self:flex-start;display:inline-block;padding:16px 30px;font-size:15px;font-weight:500;color:#fff;background:rgba(255,255,255,.07);box-shadow:0 0 30px rgba(110,170,255,.15);transition:background .4s,box-shadow .4s}
.btn-bracket::before,.btn-bracket::after{content:"";position:absolute;width:11px;height:11px;border:1px solid rgba(255,255,255,.7);transition:.5s var(--ease)}
.btn-bracket::before{left:-6px;top:-6px;border-right:0;border-bottom:0}
.btn-bracket::after{right:-6px;bottom:-6px;border-left:0;border-top:0}
.btn-bracket:hover{background:rgba(255,255,255,.13);box-shadow:0 0 46px rgba(110,170,255,.35)}
.btn-bracket:hover::before{left:-10px;top:-10px}.btn-bracket:hover::after{right:-10px;bottom:-10px}
h2{font-size:clamp(40px,6vw,96px);line-height:1;letter-spacing:-.045em;font-weight:500}
.lead{font-size:clamp(16px,1.35vw,19px);color:var(--mut);max-width:58ch;font-weight:400}
.wrap{max-width:1360px;margin:0 auto}
.sec{position:relative;padding:clamp(110px,14vw,210px) clamp(20px,5vw,72px)}
.sec-head{display:flex;flex-direction:column;gap:30px;margin-bottom:clamp(60px,8vw,120px)}
@media (max-width:640px){.hide-s{display:none}}

/* =========================================================
   HERO — WebGL: Licht hinter geriffeltem Glas
   ========================================================= */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px clamp(20px,5vw,72px) 110px;overflow:hidden;isolation:isolate;
  background:radial-gradient(90% 70% at 50% 110%,#0a2f7a 0%,#04112e 45%,#02040b 80%)}
#gl{position:absolute;inset:0;width:100%;height:100%;z-index:-2;display:block}
.hero-shade{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 45% at 50% 42%,rgba(2,4,11,.55),transparent 75%),linear-gradient(180deg,rgba(2,4,11,.5),transparent 28%)}
.hero-inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:clamp(20px,3.2vh,32px);margin-top:-4vh}
.label{display:inline-flex;padding:8px 16px;border-radius:999px;border:1px solid var(--line2);background:rgba(255,255,255,.04);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.label .mono{color:#d6e6fb}
.hero h1{font-size:clamp(52px,10.4vw,172px);line-height:.95;letter-spacing:-.06em;font-weight:500;display:flex;flex-direction:column;align-items:center}
.line{display:block;overflow:hidden;padding:.05em .1em .16em;margin:-.05em -.1em -.16em}
.line>span{display:inline-block}
.hero .lead{color:rgba(220,234,252,.8);font-size:clamp(15px,1.3vw,19px)}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:4px}
.hero-bottom{position:absolute;left:clamp(20px,5vw,72px);right:clamp(20px,5vw,72px);bottom:clamp(22px,4vh,40px);display:flex;justify-content:space-between;align-items:center;padding-top:18px;border-top:1px solid rgba(190,215,250,.18)}
.hero-bottom .mono{color:rgba(225,238,255,.6)}
.scroll-ind{display:flex;align-items:center;gap:14px}
.scroll-ind i{width:1px;height:30px;background:linear-gradient(rgba(255,255,255,.8),transparent);position:relative;overflow:hidden}
.scroll-ind i::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:#fff;animation:drip 2.4s var(--ease) infinite}
@keyframes drip{to{top:110%}}
@media (max-width:700px){.hero-bottom span:first-child,.hero-bottom span:last-child{display:none}.hero-bottom{justify-content:center}}

/* =========================================================
   LEISTUNGEN — klare Liste
   ========================================================= */
.services{background:var(--bg)}
.svc-list{border-top:1px solid var(--line2)}
.svc-row{position:relative;display:grid;grid-template-columns:70px minmax(0,1.1fr) minmax(0,1fr) 44px;gap:clamp(16px,3vw,48px);align-items:start;padding:clamp(34px,6vw,70px) 0;border-bottom:1px solid var(--line2);overflow:hidden;isolation:isolate}
.svc-row::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .7s var(--ease);
  background:radial-gradient(60% 140% at 0% 50%,rgba(50,120,255,.22),transparent 70%)}
.svc-row:hover::before{opacity:1}
.svc-row .mono{padding-top:.9em}
.svc-row h3{font-size:clamp(34px,4.8vw,78px);font-weight:500;letter-spacing:-.05em;line-height:1;transition:transform .7s var(--ease)}
.svc-row:hover h3{transform:translateX(14px)}
.svc-d{padding-top:.5em}
.svc-d p{color:var(--mut);max-width:46ch;font-size:clamp(15px,1.2vw,18px)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.tags li{padding:7px 15px;border-radius:999px;font-size:13px;color:#cfe0f7;border:1px solid var(--line2)}
.svc-arrow{position:relative;width:44px;height:44px;border-radius:50%;border:1px solid var(--line2);transition:.6s var(--ease)}
.svc-arrow::before{content:"";position:absolute;left:50%;top:50%;width:11px;height:11px;margin:-6px;border-top:1.5px solid #fff;border-right:1.5px solid #fff;transform:translate(-2px,2px);transition:.6s var(--ease)}
.svc-row:hover .svc-arrow{background:#f4f8ff;border-color:#f4f8ff}
.svc-row:hover .svc-arrow::before{border-color:#04091a;transform:translate(0,0)}
@media (max-width:900px){
  .svc-row{grid-template-columns:1fr;gap:14px}
  .svc-arrow{display:none}.svc-row .mono{padding-top:0}
}

/* =========================================================
   PROJEKTE — horizontal, riesiger Fade-Titel
   ========================================================= */
.projects{position:relative;background:var(--bg)}
.proj-pin{position:relative;height:100vh;height:100svh;display:flex;align-items:flex-end;padding-bottom:clamp(60px,15vh,150px);overflow:hidden}
.proj-glow{position:absolute;left:50%;top:-20%;width:90vw;height:70vh;margin-left:-45vw;z-index:0;pointer-events:none;
  background:radial-gradient(closest-side,rgba(40,100,230,.28),transparent)}
.proj-giant{position:absolute;left:0;right:0;top:clamp(116px,17vh,190px);z-index:1;text-align:center;pointer-events:none;
  font-size:clamp(84px,17vw,290px);font-weight:600;letter-spacing:-.065em;line-height:.9;
  background:linear-gradient(180deg,#fff 15%,rgba(255,255,255,.25) 62%,rgba(255,255,255,0) 96%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.proj-meta{position:absolute;z-index:3;left:8vw;right:8vw;top:88px;display:flex;justify-content:space-between}
.proj-track{position:relative;z-index:2;display:flex;align-items:stretch;gap:clamp(16px,1.8vw,28px);padding:0 8vw;width:max-content;will-change:transform}
.project{position:relative;flex:none;width:clamp(270px,25vw,410px);aspect-ratio:.86;display:flex;flex-direction:column;justify-content:space-between;padding:26px;border-radius:24px;overflow:hidden;isolation:isolate;
  background:linear-gradient(180deg,rgba(10,16,34,.9),rgba(3,6,16,.95));border:1px solid var(--line);transition:transform .8s var(--ease),border-color .5s}
.project:hover{transform:translateY(-8px);border-color:var(--line2)}
.p-glow{position:absolute;left:-10%;right:-10%;top:-30%;height:75%;z-index:-2;pointer-events:none;opacity:.8;transition:opacity .6s;
  background:radial-gradient(60% 70% at 50% 0%,var(--c,rgba(60,140,255,.6)),transparent 70%)}
.project:hover .p-glow{opacity:1}
.project:nth-of-type(1){--c:rgba(60,140,255,.7)}.project:nth-of-type(2){--c:rgba(110,100,255,.65)}
.project:nth-of-type(3){--c:rgba(90,200,255,.55)}.project:nth-of-type(4){--c:rgba(70,120,255,.65)}
.p-media{position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;opacity:.9;
  -webkit-mask-image:linear-gradient(180deg,#000 40%,transparent);mask-image:linear-gradient(180deg,#000 40%,transparent)}
.p-media.dots{background-image:radial-gradient(circle,rgba(170,210,255,.7) 1.1px,transparent 1.6px);background-size:15px 15px;
  -webkit-mask-image:radial-gradient(70% 70% at 50% 25%,#000,transparent);mask-image:radial-gradient(70% 70% at 50% 25%,#000,transparent);opacity:.7}
.p-top,.p-bot{display:flex;justify-content:space-between;align-items:flex-end}
.p-top .mono{color:rgba(255,255,255,.65)}
.p-bot{flex-direction:column;align-items:flex-start;gap:4px}
.p-bot h3{font-size:clamp(20px,1.9vw,28px);font-weight:500;letter-spacing:-.035em}
.p-bot p{color:var(--mut);font-size:14px}
.p-bot .mono{margin-top:14px}
.p-line{position:absolute;left:22%;right:22%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--c,#6fb0ff),transparent)}
.proj-end{flex:none;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:28px;padding:0 6vw 10px 3vw;width:min(80vw,520px)}
.proj-end h3{font-size:clamp(34px,4.4vw,68px);letter-spacing:-.05em;line-height:1;font-weight:500}
.proj-bar{position:absolute;z-index:3;left:8vw;right:8vw;bottom:clamp(30px,6vh,60px);height:1px;background:var(--line2)}
.proj-bar i{display:block;width:16%;height:3px;margin-top:-1px;background:#fff;transform-origin:0 50%;transform:translateX(0);border-radius:2px}
/* Handy: gleiche Animation wie am PC — Bereich bleibt stehen, Laptops fahren seitlich durch */
@media (max-width:900px){
  .proj-pin{padding-bottom:clamp(70px,13vh,130px)}
  .proj-giant{font-size:clamp(64px,22vw,140px)}
  .proj-track{padding:0 6vw;gap:7vw}
  .proj-end{width:76vw}
}

/* =========================================================
   ÜBER UNS
   ========================================================= */
.about{background:var(--bg)}
.scrub{margin-top:34px;font-size:clamp(28px,4.4vw,66px);line-height:1.12;letter-spacing:-.04em;font-weight:500;max-width:min(100%,1120px)}
.scrub .w{display:inline-block;opacity:.16;will-change:opacity}
.scrub .w.hl{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em;font-size:1.08em;color:var(--ice)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(70px,10vw,140px);border-block:1px solid var(--line)}
.stat{padding:clamp(28px,4vw,56px) clamp(10px,2.5vw,36px);display:flex;flex-direction:column;gap:16px}
.stat+.stat{border-left:1px solid var(--line)}
.stat b{font-size:clamp(52px,7vw,112px);font-weight:400;letter-spacing:-.06em;line-height:1;background:linear-gradient(180deg,#fff,#7fb2f0);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.stat b span{font:inherit;letter-spacing:inherit;text-transform:none;color:inherit}
.process{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;margin-top:clamp(100px,14vw,220px)}
.process-head{position:sticky;top:18vh;align-self:start;display:flex;flex-direction:column;gap:28px}
.process-head h2{font-size:clamp(38px,5vw,78px)}
.steps{position:relative;display:flex;flex-direction:column;gap:clamp(50px,8vw,110px);padding-left:clamp(34px,5vw,70px)}
.steps-line{position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:var(--line2)}
.steps-line b{position:absolute;inset:0;transform-origin:50% 0;transform:scaleY(0);background:linear-gradient(180deg,#fff,var(--blue));box-shadow:0 0 14px rgba(111,176,255,.7)}
.steps li{position:relative;display:flex;flex-direction:column;gap:12px;opacity:.3;transition:opacity .7s var(--ease)}
.steps li::before{content:"";position:absolute;left:calc(clamp(34px,5vw,70px)*-1 + 1px);top:3px;width:13px;height:13px;border-radius:50%;background:var(--bg);border:1px solid rgba(190,215,250,.4);transition:.6s var(--ease)}
.steps li.on{opacity:1}
.steps li.on::before{background:#fff;border-color:#fff;box-shadow:0 0 0 6px rgba(111,176,255,.18),0 0 20px rgba(111,176,255,.9)}
.steps h4{font-size:clamp(26px,3.2vw,48px);letter-spacing:-.045em;line-height:1.05;font-weight:500}
.steps p{color:var(--mut);max-width:46ch;font-size:clamp(15px,1.2vw,18px)}
@media (max-width:900px){
  .stats{grid-template-columns:1fr}.stat+.stat{border-left:0;border-top:1px solid var(--line)}
  .process{grid-template-columns:1fr}.process-head{position:static}
}

/* =========================================================
   KONTAKT — Formular
   ========================================================= */
.contact{overflow:hidden}
.big{font-size:clamp(42px,7vw,112px)}
.form{display:flex;flex-direction:column;gap:22px}
.field{position:relative;display:block}
.field input,.field textarea{width:100%;padding:26px 0 12px;font:inherit;font-size:17px;color:#fff;resize:none;background:transparent;border:0;border-bottom:1px solid var(--line2);outline:0;border-radius:0;transition:border-color .4s}
.field span{position:absolute;left:0;top:24px;font-size:17px;color:var(--dim);pointer-events:none;transition:.45s var(--ease);transform-origin:0 0}
.field input:focus,.field textarea:focus{border-color:#fff}
.field input:focus+span,.field input:not(:placeholder-shown)+span,.field textarea:focus+span,.field textarea:not(:placeholder-shown)+span{transform:translateY(-22px) scale(.72);color:var(--ice)}
.chips{border:0;display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}
.chips legend{float:left;width:100%;margin-bottom:12px}
.chips label{cursor:pointer}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips span{display:inline-block;padding:9px 17px;border-radius:99px;font-size:14px;color:#d5e3f6;border:1px solid var(--line2);transition:.35s}
.chips span:hover{border-color:rgba(255,255,255,.5)}
.chips input:checked+span{background:#f4f8ff;color:#050a18;border-color:#f4f8ff}
.chips input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.form .btn-bracket{margin-top:14px}
.form-note{min-height:1.4em;font-size:14px;color:#8fe0b0}

/* =========================================================
   FOOTER — Basis
   ========================================================= */
.footer{position:relative;overflow:hidden;isolation:isolate;border-top:1px solid var(--line2);padding:clamp(70px,9vw,120px) clamp(20px,5vw,72px) 44px;background:#030714}
.foot-mesh{position:absolute;inset:0;z-index:-1;filter:blur(80px);opacity:.85}
.foot-mesh i{position:absolute;border-radius:50%;display:block}
.foot-mesh i:nth-child(1){width:46vw;height:30vw;left:22%;bottom:-18vw;background:#2b6de3}
.foot-mesh i:nth-child(2){width:34vw;height:26vw;right:-6vw;bottom:-8vw;background:#6a63ff;opacity:.8}
.foot-mesh i:nth-child(3){width:26vw;height:20vw;left:-4vw;bottom:-4vw;background:#2aa3b8;opacity:.55}
.foot-mesh i:nth-child(4){width:24vw;height:14vw;left:46%;bottom:-6vw;background:#bfe0ff;opacity:.7}
.footer::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#030714 20%,rgba(3,7,20,.55))}

/* =========================================================
   SEKTIONS-ÜBERGÄNGE — Schichten, die übereinander schieben
   ========================================================= */
.hero{z-index:0}
.services,.projects,.about,.contact,.footer{position:relative;z-index:1}
.about,.contact,.footer{border-radius:46px 46px 0 0;box-shadow:inset 0 1px 0 rgba(190,220,255,.32),0 -40px 90px -20px rgba(40,100,230,.3)}
.services{background:var(--bg)}
.about{background:linear-gradient(180deg,#050c22,#02040b 35%);margin-top:-46px;padding-top:calc(clamp(110px,14vw,210px) + 46px)}
.contact{background:linear-gradient(180deg,#040c24,#02040b 70%);margin-top:-46px;padding-top:calc(clamp(110px,14vw,210px) + 46px)}
.footer{margin-top:-46px;padding-top:calc(clamp(70px,9vw,120px) + 46px)}
.seam-line{position:absolute;top:-1px;left:10%;right:10%;height:1px;pointer-events:none;transform:scaleX(var(--s,0));opacity:var(--s,0);
  background:linear-gradient(90deg,transparent,rgba(170,210,255,.95) 30%,#fff 50%,rgba(170,210,255,.95) 70%,transparent);box-shadow:0 0 26px 3px rgba(110,170,255,.6)}
@media (max-width:900px){.about,.contact,.footer{border-radius:30px 30px 0 0}}



/* =========================================================
   INTRO — Slash-Schnitt
   ========================================================= */
.in-star .sz{display:block;width:100%;opacity:0}
.sp{position:absolute;left:0;top:0;width:100%;opacity:0;will-change:transform,filter}
.blade{position:absolute;left:50%;top:50%;width:230vmax;height:2px;margin:-1px 0 0 -115vmax;opacity:0;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(120,180,255,.9) 20%,#fff 50%,rgba(120,180,255,.9) 80%,transparent);box-shadow:0 0 30px 6px rgba(110,170,255,.7)}

/* =========================================================
   HERO → LEISTUNGEN: fließender Übergang
   ========================================================= */

/* =========================================================
   SHOWCASE — Handy
   ========================================================= */
.showcase{position:relative;z-index:1;overflow:hidden;background:var(--bg);padding:clamp(110px,13vw,190px) clamp(20px,5vw,72px) 0}
.sc-head{position:relative;z-index:3;display:flex;flex-direction:column;gap:30px;align-items:center;text-align:center}
.sc-glow{position:absolute;left:50%;bottom:-34%;width:150vw;height:90%;margin-left:-75vw;pointer-events:none;filter:blur(24px);
  background:radial-gradient(closest-side at 50% 100%,rgba(205,232,255,.95),rgba(70,150,255,.75) 24%,rgba(20,70,205,.45) 54%,transparent 80%)}
.sc-stage{position:relative;height:clamp(560px,60vw,800px);margin-top:clamp(10px,3vw,40px);display:flex;justify-content:center;align-items:flex-end;overflow:hidden}
.sc-ghost{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);white-space:nowrap;line-height:.9;font-weight:700;font-size:clamp(90px,20vw,330px);letter-spacing:-.06em;
  background:linear-gradient(180deg,rgba(70,150,255,.6),rgba(30,90,220,.2) 80%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;pointer-events:none}
.phone{position:relative;z-index:2;width:clamp(230px,22vw,320px);aspect-ratio:9/19;margin-bottom:-16%;
  transform:perspective(1700px) rotateY(-14deg) rotateX(4deg) rotateZ(3deg);filter:drop-shadow(0 50px 70px rgba(0,10,50,.85))}
.ph-frame{position:absolute;inset:0;border-radius:15%/7.2%;padding:2.5%;background:linear-gradient(145deg,#2d3446,#07090f 40%,#0d111c);
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.2),inset 0 0 0 3.5px #04060b,0 0 0 1px rgba(255,255,255,.08)}
.ph-btn{position:absolute;width:3px;background:#1b2132;border-radius:2px}
.ph-btn.b1{left:-3px;top:17%;height:4.5%}.ph-btn.b2{left:-3px;top:24%;height:8%}.ph-btn.b3{right:-3px;top:26%;height:12%}
.ph-screen{position:relative;width:100%;height:100%;border-radius:12.6%/6.1%;overflow:hidden;background:#02040d}
.ph-island{position:absolute;top:2%;left:50%;width:30%;height:3.2%;margin-left:-15%;background:#000;border-radius:99px;z-index:5}
.ph-status{position:absolute;top:2.4%;left:9%;right:9%;display:flex;justify-content:space-between;align-items:center;font-size:clamp(8px,.8vw,11px);font-weight:600;z-index:4;color:#fff}
.ph-sig{display:flex;gap:2px;align-items:flex-end}.ph-sig i{width:2.5px;background:#fff;border-radius:1px}.ph-sig i:nth-child(1){height:4px}.ph-sig i:nth-child(2){height:6px}.ph-sig i:nth-child(3){height:8px}
.ph-glow{position:absolute;left:-25%;right:-25%;bottom:-22%;height:72%;background:radial-gradient(60% 70% at 50% 100%,rgba(205,232,255,.95),rgba(70,150,255,.7) 36%,transparent 72%);filter:blur(5px)}
.ph-content{position:absolute;inset:0;padding:13% 8% 8%;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4.5%}
.ph-nav{width:100%;display:flex;align-items:center;gap:5%}
.ph-nav img{height:clamp(12px,1.3vw,18px);width:auto}
.ph-nav span{height:4px;width:11%;border-radius:4px;background:rgba(255,255,255,.32)}
.ph-nav span:nth-of-type(1){margin-left:auto}
.ph-nav .cta{width:19%;height:clamp(9px,1vw,14px);background:linear-gradient(180deg,#76b4ff,#2f6fe0);border-radius:99px}
.ph-logo{margin-top:9%}
.ph-logo img{display:block;width:clamp(64px,6.6vw,96px);filter:drop-shadow(0 0 22px rgba(110,170,255,.8));animation:phfloat 5s ease-in-out infinite}
@keyframes phfloat{50%{transform:translateY(-6px) scale(1.04)}}
.ph-word{width:64%;height:auto}
.ph-h{font-size:clamp(13px,1.4vw,20px);line-height:1.1;letter-spacing:-.04em;font-weight:500;color:#fff}
.ph-h em{font-family:var(--serif);font-style:italic;color:#c8e4ff;font-size:1.08em}
.ph-btnx{padding:2.8% 7%;border-radius:99px;background:#f4f8ff;color:#04091a;font-size:clamp(8px,.85vw,12px);font-weight:600}
.ph-cards{display:flex;gap:4%;width:100%;margin-top:auto}
.ph-cards i{flex:1;height:clamp(38px,5vw,70px);border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.24)}
.ph-gloss{position:absolute;inset:0;pointer-events:none;background:linear-gradient(118deg,rgba(255,255,255,.2),transparent 30%)}
.chip{position:absolute;z-index:3;display:flex;align-items:center;gap:12px;padding:14px 22px;border-radius:999px;font-size:15px;font-weight:450;color:#fff;
  background:linear-gradient(180deg,rgba(160,200,255,.24),rgba(40,70,150,.3));-webkit-backdrop-filter:blur(18px) saturate(190%);backdrop-filter:blur(18px) saturate(190%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 16px 40px -10px rgba(0,20,90,.7),0 0 0 1px rgba(160,200,255,.22);animation:chipfloat 7s ease-in-out infinite}
.chip .dot{width:14px;height:14px;border-radius:50%;background:#fff;box-shadow:0 0 14px rgba(255,255,255,.9);animation:none}
@keyframes chipfloat{50%{translate:0 -12px}}
.chip-a{left:10%;top:60%}
.chip-c{left:19%;top:33%;animation-delay:-2s}
.chip-d{right:15%;top:63%;animation-delay:-4s}
.chip-b{right:8%;top:26%;display:grid;grid-template-columns:1fr auto;column-gap:18px;row-gap:2px;align-items:center;border-radius:28px;padding:20px 24px;width:clamp(210px,19vw,280px);animation-delay:-1s}
.chip-t{font-weight:500;font-size:16px}.chip-s{grid-column:1;font-size:12.5px;color:rgba(225,238,255,.65);line-height:1.3}
.ring-svg{grid-column:2;grid-row:1/3;width:60px;height:60px}
@media (max-width:900px){.chip-c,.chip-d{display:none}.chip{font-size:13px;padding:10px 16px}.chip-a{left:4%;top:56%}.chip-b{right:3%;top:18%;width:180px;padding:14px 16px}.ring-svg{width:48px;height:48px}.phone{width:56vw}}

/* =========================================================
   TOOLS
   ========================================================= */
.tools{position:relative;z-index:1;background:var(--bg);overflow:hidden}
.tools-giant{position:absolute;left:0;right:0;top:clamp(70px,9vw,140px);text-align:center;pointer-events:none;line-height:.85;font-weight:600;font-size:clamp(110px,24vw,400px);letter-spacing:-.07em;
  background:linear-gradient(180deg,#fff 8%,rgba(255,255,255,.22) 58%,rgba(255,255,255,0) 96%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.tools-label{position:relative;z-index:2;display:block;text-align:center}
.tools-row{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(40px,4vw,56px) 20px;margin-top:clamp(190px,26vw,420px)}
.tool{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:34px;min-height:310px;padding:58px 30px 30px;text-align:center;border-radius:24px;border:1px solid var(--line);
  background:linear-gradient(180deg,color-mix(in srgb,var(--c) 12%,#05070f),#030510 75%);transition:transform .8s var(--ease),border-color .5s}
.tool::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(70% 45% at 50% 0%,color-mix(in srgb,var(--c) 38%,transparent),transparent 72%);opacity:.8;transition:opacity .6s}
.tool:hover{transform:translateY(-8px);border-color:var(--line2)}.tool:hover::before{opacity:1}
.t-ico{position:absolute;left:50%;top:-31px;width:62px;height:62px;margin-left:-31px;border-radius:50%;display:grid;place-items:center;background:#080c18;border:1px solid rgba(255,255,255,.16);box-shadow:0 0 34px -6px var(--c)}
.t-ico::before{content:"";width:28px;height:28px;background:var(--c);-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.t-text{position:relative;font-size:clamp(17px,1.5vw,21px);line-height:1.3;letter-spacing:-.02em;font-weight:450;color:#fff}
.t-meta{position:relative}.t-meta b{display:block;font-weight:500;font-size:16px}.t-meta span{font-size:14px;color:var(--mut)}
.t-line{position:absolute;left:24%;right:24%;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--c),transparent)}
@media (max-width:900px){.tools-row{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.tools-row{grid-template-columns:1fr}}

/* =========================================================
   KONTAKT — CTA mit Ribbon (wie Sora) + Footer
   ========================================================= */
.contact{background:linear-gradient(180deg,#040c24,#02040b 70%)}
.cta-block{position:relative;max-width:1360px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:min(74vh,740px)}
.cta-text{position:relative;z-index:2;display:flex;flex-direction:column;gap:30px;align-items:flex-start}
.ribbon{position:absolute;right:-9%;top:-12%;width:min(64vw,880px);height:auto;z-index:1;pointer-events:none;animation:ribfloat 11s ease-in-out infinite alternate}
@keyframes ribfloat{from{transform:translate(0,0) rotate(-1.5deg)}to{transform:translate(-14px,24px) rotate(2deg)}}
.form-wrap{display:flex;flex-direction:column;gap:26px;max-width:880px;margin:clamp(60px,9vw,130px) auto 0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}
@media (max-width:900px){.cta-block{grid-template-columns:1fr}.ribbon{opacity:.55;right:-30%;top:-4%;width:110vw}.form-row{grid-template-columns:1fr}}
.foot-mesh i:nth-child(5){width:28vw;height:18vw;left:6%;bottom:-9vw;background:#7a5bff;opacity:.55}
.socials{display:flex;gap:10px;margin-top:4px}
.socials a{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);color:rgba(235,244,255,.9);transition:.4s var(--ease)}
.socials a:hover{background:rgba(255,255,255,.18);transform:translateY(-2px)}


/* =========================================================
   FOOTER — wie Mount Media: Infos oben, Riesen-Schriftzug ganz unten
   ========================================================= */
.footer{padding-bottom:12px}
.foot{display:block}
.foot-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start}
.foot-nav{display:flex;flex-direction:column;gap:2px}
.foot-nav a{font-size:clamp(22px,2.1vw,30px);letter-spacing:-.03em;color:rgba(240,246,255,.5);transition:color .3s;line-height:1.35}
.foot-nav a:first-child{color:rgba(240,246,255,.9)}
.foot-nav a:hover{color:#fff}
.foot-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.foot-center p{color:rgba(235,244,255,.7);font-size:15px}
.foot-right{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:18px}
.foot-right p{color:rgba(235,244,255,.75);font-size:15px}
.foot-badge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 22px 14px;border-radius:16px;min-width:140px;
  background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.foot-badge img{height:30px;width:auto}
.foot-badge b{font-size:14px;font-weight:500}.foot-badge small{font-size:11px;color:var(--mut)}
.foot-mid{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:clamp(60px,8vw,120px);font-size:14px;color:rgba(235,244,255,.62)}
.foot-links{display:flex;gap:28px}.foot-links a:hover{color:#fff}
.foot-giant{position:relative;z-index:1;margin:clamp(34px,5vw,80px) 6px 0;aspect-ratio:927/114;
  background:linear-gradient(180deg,#ffffff 15%,#cfe3ff 100%);
  -webkit-mask:url(assets/logo-word-3x.png) center/100% 100% no-repeat;mask:url(assets/logo-word-3x.png) center/100% 100% no-repeat}
.foot-mesh i:nth-child(1){width:60vw;height:36vw;bottom:-14vw}
@media (max-width:820px){.foot-top{grid-template-columns:1fr}.foot-center,.foot-right{align-items:flex-start;text-align:left}.foot-mid{flex-direction:column;align-items:flex-start}}


/* =========================================================
   SHOWCASE — Hand mit Handy (KI-Bild) + Devora-Display
   ========================================================= */
.hand{position:relative;z-index:2;flex:none;width:clamp(320px,38vw,580px);margin-bottom:-5%}
.hand-img{display:block;width:100%;height:auto;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent),linear-gradient(180deg,transparent,#000 12%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent,#000 15%,#000 85%,transparent),linear-gradient(180deg,transparent,#000 12%);
  mask-composite:intersect}
.hand-screen{position:absolute;left:33%;top:14.5%;width:34%;height:48.6%;border-radius:12.6%/5.9%;overflow:hidden;container-type:inline-size;background:#02040d;
  box-shadow:0 0 70px 8px rgba(70,150,255,.5),0 0 0 1px rgba(0,0,0,.6)}
.hand-screen .ph-island{top:2.2%;left:50%;width:30%;height:3%;margin-left:-15%}
.hand-screen .ph-status{top:2.4%;left:9%;right:9%;font-size:4.4cqw}
.hand-screen .ph-content{padding:12% 7% 7%;gap:4cqw}
.hand-screen .ph-nav img{height:7cqw}
.hand-screen .ph-nav span{height:1.6cqw}
.hand-screen .ph-nav .cta{height:5cqw}
.hand-screen .ph-logo{margin-top:6cqw}
.hand-screen .ph-logo img{width:34cqw}
.hand-screen .ph-h{font-size:8cqw}
.hand-screen .ph-btnx{font-size:4.4cqw}
.hand-screen .ph-cards i{height:20cqw;border-radius:3cqw}
@media (max-width:900px){.hand{width:74vw}}


/* =========================================================
   PROJEKTE — Laptop-Mockups
   ========================================================= */
.project{width:clamp(340px,47vw,780px);aspect-ratio:auto;padding:0;border:0;border-radius:0;background:none;overflow:visible;justify-content:flex-start;gap:6px;transform:none}
.project:hover{transform:translateY(-8px)}
.lap{position:relative;width:100%}
.lap-img{display:block;width:100%;height:auto;mix-blend-mode:screen;
  -webkit-mask-image:radial-gradient(75% 85% at 50% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(75% 85% at 50% 50%,#000 55%,transparent 100%)}
.lap-screen{position:absolute;left:11.8%;top:6.3%;width:76.4%;height:75.1%;border-radius:.9% / 1.4%;overflow:hidden;background:#02040d center top/cover no-repeat;container-type:inline-size;
  box-shadow:0 0 60px 4px rgba(70,150,255,.35)}
.lap-screen.has-img{transition:background-position 6s ease-out}
.project:hover .lap-screen.has-img{background-position:center bottom}
.lap-screen.ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4cqw}
.lap-screen.v1{background-image:radial-gradient(80% 90% at 80% 110%,rgba(80,160,255,.9),rgba(30,80,220,.55) 45%,transparent 75%),linear-gradient(160deg,#07102a,#02040d)}
.lap-screen.v2{background-image:radial-gradient(80% 90% at 15% 110%,rgba(130,110,255,.85),rgba(50,50,200,.5) 45%,transparent 75%),linear-gradient(160deg,#0a0a26,#02040d)}
.lap-screen.v3{background-image:radial-gradient(90% 90% at 50% 115%,rgba(120,210,255,.8),rgba(30,110,230,.5) 45%,transparent 75%),linear-gradient(160deg,#071428,#02040d)}
.lap-screen.v4{background-image:radial-gradient(80% 90% at 90% 0%,rgba(110,170,255,.8),rgba(40,80,220,.5) 45%,transparent 75%),linear-gradient(160deg,#080d26,#02040d)}
.ls-grid{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(190,220,255,.6) 1px,transparent 1.5px);background-size:2.4cqw 2.4cqw;
  -webkit-mask-image:radial-gradient(70% 70% at 50% 30%,#000,transparent);mask-image:radial-gradient(70% 70% at 50% 30%,#000,transparent);opacity:.55}
.ls-star{position:relative;width:12cqw;height:auto;filter:drop-shadow(0 0 3cqw rgba(110,170,255,.8))}
.lap-screen .mono{position:relative;color:rgba(235,244,255,.8);font-size:max(8px,1.5cqw)}
.project .meta{display:flex;justify-content:space-between;align-items:flex-start;padding:0 6%}
.project .meta h3{font-size:clamp(20px,1.9vw,28px);font-weight:500;letter-spacing:-.035em;margin-top:4px}
.project .meta p{color:var(--mut);font-size:14px}
.project .meta>span{padding-top:2px}
@media (max-width:900px){.project{width:86vw}}


/* =========================================================
   DURCHGEHENDES LICHT: Hero → Leistungen
   ========================================================= */
main{position:relative;z-index:0;isolation:isolate}
#gl{inset:auto;left:0;top:0;width:100%;height:155svh;z-index:-1}
.hero{background:none}
.services{background:none;padding-top:clamp(190px,22vw,330px)}

/* =========================================================
   NAV — ruhiger, hochwertiger (dunkles Glas)
   ========================================================= */
.nav{padding:8px 8px 8px 20px;border-radius:16px}
.glass-layer{background:linear-gradient(180deg,rgba(24,30,48,.62),rgba(10,14,28,.7));
  -webkit-backdrop-filter:blur(30px) saturate(170%);backdrop-filter:blur(30px) saturate(170%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 24px 60px -24px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.09)}
.glass-layer::after{background:linear-gradient(120deg,rgba(255,255,255,.35),rgba(255,255,255,0) 24%,rgba(255,255,255,0) 76%,rgba(130,180,255,.3))}
.nav.scrolled .glass-layer{background:linear-gradient(180deg,rgba(16,20,34,.8),rgba(8,10,22,.86))}
.nav-star{height:26px}
.nav-word{height:10px;opacity:.92}
.links{gap:6px}
.links a{padding:9px 17px;font-size:13.5px;font-weight:500;letter-spacing:-.005em;color:rgba(235,242,255,.72);border-radius:10px;background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.links a:hover{background:rgba(255,255,255,.1);color:#fff}
.links a.active{background:rgba(255,255,255,.13);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 0 0 1px rgba(255,255,255,.1)}
.nav-info{font-size:10.5px;color:rgba(220,232,250,.5)}
.nav-info b{font-size:12px;font-weight:500;color:rgba(255,255,255,.92)}
.nav-cta{padding:11px 20px;border-radius:10px;font-size:13.5px;font-weight:550;box-shadow:none}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 8px 24px -8px rgba(160,205,255,.8)}

/* =========================================================
   PROJEKTE — große Laptops, glaubwürdige Beispiel-Websites
   ========================================================= */
.proj-track{gap:clamp(28px,4vw,72px)}
.project{width:clamp(360px,54vw,900px)}
.project .meta{padding:2px 7% 0;border-top:0}
.project .meta>div{display:flex;flex-direction:column;gap:2px}
.project .meta h3{font-size:clamp(22px,2.2vw,34px)}
.lap-screen.mk{display:flex;flex-direction:column;padding:3.6cqw 4.4cqw;background:#02040d;font-family:var(--sans);color:#fff}
.mk-glow{position:absolute;inset:0;pointer-events:none}
.mk-nav,.mk h4,.mk p,.mk u{position:relative}
.mk-nav{display:flex;align-items:center;gap:2.6cqw;font-size:1.35cqw;color:rgba(255,255,255,.72)}
.mk-nav b{width:3.6cqw;height:1.5cqw;border-radius:.4cqw;background:#fff;margin-right:auto}
.mk-nav i{font-style:normal;padding:.9cqw 1.8cqw;border-radius:.9cqw;background:#fff;color:#04091a;font-weight:500}
.mk h4{margin-top:auto;font-size:6.4cqw;line-height:.98;letter-spacing:-.055em;font-weight:500}
.mk p{font-size:1.5cqw;opacity:.7;margin-top:1.6cqw;max-width:32cqw;line-height:1.4}
.mk u{text-decoration:none;font-size:1.4cqw;font-weight:500;padding:1cqw 2.2cqw;border-radius:99px;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);width:fit-content;margin-top:2.2cqw}
.mk-a .mk-glow{background:radial-gradient(60% 90% at 88% 100%,rgba(90,170,255,.95),rgba(30,80,220,.5) 45%,transparent 75%),linear-gradient(160deg,#07102a,#02040d)}
.mk-b{align-items:center;text-align:center}.mk-b .mk-nav{width:100%}.mk-b p{max-width:36cqw}
.mk-b .mk-glow{background:radial-gradient(40% 70% at 50% 108%,rgba(160,120,255,.95),rgba(70,60,220,.5) 50%,transparent 78%),linear-gradient(160deg,#0b0a26,#02040d)}
.mk-c{background:#eef3fb!important;color:#0a1226}
.mk-c .mk-nav{color:rgba(10,18,38,.7)}.mk-c .mk-nav b{background:#0a1226}.mk-c .mk-nav i{background:#0a1226;color:#fff}
.mk-c u{background:#0a1226;color:#fff;box-shadow:none}.mk-c p{opacity:.65}
.mk-c .mk-glow{background:radial-gradient(50% 80% at 85% 0%,rgba(110,170,255,.55),transparent 70%),radial-gradient(40% 60% at 0% 100%,rgba(190,215,255,.9),transparent 70%)}
.mk-d .mk-glow{background:radial-gradient(70% 80% at 10% 105%,rgba(60,200,230,.8),rgba(30,110,220,.45) 48%,transparent 76%),linear-gradient(160deg,#06141f,#02040d)}
.lap-screen .mono{display:none}
@media (max-width:900px){.project{width:88vw}}


/* =========================================================
   LEISTUNGEN v2 — Bühne mit animierten Szenen
   ========================================================= */
.svc-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(30px,5vw,90px);align-items:start}
.svc-side{position:sticky;top:13vh;height:74vh;max-height:760px}
.svc-stage{position:relative;height:100%;border-radius:30px;overflow:hidden;isolation:isolate;background:#030816;container-type:inline-size;
  border:1px solid var(--line2);box-shadow:0 50px 100px -40px rgba(30,90,220,.55),inset 0 1px 0 rgba(255,255,255,.15)}
.svc-glow{position:absolute;inset:-25%;z-index:-1;opacity:0;transition:opacity 1.4s var(--ease)}
.svc-glow.on{opacity:1}
.svc-glow.g1{background:radial-gradient(48% 48% at 74% 76%,rgba(205,232,255,.95),rgba(60,140,255,.85) 28%,rgba(20,70,210,.5) 55%,transparent 75%)}
.svc-glow.g2{background:radial-gradient(48% 52% at 24% 28%,rgba(180,200,255,.9),rgba(70,90,240,.8) 30%,rgba(30,40,170,.5) 58%,transparent 76%)}
.svc-glow.g3{background:radial-gradient(75% 42% at 50% 100%,rgba(235,247,255,.95),rgba(90,170,255,.8) 30%,rgba(25,80,215,.45) 60%,transparent 80%)}
.svc-glow.g4{background:radial-gradient(40% 60% at 86% 34%,rgba(200,235,255,.95),rgba(50,150,255,.8) 32%,rgba(20,60,200,.45) 62%,transparent 80%)}
.svc-flutes{position:absolute;inset:0;z-index:1;-webkit-backdrop-filter:blur(9px) brightness(1.05);backdrop-filter:blur(9px) brightness(1.05);
  -webkit-mask-image:repeating-linear-gradient(90deg,#000 0 8px,transparent 8px 18px);mask-image:repeating-linear-gradient(90deg,#000 0 8px,transparent 8px 18px)}
.svc-sheen{position:absolute;inset:0;z-index:2;pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.1) 0,rgba(255,255,255,.02) 8px,rgba(0,0,0,.3) 18px),linear-gradient(180deg,rgba(2,4,11,.5),transparent 35%,transparent 65%,rgba(2,4,11,.3))}
.svc-stage .corner{position:absolute;z-index:5;width:12px;height:12px;border:1px solid rgba(255,255,255,.55)}
.svc-stage .corner.tl{left:14px;top:14px;border-right:0;border-bottom:0}.svc-stage .corner.tr{right:14px;top:14px;border-left:0;border-bottom:0}
.svc-stage .corner.bl{left:14px;bottom:14px;border-right:0;border-top:0}.svc-stage .corner.br{right:14px;bottom:14px;border-left:0;border-top:0}
.svc-top{position:absolute;z-index:5;left:30px;right:30px;top:28px;display:flex;justify-content:space-between}
.svc-top .mono{color:rgba(255,255,255,.75)}
.svc-vis{position:absolute;inset:0;z-index:3;display:grid;place-items:center;opacity:0;transform:scale(.94) translateY(24px);filter:blur(10px);pointer-events:none;
  transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
.svc-vis.on{opacity:1;transform:none;filter:none}
.svc-vis>div{width:76cqw}
.bw-bar{display:flex;align-items:center;gap:1.4cqw;padding:2cqw 2.4cqw;border-bottom:1px solid rgba(255,255,255,.12)}
.bw-bar i{width:1.5cqw;height:1.5cqw;border-radius:50%;background:rgba(255,255,255,.28)}
.bw-bar span{margin-left:2cqw;font-size:1.7cqw;color:rgba(235,244,255,.6);font-family:var(--mono)}
.bw,.cw{border-radius:2.6cqw;overflow:hidden;background:rgba(4,9,24,.78);border:1px solid rgba(255,255,255,.2);box-shadow:0 5cqw 10cqw -3cqw rgba(0,10,50,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
/* 01 Web */
.bw-body{position:relative;padding:4cqw 4.4cqw 4.6cqw;display:flex;flex-direction:column;gap:1.8cqw}
.bw-h{height:3.6cqw;width:70%;border-radius:1cqw;background:linear-gradient(90deg,#fff,#8cc0ff);transform-origin:0 50%;animation:bwgrow 6s var(--ease) infinite}
.bw-h.s{width:46%;animation-delay:.25s}
.bw-p{height:1.5cqw;width:88%;border-radius:1cqw;background:rgba(255,255,255,.16);transform-origin:0 50%;animation:bwgrow 6s var(--ease) infinite;animation-delay:.5s}
.bw-p.s{width:58%;animation-delay:.7s}
.bw-btn{height:4.6cqw;width:15cqw;border-radius:99px;margin:1cqw 0;background:linear-gradient(180deg,#fff,#b9d2f0);animation:bwpop 6s var(--ease) infinite;animation-delay:.9s}
.bw-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8cqw}
.bw-cards i{height:10cqw;border-radius:1.6cqw;background:linear-gradient(135deg,rgba(111,176,255,.4),rgba(255,255,255,.05));animation:bwpop 6s var(--ease) infinite}
.bw-cards i:nth-child(2){animation-delay:1.1s}.bw-cards i:nth-child(3){animation-delay:1.3s}.bw-cards i:nth-child(1){animation-delay:1s}
.bw-cur{position:absolute;width:3.4cqw;left:22%;top:44%;filter:drop-shadow(0 .6cqw 1cqw rgba(0,0,0,.6));animation:bwcur 6s ease-in-out infinite}
@keyframes bwgrow{0%{transform:scaleX(0)}16%,84%{transform:scaleX(1)}100%{transform:scaleX(0)}}
@keyframes bwpop{0%,10%{transform:scale(.7);opacity:0}24%,84%{transform:scale(1);opacity:1}100%{transform:scale(.7);opacity:0}}
@keyframes bwcur{0%{transform:translate(0,0)}25%{transform:translate(12cqw,-9cqw)}50%{transform:translate(4cqw,10cqw)}75%{transform:translate(22cqw,8cqw)}100%{transform:translate(0,0)}}
/* 02 Code */
.cw-code{padding:3.4cqw 4cqw 4cqw;font-family:var(--mono);font-size:2.35cqw;line-height:1.95;color:#cfe0f7;white-space:pre}
.cw-code .l{display:block;overflow:hidden;white-space:nowrap;width:0;animation:typeln 8s steps(34) infinite;animation-delay:calc(var(--n)*.9s)}
.cw-code i{font-style:normal}.cw-code .c{color:#6a809e}.cw-code .k{color:#7fb2f0}.cw-code .s{color:#a6e0c0}.cw-code .f{color:#e8d8ff}
@keyframes typeln{0%{width:0}14%,86%{width:100%}100%{width:0}}
.cw{position:relative}
.cw-score{position:absolute;right:3.4cqw;bottom:3.2cqw;display:grid;place-items:center;width:15cqw;height:15cqw;border-radius:2cqw;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16)}
.cw-score svg{position:absolute;width:11cqw;height:11cqw;top:1.2cqw}
.cw-score b{position:relative;font-size:3.6cqw;font-weight:500;margin-top:-1.6cqw}
.cw-score span{position:absolute;bottom:1cqw;font-size:1.3cqw;color:var(--mut)}
/* 03 Branding */
.bcs{position:relative;height:56cqw}
.bc1,.bc2{position:absolute;width:44cqw;aspect-ratio:1.65;border-radius:2cqw;border:1px solid rgba(255,255,255,.16);box-shadow:0 5cqw 9cqw -2cqw rgba(0,10,50,.85)}
.bc1{left:2%;top:2%;transform:rotate(-8deg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3cqw;
  background:radial-gradient(120% 120% at 80% 110%,#3a86ee,transparent 60%),radial-gradient(90% 90% at 0 0,#1b2a6b,transparent 70%),#07091a;animation:bcfloat 7s ease-in-out infinite}
.bc1 img:first-child{width:9cqw}.bc1 img:last-child{width:26cqw}
.bc2{right:2%;top:14%;transform:rotate(6deg);padding:3cqw;display:flex;flex-direction:column;justify-content:flex-end;gap:.4cqw;background:linear-gradient(160deg,#10142a,#07091a);animation:bcfloat 8s ease-in-out -3s infinite}
.bc2 b{font-size:2.6cqw;font-weight:500}.bc2 span{font-size:1.7cqw;color:var(--mut)}.bc2 i{font-style:normal;font-size:1.5cqw;color:#8cc0ff;margin-top:1cqw;font-family:var(--mono)}
@keyframes bcfloat{50%{translate:0 -1.6cqw}}
.sw{position:absolute;left:0;right:0;bottom:0;display:flex;gap:1.6cqw;justify-content:center}
.sw i{display:flex;flex-direction:column;gap:.3cqw;padding:1.4cqw 2cqw;border-radius:1.6cqw;font-style:normal;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.sw i::before{content:"";width:100%;height:5cqw;min-width:15cqw;border-radius:1cqw;background:var(--c);border:1px solid rgba(255,255,255,.18)}
.sw b{font-size:1.6cqw;font-weight:500}.sw em{font-style:normal;font-size:1.4cqw;color:var(--mut);font-family:var(--mono)}
/* 04 Motion */
.mw{display:flex;flex-direction:column;align-items:center;gap:3cqw}
.mw svg{width:100%;overflow:visible;filter:drop-shadow(0 0 2cqw rgba(95,159,233,.6))}
.tl{width:100%;display:flex;flex-direction:column;gap:1.4cqw;padding:2.2cqw;border-radius:2cqw;background:rgba(4,9,24,.7);border:1px solid rgba(255,255,255,.16);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.tl-r{height:2.4cqw;border-radius:1cqw;background:rgba(255,255,255,.06);overflow:hidden}
.tl-r i{display:block;height:100%;width:var(--w);border-radius:1cqw;background:linear-gradient(90deg,#6fb0ff,#fff);animation:tlslide 4.2s var(--ease) infinite;animation-delay:var(--d)}
@keyframes tlslide{0%{transform:translateX(-100%)}30%,70%{transform:translateX(0)}100%{transform:translateX(105%)}}
.ease-label{font-family:var(--mono);font-size:1.7cqw;color:#a8c4e6;padding:1cqw 2cqw;border-radius:99px;background:rgba(255,255,255,.06);border:1px solid var(--line)}
/* Liste */
.svc-list{padding-top:4vh}
.svc-row{display:block;padding:clamp(44px,11vh,120px) 0;border-top:1px solid var(--line2);border-bottom:0;opacity:.28;transition:opacity .8s var(--ease)}
.svc-row:last-child{border-bottom:1px solid var(--line2)}
.svc-row.on{opacity:1}
.svc-row .mono{padding-top:0}
.svc-row h3{margin:18px 0 22px;font-size:clamp(34px,4.4vw,70px)}
.svc-row:hover h3{transform:none}
.svc-row::before{display:none}
.svc-d{padding-top:0}
@media (max-width:900px){.svc-grid{grid-template-columns:1fr;gap:0}.svc-side{top:84px;height:38vh;z-index:5;margin-bottom:10px}.svc-row{padding:44px 0}}

/* =========================================================
   TICKER
   ========================================================= */
.ticker{position:relative;z-index:1;background:var(--bg);overflow:hidden;display:flex;flex-direction:column;gap:clamp(8px,1.4vw,22px);padding:clamp(60px,8vw,130px) 0;border-block:1px solid var(--line)}
.tk-row{display:flex;width:max-content;will-change:transform}
.tk-track{display:flex;align-items:center;gap:clamp(30px,4vw,70px);padding-right:clamp(30px,4vw,70px);flex:none}
.tk-track span{font-size:clamp(60px,10vw,170px);font-weight:500;letter-spacing:-.06em;line-height:1.05;white-space:nowrap}
.tk-row.a span{background:linear-gradient(180deg,#fff 25%,rgba(255,255,255,.5));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.tk-row.b span{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.5px rgba(180,210,250,.55)}
.tk-track img{height:clamp(40px,6vw,96px);width:auto;flex:none;filter:drop-shadow(0 0 24px rgba(110,170,255,.55))}

/* =========================================================
   Überschriften mit Maske, Laptop-Kippen, Über-uns-Stern
   ========================================================= */
.hl{display:block;overflow:hidden;padding:.06em .1em .2em;margin:-.06em -.1em -.2em}
.hl>span{display:inline-block}
.project{perspective:1600px}
.lap{transform-style:preserve-3d;will-change:transform,opacity}
.about{overflow:hidden}
.about .wrap{position:relative;z-index:1}
.about-star{position:absolute;right:-10vw;top:3%;width:min(56vw,760px);height:auto;opacity:.12;pointer-events:none;z-index:0;filter:drop-shadow(0 0 80px rgba(90,160,255,.8))}

/* =========================================================
   KONTAKT — Hero-Licht als Abschluss
   ========================================================= */
#gl2{position:absolute;left:0;top:0;width:100%;height:100vh;z-index:0;display:block}
.cta-shade{position:absolute;left:0;top:0;right:0;height:100vh;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(2,4,11,.8),rgba(2,4,11,.25) 55%,transparent)}
.cta-block,.form-wrap{position:relative;z-index:2}
.cta-star{position:absolute;right:2%;top:50%;width:min(30vw,440px);height:auto;z-index:1;transform:translateY(-50%);filter:drop-shadow(0 0 70px rgba(110,170,255,.8));pointer-events:none}
@media (max-width:900px){.cta-star{opacity:.5;right:-6%;top:6%;transform:none;width:60vw}}


/* ---- Feinschliff Desktop ---- */
.sc-ghost{font-size:clamp(70px,11.2vw,200px)}
.sc-stage{height:clamp(520px,50vw,700px);margin-top:0}
.tools.sec{padding-top:clamp(64px,6vw,90px)}
.tools-giant{top:clamp(120px,11vw,170px)}
.tools-row{margin-top:clamp(200px,24vw,380px)}
.project .meta>span.mono{padding:6px 12px;border:1px solid var(--line2);border-radius:99px;font-size:10px;margin-top:6px;white-space:nowrap}


/* ---- Feinschliff Handy ---- */
@media (max-width:900px){
  .proj-meta{flex-direction:column;gap:6px;align-items:flex-start;top:84px}
  .proj-giant{top:calc(clamp(116px,17vh,190px) + 30px)}
  .proj-meta span:last-child{display:none}
  .sc-ghost{font-size:12.4vw;top:34%}
  .sc-stage{height:clamp(500px,118vw,640px)}
  .chip-b{top:3%;right:2%}
  .chip-a{left:2%;top:66%}
  .hand{width:80vw}
}


/* ---- KI-Hintergrund (Figma) für Über uns und Tools ---- */
.about::before,.tools::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url(assets/bg-glow.jpg) center/cover no-repeat;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(180deg,transparent,#000 20%,#000 80%,transparent)}
.about::before{opacity:.6}
.tools::before{opacity:.45;transform:scaleX(-1)}
.tools .wrap,.tools-giant{z-index:2}


/* =========================================================
   NAV v3 — Stern in der Mitte
   ========================================================= */
.nav{width:auto;gap:6px;padding:8px;border-radius:999px;justify-content:center}
.nav .links{position:static;transform:none;display:flex;gap:2px;padding:0}
.nav .links a{padding:10px 20px;border-radius:999px;background:none;box-shadow:none;font-size:14px;font-weight:500;color:rgba(235,242,255,.65)}
.nav .links a:hover{background:rgba(255,255,255,.08);color:#fff}
.nav .links a.active{background:rgba(255,255,255,.12);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.nav .brand{margin:0 8px;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;flex:none;
  background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 0 0 1px rgba(255,255,255,.1)}
.nav .nav-star{height:26px;width:auto;filter:drop-shadow(0 0 10px rgba(110,170,255,.55))}
.nav-cta-float{position:fixed;top:22px;right:clamp(16px,3vw,44px);z-index:901;display:inline-flex;align-items:center;padding:12px 22px;border-radius:999px;font-size:14px;font-weight:550;color:#06102a;background:#f4f8ff;
  box-shadow:0 0 0 1px rgba(255,255,255,.4),0 8px 26px -8px rgba(140,190,255,.7);transition:transform .5s var(--ease),box-shadow .5s}
.nav-cta-float:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,255,255,.5),0 12px 32px -8px rgba(160,205,255,.95)}
@media (max-width:860px){
  .nav{width:min(100%,420px);justify-content:space-between;padding:8px 8px 8px 12px}
  .nav .links{display:none}.nav .brand{margin:0}.nav-cta-float{display:none}
}

/* =========================================================
   BILD-BAND + LOGO-LEISTE
   ========================================================= */
.band{position:relative;z-index:3;overflow:hidden;margin-top:clamp(10px,3vw,50px);padding:12px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.band-track{display:flex;gap:20px;width:max-content;padding-right:20px;will-change:transform}
.bshot{position:relative;flex:none;width:clamp(240px,25vw,380px);aspect-ratio:16/10;border-radius:20px;overflow:hidden;container-type:inline-size;border:1px solid var(--line2);
  box-shadow:0 30px 60px -30px rgba(0,10,60,.9)}
.bshot.mk{display:flex;flex-direction:column;padding:4.4cqw 5.2cqw;background:#02040d;font-family:var(--sans);color:#fff}
.bshot.mk .mk-nav{font-size:3.6cqw;gap:5cqw}
.bshot.mk .mk-nav b{width:9cqw;height:3.4cqw}
.bshot.mk .mk-nav i{padding:1.8cqw 3.6cqw;border-radius:2cqw}
.bshot.mk h4{font-size:12.4cqw;line-height:.98}
.bshot.mk u{font-size:3.4cqw;padding:2cqw 5cqw;margin-top:4cqw}
.bshot.mk-c{background:#eef3fb;color:#0a1226}.bshot.mk-c h4{color:#0a1226}
.logos{position:relative;z-index:3;overflow:hidden;margin-top:clamp(30px,5vw,70px);padding:18px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(90deg,transparent,#000 14%,#000 86%,transparent)}
.logos-track{display:flex;align-items:center;gap:clamp(48px,6vw,96px);width:max-content;padding-right:clamp(48px,6vw,96px)}
.lg{display:inline-flex;align-items:center;gap:12px;font-size:clamp(16px,1.5vw,22px);font-weight:500;letter-spacing:-.02em;color:rgba(235,244,255,.5);white-space:nowrap}
.lg i{width:clamp(22px,2vw,30px);height:clamp(22px,2vw,30px);background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}

/* =========================================================
   KENNZAHLEN — Licht-Karten
   ========================================================= */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.6vw,24px);border:0;margin-top:clamp(70px,10vw,140px)}
.scard{position:relative;aspect-ratio:1/1;border-radius:20px;overflow:hidden;isolation:isolate;padding:clamp(22px,2.6vw,38px);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between}
.scard p{color:rgba(225,238,255,.7);font-size:clamp(13px,1.05vw,16px);max-width:22ch;line-height:1.4}
.sc-num{font-size:clamp(54px,6.4vw,104px);font-weight:300;letter-spacing:-.06em;line-height:1;color:rgba(235,244,255,.92)}
.sc-num span,.sc-num i{font:inherit;font-style:normal;letter-spacing:inherit;color:inherit;text-transform:none}
.sc-num i{opacity:.8}
.scard.c1{background:linear-gradient(155deg,#2a7ad6 0%,#0d3a78 28%,#06142e 62%,#02040b 100%)}
.sc-curve{position:absolute;right:6%;bottom:8%;width:78%;overflow:visible;filter:drop-shadow(0 0 14px rgba(120,180,255,.7));z-index:-1}
.sc-path{stroke-dasharray:1;stroke-dashoffset:1}
.scard.c2{background:#02040b;justify-content:flex-end}
.sc-beam{position:absolute;left:0;top:30%;width:100%;height:50%;z-index:-1;filter:blur(8px);
  background:conic-gradient(from 76deg at 0% 50%,transparent 0deg,rgba(255,255,255,.98) 13deg,rgba(100,175,255,.75) 26deg,rgba(30,90,220,.3) 40deg,transparent 56deg)}
.scard.c2::after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(60% 50% at 0% 55%,rgba(60,140,255,.35),transparent 70%)}
.sc-logo{position:absolute;left:clamp(22px,2.6vw,38px);top:clamp(22px,2.6vw,38px);width:clamp(28px,2.6vw,40px);height:auto;filter:drop-shadow(0 0 10px rgba(110,170,255,.6))}
.sc-logo.r{left:auto;right:clamp(22px,2.6vw,38px)}
.sc-bottom{display:flex;flex-direction:column;gap:14px;margin-left:auto;width:62%}
.sc-bottom.r{margin-left:0;margin-left:auto;align-items:flex-end;text-align:right}
.sc-bottom.r p{text-align:right}
.scard.c3{background:radial-gradient(70% 50% at 20% 0%,rgba(140,195,255,.65),transparent 70%),radial-gradient(60% 50% at 100% 100%,rgba(30,90,200,.7),transparent 70%),linear-gradient(170deg,#1c5fae,#0a2a58 50%,#041227);justify-content:flex-end}
.sc-lines{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.sc-lines line{stroke:rgba(220,238,255,.55);stroke-width:1;vector-effect:non-scaling-stroke}
.sc-spark{position:absolute;left:43%;top:50%;width:16px;height:16px;margin:-8px;z-index:0;background:#fff;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);filter:drop-shadow(0 0 8px #cfe6ff)}
@media (max-width:900px){.stats{grid-template-columns:1fr}.scard{aspect-ratio:16/11}.sc-num{font-size:clamp(54px,16vw,96px)}}

/* =========================================================
   LICHTSTRAHL-TRENNER
   ========================================================= */
.beamsec{position:relative;z-index:1;height:min(105vh,900px);overflow:hidden;isolation:isolate;background:var(--bg)}
.bm-vis{position:absolute;inset:0}
.bm-vis i{position:absolute;display:block}
.bm-glow{inset:0;background:radial-gradient(60% 70% at 50% 62%,rgba(60,140,255,.5),rgba(20,70,200,.22) 46%,transparent 76%)}
.bm-cone{left:50%;top:0;width:150%;height:100%;margin-left:-75%;filter:blur(12px);transform-origin:50% 62%;
  background:conic-gradient(from 328deg at 50% 62%,transparent 0deg,rgba(80,160,255,0) 8deg,rgba(130,195,255,.7) 26deg,#fff 32deg,rgba(130,195,255,.7) 38deg,rgba(80,160,255,0) 56deg,transparent 64deg);
  -webkit-mask-image:linear-gradient(180deg,#000 0,#000 60%,transparent 63%);mask-image:linear-gradient(180deg,#000 0,#000 60%,transparent 63%)}
.bm-core{left:50%;top:14%;width:3px;height:48%;margin-left:-1.5px;background:linear-gradient(180deg,transparent,#fff 75%);box-shadow:0 0 32px 6px rgba(160,210,255,.75);filter:blur(.6px);transform-origin:50% 100%}
.bm-dark{left:50%;bottom:0;width:70%;height:38%;margin-left:-35%;clip-path:polygon(50% 0,0 100%,100% 100%);background:linear-gradient(180deg,#000,rgba(2,4,11,.9));filter:blur(5px)}
.bm-lines{position:absolute;inset:0;width:100%;height:100%}
.ln{stroke:rgba(200,225,255,.42);stroke-width:1;stroke-dasharray:1;stroke-dashoffset:1;vector-effect:non-scaling-stroke}
.bm-spark{left:46%;top:50%;width:22px;height:22px;margin:-11px;background:#fff;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);filter:drop-shadow(0 0 10px #cfe6ff)}
.bm-text{position:absolute;left:0;right:0;bottom:clamp(30px,9vh,100px);z-index:3;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding:0 20px}
.bm-text b{font-size:clamp(34px,5.2vw,82px);font-weight:500;letter-spacing:-.045em;line-height:1}


/* ---- Feinschliff: Linie aus der Lücke, glatte Blau-Verläufe ---- */
.about::before,.tools::before{background:none;transform:none;-webkit-mask-image:none;mask-image:none;opacity:1}
.about::before{background:
  radial-gradient(55% 45% at 100% 82%,rgba(30,92,235,.5),rgba(20,60,190,.22) 45%,transparent 72%),
  radial-gradient(40% 32% at 0% 8%,rgba(90,86,235,.24),transparent 70%)}
.tools::before{background:
  radial-gradient(50% 40% at 0% 88%,rgba(30,92,235,.4),rgba(20,60,190,.16) 48%,transparent 72%),
  radial-gradient(40% 30% at 100% 6%,rgba(90,86,235,.2),transparent 70%)}
.steps-line{top:calc(-1 * clamp(100px,14vw,220px))}
.steps-line::before{content:"";position:absolute;left:-5px;top:0;width:11px;height:11px;border-radius:50%;background:#fff;
  box-shadow:0 0 0 5px rgba(111,176,255,.2),0 0 18px rgba(111,176,255,.9)}
.steps-line b{box-shadow:0 0 18px rgba(111,176,255,.85)}


/* =========================================================
   Feinschliff 6: Nav schlanker + durchlässiger, Vektor-Schriftzug,
   weicher Handschatten, Schritte erscheinen nacheinander
   ========================================================= */
.nav{padding:5px;gap:2px}
.glass-layer{background:linear-gradient(180deg,rgba(150,185,255,.14),rgba(40,70,150,.12));
  -webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 14px 40px -20px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.07)}
.nav.scrolled .glass-layer{background:linear-gradient(180deg,rgba(150,185,255,.16),rgba(30,55,130,.18))}
.glass-layer::after{background:linear-gradient(120deg,rgba(255,255,255,.28),rgba(255,255,255,0) 24%,rgba(255,255,255,0) 76%,rgba(130,180,255,.22))}
.nav .links a{padding:8px 17px;font-size:13.5px;font-weight:450}
.nav .brand{margin:0 10px}
.nav .nav-star{height:28px}

/* Riesiger Schriftzug als echte Vektor-Maske (scharf in jeder Größe) */
.foot-giant{-webkit-mask:url(assets/logo-word.svg?v=2) center/100% 100% no-repeat;mask:url(assets/logo-word.svg?v=2) center/100% 100% no-repeat}

/* Hand: blauer Schatten am Arm läuft früher ins Schwarz aus */
.hand::after{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:58%;z-index:3;pointer-events:none;
  background:linear-gradient(180deg,transparent 0,rgba(2,4,11,.55) 40%,var(--bg) 82%)}
.hand-screen{z-index:4}

/* Schritte: erscheinen Stück für Stück, voll lesbar */
.steps li{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.steps li.on{opacity:1;transform:none}
.steps p{color:rgba(230,240,255,.86)}
.steps .mono{color:var(--ice)}


/* =========================================================
   Handy-Display: echte Website als Live-Vorschau (iframe)
   ========================================================= */
.hand-screen .ph-glow{display:none}
.ph-island,.ph-status{z-index:7}
.hand-screen .ph-content.live{position:absolute;inset:0;padding:0;display:block}
.live-frame{position:absolute;left:0;top:0;width:390px;height:836px;border:0;background:#02040b;transform-origin:0 0;transform:scale(var(--fs,.5));pointer-events:none}
.live-ui{position:absolute;left:0;right:0;bottom:0;z-index:5;padding:14cqw 6cqw 7cqw;text-align:center;pointer-events:none;
  background:linear-gradient(0deg,rgba(2,4,11,.95),rgba(2,4,11,.7) 55%,transparent)}
.live-ui .tut-steps{margin:0 0 2.4cqw}
.live-ui .tut-steps i{animation:none;transition:background .4s,color .4s,box-shadow .4s,border-color .4s}
.live-ui .tut-steps i.on{background:#fff;color:#04091a;border-color:#fff;box-shadow:0 0 3cqw rgba(160,210,255,.9)}
.live-ui .tut-caps{position:relative;height:6cqw}
.live-ui .tut-caps p{animation:none;opacity:0;transition:opacity .5s;font-size:4.2cqw}
.live-ui .tut-caps p.on{opacity:1}
.live-tap{position:absolute;z-index:6;left:0;top:0;width:12cqw;height:12cqw;margin:-6cqw 0 0 -6cqw;border-radius:50%;border:2px solid #fff;background:rgba(160,210,255,.45);opacity:0;pointer-events:none}
html.embed .live-frame{display:none}


/* =========================================================
   Echte Handy-Ansicht in der Vorschau (Sicherheitsabstand für Display-Insel)
   ========================================================= */
html.embed .nav-wrap{top:48px}
html.embed .nav-cta-float{display:none}
html.embed::after{content:"";position:fixed;left:0;right:0;top:0;height:46px;z-index:2100;pointer-events:none;background:linear-gradient(180deg,#02040b 35%,rgba(2,4,11,0))}

/* =========================================================
   Erfolgs-Animation nach dem Absenden (Apple-Pay-Stil)
   ========================================================= */
.sent{position:fixed;inset:0;z-index:2500;display:grid;place-items:center;padding:20px;cursor:pointer;
  background:rgba(2,4,11,.5);-webkit-backdrop-filter:blur(22px) saturate(170%);backdrop-filter:blur(22px) saturate(170%)}
.sent-card{width:min(340px,100%);padding:34px 28px 30px;border-radius:30px;text-align:center;
  background:linear-gradient(180deg,rgba(160,195,255,.2),rgba(30,55,125,.28));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 30px 80px -20px rgba(0,10,60,.8),0 0 0 1px rgba(160,200,255,.2)}
.sent-mark{position:relative;width:104px;height:104px;margin:0 auto 22px}
.sent-mark svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sm-ring{fill:none;stroke:rgba(190,220,255,.9);stroke-width:2.5;stroke-linecap:round}
.sm-disc{fill:url(#sentg);filter:drop-shadow(0 0 14px rgba(100,170,255,.7))}
.sm-check{fill:none;stroke:#fff;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.sent-pulse{position:absolute;inset:8px;border-radius:50%;border:2px solid rgba(150,200,255,.8);opacity:0}
.sent-card h3{font-size:22px;font-weight:600;letter-spacing:-.03em;color:#fff}
.sent-card p{margin-top:8px;font-size:15px;color:rgba(230,240,255,.78);line-height:1.45}


/* =========================================================
   Handy-Vorschau: exakte Handy-Breite (kein Scrollbalken) und Schritt-Leiste außerhalb des Displays
   ========================================================= */
html.embed{scrollbar-width:none}
html.embed::-webkit-scrollbar{width:0;height:0}
.sc-stage > .live-ui{position:absolute;left:50%;top:14px;bottom:auto;right:auto;transform:translateX(-50%);z-index:6;display:flex;align-items:center;gap:16px;
  width:max-content;max-width:92%;padding:10px 22px 10px 16px;border-radius:999px;text-align:left;pointer-events:none;
  background:linear-gradient(180deg,rgba(160,200,255,.22),rgba(40,70,150,.3));
  -webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 14px 40px -12px rgba(0,20,90,.7),0 0 0 1px rgba(160,200,255,.22)}
.live-ui .tut-steps{margin:0;gap:6px}
.live-ui .tut-steps u{width:14px}
.live-ui .tut-steps i{width:26px;height:26px}
.live-ui .tut-steps b{font-size:12px}
.live-ui .tut-caps{width:250px;height:20px;position:relative}
.live-ui .tut-caps p{position:absolute;left:0;top:0;font-size:14px;line-height:20px;white-space:nowrap}
@media (max-width:640px){.sc-stage > .live-ui{gap:10px;padding:8px 14px 8px 10px}.live-ui .tut-caps{width:170px}.live-ui .tut-caps p{font-size:12px}}


/* =========================================================
   Leichte Variante für schwache Geräte (html.lite)
   ========================================================= */
.live-fallback{display:none;position:absolute;inset:0;flex-direction:column;align-items:center;justify-content:center;gap:5cqw;padding:14% 8% 8%;text-align:center;
  background:radial-gradient(70% 50% at 50% 100%,rgba(70,150,255,.55),transparent 70%),#02040d}
.live-fallback .tut-btn{animation:none}
/* Live-Tutorial läuft jetzt auch auf Handys: Fallback nur noch in der eingebetteten Vorschau selbst unnötig */
html.lite .grain{animation:none}
html.lite .pgs{animation:none}
html.lite .foot-mesh{filter:blur(36px)}
html.lite .glass-layer,html.lite .nav .pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
html.lite .band-track,html.lite .logos-track{animation-duration:90s}

@media (prefers-reduced-motion:reduce){.grain,.scroll-ind i::after{animation:none!important}}

.sc-stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:24%;z-index:4;pointer-events:none;background:linear-gradient(180deg,transparent,var(--bg))}

.lap-img{mix-blend-mode:normal;-webkit-mask-image:none;mask-image:none}

.lap-screen.mk.mk-c{color:#0a1226;background:#eef3fb}
.lap-screen.mk-c h4{color:#0a1226}
.lap-screen.mk-c p{color:#0a1226;opacity:.65}

.form-wrap{margin-top:clamp(110px,13vw,190px)}
.cta-shade{-webkit-mask-image:linear-gradient(180deg,#000 70%,transparent);mask-image:linear-gradient(180deg,#000 70%,transparent)}

.proj-giant{top:calc(clamp(116px,17vh,190px) + 38px)}

/* Stern in der Navigation ohne Kachel */
.nav .brand{background:none;box-shadow:none;width:auto;height:auto;border-radius:0;margin:0 14px}
.nav .nav-star{height:32px}

/* Apple-artige Glas-Pille in der Navigation */
.nav .pill{display:block;position:absolute;left:0;top:5px;bottom:5px;width:60px;border-radius:999px;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.24),rgba(255,255,255,.09));
  -webkit-backdrop-filter:blur(8px) brightness(1.25) saturate(1.4);backdrop-filter:blur(8px) brightness(1.25) saturate(1.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -6px 12px rgba(120,175,255,.2),0 6px 20px -6px rgba(10,50,160,.5),0 0 0 1px rgba(255,255,255,.14);
  transition:background .35s,box-shadow .35s}
.nav .pill.hov{background:linear-gradient(180deg,rgba(255,255,255,.32),rgba(255,255,255,.13));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),inset 0 -8px 14px rgba(120,175,255,.26),0 8px 24px -6px rgba(30,90,220,.6),0 0 0 1px rgba(255,255,255,.2)}
.nav .links,.nav .brand{position:relative;z-index:2}
.nav .links a{transition:transform .5s var(--ease),color .3s}
.nav .links a:hover,.nav .links a.active{background:none;box-shadow:none}
.nav .links a:hover{transform:scale(1.05)}
@media (max-width:860px){.nav .pill{display:none}}

.nav .links{left:auto;top:auto;transform:none}

/* Footer-Farbverlauf nur in Blau und Eisblau */
.foot-mesh i:nth-child(1){background:#2b6de3}
.foot-mesh i:nth-child(2){background:#2f7bff;opacity:.7}
.foot-mesh i:nth-child(3){background:#1b4fd0;opacity:.6}
.foot-mesh i:nth-child(4){background:#bfe0ff;opacity:.65}
.foot-mesh i:nth-child(5){background:#3d8bff;opacity:.5}

.bm-dark{display:none}

.bm-vis .bm-dark{display:none}

/* =========================================================
   Beispiel-Websites auf den Laptops: lange Seiten, die langsam durchscrollen
   ========================================================= */
.pgwrap{container-type:size;overflow:hidden;background:var(--pbg);color:var(--pfg);font-family:var(--sans)}
.pgs{position:absolute;left:0;top:0;width:100%;display:block;animation:pgscroll var(--pdur,36s) ease-in-out infinite alternate;animation-delay:var(--pdel,-6s);will-change:transform}
.pgs-img{height:auto}
@keyframes pgscroll{from{transform:translateY(0)}to{transform:translateY(calc(-100% + 100cqh))}}
.pg-a{--pbg:#02040d;--pfg:#fff;--pmut:rgba(235,244,255,.62);--pcard:rgba(255,255,255,.06);--pline:rgba(255,255,255,.12)}
.pg-b{--pbg:#04041a;--pfg:#fff;--pmut:rgba(235,240,255,.62);--pcard:rgba(255,255,255,.06);--pline:rgba(255,255,255,.12)}
.pg-c{--pbg:#eef3fb;--pfg:#0a1226;--pmut:rgba(10,18,38,.6);--pcard:rgba(10,18,38,.05);--pline:rgba(10,18,38,.12)}
.pg-d{--pbg:#02080f;--pfg:#fff;--pmut:rgba(230,245,255,.62);--pcard:rgba(255,255,255,.06);--pline:rgba(255,255,255,.12)}
.pg-hero{position:relative;height:62.5cqw;padding:3.6cqw 4.4cqw;display:flex;flex-direction:column;overflow:hidden}
.pg-b .pg-hero{align-items:center;text-align:center}.pg-b .pg-hero .mk-nav{width:100%}
.pg-hero .mk-nav{font-size:1.35cqw}
.pg-a .mk-glow{background:radial-gradient(60% 90% at 88% 100%,rgba(90,170,255,.95),rgba(30,80,220,.5) 45%,transparent 75%),linear-gradient(160deg,#07102a,#02040d)}
.pg-b .mk-glow{background:radial-gradient(40% 70% at 50% 108%,rgba(160,120,255,.95),rgba(70,60,220,.5) 50%,transparent 78%),linear-gradient(160deg,#0b0a26,#02040d)}
.pg-c .mk-glow{background:radial-gradient(50% 80% at 85% 0%,rgba(110,170,255,.55),transparent 70%),radial-gradient(40% 60% at 0% 100%,rgba(190,215,255,.9),transparent 70%)}
.pg-d .mk-glow{background:radial-gradient(70% 80% at 10% 105%,rgba(60,200,230,.8),rgba(30,110,220,.45) 48%,transparent 76%),linear-gradient(160deg,#06141f,#02040d)}
.pg-c .mk-nav{color:rgba(10,18,38,.7)}.pg-c .mk-nav b{background:#0a1226}.pg-c .mk-nav i{background:#0a1226;color:#fff}
.pgwrap u{text-decoration:none;display:inline-block;width:fit-content;font-size:1.4cqw;font-weight:500;padding:1cqw 2.2cqw;border-radius:99px;background:var(--pcard);box-shadow:inset 0 0 0 1px var(--pline);color:var(--pfg)}
.pg-logos{display:flex;justify-content:space-between;align-items:center;padding:5cqw 6cqw;border-block:1px solid var(--pline)}
.pg-logos i{width:11cqw;height:2.6cqw;border-radius:.8cqw;background:var(--pfg);opacity:.18}
.pg-feat{padding:8cqw 5cqw;display:flex;flex-direction:column;gap:5cqw}
.pgwrap h5{font-size:5cqw;line-height:1.02;letter-spacing:-.05em;font-weight:500;color:var(--pfg)}
.pg-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2cqw}
.pg-card{padding:2.4cqw;border-radius:1.8cqw;background:var(--pcard);border:1px solid var(--pline);display:flex;flex-direction:column;gap:1cqw;min-height:24cqw}
.pg-card span{font-family:var(--mono);font-size:1.2cqw;color:var(--pmut)}
.pg-card b{font-size:2.4cqw;font-weight:500;letter-spacing:-.03em;margin-top:auto}
.pg-card p{font-size:1.4cqw;line-height:1.45;color:var(--pmut)}
.pg-show{position:relative;margin:0 5cqw;height:38cqw;border-radius:2.4cqw;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.4cqw;text-align:center;background:linear-gradient(160deg,#0a1a40,#02040d)}
.pg-c .pg-show{background:linear-gradient(160deg,#cfe0fb,#eef3fb)}
.pg-sglow{position:absolute;inset:0;background:radial-gradient(60% 80% at 50% 115%,rgba(90,170,255,.85),transparent 70%)}
.pg-show h5,.pg-show u{position:relative}
.pg-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:2cqw;padding:9cqw 5cqw}
.pg-stats b{display:block;font-size:7cqw;font-weight:300;letter-spacing:-.05em;line-height:1}
.pg-stats span{font-family:var(--mono);font-size:1.3cqw;color:var(--pmut);text-transform:uppercase;letter-spacing:.12em}
.pg-cta{padding:9cqw 5cqw 10cqw;display:flex;flex-direction:column;align-items:flex-start;gap:3cqw}
.pg-foot{display:flex;gap:4cqw;align-items:center;padding:4cqw 5cqw;border-top:1px solid var(--pline)}
.pg-foot b{width:4cqw;height:1.6cqw;border-radius:.4cqw;background:var(--pfg);margin-right:auto}
.pg-foot span{width:9cqw;height:1.2cqw;border-radius:.6cqw;background:var(--pfg);opacity:.25}
@media (prefers-reduced-motion:reduce){.pgs{animation:none}}

/* =========================================================
   Handy-Tutorial: So erreichst du uns (12 s Schleife, 3 Schritte)
   ========================================================= */
.hand-screen .ph-content{padding:11% 7% 6%;gap:0;align-items:stretch;text-align:center;justify-content:flex-start}
.tut-head{margin-top:4cqw}
.tut-head .mono{font-size:3.4cqw;color:rgba(235,244,255,.8)}
.tut-steps{display:flex;align-items:center;justify-content:center;gap:2cqw;margin:4cqw 0 3cqw}
.tut-steps u{width:9cqw;height:1px;background:rgba(255,255,255,.28)}
.tut-steps i{width:7cqw;height:7cqw;border-radius:50%;display:grid;place-items:center;font-style:normal;border:1px solid rgba(255,255,255,.35);color:rgba(255,255,255,.7);
  animation:tutstep 12s infinite;animation-delay:calc(var(--i) * 4s)}
.tut-steps b{font-size:3.4cqw;font-weight:500}
@keyframes tutstep{0%{background:#fff;color:#04091a;border-color:#fff;box-shadow:0 0 3cqw rgba(160,210,255,.9)}30%{background:#fff;color:#04091a;border-color:#fff;box-shadow:0 0 3cqw rgba(160,210,255,.9)}34%,100%{background:transparent;color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.35);box-shadow:none}}
.tut-caps{position:relative;height:9cqw}
.tut-caps p{position:absolute;inset:0;font-size:4.2cqw;font-weight:500;letter-spacing:-.02em;line-height:1.25;color:#fff;opacity:0;animation:tutfade 12s infinite;animation-delay:calc(var(--i) * 4s);animation-fill-mode:backwards}
.tut-scenes{position:relative;flex:1;margin-top:3cqw}
.tut-sc{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3.4cqw;opacity:0;animation:tutfade 12s infinite;animation-delay:calc(var(--i) * 4s);animation-fill-mode:backwards}
@keyframes tutfade{0%{opacity:0;transform:translateY(3cqw)}4%,29%{opacity:1;transform:none}33%,100%{opacity:0;transform:translateY(-3cqw)}}
/* Schritt 1 */
.tut-star{width:20cqw;filter:drop-shadow(0 0 3cqw rgba(110,170,255,.8))}
.tut-word{width:44cqw}
.tut-h{font-size:7cqw;line-height:1.1;letter-spacing:-.04em;font-weight:500;color:#fff}
.tut-h em{font-family:var(--serif);font-style:italic;color:#c8e4ff;font-size:1.08em}
.tut-h.sm{font-size:6cqw}
.tut-btn,.tut-send{position:relative;display:inline-block;padding:2.6cqw 6cqw;border-radius:99px;background:#f4f8ff;color:#04091a;font-size:4cqw;font-weight:600;animation:tutpress 12s infinite backwards}
.tut-btn{animation-delay:2.2s}
.tut-send{animation-delay:6.9s;margin-top:1cqw}
@keyframes tutpress{0%,100%{transform:scale(1)}1.5%{transform:scale(.93)}4%{transform:scale(1)}}
.tap{position:absolute;left:50%;top:50%;width:11cqw;height:11cqw;margin:-5.5cqw 0 0 -5.5cqw;border-radius:50%;border:2px solid #fff;background:rgba(160,210,255,.45);opacity:0;pointer-events:none;
  animation:tutap 12s infinite backwards;animation-delay:var(--d)}
@keyframes tutap{0%{opacity:0;transform:scale(.3)}1.5%{opacity:1;transform:scale(.7)}7%{opacity:0;transform:scale(2.1)}100%{opacity:0}}
/* Schritt 2 */
.tut-form{width:100%;display:flex;flex-direction:column;gap:2.6cqw;align-items:center}
.tf{width:100%;text-align:left;padding:2cqw 3cqw;border-radius:2.4cqw;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(6px)}
.tf.tall{min-height:15cqw}
.tf small{display:block;font-size:2.8cqw;color:rgba(235,244,255,.6);margin-bottom:.8cqw}
.ty{display:block;overflow:hidden;white-space:nowrap;width:0;animation:tutype 12s steps(26) infinite backwards;animation-delay:var(--d)}
.ty em{font-style:normal;font-size:3.8cqw;color:#fff}
@keyframes tutype{0%,34%{width:0}42%,66%{width:100%}70%,100%{width:0}}
/* Schritt 3 */
.tut-ok{width:20cqw;height:20cqw;margin-top:4cqw;border-radius:50%;display:grid;place-items:center;background:rgba(160,210,255,.18);box-shadow:0 0 6cqw rgba(110,170,255,.7);animation:tutpop 12s infinite backwards;animation-delay:8s}
.tut-ok svg{width:70%}
@keyframes tutpop{0%{transform:scale(.4)}4%{transform:scale(1.12)}8%,100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.tut-sc,.tut-caps p,.tut-steps i,.tap,.ty,.tut-btn,.tut-send,.tut-ok{animation:none}.tut-sc:first-child{opacity:1}.tut-caps p:first-child{opacity:1}.ty{width:100%}}

/* Tutorial: größere Schrift */
.tut-head .mono{font-size:4cqw}
.tut-steps i{width:8cqw;height:8cqw}.tut-steps b{font-size:4cqw}
.tut-caps{height:11cqw}.tut-caps p{font-size:5.2cqw}
.tut-h{font-size:8.2cqw}.tut-h.sm{font-size:7cqw}
.tut-btn,.tut-send{font-size:4.8cqw;padding:3cqw 7cqw}
.tf small{font-size:3.3cqw}.ty em{font-size:4.5cqw}
.tut-word{width:50cqw}.tut-star{width:22cqw}

/* =========================================================
   Handy: gespiegelte Website + Kontakt-Tutorial (18 s Schleife)
   Schritt 1: Website scrollt durch, Tipp auf „Projekt starten" · 2: Formular · 3: Danke
   ========================================================= */
.tut-sc,.tut-caps p{animation-duration:18s;animation-delay:0s;animation-iteration-count:infinite;animation-fill-mode:backwards}
.tut-sc.sa,.tut-caps p.ca{animation-name:tscA}
.tut-sc.sb,.tut-caps p.cb{animation-name:tscB}
.tut-sc.sd,.tut-caps p.cc{animation-name:tscC}
@keyframes tscA{0%{opacity:0;transform:translateY(3cqw)}3%,46%{opacity:1;transform:none}49%,100%{opacity:0;transform:translateY(-3cqw)}}
@keyframes tscB{0%,47%{opacity:0;transform:translateY(3cqw)}51%,73%{opacity:1;transform:none}76%,100%{opacity:0;transform:translateY(-3cqw)}}
@keyframes tscC{0%,75%{opacity:0;transform:translateY(3cqw)}79%,97%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-3cqw)}}
/* Schritt-Anzeige */
.tut-steps i{animation-duration:18s;animation-delay:0s}
.tut-steps i:nth-of-type(1){animation-name:stA}
.tut-steps i:nth-of-type(2){animation-name:stB}
.tut-steps i:nth-of-type(3){animation-name:stC}
@keyframes stA{0%,46%{background:#fff;color:#04091a;border-color:#fff;box-shadow:0 0 3cqw rgba(160,210,255,.9)}49%,100%{background:transparent;color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.35);box-shadow:none}}
@keyframes stB{0%,47%{background:transparent;color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.35);box-shadow:none}50%,73%{background:#fff;color:#04091a;border-color:#fff;box-shadow:0 0 3cqw rgba(160,210,255,.9)}76%,100%{background:transparent;color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.35);box-shadow:none}}
@keyframes stC{0%,75%{background:transparent;color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.35);box-shadow:none}78%,98%{background:#fff;color:#04091a;border-color:#fff;box-shadow:0 0 3cqw rgba(160,210,255,.9)}100%{background:transparent;color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.35);box-shadow:none}}
.tut-caps{height:12cqw}
.tut-caps p{font-size:4.8cqw}
/* Tippen, Drücken, Tippen im Formular, Danke */
.tap{animation-duration:18s}
.tut-btn{animation:tutpress 18s infinite backwards;animation-delay:8s}
.tut-send{animation-duration:18s;animation-delay:12.4s}
.tut-send .tap{--d:12.4s}
.ty{animation-name:tutype2;animation-duration:18s}
@keyframes tutype2{0%,48%{width:0}55%,73%{width:100%}76%,100%{width:0}}
.tut-ok{animation-duration:18s;animation-delay:13.7s}

/* Gespiegelte Mini-Version der Website */
.tut-sc.sa{container-type:size;overflow:hidden;border-radius:3cqw;justify-content:flex-start}
.mir{position:absolute;left:0;top:0;width:100%;text-align:left;animation:mirscroll 18s infinite;animation-delay:0s}
@keyframes mirscroll{0%,4%{transform:translateY(0)}42%,100%{transform:translateY(calc(-100% + 100cqh))}}
.mi-nav{display:flex;align-items:center;justify-content:space-between;gap:2cqw;padding:2cqw 3cqw;margin:0 0 3cqw;border-radius:99px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);font-size:3cqw;color:rgba(255,255,255,.85)}
.mi-nav img{height:6cqw;width:auto}
.mi-hero{position:relative;text-align:center;padding:7cqw 0 12cqw;overflow:hidden;border-radius:3cqw;min-height:78cqw;display:flex;flex-direction:column;align-items:center;gap:2.6cqw}
.mi-lab{font-family:var(--mono);font-size:2.6cqw;letter-spacing:.14em;text-transform:uppercase;color:rgba(225,238,255,.7)}
.mi-hero h4{font-size:11.5cqw;line-height:.98;letter-spacing:-.05em;font-weight:500;color:#fff}
.mi-hero em,.mi-sec em,.mi-cta em{font-family:var(--serif);font-style:italic;font-weight:400;color:#bfe0ff;font-size:1.08em}
.mi-sub{font-size:3.4cqw;color:rgba(230,240,255,.78);max-width:72cqw;line-height:1.35}
.mi-btns{display:flex;gap:2cqw;position:relative;z-index:1;margin-top:1cqw}
.mi-btns b{padding:2.2cqw 4cqw;border-radius:99px;background:#f4f8ff;color:#04091a;font-size:3cqw;font-weight:600}
.mi-btns b.g{background:rgba(3,8,24,.5);color:#fff;border:1px solid rgba(255,255,255,.25)}
.mi-flutes{position:absolute;left:0;right:0;bottom:0;height:46%;pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(255,255,255,.12) 0,rgba(255,255,255,.02) 2cqw,rgba(0,0,0,.28) 4cqw),radial-gradient(70% 90% at 50% 125%,rgba(210,235,255,.95),rgba(70,150,255,.7) 40%,transparent 75%)}
.mi-sec{padding:9cqw 0 4cqw}
.mi-sec h5,.mi-cta h5{font-size:8.4cqw;line-height:1.05;letter-spacing:-.045em;font-weight:500;color:#fff;margin:2cqw 0 5cqw}
.mi-sec ul{border-top:1px solid rgba(255,255,255,.14)}
.mi-sec li{padding:3.6cqw 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:6.4cqw;letter-spacing:-.04em;font-weight:500;color:#fff;display:flex;gap:4cqw;align-items:baseline}
.mi-sec li span{font-family:var(--mono);font-size:2.4cqw;color:rgba(225,238,255,.55)}
.mi-lap{position:relative;margin:6cqw -3cqw 0}
.mi-lap img{display:block;width:100%;height:auto}
.mi-lap i{position:absolute;left:11.8%;top:6.3%;width:76.4%;height:75.1%;border-radius:1.2cqw;background:radial-gradient(70% 90% at 80% 110%,rgba(90,170,255,.9),transparent 70%),linear-gradient(160deg,#07102a,#02040d)}
.mi-tools{display:flex;justify-content:center;gap:5cqw;padding:7cqw 0}
.mi-tools i{width:8cqw;height:8cqw;background:rgba(235,244,255,.6);-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.mi-cta{padding:6cqw 0 14cqw;text-align:center;display:flex;flex-direction:column;align-items:center}
@media (prefers-reduced-motion:reduce){.mir{animation:none}}

.sc-stage > .live-ui{top:auto;bottom:15%}

/* ---- Handy: Statusleiste deckt scrollenden Inhalt sauber ab ---- */
.hand-screen::before{content:"";position:absolute;left:0;right:0;top:0;height:11.5%;z-index:6;pointer-events:none;
  background:linear-gradient(180deg,#02040d 62%,rgba(2,4,13,0))}
