/* Werkpixel – Palette P18 (Obsidian, Blaze Orange, Gletscherblau) aus der Design-Zentrale */
@font-face{font-family:"Epilogue";src:url(fonts/epilogue.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"Fraunces";src:url(fonts/fraunces-italic.woff2) format("woff2");font-weight:400 700;font-style:italic;font-display:swap}

:root{
  --bg:#0C0C0A; --ink:#EDEDED; --surf:#1A1A18; --surf2:#22221F; --line:#393937; --soft:#A3A39E;
  --or:#F15419; --or-d:#B23A0C; --gold:#F27618;
  --ice:#77E7FE; --ice-d:#43DFFE; --ice-cell:#5CCFE6; --ice-l:#C4F5FF;
  --grey:#D6D6D3; --grey-d:#C2C2BE;
  --m:clamp(16px,2.2vw,32px);
  --s-small:clamp(.875rem,.85rem + .1vw,.9375rem);
  --s-body:clamp(1.0625rem,1rem + .25vw,1.1875rem);
  --s-lead:clamp(1.25rem,1.1rem + .7vw,1.625rem);
  --s-head:clamp(2.5rem,1.2rem + 4.6vw,5rem);
  --s-disp:clamp(3.25rem,1.5rem + 5.4vw,7rem);
  --ease:cubic-bezier(.2,.7,.2,1);
  --sec:clamp(88px,10vw,150px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--s-body)/1.5 "Epilogue",system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{font-weight:900;letter-spacing:-.04em;line-height:.95;margin:0}
p{margin:0}
a{color:inherit}
ul,ol{margin:0;padding:0;list-style:none}
button,input,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--or);outline-offset:3px}
::selection{background:var(--ice);color:var(--bg)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:var(--m);top:12px;z-index:50;background:var(--ice);color:var(--bg);padding:12px 18px;clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.skip:focus{clip:auto;width:auto;height:auto}
.hp{display:none}

/* ---------- Knöpfe: obere Ecken schräg wie ein Reiter ---------- */
.btn{display:inline-flex;align-items:center;gap:.6em;font:500 var(--s-body)/1 "Epilogue",sans-serif;padding:20px 30px 18px;border:0;cursor:pointer;text-decoration:none;
  background:var(--bg);color:var(--ink);clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 100%,0 100%);transition:background .2s,transform .16s var(--ease)}
.btn:hover{background:var(--line)}
.btn:active{transform:scale(.97)}
.btn:focus-visible{outline:3px solid var(--or);outline-offset:-7px}
.btn .arr{transition:transform .2s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn-ice{background:var(--ice);color:var(--bg)}
.btn-ice:hover{background:var(--ice-d)}
.btn-or{background:var(--or);color:var(--bg)}
.btn-or:hover{background:var(--gold)}
.btn-ghost{background:var(--surf2);color:var(--ink)}
.btn-sm{padding:12px 20px 10px;font-size:15px}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.lnk{font-weight:500;text-underline-offset:5px;text-decoration-thickness:2px}

/* ---------- Kopfzeile ---------- */
.site-head{position:sticky;top:0;z-index:40;height:76px;display:flex;align-items:center;gap:36px;padding:0 var(--m);background:var(--bg);color:var(--ink);transition:transform .35s var(--ease);view-transition-name:kopf}
.site-head.hide{transform:translateY(-100%)}
.logo{margin-right:auto;display:block}
.logo img{height:38px;width:auto}
.nav{display:flex;gap:30px;align-items:center;font-size:15px;font-weight:500}
.nav > a,.dd summary{text-decoration:none;position:relative;padding:8px 0;cursor:pointer}
.nav > a::after,.dd summary::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--or);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.nav > a:hover::after,.nav > a[aria-current="page"]::after,.dd summary:hover::after,.dd summary[data-on]::after,.dd[open] summary::after{transform:scaleX(1)}
.dd{position:relative}
.dd summary{list-style:none;display:flex;align-items:center;gap:8px}
.dd summary::-webkit-details-marker{display:none}
.dd summary::before{content:"";order:2;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s var(--ease)} /* taste-skill-ignore: Pfeil */
.dd[open] summary::before{transform:translateY(2px) rotate(225deg)}
.dd-panel{position:absolute;left:-24px;top:calc(100% + 22px);width:min(720px,90vw);background:var(--surf);padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:4px;animation:drop .3s var(--ease)}
@keyframes drop{from{opacity:0;transform:translateY(-8px)}}
.dd-panel a{display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto;column-gap:16px;align-items:center;padding:12px;text-decoration:none;transition:background .2s}
.dd-panel a:hover,.dd-panel a[aria-current="page"]{background:var(--surf2)}
.dd-panel img{grid-row:1/3;width:72px;height:54px;object-fit:cover}
.dd-panel b{font-size:16px;font-weight:900;letter-spacing:-.02em;align-self:end}
.dd-panel span{font-size:14px;color:var(--soft);align-self:start;font-weight:400}
.dd-panel a.dd-all{grid-column:1/3;display:block;background:var(--or);color:var(--bg);padding:16px;font-weight:500}
.dd-panel a.dd-all:hover{background:var(--gold)}
.head-cta[aria-current="page"]{background:var(--gold)}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;font-weight:500;font-size:15px;padding:10px 16px;background:var(--surf)}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--ice);color:var(--bg)}
.menu nav{position:absolute;right:calc(var(--m) * -1);top:calc(100% + 12px);width:100vw;max-height:calc(100svh - 76px);overflow:auto;background:var(--bg);display:flex;flex-direction:column;padding:4px var(--m) 28px}
.menu nav a{font-size:var(--s-lead);font-weight:900;letter-spacing:-.03em;text-decoration:none;padding:9px 0}
.menu nav a[aria-current="page"]{color:var(--or)}
.menu .m-group{font-size:14px;color:var(--soft);margin:20px 0 4px;font-weight:500}

/* ---------- Allgemeine Abschnitte ---------- */
.sec{padding:var(--sec) var(--m)}
.sec-head{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:clamp(40px,5vw,72px)}
.sec-head h2{font-size:var(--s-head)}
.sec-head p{max-width:42ch}
.t-dark{background:var(--bg);color:var(--ink)}
.t-surf{background:var(--surf);color:var(--ink)}
.t-light{background:var(--ink);color:var(--bg)}
.t-grey{background:var(--grey);color:var(--bg)}
.t-or{background:var(--or);color:var(--bg)}
.t-ice{background:var(--ice);color:var(--bg)}
.ticks{display:flex;flex-direction:column;gap:10px;margin-top:28px}
.ticks li{display:flex;gap:14px;align-items:baseline;font-weight:500}
.ticks li::before{content:"";flex:0 0 12px;height:12px;background:var(--or);transform:translateY(1px)}
.t-or .ticks li::before{background:var(--bg)}

/* ---------- STARTSEITE: Hero – alles auf dem ersten Bildschirm ---------- */
.ser{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.02em;color:var(--or)}
.t-or .ser,.t-ice .ser{color:inherit}
.hero{display:grid;grid-template-columns:5fr 7fr;grid-template-rows:auto 1fr auto;grid-template-areas:"head stage" "body stage" "body picker";column-gap:clamp(32px,4vw,72px);row-gap:18px;align-items:start;min-height:calc(100svh - 76px);padding:clamp(24px,3vw,44px) var(--m) clamp(28px,3vw,44px);overflow:hidden}
.hero-head{grid-area:head;align-self:end}
.hero-body{grid-area:body}
.hero h1{font-size:clamp(3rem,1rem + 4vw,5.5rem);line-height:.92}
.hero h1 .ser{display:inline-block;padding-right:.08em}
.brush{display:block;width:min(100%,480px);height:auto;margin-top:12px}
.hero .lede{font-size:var(--s-lead);line-height:1.35;max-width:32ch}
.facts{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px;margin-top:32px}
.facts li{background:var(--surf);padding:12px 16px 14px;display:flex;flex-direction:column;gap:2px}
.facts li:first-child{background:var(--or);color:var(--bg)}
.facts b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.03em;line-height:1.1;white-space:nowrap}
.facts span{font-size:14px}

/* Bühne: Laptop schräg im Raum, Handy davor – Größe richtet sich nach der Bildschirmhöhe */
.stage{grid-area:stage;position:relative;perspective:1600px;padding:16px 7% 34px 0;width:min(100%,calc((100svh - 330px) * 1.75));justify-self:center;align-self:center}
.glow{position:absolute;inset:6% 4% 10% 8%;background:radial-gradient(closest-side,var(--glow,#F15419),transparent);opacity:.42;filter:blur(40px);transition:background .8s;animation:breathe 7s ease-in-out infinite} /* taste-skill-ignore: Leuchten laut Design-Referenz S6 */
@keyframes breathe{50%{opacity:.26;transform:scale(1.06)}}
.laptop{position:relative;transform:rotateY(-14deg) rotateX(5deg) rotateZ(.6deg);transform-style:preserve-3d;transition:transform 1s var(--ease)}
.stage:hover .laptop{transform:rotateY(-4deg) rotateX(2deg)}
.lid{background:#1d1d1b;padding:11px 11px 15px;border-radius:18px 18px 6px 6px;box-shadow:0 40px 80px -30px rgba(0,0,0,.8)} /* taste-skill-ignore: schwebendes Gerät */
.lid .mock{border-radius:6px;overflow:hidden}
.base{height:15px;margin:0 -7%;background:#2a2a27;border-radius:0 0 22px 22px;position:relative}
.base::after{content:"";position:absolute;left:42%;right:42%;top:0;height:6px;background:#1a1a18;border-radius:0 0 8px 8px}
.phone-float{position:absolute;right:0;bottom:4px;width:24%;background:#1d1d1b;padding:7px;border-radius:26px;transform:rotate(5deg) translateZ(60px);box-shadow:0 30px 60px -20px rgba(0,0,0,.85);transition:transform 1s var(--ease)} /* taste-skill-ignore: schwebendes Gerät */
.stage:hover .phone-float{transform:rotate(1deg) translateY(-10px)}
.phone-float .mock{border-radius:20px;overflow:hidden;background:transparent}
.phone-float .mock-page{padding:9cqw 7cqw 10cqw}
.phone-float .m-nav b{font-size:max(9px,7cqw)}
.phone-float .m-nav .m-btn{font-size:max(8px,5.5cqw);padding:2cqw 4cqw}
.phone-float .m-photo{margin:7cqw -7cqw 6cqw;aspect-ratio:1}
.phone-float .m-h{font-size:max(11px,10cqw);margin-bottom:6cqw}
.phone-float > .mock .m-btn:last-child{font-size:max(8px,6cqw);padding:3cqw 6cqw}

/* Farbwahl: fünf Musterkarten wie beim Maler */
.picker{grid-area:picker;justify-self:center;width:min(100%,calc((100svh - 330px) * 1.75))}
.picker p{font-size:15px;color:var(--soft);margin-bottom:12px}
.picker p b{color:var(--ink);font-weight:500}
.pal{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.pal button{border:0;padding:6px 6px 9px;background:#fff;color:var(--bg);cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:7px;transform:translateY(0) rotate(var(--tilt,0deg));transition:transform .35s var(--ease)}
.pal button:nth-child(odd){--tilt:-1.5deg}
.pal button:nth-child(even){--tilt:1.2deg}
.pal .sw{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;height:44px}
.pal .sw i:first-child{grid-row:1/3}
.pal .nm{font-size:13px;font-weight:900;letter-spacing:-.01em;line-height:1.15;padding:0 2px}
.pal button:hover{transform:translateY(-6px) rotate(0)}
.pal button[aria-checked="true"]{transform:translateY(-10px) rotate(0);box-shadow:0 0 0 3px var(--or)} /* taste-skill-ignore: Auswahlrahmen */
.pal button:focus-visible{outline:3px solid var(--ice);outline-offset:3px}
.pal-info{display:none}

/* Beispiel-Website (Café Morgenrot) – ihre Farben kommen aus dem Farbwähler */
.mock{--m-bg:#0C0C0A;--m-surf:#1A1A18;--m-ink:#EDEDED;--m-title:#F15419;--m-acc:#77E7FE;--m-acc-ink:#0C0C0A;background:var(--grey);container-type:inline-size}
.mock-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:12px;color:var(--bg)}
.mock-bar i{width:10px;height:10px;border-radius:50%;background:var(--bg);opacity:.25}
.mock-bar span{margin-left:10px;background:var(--ink);padding:3px 12px;font-weight:500}
.mock-page{background:var(--m-bg);color:var(--m-ink);padding:3cqw 3.6cqw 3.6cqw;transition:background-color .6s var(--ease),color .6s var(--ease)}
.mock-page *{transition:background-color .6s var(--ease),color .6s var(--ease)}
.m-nav{display:flex;align-items:center;gap:2.6cqw;font-size:max(10px,1.6cqw)}
.m-nav b{font-weight:900;font-size:max(12px,2.3cqw);letter-spacing:-.03em;margin-right:auto;color:var(--m-title)}
.m-btn{display:inline-block;background:var(--m-acc);color:var(--m-acc-ink);padding:1cqw 2cqw;font-weight:500}
.m-stage{position:relative;margin-top:3.4cqw}
.m-photo{aspect-ratio:16/8;overflow:hidden}
.m-photo img{width:100%;height:100%;object-fit:cover}
.m-card{position:relative;width:52%;margin:-14cqw 0 0 4cqw;background:var(--m-surf);padding:3cqw 3.4cqw 3.4cqw}
.m-h{font-size:max(15px,3.9cqw);font-weight:900;letter-spacing:-.04em;line-height:.98;color:var(--m-title)}
.m-p{margin:1.8cqw 0 2.4cqw;font-size:max(10px,1.6cqw);line-height:1.45}
.m-card .m-btn{font-size:max(10px,1.6cqw);padding:1.2cqw 2.4cqw}
.m-row{display:flex;gap:1.4cqw;margin-top:2.6cqw;font-size:max(10px,1.5cqw)}
.m-row span{flex:1;display:flex;align-items:center;gap:1.2cqw;background:var(--m-surf);padding:1.6cqw 2cqw}
.m-row i{width:1.4cqw;height:1.4cqw;min-width:7px;min-height:7px;border-radius:50%;background:var(--m-acc)}
/* ältere Bausteine der Beispielseite (Webdesign-Seite) */
.m-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:4cqw;align-items:center;margin-top:5cqw}
.m-hero .m-btn{font-size:max(11px,1.7cqw);padding:1.4cqw 2.6cqw}
.m-img{aspect-ratio:4/3;overflow:hidden}
.m-img img{width:100%;height:100%;object-fit:cover}
.m-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4cqw;margin-top:4cqw}
.m-cards div{background:var(--m-surf);padding:2.2cqw;font-size:max(10px,1.6cqw)}
.m-cards b{display:block;font-size:max(12px,2.1cqw);font-weight:900;letter-spacing:-.02em;color:var(--m-title)}

/* ---------- Fotorahmen: gedruckter Abzug mit versetztem Farbblock ---------- */
.pf{position:relative;margin:0;padding:clamp(8px,.9vw,12px);background:var(--ink);box-shadow:clamp(12px,1.6vw,22px) clamp(12px,1.6vw,22px) 0 var(--pfc,var(--or));transform:rotate(var(--rot,-1.5deg));transition:transform .7s var(--ease),box-shadow .7s var(--ease)} /* taste-skill-ignore: flacher Farbblock als Rahmen */
.pf:hover{transform:rotate(0) translateY(-6px);box-shadow:8px 8px 0 var(--pfc,var(--or))} /* taste-skill-ignore */
.pf > img{width:100%;display:block;object-fit:cover}
.pf .ph-in{overflow:hidden}
.pf .ph-in img{width:100%;display:block;transition:transform 1.2s var(--ease)}
.pf:hover .ph-in img{transform:scale(1.05)}
.pf figcaption,.sticker{position:absolute;left:-14px;bottom:28px;background:var(--bg);color:var(--ink);padding:9px 16px;font-size:14px;font-weight:500;transform:rotate(-4deg)}
.t-dark .pf figcaption{background:var(--or);color:var(--bg)}

/* Startseite: Leistungen als Liste mit gerahmter Bildvorschau */
.idx{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,64px);align-items:start}
.idx-list{display:flex;flex-direction:column}
.idx-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 24px;align-items:baseline;padding:22px 0;text-decoration:none;transition:opacity .25s,transform .35s var(--ease)}
.idx-list:hover .idx-row:not(:hover),.idx-list.has-focus .idx-row:not(.on){opacity:.38}
.idx-row:hover{transform:translateX(10px)}
.idx-row b{font-size:clamp(2rem,1rem + 3vw,3.75rem);font-weight:900;letter-spacing:-.04em;line-height:1}
.idx-row span{grid-column:1;font-size:var(--s-body)}
.idx-row i{grid-row:1;grid-column:2;font-style:normal;font-size:var(--s-lead)}
.idx-row img{display:none}
.idx-pic{position:sticky;top:110px;padding:12px;background:var(--bg);box-shadow:22px 22px 0 var(--pfc,var(--or));transform:rotate(-2deg);transition:box-shadow .6s var(--ease),transform .6s var(--ease)} /* taste-skill-ignore: Rahmen mit Farbblock */
.idx-pic.flip{transform:rotate(1.5deg)}
.idx-win{position:relative;aspect-ratio:4/5;overflow:hidden}
.idx-win img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0 0 0 100%);transform:scale(1.12);transition:clip-path .8s var(--ease),transform 1.4s var(--ease)}
.idx-win img.on{clip-path:inset(0 0 0 0);transform:scale(1);z-index:1}
.idx-pic .sticker{left:auto;right:-16px;bottom:auto;top:28px;transform:rotate(4deg);background:var(--pfc,var(--or));color:var(--bg);transition:background .6s}
.idx-pic .sticker.light{color:var(--ink)}

/* kleine Referenzen (jede nur einmal) */
.refs-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);max-width:1080px}
.refs-mini a{text-decoration:none;display:block}
.refs-mini figure{margin:0;overflow:hidden;aspect-ratio:16/11;background:var(--surf)}
.refs-mini img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .8s var(--ease)}
.refs-mini a:hover img{transform:scale(1.04)}
.refs-mini b{display:block;margin-top:14px;font-size:var(--s-lead);font-weight:900;letter-spacing:-.03em}
.refs-mini span{display:block;font-size:15px;margin-top:2px}
.refs-wrap{display:grid;grid-template-columns:4fr 8fr;gap:clamp(24px,4vw,64px);align-items:start}
.refs-wrap h2,.fan-wrap h2,.h-mid{font-size:clamp(2.25rem,1rem + 2.8vw,3.75rem)}
.refs-wrap p{margin-top:20px;max-width:30ch}
.refs-wrap .lnk{display:inline-block;margin-top:20px}

/* Startseite: Über uns kurz */
.duo{display:grid;grid-template-columns:4fr 8fr;gap:clamp(32px,5vw,80px);align-items:center}
.duo figure{margin:0;clip-path:polygon(14% 0,86% 0,100% 100%,0 100%);aspect-ratio:4/5;overflow:hidden;max-width:380px}
.duo figure img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.duo h2{font-size:var(--s-head)}
.duo p{margin-top:24px;max-width:56ch;font-size:var(--s-lead);line-height:1.4}

/* Angebot 48 Stunden */
.offer h2{font-size:var(--s-head);max-width:16ch}
.offer-grid{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,4vw,64px);margin-top:40px;align-items:center}
.offer-lede{font-size:var(--s-lead);line-height:1.35}
.quick{display:flex;gap:8px}
.quick input{flex:1;min-width:0;height:84px;border:0;background:var(--ice-cell);color:var(--bg);font-size:20px;padding:0 22px;transition:background .2s}
.quick input::placeholder{color:var(--bg);opacity:.7}
.quick input:focus{background:var(--ice-l);outline:none}
.quick input:focus-visible{outline:3px solid var(--bg);outline-offset:-6px}
.quick .btn{height:84px;padding:0 32px}
.offer-alt{margin-top:20px;font-weight:500}
.offer-alt a{text-underline-offset:4px}

/* ---------- Seitenkopf der Unterseiten ---------- */
.phead{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,64px);align-items:end;padding:clamp(64px,8vw,120px) var(--m) clamp(48px,5vw,80px)}
.phead h1{font-size:clamp(3.25rem,1rem + 7vw,8rem)}
.phead .lede{font-size:var(--s-lead);line-height:1.35}
.jump{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:24px;font-weight:500}
.jump a{text-underline-offset:5px;text-decoration-thickness:2px;text-decoration-color:var(--or)}

/* ---------- LEISTUNGEN: Übersicht ---------- */
.bento{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:auto auto;gap:8px}
.bento a{display:flex;flex-direction:column;text-decoration:none;background:var(--c);color:var(--t);overflow:hidden}
.bento a:first-child{grid-row:1/3}
.bento figure{margin:0;overflow:hidden;aspect-ratio:16/10;flex:1}
.bento a:first-child figure{aspect-ratio:auto;min-height:340px}
.bento img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.bento a:hover img{transform:scale(1.05)}
.bento .bt{padding:22px 24px 26px;display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:end}
.bento b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.03em}
.bento a:first-child b{font-size:clamp(2rem,1rem + 2.4vw,3.25rem)}
.bento span{grid-column:1;font-size:15px}
.bento i{grid-row:1/3;grid-column:2;font-style:normal;font-size:var(--s-lead);transition:transform .3s var(--ease)}
.bento a:hover i{transform:translateX(6px)}

/* Ablauf: vier Etappen, die sich aufklappen */
.flow{display:flex;gap:8px;height:clamp(460px,44vw,560px)}
.flow-step{flex:1;min-width:0;position:relative;overflow:hidden;background:var(--c);color:var(--t);border:0;text-align:left;padding:28px;cursor:pointer;display:flex;flex-direction:column;transition:flex-grow .6s var(--ease)}
.flow-step.open{flex-grow:3.2;cursor:default}
.flow-step .w{margin-top:auto;font-size:clamp(1.5rem,1rem + 1.4vw,2.5rem);font-weight:900;letter-spacing:-.04em;line-height:1}
.flow-step h3{font-size:var(--s-lead);letter-spacing:-.02em;line-height:1.15;margin-top:18px;max-width:22ch}
.flow-more{max-height:0;opacity:0;overflow:hidden;transition:opacity .4s,max-height .6s var(--ease)}
.flow-step.open .flow-more{max-height:320px;opacity:1;transition-delay:.15s}
.flow-more p{margin-top:16px;max-width:44ch}
.flow-more .ticks li::before{background:currentColor}
.flow-hint{margin-top:16px;font-size:15px}

.ex-list{display:flex;flex-direction:column;gap:4px}
.ex-list li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:24px;align-items:center;padding:22px 24px;background:var(--surf)}
.ex-list li:nth-child(even){background:var(--surf2)}
.ex-list b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.02em}
.ex-list span{color:var(--soft)}
.ex-list em{font-style:normal;font-weight:900;font-size:var(--s-lead);color:var(--ice);font-variant-numeric:tabular-nums}

/* ---------- Einzelne Leistungsseite ---------- */
.sv-hero{display:grid;grid-template-columns:6fr 6fr;gap:clamp(32px,5vw,80px);align-items:center;padding:clamp(56px,7vw,110px) var(--m)}
.sv-hero h1{font-size:clamp(3rem,1rem + 5.6vw,6.5rem)}
.sv-hero .lede{margin-top:24px;font-size:var(--s-lead);line-height:1.35;max-width:32ch}
.sv-pic{margin:0;position:relative}
.sv-pic img{width:100%;aspect-ratio:4/5;object-fit:cover}
.sv-pic figcaption{margin-top:10px;font-size:14px;color:var(--soft)}
.sv-pic .inset{position:absolute;left:-12%;bottom:8%;width:42%;aspect-ratio:1;object-fit:cover;padding:8px;background:var(--bg)}
.points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.points li{background:var(--c,var(--surf));color:var(--t,var(--ink));padding:28px 28px 32px}
.points b{display:block;font-size:var(--s-lead);font-weight:900;letter-spacing:-.03em;line-height:1.1}
.points p{margin-top:10px}
.more-svc{display:flex;flex-wrap:wrap;gap:8px}
.more-svc a{display:flex;align-items:center;gap:14px;padding:10px 18px 10px 10px;background:var(--surf);text-decoration:none;font-weight:500;transition:background .2s}
.more-svc a:hover{background:var(--surf2)}
.more-svc img{width:56px;height:42px;object-fit:cover}

/* Webdesign: Desktop und Handy */
.devices{display:grid;grid-template-columns:3fr 1fr;gap:clamp(16px,2vw,32px);align-items:end}
.phone{background:var(--bg);padding:10px;border-radius:28px}
.phone .mock-page{border-radius:20px;padding:6cqw 5cqw}
.phone .mock{background:transparent}
.phone .m-hero{grid-template-columns:1fr}
.phone .m-h{font-size:max(16px,8.5cqw)}
.phone .m-p,.phone .m-nav{font-size:max(11px,5cqw)}
.phone .m-nav b{font-size:max(13px,6cqw)}
.phone .m-nav span:not(.m-btn){display:none}
.phone .m-cards{grid-template-columns:1fr}

/* SEO: Suchergebnis und drei Hebel */
.seo-vis{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,3vw,48px);align-items:center}
.seo-pics{position:relative;padding-bottom:18%}
.seo-pics img:first-child{width:78%;aspect-ratio:4/3;object-fit:cover}
.seo-pics img:last-child{position:absolute;right:0;bottom:0;width:52%;aspect-ratio:4/3;object-fit:cover;padding:8px;background:var(--ink)}
.serp-card{background:#fff;color:#202124;padding:28px 30px;max-width:640px}
.serp-card .q{display:flex;align-items:center;gap:12px;background:#F1F3F4;padding:14px 20px;border-radius:999px;font-size:16px;margin-bottom:24px}
.serp-card .q i{width:14px;height:14px;border:2px solid #5f6368;border-radius:50%} /* taste-skill-ignore: Lupe im Suchfeld */
.serp-card small{display:block;font-size:14px;color:#4d5156}
.serp-card b{display:block;font-size:20px;font-weight:500;color:#1558D6;margin:4px 0 6px;letter-spacing:0}
.serp-card p{font-size:15px;line-height:1.5;color:#4d5156}
.serp-card .rank{display:inline-block;margin-top:18px;background:var(--or);color:var(--bg);padding:6px 12px;font-weight:500;font-size:14px}
.levers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.levers li{background:var(--c);color:var(--t);padding:30px 28px 36px;min-height:300px;display:flex;flex-direction:column}
.levers b{font-size:clamp(1.75rem,1rem + 1.6vw,2.5rem);font-weight:900;letter-spacing:-.04em;margin-top:auto}
.levers p{margin-top:12px}
.levers .tag{font-size:15px;font-weight:500}

/* Farbgestaltung: Farbfächer aus echten Musterkarten */
.fan{position:relative;height:clamp(380px,36vw,500px);display:flex;justify-content:center;align-items:flex-end}
.chip{position:absolute;bottom:0;width:clamp(150px,13vw,200px);background:#fff;color:var(--bg);padding:10px 10px 16px;transform-origin:50% 100%;transform:translateX(calc(var(--x) * var(--gap,68%))) rotate(var(--r));transition:transform .6s var(--ease)}
.chip i{display:block;aspect-ratio:1/1.15;background:var(--c)}
.chip b{display:block;margin-top:12px;font-size:16px;font-weight:900;letter-spacing:-.02em}
.chip span{display:block;font-size:13px;line-height:1.4;font-variant-numeric:tabular-nums}
.js .fan:not(.in) .chip{transform:translateX(0) rotate(0)}
.fan:hover .chip{transform:translateX(calc(var(--x) * var(--gap,68%))) rotate(var(--r)) translateY(-10px)}
.fan .chip:hover{transform:translateX(calc(var(--x) * var(--gap,68%))) rotate(0) translateY(-28px)}
.fan-wrap{display:grid;grid-template-columns:5fr 7fr;gap:clamp(24px,4vw,64px);align-items:center}
.fan-wrap p{margin-top:20px;max-width:40ch}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pair img{width:100%;aspect-ratio:4/5;object-fit:cover}

/* Betreuung: ein Monat mit uns */
.month{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.week{background:var(--surf);padding:24px 22px 28px;display:flex;flex-direction:column;gap:12px;min-height:280px}
.week:nth-child(2){background:var(--surf2)}
.week h3{font-size:var(--s-lead);letter-spacing:-.02em}
.week li{background:var(--c,var(--line));color:var(--t,var(--ink));padding:10px 12px;font-size:15px;font-weight:500}

/* Fotografie: Ablauf eines Shootings */
.shoot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.shoot li{padding:28px 28px 34px;background:var(--c);color:var(--t);display:flex;flex-direction:column;gap:12px;min-height:260px}
.shoot b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.03em;margin-top:auto}

/* ---------- REFERENZEN ---------- */
.case{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px);align-items:center;padding:clamp(72px,8vw,120px) var(--m)}
.case-flip .case-pic{order:2}
.case-pic{margin:0;overflow:hidden;max-width:560px}
.case-pic img{width:100%;aspect-ratio:4/3.4;object-fit:cover;object-position:top;transition:transform 1.2s var(--ease)}
.case-pic:hover img{transform:scale(1.03)}
.case h2{font-size:clamp(2.5rem,1rem + 4vw,4.5rem)}
.case-meta{margin-top:14px;font-size:var(--s-lead);font-weight:500;line-height:1.3}
.case-txt > p:not(.case-meta){margin-top:20px;max-width:52ch}
.case h3{margin-top:28px;font-size:var(--s-body);letter-spacing:0;font-weight:900}
.case .ticks{margin-top:12px}
.case .btn{margin-top:32px}
.t-or .case-pic + .case-txt .ticks li::before{background:var(--bg)}

/* ---------- PREISE ---------- */
.plans-wrap{position:relative}
.plans-head{position:absolute;left:0;top:0;width:38%}
.plans-head h2{font-size:clamp(2.5rem,4vw,4rem)}
.plans-head p{margin-top:24px;max-width:34ch}
.plans{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;align-items:end;min-height:680px}
.plan{position:relative;height:var(--h);background:var(--c);color:var(--t);padding:28px 24px 92px;display:flex;flex-direction:column;gap:6px;transform-origin:bottom;transition:transform .9s var(--ease);transition-delay:calc(var(--k) * 90ms)}
.plan h2{font-size:var(--s-lead);letter-spacing:-.02em}
.plan .pages{font-weight:500;margin-bottom:12px}
.plan .amt{font-size:2.5rem;font-weight:900;letter-spacing:-.04em;line-height:1;margin:10px 0 4px}
.plan .amt small{font-size:var(--s-small);font-weight:500;letter-spacing:0;margin-right:4px}
.plan li{font-size:16px;line-height:1.35;padding:3px 0}
.plan .pick{position:absolute;left:0;right:0;bottom:0;height:64px;background:var(--cd);color:var(--pt,var(--t));border:0;cursor:pointer;text-align:left;padding:0 24px;font-weight:500;display:flex;align-items:center;justify-content:space-between;transition:filter .2s}
.plan .pick:hover{filter:brightness(1.08)}
.plan .pick:focus-visible{outline-offset:-6px}
.js .plans:not(.in) .plan{transform:scaleY(.08)}
.price-note{margin-top:28px;max-width:70ch}
.calc-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.calc-head h2{font-size:clamp(2.25rem,4vw,3.75rem);line-height:1}
.calc-head h2 span{display:block;color:var(--soft)}
.calc-body{display:grid;grid-template-columns:180px 1fr;gap:40px;margin-top:56px}
.pkgs{display:flex;flex-direction:column;gap:6px}
.pkgs button{height:72px;border:0;background:var(--surf);text-align:left;padding:0 16px;cursor:pointer;transition:background .2s}
.pkgs button b{display:block;font-weight:500;font-size:16px}
.pkgs button span{font-size:14px;color:var(--soft)}
.pkgs button:hover{background:var(--surf2)}
.pkgs button[aria-pressed="true"]{background:var(--ice);color:var(--bg)}
.pkgs button[aria-pressed="true"] span{color:var(--bg)}
.adds{display:flex;flex-direction:column;gap:4px}
.add{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:20px;min-height:84px;padding:14px 20px;background:var(--surf);border:0;text-align:left;cursor:pointer;width:100%;transition:background .2s}
.add:nth-child(even){background:var(--surf2)}
.add:hover{background:var(--line)}
.add .p{font-size:var(--s-lead);font-weight:900;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.add .n b{display:block;font-weight:500}
.add .n span{font-size:15px;color:var(--soft)}
.add .st{font-size:15px;font-weight:500;display:flex;align-items:center;gap:10px}
.add .st i{width:22px;height:22px;background:var(--line);display:grid;place-items:center;font-style:normal}
.add[aria-pressed="true"]{background:var(--ice);color:var(--bg)}
.add[aria-pressed="true"] .n span{color:var(--bg)}
.add[aria-pressed="true"] .st i{background:var(--bg)}
.add[aria-pressed="true"] .st i::after{content:"";width:10px;height:10px;background:var(--ice)}
.total{margin-top:4px;background:var(--or);color:var(--bg);padding:28px 20px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.total .sum{font-size:var(--s-head);font-weight:900;letter-spacing:-.04em;line-height:.9;font-variant-numeric:tabular-nums}
.total p{max-width:40ch;font-weight:500}
.calc-note{margin-top:20px;color:var(--soft);font-size:var(--s-small)}

/* Häufige Fragen: kompakt zum Aufklappen */
.faq{display:grid;grid-template-columns:4fr 8fr;gap:clamp(24px,4vw,64px);align-items:start}
.faq-side{position:sticky;top:110px}
.faq-side h2{font-size:clamp(2.25rem,1rem + 3vw,3.5rem)}
.faq-side p{margin-top:16px;max-width:30ch}
.faq-side .lnk{display:inline-block;margin-top:16px}
.faq-list{display:flex;flex-direction:column;gap:4px}
.faq-list details{background:var(--ink);color:var(--bg)}
.faq-list details:nth-child(even){background:var(--grey)}
.faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;font-weight:900;font-size:var(--s-body);letter-spacing:-.01em}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary i{flex:0 0 28px;height:28px;background:var(--bg);position:relative;transition:transform .3s var(--ease)}
.faq-list summary i::before,.faq-list summary i::after{content:"";position:absolute;left:8px;right:8px;top:13px;height:2px;background:var(--ink)}
.faq-list summary i::after{transform:rotate(90deg);transition:transform .3s var(--ease)}
.faq-list details[open] summary i::after{transform:rotate(0)}
.faq-list details p{padding:0 24px 22px;max-width:64ch}

/* ---------- ÜBER UNS ---------- */
.au-hero{display:grid;grid-template-columns:7fr 5fr;gap:clamp(24px,4vw,64px);align-items:end;padding:clamp(64px,8vw,120px) var(--m) 0}
.au-hero h1{font-size:clamp(3rem,7vw,7rem)}
.au-hero .lede{margin:28px 0 clamp(64px,8vw,120px);font-size:var(--s-lead);line-height:1.35;max-width:36ch}
.au-hero .shape2{margin:0;clip-path:polygon(16% 0,84% 0,100% 100%,0 100%);aspect-ratio:3/4;overflow:hidden}
.au-hero .shape2 img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.bio{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;padding:var(--sec) var(--m)}
.bio-name{grid-column:1/6}
.bio-name h2{font-size:clamp(3rem,6vw,6rem)}
.bio-name .role{margin-top:16px;font-size:var(--s-lead);font-weight:500;line-height:1.3}
.bio .txt{grid-column:7/13;display:flex;flex-direction:column;gap:20px;max-width:62ch}
.values{grid-column:7/13;display:flex;flex-direction:column;gap:4px}
.values li{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:22px 24px;background:var(--surf)}
.values li:nth-child(even){background:var(--surf2)}
.values b{font-weight:900;font-size:var(--s-lead);letter-spacing:-.02em}

/* ---------- KONTAKT ---------- */
.contact{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px);padding:clamp(56px,7vw,110px) var(--m) var(--sec);align-items:start}
.contact h1{font-size:clamp(3rem,1rem + 5vw,6rem)}
.contact .lede{margin-top:24px;font-size:var(--s-lead);line-height:1.35;max-width:30ch}
.who{display:flex;align-items:center;gap:20px;margin-top:40px}
.who img{width:96px;height:96px;object-fit:cover;object-position:50% 30%;border-radius:50%}
.who b{display:block;font-size:var(--s-lead);font-weight:900;letter-spacing:-.02em}
.who span{font-size:15px}
.alt-box{margin-top:40px;background:var(--bg);color:var(--ink);padding:24px 26px}
.alt-box b{display:block;font-size:var(--s-lead);font-weight:900;letter-spacing:-.02em}
.alt-box p{margin:8px 0 16px}
.form-card{background:var(--bg);color:var(--ink);padding:clamp(24px,3vw,44px)}
.form-card h2{font-size:var(--s-lead);letter-spacing:-.02em;line-height:1.2}
.topics{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 8px;padding:0;border:0}
.topics legend{font-weight:500;margin-bottom:12px;padding:0}
.topics label{position:relative;cursor:pointer}
.topics input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.topics span{display:block;padding:12px 18px;background:var(--surf2);font-size:15px;font-weight:500;transition:background .2s,color .2s}
.topics label:hover span{background:var(--line)}
.topics input:checked + span{background:var(--ice);color:var(--bg)}
.topics input:focus-visible + span{outline:3px solid var(--or);outline-offset:2px}
.field{display:flex;flex-direction:column;margin-top:18px}
.field label{font-weight:500;margin-bottom:8px}
.field .opt{font-weight:400;color:var(--soft)}
.field input,.field textarea{width:100%;border:0;background:var(--surf2);color:var(--ink);font-size:18px;padding:16px 18px;transition:background .2s}
.field input{height:60px}
.field textarea{min-height:140px;resize:vertical;line-height:1.45}
.field input:focus,.field textarea:focus{background:var(--line);outline:none}
.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--ice);outline-offset:-3px}
.field ::placeholder{color:var(--soft)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sel{margin-top:18px;background:var(--surf2);padding:14px 18px;font-weight:500;font-size:15px}
.sel a{text-underline-offset:4px}
.hint{font-size:var(--s-small);color:var(--soft);margin-top:10px}
.hint a{color:var(--ink)}
.err{margin-top:16px;background:var(--or);color:var(--bg);padding:10px 14px;font-weight:500}
.form-card .btn{margin-top:26px;background:var(--ice);color:var(--bg)}
.form-card .btn:hover{background:var(--ice-d)}

/* ---------- ENTWURF ---------- */
.draft{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px,5vw,80px);align-items:center;padding:clamp(56px,7vw,110px) var(--m)}
.draft h1{font-size:clamp(3rem,1rem + 5.4vw,6.5rem)}
.draft .lede{margin-top:24px;font-size:var(--s-lead);line-height:1.35;max-width:34ch}
.promise{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.promise li{background:var(--surf);padding:12px 18px;font-weight:500;font-size:15px}
.clock{position:relative;width:min(100%,400px);aspect-ratio:1;margin-left:auto}
.clock svg{width:100%;height:100%;transform:rotate(-90deg)}
.clock circle{fill:none;stroke-width:22}
.clock .bgc{stroke:var(--surf2)}
.clock .fgc{stroke:var(--or);stroke-dasharray:1100;stroke-dashoffset:1100;transition:stroke-dashoffset 2.2s var(--ease)}
.clock.in .fgc{stroke-dashoffset:120}
.clock div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.clock b{font-size:clamp(5rem,1rem + 9vw,9rem);font-weight:900;letter-spacing:-.06em;line-height:.85}
.clock span{font-size:var(--s-lead);font-weight:500}
.draft-form-sec{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px);align-items:start}
.draft-form-sec h2{font-size:var(--s-head)}
.steps-v{margin-top:32px;display:flex;flex-direction:column;gap:4px}
.steps-v li{background:var(--bg);color:var(--ink);padding:20px 22px;display:grid;grid-template-columns:auto 1fr;gap:4px 16px}
.steps-v li::before{content:"";grid-row:1/3;width:14px;height:14px;background:var(--c);margin-top:6px}
.steps-v b{font-weight:900;font-size:var(--s-body)}
.steps-v span{font-size:15px;color:var(--soft)}

/* ---------- CTA, Recht, Danke ---------- */
.cta-band{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;padding:clamp(80px,9vw,130px) var(--m)}
.cta-band h2,.cta-band h1{font-size:var(--s-head);max-width:15ch}
.cta-side{display:flex;flex-direction:column;align-items:flex-start;gap:24px;max-width:420px}
.legal{background:var(--ink);color:var(--bg);padding:clamp(64px,8vw,120px) var(--m);min-height:70svh}
.legal h1{font-size:clamp(2.5rem,6vw,5.5rem);margin-bottom:48px}
.legal h2{font-size:var(--s-lead);letter-spacing:-.02em;margin:40px 0 12px;line-height:1.2}
.legal p,.legal li{max-width:70ch;margin-bottom:12px}
.todo{background:var(--or);padding:2px 6px}
.thanks{min-height:70svh;align-items:center}
.thanks p{margin-top:24px;font-size:var(--s-lead);max-width:34ch}

/* Kleine UI-Fenster (Ablauf, SEO) */
.ui{background:var(--ink);color:var(--bg);font-size:15px;line-height:1.45;margin-top:20px;max-width:420px}
.ui-bar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--grey);font-weight:500;font-size:14px}
.ui-bar i{width:10px;height:10px;border-radius:50%;background:var(--bg);opacity:.25}
.ui-body{padding:16px 18px}
.ui li{display:flex;justify-content:space-between;gap:16px;padding:6px 0}
.ui li span:last-child{font-weight:500}

/* ---------- FOOTER ---------- */
.foot{background:var(--bg);color:var(--ink);padding:clamp(64px,6vw,96px) var(--m) 32px}
.blocks{display:flex;gap:4px;align-items:flex-end;height:30svh;min-height:200px}
.blocks span{flex:1;height:var(--h);background:var(--c);color:var(--bg);display:flex;align-items:flex-end;padding:0 0 .06em .08em;font-weight:900;font-size:clamp(3rem,10vw,10rem);line-height:.78;letter-spacing:-.04em;overflow:hidden}
.foot-cols{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;margin-top:56px}
.foot-cols div{grid-column:span 2}
.foot-cols div.addr{grid-column:9/13}
.foot-cols h3{font-size:15px;font-weight:500;letter-spacing:0;color:var(--soft);margin-bottom:12px;line-height:1.3}
.foot-cols li{font-size:15px;padding:3px 0}
.foot-cols a{text-decoration:none}
.foot-cols a:hover{text-decoration:underline;text-underline-offset:4px}
.foot-cols .addr img{height:30px;width:auto}
.foot-cols .addr p{margin-top:14px;font-size:15px;max-width:34ch}
.foot-last{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:56px;font-size:15px}

/* ---------- Bewegung ---------- */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vt-out .25s var(--ease) both}
::view-transition-new(root){animation:vt-in .45s var(--ease) both}
@keyframes vt-out{to{opacity:0;transform:translateY(-10px)}}
@keyframes vt-in{from{opacity:0;transform:translateY(18px)}}
.js [data-r]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--d,0) * 80ms)}
.js [data-r].in{opacity:1;transform:none}
.js [data-r].mask{opacity:1;transform:none;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}
.mask > .ln{display:block;transform:translateY(105%);transition:transform 1s var(--ease);transition-delay:calc(var(--d,0) * 80ms)}
.mask.in > .ln{transform:none}
.js .wipe{clip-path:inset(0 0 100% 0);transition:clip-path 1.2s var(--ease)}
.js .wipe.in{clip-path:inset(0 0 0 0)}
/* Pinselstrich aus dem Logo zieht sich unter die Überschrift */
.js .brush{clip-path:inset(0 100% 0 0);animation:paint 1.3s var(--ease) .5s forwards}
@keyframes paint{to{clip-path:inset(0 0 0 0)}}
.js .mock{animation:rise 1s var(--ease) .2s backwards}
@keyframes rise{from{opacity:0;transform:translateY(40px)}}

/* ---------- Tablet / Handy ---------- */
@media (max-width:1100px){
  .nav{gap:20px}
  .hero{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"head" "stage" "picker" "body";min-height:0}
  .stage,.picker{width:min(100%,760px)}
  .hero .lede{max-width:44ch}
}
@media (max-width:900px){
  .nav,.head-cta{display:none}
  .menu{display:block}
}
@media (max-width:820px){
  .site-head{height:64px}
  .logo img{height:30px}
  .hero{padding-top:32px}
  .idx-pic{display:none}
  .hero h1{font-size:clamp(3rem,14vw,4.5rem)}
  .sec-head,.idx,.refs-wrap,.duo,.offer-grid,.phead,.sv-hero,.seo-vis,.fan-wrap,.case,.faq,.contact,.draft,.draft-form-sec,.au-hero{grid-template-columns:1fr}
  .idx-pic{display:none}
  .idx-row{grid-template-columns:72px minmax(0,1fr) auto;padding:14px 0}
  .idx-row img{display:block;grid-row:1/3;width:72px;height:72px;object-fit:cover}
  .idx-row b{font-size:clamp(1.6rem,7.5vw,2.25rem)}
  .idx-row span{grid-column:2;font-size:15px}
  .idx-row i{grid-column:3}
  .idx-row:hover{transform:none}
  .idx-list:hover .idx-row:not(:hover){opacity:1}
  .refs-mini{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .refs-mini b{font-size:15px;margin-top:8px}
  .refs-mini span{display:none}
  .duo figure{max-width:280px}
  .quick{flex-direction:column}
  .quick input,.quick .btn{height:64px;width:100%;flex:none}
  .quick .btn{justify-content:center}
  .bento{grid-template-columns:1fr}
  .bento a:first-child{grid-row:auto}
  .bento a:first-child figure{min-height:0;aspect-ratio:16/10}
  .flow{flex-direction:column;height:auto}
  .flow-step{flex:none;min-height:0}
  .flow-more{max-height:none;opacity:1}
  .ex-list li{grid-template-columns:1fr auto;gap:8px 16px}
  .ex-list span{grid-column:1/3;grid-row:2}
  .ex-list em{grid-column:2;grid-row:1}
  .sv-hero h1{font-size:clamp(2.75rem,12vw,4rem)}
  .sv-pic .inset{left:auto;right:8px;width:38%}
  .points,.levers,.shoot,.month{grid-template-columns:1fr}
  .levers li,.shoot li,.week{min-height:0}
  .levers b,.shoot b{margin-top:16px}
  .devices{grid-template-columns:1fr}
  .phone{max-width:260px}
  .fan{height:340px}
  .fan{--gap:62%;height:300px}
  .chip{width:104px}
  .chip span{font-size:0}
  .chip b{font-size:13px}
  .case-flip .case-pic{order:0}
  .plans-head{position:static;width:auto;margin-bottom:32px}
  .plans-head h2{font-size:9vw}
  .plans{grid-template-columns:1fr;min-height:0}
  .plan{height:auto}
  .plan .amt{font-size:2.75rem}
  .calc-body{grid-template-columns:1fr;gap:24px}
  .pkgs{display:grid;grid-template-columns:repeat(3,1fr)}
  .pkgs button{height:64px;padding:0 12px}
  .add{grid-template-columns:1fr auto;gap:8px 16px}
  .add .n{grid-column:1/3;grid-row:2}
  .add .st{grid-column:2;grid-row:1}
  .calc-head .btn{width:100%;justify-content:center}
  .faq-side{position:static}
  .bio{grid-template-columns:1fr}
  .bio-name,.bio .txt,.values{grid-column:1}
  .values li{grid-template-columns:1fr;gap:6px}
  .two{grid-template-columns:1fr}
  .clock{margin:0 auto;width:min(80%,320px)}
  .cta-side{max-width:none}
  .cta-band .btn{width:100%;justify-content:center}
  .blocks{height:18svh;min-height:110px;gap:3px}
  .blocks span{font-size:9vw}
  .foot-cols{grid-template-columns:1fr 1fr}
  .foot-cols div,.foot-cols div.addr{grid-column:auto}
  .foot-cols div.addr{grid-column:1/3}
  .foot-last{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
  .js [data-r]{opacity:1;transform:none}
  .mask > .ln{transform:none}
  .js .wipe,.js .brush{clip-path:none!important}
  .js .plans:not(.in) .plan{transform:none}
}

.dd:not([open]) .dd-panel{display:none}

/* ---------- v5: Fotos als gerahmte Abzüge statt "hingeklatscht" ---------- */
.idx-pic .sticker{z-index:3}
.t-dark{--pfc:var(--ice)} .t-light,.t-ice,.t-surf{--pfc:var(--or)} .t-or{--pfc:var(--bg)}
.sv-pic > img:first-child,.seo-pics img,.pair img,.duo .pf{padding:clamp(8px,.9vw,12px);background:var(--ink);box-shadow:clamp(12px,1.6vw,22px) clamp(12px,1.6vw,22px) 0 var(--pfc);transform:rotate(-2deg);transition:transform .8s var(--ease),box-shadow .8s var(--ease)} /* taste-skill-ignore: flacher Farbblock als Rahmen */
.t-light .sv-pic > img:first-child,.t-light .pair img{background:var(--bg)}
.sv-pic:hover > img:first-child,.seo-pics:hover img:first-child,.pair img:hover{transform:rotate(0) translateY(-6px);box-shadow:8px 8px 0 var(--pfc)} /* taste-skill-ignore */
.sv-pic .inset{padding:8px;background:var(--bg);box-shadow:-14px 14px 0 var(--or);transform:rotate(5deg);transition:transform .8s var(--ease)} /* taste-skill-ignore */
.sv-pic:hover .inset{transform:rotate(-2deg) translate(-10px,-10px)}
.sv-pic{padding:0 22px 22px 0}
.seo-pics img:last-child{transform:rotate(4deg);box-shadow:-14px 14px 0 var(--bg)} /* taste-skill-ignore */
.pair{gap:28px;padding:0 22px 22px 0}
.pair img:nth-child(2){transform:rotate(3deg) translateY(28px)}
.pair img:nth-child(2):hover{transform:rotate(0) translateY(20px)}
.sv-pic::after{content:attr(data-tag);position:absolute;left:-12px;top:32px;background:var(--or);color:var(--bg);padding:9px 16px;font-size:14px;font-weight:500;transform:rotate(-4deg)}
.sv-pic:not([data-tag])::after{display:none}

/* Auf einen Blick: für wen, Preis, Ablauf, Ergebnis */
.glance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}
.glance div{background:var(--c);color:var(--t);padding:26px 24px 30px;display:flex;flex-direction:column;gap:12px;min-height:220px}
.glance dt{font-size:15px;font-weight:500}
.glance dd{margin:0;margin-top:auto;font-size:var(--s-lead);font-weight:900;letter-spacing:-.025em;line-height:1.15}

/* GEO: Beispiel einer KI-Antwort */
.geo-list li{font-weight:400}
.ai-card{background:var(--ink);color:var(--bg);padding:26px;max-width:600px;transform:rotate(1.5deg);box-shadow:20px 20px 0 var(--or)} /* taste-skill-ignore: Rahmen mit Farbblock */
.ai-q{margin-left:auto;max-width:78%;background:var(--bg);color:var(--ink);padding:14px 18px;border-radius:18px 18px 4px 18px;font-weight:500}
.ai-a{margin-top:16px;max-width:88%;background:var(--grey);padding:16px 18px;border-radius:18px 18px 18px 4px;line-height:1.5}
.ai-src{display:inline-block;margin-top:10px;font-size:13px;background:var(--ink);padding:3px 10px;border-radius:999px}
.ai-card .rank{display:inline-block;margin-top:18px;background:var(--or);color:var(--bg);padding:6px 12px;font-weight:500;font-size:14px}
.note{margin-top:48px;max-width:70ch;color:var(--soft)}

/* Lexikon */
.lex{display:grid;grid-template-columns:4fr 8fr;gap:clamp(24px,4vw,64px);align-items:start}
.lex h2{font-size:clamp(2.25rem,1rem + 2.8vw,3.75rem);position:sticky;top:110px}
.lex-list{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lex-list div{background:var(--surf);color:var(--ink);padding:22px 24px 26px}
.t-light .lex-list div{background:var(--grey);color:var(--bg)}
.t-ice .lex-list div{background:var(--bg);color:var(--ink)}
.lex-list dt{font-size:var(--s-lead);font-weight:900;letter-spacing:-.025em}
.lex-list dd{margin:8px 0 0}
.dd-panel a.dd-lex{grid-column:1/3;display:block;background:var(--surf2);padding:14px 16px;font-weight:500;font-size:15px}
@media (max-width:820px){
  .glance{grid-template-columns:1fr 1fr}
  .glance div{min-height:0}
  .lex,.lex-list{grid-template-columns:1fr}
  .lex h2{position:static}
  .ai-card{transform:none;box-shadow:10px 10px 0 var(--or)} /* taste-skill-ignore */
  .pair{grid-template-columns:1fr 1fr;gap:16px}
}
@media (max-width:480px){.glance{grid-template-columns:1fr}}

/* ---------- v6: "Was wir für Sie tun" kompakter ---------- */
.idx{grid-template-columns:8fr 4fr;align-items:center}
.idx-row{padding:14px 0}
.idx-row b{font-size:clamp(1.75rem,.8rem + 2.3vw,3.1rem)}
.idx-win{aspect-ratio:1/1}
.idx-pic{max-width:440px;justify-self:end;width:100%}
.pal .nm-s{display:none}

/* ---------- v6: Handy – vereinfacht, Wow gleich oben ---------- */
@media (max-width:820px){
  .hero{padding:20px var(--m) 48px;row-gap:14px}
  .hero h1{font-size:clamp(2.75rem,13vw,4rem)}
  .brush{width:72%;margin-top:8px}
  .stage{padding:6px 0 14px;width:100%}
  .laptop{display:none}
  .glow{inset:8% 14% 6%;opacity:.55}
  .phone-float{position:relative;right:auto;bottom:auto;width:min(60%,250px);margin:0 auto;transform:rotate(-3deg);padding:8px;border-radius:30px}
  .stage:hover .phone-float{transform:rotate(-3deg)}
  .phone-float .mock{border-radius:23px}
  .phone-float .m-nav b{font-size:max(12px,7.5cqw)}
  .phone-float .m-nav .m-btn{font-size:max(10px,5.5cqw)}
  .phone-float .m-h{font-size:max(16px,11cqw)}
  .phone-float > .mock .m-btn:last-child{font-size:max(11px,6cqw)}
  .picker{width:100%}
  .picker p{text-align:center;font-size:14px;margin-bottom:14px}
  .pal{gap:6px}
  .pal button{padding:4px 4px 7px;gap:5px;--tilt:0deg !important}
  .pal .sw{height:36px}
  .pal .nm{display:none}
  .pal .nm-s{display:block;font-size:13px;font-weight:900;text-align:center}
  .pal button[aria-checked="true"]{transform:translateY(-6px)}
  .hero .lede{font-size:18px;margin-top:10px}
  .hero-body .btns{flex-direction:column;margin-top:22px}
  .hero-body .btn{justify-content:center}
  .facts{display:none}
  /* ruhigere Rahmen auf kleinen Bildschirmen */
  .sv-pic > img:first-child,.seo-pics img,.pair img,.duo .pf,.pf{transform:none;box-shadow:10px 10px 0 var(--pfc)} /* taste-skill-ignore */
  .sv-pic .inset,.sv-pic::after{display:none}
  .sv-pic{padding:0 10px 10px 0}
  .pair img:nth-child(2){transform:none}
  .ai-card{box-shadow:10px 10px 0 var(--or)} /* taste-skill-ignore */
}

/* ---------- v6b: erster Bildschirm passt komplett (Desktop + Handy) ---------- */
.stage .m-photo{aspect-ratio:16/6.4}
.stage .m-card{margin-top:-11cqw;width:50%;padding:2.4cqw 3cqw 2.8cqw}
.stage .m-p{margin:1.2cqw 0 1.8cqw}
.stage .m-row{margin-top:2cqw}
.stage,.picker{width:min(100%,calc((100svh - 330px) * 1.2))}
@media (max-width:1100px){.stage,.picker{width:min(100%,640px)}}
@media (max-width:820px){
  .stage,.picker{width:100%}
  .phone-float{width:min(44%,180px)}
  .phone-float .m-photo{aspect-ratio:4/3}
  .phone-float .m-h{font-size:max(13px,10cqw)}
  .phone-float .m-nav b{font-size:max(10px,7cqw)}
}

/* ---------- v7: zwei Wege, Inklusivleistungen, Rundum-Paket ---------- */
.plans{min-height:720px}
.plan .rundum{font-size:15px;margin:-4px 0 10px;padding:6px 10px;background:rgba(12,12,10,.1);align-self:flex-start}
.plan .rundum b{font-weight:900}
.plan[style*="--t:var(--ink)"] .rundum{background:rgba(237,237,237,.1)}
.ways{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.way{background:var(--c);color:var(--t);padding:clamp(26px,3vw,40px);display:flex;flex-direction:column;gap:16px}
.way-tag{align-self:flex-start;background:var(--bg);color:var(--ink);padding:6px 12px;font-size:14px;font-weight:500}
.way h3{font-size:clamp(1.75rem,1rem + 1.6vw,2.75rem);letter-spacing:-.035em;line-height:1.02}
.way-for{font-weight:500;margin-top:auto}
.way .btn{align-self:flex-start}
.ways-photo{margin-top:28px;max-width:72ch}
.incl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.incl li{background:var(--surf);padding:24px 24px 28px;display:flex;flex-direction:column;gap:10px}
.incl li:nth-child(even){background:var(--surf2)}
.incl li::before{content:"";width:28px;height:6px;background:var(--or)}
.incl b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.025em;line-height:1.15}
.rd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rd{background:var(--bg);color:var(--ink);padding:28px 26px 30px;display:flex;flex-direction:column;gap:10px}
.rd:nth-child(2){background:var(--ink);color:var(--bg)}
.rd b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.025em}
.rd em{font-style:normal;font-size:clamp(2rem,1rem + 2vw,3rem);font-weight:900;letter-spacing:-.04em;margin-top:auto;font-variant-numeric:tabular-nums}
.rd-note{margin-top:24px;font-weight:500;max-width:70ch}
@media (max-width:820px){
  .ways,.incl,.rd-grid{grid-template-columns:1fr}
  .way .btn{align-self:stretch;justify-content:center}
}

/* ---------- v8: Sichtbarkeits-Bausteine ---------- */
.incl-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.rd-grid.sicht .rd span{font-size:16px}
.sicht-bundle{margin-top:8px;background:var(--or);color:var(--bg);padding:24px 26px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.sicht-bundle b{display:block;font-size:var(--s-lead);font-weight:900;letter-spacing:-.025em}
.sicht-bundle em{font-style:normal;font-size:clamp(2rem,1rem + 2vw,3rem);font-weight:900;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.sicht-bundle s{font-size:.45em;font-weight:500;letter-spacing:0;opacity:.75;margin-left:8px}
@media (max-width:820px){.incl-4{grid-template-columns:1fr}}

/* Zwei Wege: Umschalter auf der Preisseite (Weg 1 = neu gemacht, Weg 2 = Wunsch-Website) */
html:not([data-way="2"]) .v2,html[data-way="2"] .v1{display:none}
.plans-head{position:static;width:auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:clamp(32px,4vw,56px)}
.plans-head p{max-width:46ch}
.plans{min-height:0}
.way-box{display:flex;flex-direction:column;gap:18px}
.way-box > p{margin:0;max-width:62ch}
.way-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:rgba(12,12,10,.08);align-self:flex-start;width:min(100%,560px)}
.way-switch button{border:0;background:transparent;color:inherit;padding:12px 16px;text-align:left;cursor:pointer;font:inherit;font-size:16px;line-height:1.25;transition:background .2s,color .2s}
.way-switch button b{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;opacity:.7}
.way-switch button:hover{background:rgba(12,12,10,.06)}
.way-switch button[aria-checked="true"]{background:var(--bg);color:var(--ink)}
.way-switch button[aria-checked="true"] b{color:var(--or);opacity:1}
.plan .dur{font-size:15px;font-weight:500;margin:0 0 8px;opacity:.85}
.calc-way{margin:28px 0 28px}
.calc-way .way-switch{background:var(--surf)}
.calc-way .way-switch button:hover{background:var(--surf2)}
.calc-way .way-switch button[aria-checked="true"]{background:var(--ice);color:var(--bg)}
.calc-way .way-switch button[aria-checked="true"] b{color:var(--bg)}
.way .ticks{margin:0}
.way .ticks li::before{background:var(--bg)}
@media (max-width:900px){
  .plans-head{grid-template-columns:1fr;align-items:start}
  .way-switch{width:100%}
  .way-switch button{padding:10px 12px;font-size:15px}
}
.plan{height:auto;min-height:calc(var(--h) + 40px)}


/* ===== Neue Startseite (Werkpixel-Website-Neu, 10.11.2026) ===== */
/* Vorschau: neue, aufgeräumte Startseite – nur für die Varianten vorschau-start-*.html */
.vs-hero{padding:clamp(56px,7vw,104px) var(--m) clamp(40px,5vw,72px);text-align:center;position:relative;overflow:hidden}
.vs-hero h1{font-size:clamp(3rem,1rem + 6vw,7rem);line-height:.95;letter-spacing:-.05em;max-width:14ch;margin:0 auto}
.vs-hero .lede{font-size:var(--s-lead);line-height:1.4;max-width:46ch;margin:22px auto 0}
.vs-hero .btns{justify-content:center;margin-top:30px}
.vs-kicker{display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:500;padding:7px 14px;margin-bottom:22px;background:rgba(241,84,25,.12);color:var(--or)}
.vs-kicker i{width:8px;height:8px;background:var(--or);border-radius:50%} /* taste-skill-ignore: Punkt */
.t-light .vs-kicker{background:rgba(241,84,25,.1)}

/* Geräte */
.vs-devices{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:0;margin:clamp(40px,5vw,72px) auto 0;max-width:1180px}
.dv-laptop{position:relative;width:min(66%,760px);z-index:2}
.dv-laptop .scr{background:#1b1b19;padding:clamp(6px,.8vw,12px);border-radius:14px 14px 0 0;box-shadow:0 40px 80px -30px rgba(0,0,0,.55)} /* taste-skill-ignore: Gerät */
.dv-laptop .scr img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:4px}
.dv-laptop .base{height:clamp(10px,1.2vw,16px);background:linear-gradient(#d7d7d3,#a9a9a4);margin:0 -7%;border-radius:0 0 18px 18px} /* taste-skill-ignore: Gerät */
.dv-phone{position:relative;width:min(19%,210px);background:#1b1b19;padding:clamp(5px,.6vw,8px);border-radius:clamp(18px,2.4vw,30px);box-shadow:0 30px 60px -20px rgba(0,0,0,.6);z-index:3} /* taste-skill-ignore: Gerät */
.dv-phone img{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;object-position:top;border-radius:clamp(13px,1.9vw,23px)}
.vs-devices .dv-phone:first-child{margin-right:-6%;transform:rotate(-5deg) translateY(-6%)}
.vs-devices .dv-phone:last-child{margin-left:-6%;transform:rotate(5deg) translateY(-10%)}
.dv-tag{position:absolute;z-index:4;background:var(--bg);color:var(--ink);font-size:13px;font-weight:500;padding:6px 11px;white-space:nowrap}
.t-dark .dv-tag{background:var(--ink);color:var(--bg)}
.dv-tag.or{background:var(--or);color:var(--bg)}
.dv-tag.ice{background:var(--ice);color:var(--bg)}

/* Entwurf-Formular in Schritten */
.vs-form{background:var(--surf);color:var(--ink);padding:clamp(22px,2.6vw,36px);max-width:620px;text-align:left;box-shadow:18px 18px 0 var(--or)}
.t-light .vs-form{background:#fff;color:var(--bg);box-shadow:18px 18px 0 var(--or)}
.vs-form .prog{display:flex;gap:6px;margin-bottom:18px}
.vs-form .prog i{flex:1;height:4px;background:currentColor;opacity:.15}
.vs-form .prog i.on{opacity:1;background:var(--or)}
.vs-form h3{font-size:clamp(1.4rem,1rem + 1vw,1.9rem);letter-spacing:-.03em;line-height:1.1}
.vs-form .sub{font-size:15px;opacity:.7;margin-top:6px}
.vs-form .chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
.vs-form .chips label{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid currentColor;border-color:rgba(128,128,128,.35);cursor:pointer;font-size:15px;transition:border-color .2s,background .2s}
.vs-form .chips input{accent-color:var(--or);width:18px;height:18px}
.vs-form .chips label:has(input:checked){border-color:var(--or);background:rgba(241,84,25,.08)}
.vs-form .fld{display:grid;gap:10px;margin-top:18px}
.vs-form input[type=text],.vs-form input[type=email],.vs-form input[type=url]{width:100%;padding:14px;border:1px solid rgba(128,128,128,.4);background:transparent;color:inherit;font:inherit}
.vs-form .row{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:12px}
.vs-form .back{background:none;border:0;color:inherit;opacity:.6;font:inherit;cursor:pointer}
.vs-form .step{display:none}
.vs-form .step.on{display:block;animation:vsin .35s var(--ease)}
@keyframes vsin{from{opacity:0;transform:translateY(8px)}}
.vs-form-sec{display:grid;grid-template-columns:5fr 6fr;gap:clamp(32px,5vw,80px);align-items:center}
.vs-form-sec h2{font-size:clamp(2.4rem,1rem + 3.6vw,4.5rem);line-height:.95}
.vs-form-sec p.big{margin-top:18px;font-size:var(--s-lead);max-width:30ch}

/* Zwei Versprechen */
.vs-prom{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.vs-prom > div{background:var(--bg);color:var(--ink);padding:clamp(28px,3.4vw,52px);min-height:clamp(260px,26vw,360px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
.vs-prom > div:nth-child(2){background:var(--or);color:var(--bg)}
.vs-prom b.n{font-size:clamp(5rem,2rem + 9vw,11rem);font-weight:900;letter-spacing:-.06em;line-height:.8}
.vs-prom b.n small{font-size:.4em;letter-spacing:-.03em}
.vs-prom h3{font-size:var(--s-lead);letter-spacing:-.02em;margin-top:18px}
.vs-prom p{margin-top:6px;max-width:34ch;opacity:.85}

/* Schritte */
.vs-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.vs-steps li{background:var(--c,var(--surf));color:var(--t,var(--ink));padding:24px 22px 28px;min-height:220px;display:flex;flex-direction:column}
.vs-steps .no{font-size:14px;font-weight:500;opacity:.7}
.vs-steps b{margin-top:auto;font-size:clamp(1.4rem,1rem + 1vw,2rem);font-weight:900;letter-spacing:-.03em;line-height:1}
.vs-steps span{margin-top:8px;font-size:15px;opacity:.85}

/* Projekte */
.vs-proj{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,36px)}
.vs-proj a{text-decoration:none;color:inherit;display:block}
.vs-proj .dv-laptop{width:100%}
.vs-proj .dv-laptop .base{margin:0 -5%}
.vs-proj h3{margin-top:28px;font-size:var(--s-lead);letter-spacing:-.02em}
.vs-proj p{font-size:15px;opacity:.75;margin-top:4px}
.vs-proj a:hover .dv-laptop{transform:translateY(-6px)}
.vs-proj .dv-laptop{transition:transform .5s var(--ease)}

/* Leistungen kompakt */
.vs-svc{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.vs-svc a{text-decoration:none;color:inherit;background:var(--c,var(--surf));color:var(--t,var(--ink));display:flex;flex-direction:column;overflow:hidden}
.vs-svc img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .8s var(--ease)}
.vs-svc a:hover img{transform:scale(1.05)}
.vs-svc .tx{padding:16px 18px 20px}
.vs-svc b{font-size:1.2rem;letter-spacing:-.02em;display:block}
.vs-svc span{font-size:14px;opacity:.8}

/* Abschluss */
.vs-end{padding:clamp(80px,10vw,160px) var(--m);text-align:center}
.vs-end h2{font-size:clamp(3rem,1rem + 6.4vw,8rem);line-height:.9;letter-spacing:-.05em}
.vs-end .btns{justify-content:center;margin-top:34px}

/* Variante 3: Formular im Kopf */
.vs-split{display:grid;grid-template-columns:6fr 6fr;gap:clamp(32px,5vw,72px);align-items:center;text-align:left;padding:clamp(48px,6vw,96px) var(--m)}
.vs-split h1{margin:0;max-width:12ch;font-size:clamp(3rem,1rem + 5vw,6rem)}
.vs-split .lede{margin:18px 0 0}
.vs-split .vs-form{margin-top:30px}
.vs-split .vs-devices{margin:0;flex-direction:column;align-items:stretch}
.vs-stack{position:relative;padding:0 6% 8% 0}
.vs-stack::before{content:"";position:absolute;inset:8% 0 0 12%;background:var(--ice)}
.vs-stack .dv-laptop{width:100%}
.vs-stack .dv-phone{position:absolute;right:-2%;bottom:0;width:28%;transform:rotate(4deg)}

@media (max-width:900px){
  .vs-hero{text-align:left}
  .vs-hero h1{margin:0}
  .vs-hero .lede{margin-left:0}
  .vs-hero .btns{justify-content:flex-start}
  .vs-devices{margin-top:36px}
  .dv-laptop{width:78%}
  .dv-phone{width:30%}
  .vs-devices .dv-phone:first-child{display:none}
  .vs-devices .dv-phone:last-child{margin-left:-14%}
  .vs-form-sec,.vs-split,.vs-prom{grid-template-columns:1fr}
  .vs-form .chips{grid-template-columns:1fr}
  .vs-steps{grid-template-columns:1fr 1fr}
  .vs-steps li{min-height:160px}
  .vs-proj{grid-template-columns:1fr}
  .vs-svc{grid-template-columns:1fr 1fr}
  .vs-svc a:first-child{grid-column:1/-1}
  .vs-svc a:first-child img{aspect-ratio:16/10}
  .vs-end{text-align:left}
  .vs-end .btns{justify-content:flex-start}
  .vs-stack .dv-phone{width:34%}
}
@media (max-width:900px){.vs-form{box-shadow:10px 10px 0 var(--or);margin-right:10px}.vs-split,.vs-hero,.vs-form-sec{overflow-x:clip}}

/* Formular-Schritte: fieldset ohne Rahmen */
.vs-form fieldset{border:0;margin:0;padding:0;min-width:0}
.vs-form legend{padding:0}
.vs-form .hp{position:absolute;left:-9999px}

/* Website-Fächer mit Spiegelung */
.fan{display:flex;justify-content:center;align-items:center;perspective:1800px;margin:clamp(28px,4vw,56px) auto clamp(60px,7vw,110px);max-width:1200px;height:clamp(220px,30vw,430px)}
.fan figure{margin:0 -4.5%;flex:none;transform-style:preserve-3d;-webkit-box-reflect:below 6px linear-gradient(transparent 62%,rgba(255,255,255,.22));transition:transform .9s var(--ease)}
.fan img{display:block;width:100%;height:auto;box-shadow:0 30px 60px -24px rgba(0,0,0,.7)} /* taste-skill-ignore: Fächer */
.fan .f-c{width:40%;z-index:5;transform:translateZ(60px)}
.fan .f-s1,.fan .f-s2{width:30%;z-index:4}
.fan .f-s1{transform:rotateY(38deg) scale(.92)}
.fan .f-s2{transform:rotateY(-38deg) scale(.92)}
.fan .f-o1,.fan .f-o2{width:11%;z-index:3}
.fan .f-o1{transform:rotateY(48deg) scale(.86)}
.fan .f-o2{transform:rotateY(-48deg) scale(.86)}
.fan .f-o1 img,.fan .f-o2 img{box-shadow:none}
.js .fan:not(.in) .f-s1{transform:rotateY(0) translateX(40%) scale(.8)}
.js .fan:not(.in) .f-s2{transform:rotateY(0) translateX(-40%) scale(.8)}
.js .fan:not(.in) .f-o1{transform:translateX(120%) scale(.7)}
.js .fan:not(.in) .f-o2{transform:translateX(-120%) scale(.7)}

/* Projekte: Geräte-Bilder mit Text */
.mk-list{display:grid;gap:clamp(48px,6vw,96px)}
.mk{display:grid;grid-template-columns:7fr 4fr;gap:clamp(24px,4vw,64px);align-items:center;text-decoration:none;color:inherit}
.mk.flip{grid-template-columns:4fr 7fr}
.mk.flip img{order:2}
.mk img{width:100%;height:auto;transition:transform .8s var(--ease)}
.mk:hover img{transform:translateY(-8px)}
.mk-tag{display:inline-block;background:var(--or);color:var(--bg);font-size:13px;font-weight:500;padding:5px 10px}
.mk h3{margin-top:16px;font-size:clamp(2rem,1rem + 2.4vw,3.4rem);letter-spacing:-.045em;line-height:1}
.mk p{margin-top:12px;max-width:34ch;color:var(--soft)}
.mk .lnk{display:inline-block;margin-top:18px}

/* Leistungs-Kacheln: freigestellte Bilder auf Farbfläche */
.vs-svc img.cut{object-fit:contain;padding:12% 8% 4%;background:transparent}
@media (max-width:900px){
  .fan{height:auto;margin-bottom:60px}
  .fan .f-o1,.fan .f-o2{display:none}
  .fan .f-c{width:56%}
  .fan .f-s1,.fan .f-s2{width:36%;margin:0 -10%}
  .mk,.mk.flip{grid-template-columns:1fr}
  .mk.flip img{order:0}
}

/* Hero: echtes Laptop + Handy (Vorlage) um die Café-Vorschau – Farbwähler bleibt */
.stage .laptop{transform:none}
.stage:hover .laptop{transform:translateY(-4px)}
.stage .laptop .frame{position:relative;z-index:2;display:block;width:100%;height:auto;pointer-events:none;filter:drop-shadow(0 34px 40px rgba(0,0,0,.55))} /* taste-skill-ignore: Gerät */
.stage .laptop .lid{position:absolute;z-index:1;left:11.59%;top:7.96%;width:76.7%;height:70.19%;padding:0;background:var(--m-bg,#111);border-radius:0;box-shadow:none;overflow:hidden}
.stage .laptop .lid .mock{height:100%;border-radius:0;background:var(--m-bg)}
.stage .laptop .lid .mock-page{height:100%}
.stage .laptop .base{display:none}
.stage .phone-float{background:none;padding:0;border-radius:0;box-shadow:none;width:22%;right:-2%;bottom:-2%;transform:none}
.stage:hover .phone-float{transform:translateY(-8px)}
.stage .phone-float .frame{position:relative;z-index:2;display:block;width:100%;height:auto;pointer-events:none;filter:drop-shadow(0 24px 30px rgba(0,0,0,.6))} /* taste-skill-ignore: Gerät */
.stage .phone-float > .mock{position:absolute;z-index:1;left:16.18%;top:3.45%;width:67.3%;height:88.4%;border-radius:13%/6%;overflow:hidden;background:var(--m-bg)}
.stage .phone-float .mock-page{height:100%;padding-top:16cqw}
@media (max-width:820px){
  .stage .phone-float{position:relative;right:auto;bottom:auto;width:min(58%,240px);margin:0 auto;padding:0;border-radius:0;background:none;transform:none}
  .stage:hover .phone-float{transform:none}
  .stage .phone-float > .mock{border-radius:13%/6%}
}
.stage .laptop .lid .m-photo{aspect-ratio:16/5.4}
.stage .laptop .lid .m-card{bottom:auto}
.stage{width:min(100%,calc((100svh - 300px) * 2))}
.stage .laptop .lid .m-p{display:none}
.stage{width:min(100%,calc((100svh - 330px) * 1.85))}
@media (min-width:821px){.stage{padding-bottom:6px;padding-top:0}}

/* Zusatzleistungen auswählen + anklickbare Liste auf der Startseite */
.ex-pick{display:grid;gap:18px}
.ex-pick .adds{display:grid;grid-template-columns:1fr;gap:6px}
.ex-list li:has(.ex-link){padding:0;display:block}
.ex-list .ex-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto auto;gap:24px;align-items:center;padding:22px 24px;color:inherit;text-decoration:none;transition:background .2s}
.ex-list .ex-link:hover{background:var(--surf2)}
@media (max-width:820px){.ex-list .ex-link{grid-template-columns:1fr auto;gap:8px 16px}.ex-list .ex-link span{grid-column:1/3;grid-row:2}.ex-list .ex-link em{grid-column:2;grid-row:1}.ex-list .ex-link .ex-go{grid-column:1/3;grid-row:3}}
.ex-go{font-style:normal;font-size:14px;color:var(--ice);white-space:nowrap}

/* Unterseiten: Geräte-Bilder statt gerahmter Fotos (Werkpixel-Website-Neu) */
.sv-dev{margin:0;position:relative}
.sv-dev img{width:100%;height:auto;display:block;filter:drop-shadow(0 30px 40px rgba(0,0,0,.45))} /* taste-skill-ignore: Gerät */
.sv-dev::after{content:attr(data-tag);position:absolute;left:4%;top:4%;background:var(--or);color:var(--bg);padding:9px 16px;font-size:14px;font-weight:500;transform:rotate(-4deg)}
.sv-dev.cam{background:var(--or);padding:8% 6% 6%}
.sv-dev.cam::after{background:var(--bg);color:var(--ink)}
.t-light .sv-dev img{filter:drop-shadow(0 24px 30px rgba(0,0,0,.25))}
.case-pic.dev{overflow:visible;max-width:none;padding:0;background:none;box-shadow:none;transform:none;clip-path:none}
.case-pic.dev img{aspect-ratio:auto;height:auto;object-fit:contain;filter:drop-shadow(0 30px 40px rgba(0,0,0,.35))}
.refs-mini img[src*="screen-"]{aspect-ratio:16/10;object-fit:cover;object-position:top}

/* ===================================================================
   v9 (10.11.2026): Startseite schlicht nach Web4Work-Aufbau
   Hero mit selbst gebautem Laptop + Handy (keine Fremdbilder),
   Café-Beispiel in 5 Farbwelten (P30, P19, P31, P13, P16), Glasleiste.
   =================================================================== */
@property --gx{syntax:'<color>';inherits:true;initial-value:#F05A28}
@property --hm-bg{syntax:'<color>';inherits:true;initial-value:#E9DCC9}
@property --hm-ink{syntax:'<color>';inherits:true;initial-value:#4A2E24}
@property --hm-deep{syntax:'<color>';inherits:true;initial-value:#4A2E24}
@property --hm-acc{syntax:'<color>';inherits:true;initial-value:#F05A28}
@property --hm-acc-ink{syntax:'<color>';inherits:true;initial-value:#2A1A14}

/* Hero */
.hx{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(20px,4vw,64px);align-items:center;min-height:calc(100svh - 76px);padding:clamp(20px,3vw,40px) var(--m) clamp(24px,3vw,36px);position:relative;isolation:isolate;overflow:hidden}
.hx::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 70% at 72% 45%,color-mix(in oklab,var(--gx) 30%,transparent),transparent 70%),radial-gradient(40% 50% at 10% 100%,#77E7FE14,transparent 70%);transition:--gx 1.2s var(--ease)}
.hx::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.45;pointer-events:none;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(70% 60% at 70% 45%,#000 0,transparent 75%);-webkit-mask-image:radial-gradient(70% 60% at 70% 45%,#000 0,transparent 75%)}
.hx-kick{font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.hx h1{font-size:clamp(2.5rem,1.3rem + 4.4vw,5.4rem);line-height:.98;letter-spacing:-.035em;margin-top:16px}
.hx h1 .ser{padding-right:.06em}
.hx-lede{font-size:clamp(1.05rem,1rem + .35vw,1.3rem);line-height:1.5;color:#CFCFCB;max-width:30em;margin-top:22px}
.hx .btns{margin-top:28px}
.hx-stage{position:relative;perspective:1400px;padding:4% 9% 10% 0}
.hx-tilt{transform-style:preserve-3d;transform:rotateX(var(--rx,4deg)) rotateY(var(--ry,-10deg));transition:transform .7s var(--ease)}
.js .hx-stage{animation:hxin 1s var(--ease) .25s backwards}
@keyframes hxin{from{opacity:0;transform:translateY(30px)}}
.hx-lap{position:relative;filter:drop-shadow(0 40px 50px #0009)}
.hx-lid{position:relative;background:linear-gradient(#2A2A28,#151513);border-radius:16px 16px 4px 4px;padding:1.6% 1.6% 2.4%;box-shadow:inset 0 0 0 1px #3A3A37}
.hx-lid::before{content:"";position:absolute;top:.75%;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#0A0A0A;box-shadow:inset 0 0 0 1px #333}
.hx-base{height:clamp(10px,1.6vw,18px);margin:0 -7%;background:linear-gradient(#D9D9D6,#9C9C98 70%,#6E6E6B);border-radius:2px 2px 14px 14px;position:relative}
.hx-base::before{content:"";position:absolute;top:0;left:50%;width:14%;height:42%;transform:translateX(-50%);background:#8E8E8A;border-radius:0 0 8px 8px}
.hx-scr{aspect-ratio:16/10;border-radius:6px;overflow:hidden;position:relative;background:var(--hm-bg)}
.hx-ph{position:absolute;right:0;bottom:2%;width:27%;z-index:2;transform:translateZ(60px);filter:drop-shadow(0 30px 40px #000a)}
.hx-body{position:relative;background:linear-gradient(145deg,#3A3A37,#141412);border-radius:clamp(18px,3.2vw,38px);padding:5%;box-shadow:inset 0 0 0 1.5px #4A4A46}
.hx-ph .hx-scr{aspect-ratio:9/19;border-radius:clamp(13px,2.5vw,30px)}
.hx-island{position:absolute;top:2.2%;left:50%;width:30%;height:2.6%;transform:translateX(-50%);background:#000;border-radius:99px;z-index:9}
.hx-swipe{position:absolute;inset:0;z-index:8;background:var(--wc,#F05A28);clip-path:inset(0 100% 0 0);pointer-events:none}
.hx-swipe.go{animation:hxswipe .75s cubic-bezier(.7,0,.2,1)}
@keyframes hxswipe{0%{clip-path:inset(0 100% 0 0)}45%,55%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 0 0 100%)}}

/* Café Morgenrot (Beispielseite in den Geräten) */
.hx-mock{position:absolute;inset:0;background:var(--hm-bg);color:var(--hm-ink);container-type:inline-size;font-family:"Epilogue",sans-serif;overflow:hidden;line-height:1.2;
  --hm-soft:color-mix(in oklab,var(--hm-ink) 66%,var(--hm-bg));
  transition:--hm-bg .7s,--hm-ink .7s,--hm-deep .7s,--hm-acc .7s,--hm-acc-ink .7s}
.hm-photo{position:absolute;inset:0 0 0 46%;background:url(img/cafe.webp) center/cover}
.hm-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,color-mix(in oklab,var(--hm-deep) 88%,transparent) 0,color-mix(in oklab,var(--hm-deep) 25%,transparent) 45%,transparent 70%),linear-gradient(to left,transparent 70%,color-mix(in oklab,var(--hm-deep) 35%,transparent))}
.hm-nav{position:absolute;top:0;left:0;right:0;z-index:3;display:flex;align-items:center;gap:2.4cqw;padding:2.6cqw 3cqw;font-size:1.55cqw;font-weight:600}
.hm-logo{font-family:"Fraunces",serif;font-style:italic;font-weight:500;font-size:2.6cqw;letter-spacing:-.03em;color:var(--hm-ink);margin-right:auto}
.hm-glass{display:flex;gap:2.4cqw;padding:1cqw 2.2cqw;border-radius:99px;color:#fff;background:#ffffff26;backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px #ffffff40}
.hm-btn{background:var(--hm-acc);color:var(--hm-acc-ink);padding:1.2cqw 2.2cqw;border-radius:99px;font-weight:800;white-space:nowrap}
.hm-open{position:absolute;z-index:3;left:49cqw;top:9.4cqw;display:flex;align-items:center;gap:.9cqw;font-size:1.35cqw;font-weight:700;color:#fff;padding:.8cqw 1.6cqw;border-radius:99px;background:#0000004d;backdrop-filter:blur(6px)}
.hm-open::before{content:"";width:.9cqw;height:.9cqw;border-radius:50%;background:#5BE38B;box-shadow:0 0 0 .5cqw #5BE38B40}
.hm-side{position:absolute;inset:0 54% 0 0;padding:11cqw 4cqw 3cqw;display:flex;flex-direction:column}
.hm-lab{font-size:1.3cqw;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--hm-soft)}
.hm-h{font-size:5.4cqw;line-height:.98;font-weight:800;letter-spacing:-.045em;margin:1.6cqw 0 1.8cqw}
.hm-h i{font-family:"Fraunces",serif;font-weight:400;font-style:italic;letter-spacing:-.02em;color:var(--hm-acc)}
.hm-p{font-size:1.6cqw;line-height:1.55;color:var(--hm-soft);max-width:32ch}
.hm-cta{display:flex;align-items:center;gap:2.2cqw;margin-top:2.6cqw;font-size:1.6cqw;font-weight:800}
.hm-cta span:last-child{border-bottom:1px solid currentColor;padding-bottom:.2cqw}
.hm-big{position:absolute;z-index:2;left:3.5cqw;bottom:-3cqw;font-family:"Fraunces",serif;font-style:italic;font-weight:400;font-size:16cqw;line-height:1;letter-spacing:-.05em;color:var(--hm-acc);white-space:nowrap;pointer-events:none}
.hx-ph .hm-photo{inset:0 0 46% 0;border-radius:0 0 7cqw 7cqw}
.hx-ph .hm-photo::after{background:linear-gradient(to top,color-mix(in oklab,var(--hm-deep) 80%,transparent),transparent 60%)}
.hx-ph .hm-nav{padding:13cqw 5cqw 3cqw;font-size:4cqw}
.hx-ph .hm-logo{font-size:7cqw;color:#fff}
.hm-burger{width:9cqw;height:9cqw;border-radius:50%;background:#ffffff26;backdrop-filter:blur(8px);box-shadow:inset 0 0 0 1px #ffffff40;display:grid;place-content:center;gap:1.4cqw}
.hm-burger i{display:block;width:3.6cqw;height:.5cqw;background:#fff;border-radius:2px}
.hx-ph .hm-open{top:26cqw;left:5cqw;font-size:3.4cqw;padding:1.6cqw 3.2cqw;gap:2cqw}
.hx-ph .hm-open::before{width:2cqw;height:2cqw}
.hx-ph .hm-big{font-size:30cqw;left:3cqw;bottom:auto;top:calc(54% - 23cqw)}
.hx-ph .hm-side{inset:54% 0 0 0;padding:9cqw 6cqw 6cqw}
.hx-ph .hm-lab{font-size:3cqw}
.hx-ph .hm-h{font-size:10.5cqw;margin:3cqw 0}
.hx-ph .hm-p{font-size:4cqw}
.hx-ph .hm-cta{position:absolute;left:5cqw;right:5cqw;bottom:5cqw;margin:0;justify-content:center;font-size:4.2cqw;padding:3.4cqw;border-radius:99px;background:var(--hm-acc);color:var(--hm-acc-ink)}
.hx-ph .hm-cta span:last-child{display:none}
.hx-ph .hm-cta .hm-btn{padding:0;background:none}

/* Farbwahl: Glasleiste, jeder Tropfen zeigt die drei Farben der Palette */
.hx-pick{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}
.hx-lbl{font-size:.9rem;color:var(--soft)}
.hx-lbl b{color:var(--ink)}
.hx-glass{display:flex;gap:6px;padding:6px;border-radius:99px;background:#ffffff0f;border:1px solid #ffffff22;border-top-color:#ffffff40;backdrop-filter:blur(18px) saturate(160%)}
.hx-glass button{display:flex;align-items:center;border:0;cursor:pointer;border-radius:99px;padding:5px;background:transparent;color:var(--ink);font:800 .85rem/1 "Epilogue",sans-serif;transition:background .35s var(--ease),padding .35s var(--ease)}
.hx-glass .dot{width:30px;height:30px;border-radius:50%;flex:none;background:conic-gradient(from -30deg,var(--c1) 0 45%,var(--c2) 0 78%,var(--c3) 0);box-shadow:inset 0 0 0 2px #ffffff30;transition:transform .45s var(--ease)}
.hx-glass .nm{max-width:0;overflow:hidden;white-space:nowrap;transition:max-width .45s var(--ease),margin .45s var(--ease)}
.hx-glass button:hover .dot{transform:scale(1.1)}
.hx-glass button:active .dot{transform:scale(.92);transition-duration:.1s}
.hx-glass button[aria-checked="true"]{background:#ffffff1c;padding:5px 16px 5px 5px}
.hx-glass button[aria-checked="true"] .nm{max-width:14em;margin-left:10px}
.hx-glass button[aria-checked="true"] .dot{transform:rotate(120deg)}
.hx-glass button:focus-visible{outline:3px solid var(--ice);outline-offset:2px}

/* Im Preis enthalten */
.nx-inc{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.nx-inc li{background:var(--surf);padding:clamp(22px,2.4vw,32px);display:flex;flex-direction:column;gap:8px}
.nx-inc b{display:flex;align-items:center;gap:12px;font-size:1.15rem;font-weight:800;letter-spacing:-.01em}
.nx-inc b::before{content:"";width:12px;height:12px;background:var(--ice);flex:none}
.nx-inc span{color:var(--soft)}
.nx-note{margin-top:22px;color:var(--soft)}
.nx-note .lnk{color:var(--ink)}

/* Zwei Versprechen */
.nx-prom{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px)}
.nx-pc{background:var(--bg);color:var(--ink);padding:clamp(26px,3vw,44px);display:flex;flex-direction:column;gap:10px;transition:transform .4s var(--ease)}
.nx-pc:hover{transform:translateY(-4px)}
.nx-tag{font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--soft)}
.nx-num{font-size:clamp(4.5rem,3rem + 5vw,8rem);font-weight:900;line-height:.9;letter-spacing:-.06em;color:var(--or);margin:6px 0 8px}
.nx-num small{font-size:.38em;margin-left:.08em;color:var(--ink);letter-spacing:-.02em}
.nx-pc h3{font-size:clamp(1.3rem,1.1rem + .6vw,1.7rem);letter-spacing:-.025em;line-height:1.1}
.nx-pc p{color:var(--soft);max-width:40ch}

/* Projekte: Bildschirmfoto im schlichten Fenster */
.nx-work{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.nx-card{display:flex;flex-direction:column;gap:18px;text-decoration:none}
.nx-win{position:relative;display:block;background:var(--surf2);border-radius:12px;padding:26px 0 0;overflow:hidden;box-shadow:0 0 0 1px var(--line);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.nx-win > i{position:absolute;top:10px;width:8px;height:8px;border-radius:50%;background:var(--line)}
.nx-win > i:nth-child(1){left:12px}
.nx-win > i:nth-child(2){left:26px}
.nx-win > i:nth-child(3){left:40px}
.nx-win img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .8s var(--ease)}
.nx-card:hover .nx-win{transform:translateY(-6px);box-shadow:0 0 0 1px var(--or),0 24px 50px -20px #000}
.nx-card:hover .nx-win img{transform:scale(1.04)}
.nx-meta{display:flex;flex-direction:column;gap:4px}
.nx-meta b{font-size:1.4rem;font-weight:900;letter-spacing:-.03em}
.nx-meta > span:last-child{color:var(--soft)}

/* Wer baut Ihre Website: Wörter färben sich beim Scrollen */
.nx-say{padding:var(--sec) var(--m) clamp(56px,7vw,100px)}
.nx-say-lab{display:flex;align-items:center;gap:14px;font-size:.78rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--soft);margin-bottom:clamp(26px,4vw,48px)}
.nx-say-lab::before{content:"";width:48px;height:2px;background:var(--or)}
.nx-say-txt{font-size:clamp(2.1rem,.9rem + 4.4vw,5.6rem);line-height:1.02;letter-spacing:-.045em;font-weight:800;max-width:24ch}
.js .nx-say-txt .w{color:#2E2E2B;transition:color .4s var(--ease)}
.js .nx-say-txt .w.on{color:var(--ink)}
.nx-say-txt .w.or{font-family:"Fraunces",serif;font-style:italic;font-weight:400;letter-spacing:-.03em;color:var(--or)}
.js .nx-say-txt .w.or{color:#2E2E2B}
.js .nx-say-txt .w.or.on{color:var(--or)}
.nx-say-txt .pic{display:inline-block;vertical-align:middle;height:.78em;aspect-ratio:1.9;border-radius:99px;margin:0 .12em;background:center 30%/cover}
.js .nx-say-txt .pic{opacity:.15;transform:scale(.7) rotate(-6deg);transition:opacity .5s var(--ease),transform .6s var(--ease)}
.js .nx-say-txt .pic.on{opacity:1;transform:none}

/* Häufige Fragen: dunkel statt Beige */
.faq-list{gap:8px}
.faq-list details,.faq-list details:nth-child(even){background:var(--surf2);color:var(--ink);border-left:3px solid transparent;transition:border-color .3s var(--ease),background .3s}
.faq-list details[open]{border-left-color:var(--or);background:#272724}
.faq-list summary:hover{color:var(--ice)}
.faq-list summary i{background:var(--or)}
.faq-list summary i::before,.faq-list summary i::after{background:var(--bg)}
.faq-list details p{color:#CFCFCB}
.faq-list details p a{color:var(--ice)}

/* Preise: sechs Inklusivleistungen */
.incl-6{grid-template-columns:repeat(3,1fr)}

@media (max-width:900px){
  .nx-inc,.incl-6{grid-template-columns:1fr 1fr}
  .nx-work{grid-template-columns:1fr}
  .nx-prom{grid-template-columns:1fr}
}
@media (max-width:820px){
  .hx{grid-template-columns:1fr;min-height:auto;padding-top:16px;padding-bottom:20px;gap:12px}
  .hx h1{font-size:clamp(2rem,8.6vw,2.6rem);margin-top:10px}
  .hx-lede{font-size:.98rem;margin-top:12px}
  .hx .btns{margin-top:16px}
  .hx .btn{padding:15px 20px 13px}
  .hx-stage{padding:0}
  .hx-lap{display:none}
  .hx-ph{position:relative;width:min(34%,140px);margin:0 auto;transform:none}
  .hx-tilt{--rx:0deg;--ry:0deg}
  .hx-pick{justify-content:center;gap:8px}
  .hx-lbl{width:100%;text-align:center}
  .hx-glass .nm{display:none}
  .hx-glass button[aria-checked="true"]{padding:5px;box-shadow:0 0 0 2px var(--ice)}
}
@media (max-width:560px){
  .nx-inc,.incl-6{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  .hx-tilt,.hx-swipe,.hx-mock,.nx-win,.nx-win img,.nx-pc{transition:none!important;animation:none!important}
  .js .hx-stage{animation:none}
}
@media (prefers-reduced-transparency:reduce){
  .hx-glass{background:var(--surf2);backdrop-filter:none}
}

/* v9b: Laptop aus CSS für Referenzen und Unterseiten (ersetzt die PNGEgg-Vorlagen) */
.lap-css{display:block;padding:0 7% 0;filter:drop-shadow(0 30px 40px rgba(0,0,0,.4))}
.lap-lid{position:relative;display:block;background:linear-gradient(#2A2A28,#151513);border-radius:14px 14px 4px 4px;padding:2.2% 2.2% 3%;box-shadow:inset 0 0 0 1px #3A3A37}
.lap-lid::before{content:"";position:absolute;top:.9%;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#0A0A0A;box-shadow:inset 0 0 0 1px #333}
.lap-css .lap-lid img.lap-shot{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:4px;filter:none;transform:none;transition:transform 1.2s var(--ease)}
.lap-base{position:relative;display:block;height:clamp(8px,1.4vw,16px);margin:0 -7%;background:linear-gradient(#D9D9D6,#9C9C98 70%,#6E6E6B);border-radius:2px 2px 12px 12px}
.lap-base::before{content:"";position:absolute;top:0;left:50%;width:14%;height:42%;transform:translateX(-50%);background:#8E8E8A;border-radius:0 0 8px 8px}
.case-pic.dev .lap-lid{overflow:hidden}
.case-pic.dev:hover .lap-shot{transform:scale(1.03)}
.sv-dev .lap-css{padding-top:10%}
.sv-dev.cam img{filter:none;border:clamp(6px,.8vw,10px) solid var(--ink)}

/* v9c: Leistungen auf einer Seite – ehemalige Seitentitel jetzt h2 in gleicher Größe */
.sv-hero h2.svh,.vz-hero h2.svh{font-size:clamp(3rem,1rem + 5.6vw,6.5rem)}
.p-leistungen .sv-hero,.p-leistungen .vz-hero{scroll-margin-top:76px}
@media (max-width:820px){.sv-hero h2.svh,.vz-hero h2.svh{font-size:clamp(2.75rem,12vw,4rem)}}

/* Runde 7: Kacheln mit vollflächigen Bildern, Teamfoto gerade */
.vs-svc.kx img.full{object-fit:cover;object-position:50% 50%;aspect-ratio:4/5;padding:0}
.kx-win{display:block;aspect-ratio:4/5;padding:22% 9% 0;position:relative}
.kx-win img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;box-shadow:0 18px 30px -12px rgba(0,0,0,.5);border-top:16px solid #1b1b19}
.kx-win i{position:absolute;top:calc(22% + 5px);width:6px;height:6px;border-radius:50%;background:#555;z-index:2}
.kx-win i:nth-child(1){left:calc(9% + 6px)}.kx-win i:nth-child(2){left:calc(9% + 15px)}.kx-win i:nth-child(3){left:calc(9% + 24px)}
.duo{grid-template-columns:5fr 7fr}
.duo .team-pic{position:relative;margin:0;max-width:440px;padding:0 0 22px 22px;clip-path:none;aspect-ratio:auto;overflow:visible}
.team-pic::before{content:"";position:absolute;left:0;bottom:0;width:78%;height:78%;background:var(--or)}
.team-pic img{position:relative;display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
.tp-n{position:absolute;z-index:2;background:var(--ink);color:var(--bg);font-size:14px;font-weight:500;padding:7px 12px}
.tp-1{left:6%;top:8%}
.tp-2{right:-6%;bottom:16%;background:var(--ice)}
.sv-dev.dash img{filter:none}
.sv-dev.dash{background:#fff;padding:0;overflow:hidden}
.sv-dev.tall img{aspect-ratio:4/5;object-fit:cover;filter:none}
@media (max-width:820px){.team-pic{max-width:340px}.tp-2{right:0}}

/* Umzug-Schritte (aus der Umzug-Seite übernommen) */
.vz-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;counter-reset:s}
.vz-steps li{background:var(--c,var(--surf));color:var(--t,var(--ink));padding:22px 20px 26px;min-height:190px;display:flex;flex-direction:column;justify-content:space-between;counter-increment:s}
.vz-steps li::before{content:counter(s);font-size:clamp(2.5rem,1rem + 3vw,4rem);font-weight:900;letter-spacing:-.05em;line-height:1}
.vz-steps b{font-size:var(--s-lead);font-weight:900;letter-spacing:-.02em;line-height:1.1}
.vz-steps span{display:block;font-size:15px;margin-top:6px}
@media (max-width:900px){.vz-steps{grid-template-columns:1fr 1fr}.vz-steps li{min-height:150px}.vz-steps li:last-child{grid-column:1/-1}}

/* Referenzen als Staffelgalerie (Vorlage: Referenzen-Entwurf Variante C, 14.11.2026) */
.rf{padding:0 var(--m) clamp(48px,6vw,90px)}
.rf-index{display:flex;flex-wrap:wrap;gap:10px;padding:0 0 22px}
.rf-index a{border:1px solid #798078;border-radius:200px;padding:10px 15px;font-size:13px;font-weight:700;color:inherit;text-decoration:none}
.rf-index a:hover{color:#fdb77c;border-color:#fdb77c}
.rf-deck{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.rf-case{background:#272e28;border-radius:4px;overflow:hidden;scroll-margin-top:90px;display:flex;flex-direction:column}
.rf-case:first-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.66fr) minmax(0,1fr)}
.rf-case:nth-child(2){background:#332928}
.rf-case:nth-child(3){background:#253334}
.rf-stage{margin:0;min-width:0;position:relative;display:grid;place-items:center;isolation:isolate;overflow:hidden;aspect-ratio:1.63;background:radial-gradient(at 55% 44%,#af9d68,#807149 54%,#4f4d32)}
.rf-case:nth-child(2) .rf-stage{background:radial-gradient(at 42% 35%,#b77966,#654237 83%)}
.rf-case:nth-child(3) .rf-stage{background:radial-gradient(at 48% 35%,#95a9a5,#526d70 83%)}
.rf-device{position:relative;width:88%;margin:0 auto;filter:drop-shadow(0 26px 23px rgba(0,0,0,.45));transform:perspective(1000px) rotateY(-12deg) rotateX(4deg) rotateZ(-3deg)}
.rf-lid{position:relative;padding:8px;margin-inline:6%;border-radius:17px 17px 6px 6px;background:linear-gradient(145deg,#b8b6ae 0%,#555853 23%,#101313 52%,#9e9e97 100%)}
.rf-screen{background:#0b0b0b;padding:5px;border-radius:10px 10px 3px 3px;overflow:hidden}
.rf-screen img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:center top;border-radius:5px 5px 1px 1px}
.rf-camera{position:absolute;top:5px;left:50%;width:3px;height:3px;border-radius:50%;background:#131514;box-shadow:0 0 0 1px #4c5e54}
.rf-base{position:relative;height:clamp(7px,1.05vw,15px);border-radius:1px 1px 50% 50%/2px 2px 100% 100%;background:linear-gradient(#e6e4db 0%,#a6a9a4 12%,#6c716e 52%,#272e2b 86%,#57615a)}
.rf-base::after{content:"";position:absolute;top:0;left:43%;width:14%;height:45%;border-radius:0 0 10px 10px;background:linear-gradient(#414642,#9ca098)}
.rf-body{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:14px;padding:32px 33px}
.rf-industry{margin:0;font-size:12px;line-height:1.35;font-weight:760;letter-spacing:.065em;text-transform:uppercase;color:#ffb981}
.rf-body h2{margin:0;font-size:clamp(39px,5vw,76px);letter-spacing:-.058em;line-height:.95;font-weight:800;color:#f1f0df}
.rf-case:not(:first-child) .rf-body h2{font-size:clamp(36px,4vw,60px)}
.rf-body p{margin:0;line-height:1.55;color:#bfc8bb;font-size:15px;max-width:41ch}
.rf-link{display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid;padding-bottom:6px;margin-top:4px;font-weight:750;font-size:13px;color:#f1f0df;text-decoration:none}
.rf-link:hover{color:#fdb77c}
@media (prefers-reduced-motion:no-preference){.rf-device{transition:transform .28s ease}.rf-stage:hover .rf-device{transform:perspective(1000px) rotateY(-6deg) rotateX(2deg) rotateZ(-2deg)}}
@media (max-width:980px){.rf-body{padding:25px}}
@media (max-width:710px){.rf-index{gap:6px;padding-bottom:16px}.rf-index a{padding:8px 10px;font-size:11px}.rf-deck{grid-template-columns:1fr;gap:14px}.rf-case:first-child{grid-template-columns:1fr}.rf-body{padding:20px;gap:10px}.rf-body h2,.rf-case:not(:first-child) .rf-body h2{font-size:clamp(34px,9vw,57px)}.rf-industry{font-size:10px}.rf-body p{font-size:13px;max-width:37ch}.rf-link{font-size:12px}.rf-stage{aspect-ratio:1.53}.rf-lid{padding:4px;border-radius:10px 10px 4px 4px}.rf-screen{padding:3px;border-radius:6px 6px 3px 3px}.rf-camera{top:2px;width:2px;height:2px}.rf-device{transform:perspective(680px) rotateY(-8deg) rotateZ(-2deg)}}
