Morpheus CMS • Für ambitionierte Unternehmen

Kein Seitenbasteln.
Keine Layout-Unfälle.
Ein CMS mit System.

Morpheus ist Ihr flexibles CMS für professionelle Websites, Portale und Landingpages. Sie behalten die Kontrolle über Marke, Inhalte und Aufbau – wir kümmern uns um Struktur, Technik und Geschwindigkeit.

Schnelle Umsetzung, klare Prozesse, individuell anpassbares Design – ohne starre Templates.

Projektübersicht
Morpheus Dashboard
Live Inhalte
Seiten
Mehrsprachige Website

Struktur frei anpassen, neue Seiten in Sekunden ergänzen.

Design
Markengerecht & flexibel

Layouts, Module und Bilder exakt auf Ihre Marke abgestimmt.

Sprachen
DE / EN / weitere

Inhalte beliebig erweitern – optional mit automatischer Vorübersetzung.

Rollen
Team ready

Marketing, Redaktion, Geschäftsführung – jeder mit passenden Rechten.

Symbolisches Bild: Person arbeitet an einem modernen Dashboard auf dem Laptop.

Ein CMS, das sich an Ihr Unternehmen anpasst – nicht umgekehrt.

Morpheus verbindet die Freiheit individueller Entwicklung mit der Sicherheit eines erprobten Systems. Sie erhalten ein verlässliches Fundament – und gleichzeitig die Möglichkeit, Ihren Online-Auftritt jederzeit weiterzuentwickeln.

1

Keine Template-Zwänge

Morpheus ist nicht an starre Themes gebunden. Aufbau, Module und Layouts werden passend zu Ihrem Unternehmen gestaltet.

2

Redaktion statt Technik

Inhalte lassen sich intuitiv pflegen – ohne technische Hürden. Sie bleiben handlungsfähig, auch ohne IT-Abteilung.

3

Saubere Struktur

Klare Trennung von Inhalt, Design und Logik sorgt dafür, dass Anpassungen schnell, nachvollziehbar und langfristig tragfähig sind.

4

Langfristige Partnerschaft

Morpheus ist nicht „von der Stange“, sondern die Basis für eine individuelle, langfristige Betreuung Ihres digitalen Auftritts.

Funktionen, die Ihren Alltag wirklich einfacher machen.

Morpheus ist modular aufgebaut. Sie wählen die Bausteine, die Sie wirklich benötigen – von der einfachen Unternehmensseite bis zum umfangreichen Portal.

Navigations- & Seitenstruktur

Neue Seiten und Bereiche anlegen, verschieben, ausblenden – ohne in den Code eingreifen zu müssen.

Modulare Inhalte

Teaser, Bild-Text-Module, FAQs, Kontaktboxen und mehr – je nach Bedarf kombinierbar und erweiterbar.

Mehrsprachigkeit

Mehrsprachige Inhalte komfortabel verwalten – mit automatischer DeepL-Übersetzung und optimierten Workflows.

Medienverwaltung

Bilder, Dokumente und Downloads zentral organisieren und wiederverwenden – mit sinnvollen Such- und Filteroptionen.

SEO-Basics integriert

Sprechende URLs, Metadaten, strukturierte Inhalte – die wichtigsten Grundlagen sind von Anfang an mitgedacht.

Rollen & Freigaben

Auf Wunsch mit Freigabeprozessen und unterschiedlichen Rollen – von Redaktion bis Geschäftsführung.

Morpheus basiert auf einer modularen PHP-8+ Architektur, nutzt moderne Dependency-Strukturen, PDO-Prepared-Statements und ein flexibles JSON-basiertes Content-Schema.

Morpheus basiert auf einer klar strukturierten, modernen Architektur. Für Sie bedeutet das: stabile Performance, gute Erweiterbarkeit und ein System, das mit Ihren Anforderungen wächst.

Stabiles Fundament

Solide PHP/MySQL-Basis, sauber getrennte Bereiche für Inhalte, Layout und Funktionen – ideal für langfristige Projekte.

API & Schnittstellen

Anbindung an bestehende Systeme, Formulare, Shop-Lösungen oder externe Services – auf Wunsch integriert.

Sicherheit & Updates

Sicherheitsthemen und regelmäßige Pflege werden von uns mitgedacht – Sie müssen sich nicht um technische Details kümmern.

Individuelle Erweiterungen

Spezielle Funktionen für Ihr Unternehmen können als eigene Module eingebunden werden – ohne das System zu überladen.

Klare Strukturen. Spielend leicht zu Erlernen
Usability

Klare Strukturen. Intuitive Bedienung.

Die Seitenverwaltung von Morpheus bietet eine logisch aufgebaute Navigation, die selbst bei großen Projekten den Überblick behält. Inhalte lassen sich schnell finden, einfach sortieren und mühelos bearbeiten – für maximale Usability und minimale Einarbeitungszeit.

Aus Ideen werden Projekte – und aus Projekten digitale Bausteine.

Morpheus ist ein modular aufgebautes Content-Management-System für individuelle Websites.

Statt starrer Templates setzt es auf klar strukturierte Bausteine, die flexibel kombiniert und erweitert werden können.

So entstehen eigenständige Webprojekte mit stabiler technischer Basis – wartbar, skalierbar und zukunftsfähig.

Beispiel einer modernen Unternehmenswebsite
Unternehmen

Corporate Website

Klare Positionierung, fokussierte Inhalte, Landingpages für Kampagnen – alles innerhalb eines Systems.

Mehrsprachig Lead-Formulare Karrierebereich
Multi Händler Webseiten für Takeuchi
Produkte & Lösungen

Produkt- & Portalseiten

Strukturierte Darstellung von Leistungen, Referenzen und Branchen – ideal für erklärungsbedürftige Angebote.

Produktmodule FAQ-Bereiche Downloadcenter
Backend Morpheus CMS- Projektverwaltung
Individuelle Projekte

Spezielle Anforderungen

Ob Intranet-Bereich, Formularstrecken oder spezielle Schnittstellen – Morpheus kann als Basis für individuelle Lösungen dienen, ohne dass Ihre Website „von der Stange“ wirkt.

Für Unternehmen und Agenturen, die digital ernst nehmen.

Morpheus eignet sich für Unternehmen, die ihren Online-Auftritt bewusst steuern möchten – und Wert auf Klarheit, Weiterentwicklung und persönliche Betreuung legen.

Inhaber:innen & Geschäftsführung

Sie behalten den Überblick, können Ergebnisse bewerten und sicher sein, dass Ihr Auftritt zur Unternehmensstrategie passt.

Marketing & Kommunikation

Kampagnen-Landingpages, News, Schwerpunktthemen – Inhalte lassen sich schnell und eigenständig umsetzen.

Fachabteilungen

Produkte, Services und Projekte können verständlich aufbereitet werden – ohne dass jedes Detail durch die IT muss.

Agenturen & Partner

Auch in Zusammenarbeit mit bestehenden Agenturen kann Morpheus eingesetzt werden – als technische Basis im Hintergrund.

Klar, transparent und auf Ihren Bedarf abgestimmt.

Jedes Projekt ist anders. Wichtig ist: Sie wissen von Anfang an, womit Sie rechnen können. Und welche Optionen Sie später ergänzen können.

Projektbasiert
Einmalige Einrichtung, individuelles Design, Inhalte & Module nach Bedarf.
Optional
Wartung, Hosting, Weiterentwicklung

Im Fokus

  • Individuelle Gestaltung & konzeptionelle Begleitung
  • Umsetzung der Startseiten & Kernbereiche
  • Technische Einrichtung und Basis-SEO

Optional möglich

  • Laufende Betreuung & Pflege
  • Zusätzliche Sprachen & Länderseiten
  • Erweiterungen, Schnittstellen, spezielle Module

Gerne erstellen wir auf Basis Ihrer Anforderungen ein klares, verständliches Angebot.

Gespräch anfragen

Lassen Sie uns darüber sprechen, was Morpheus für Sie leisten kann.

Ob Relaunch, neue Website oder ein spezielles Projekt: In einem kurzen Gespräch klären wir, ob Morpheus zu Ihren Zielen passt – und wie ein sinnvoller Einstieg aussehen kann.

Auf Wunsch zeigen wir Ihnen Morpheus live in einer Kurz-Demo und gehen auf Ihre Fragen ein.

Ihre Daten werden ausschließlich zur Kontaktaufnahme verwendet.

/*! * GSAP 3.14.1 * https://gsap.com * * @license Copyright 2025, GreenSock. All rights reserved. * Subject to the terms at https://gsap.com/standard-license. * @author: Jack Doyle, jack@greensock.com */ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t=t||self).window=t.window||{})}(this,function(e){"use strict";function _inheritsLoose(t,e){t.prototype=Object.create(e.prototype),(t.prototype.constructor=t).__proto__=e}function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function r(t){return"string"==typeof t}function s(t){return"function"==typeof t}function t(t){return"number"==typeof t}function u(t){return void 0===t}function v(t){return"object"==typeof t}function w(t){return!1!==t}function x(){return"undefined"!=typeof window}function y(t){return s(t)||r(t)}function R(t){return(i=bt(t,ht))&&Fe}function S(t,e){return console.warn("Invalid property",t,"set to",e,"Missing plugin? gsap.registerPlugin()")}function T(t,e){return!e&&console.warn(t)}function U(t,e){return t&&(ht[t]=e)&&i&&(i[t]=e)||ht}function V(){return 0}function ga(t){var e,r,i=t[0];if(v(i)||s(i)||(t=[t]),!(e=(i._gsap||{}).harness)){for(r=yt.length;r--&&!yt[r].targetTest(i););e=yt[r]}for(r=t.length;r--;)t[r]&&(t[r]._gsap||(t[r]._gsap=new Xt(t[r],e)))||t.splice(r,1);return t}function ha(t){return t._gsap||ga(Pt(t))[0]._gsap}function ia(t,e,r){return(r=t[e])&&s(r)?t[e]():u(r)&&t.getAttribute&&t.getAttribute(e)||r}function ja(t,e){return(t=t.split(",")).forEach(e)||t}function ka(t){return Math.round(1e5*t)/1e5||0}function la(t){return Math.round(1e7*t)/1e7||0}function ma(t,e){var r=e.charAt(0),i=parseFloat(e.substr(2));return t=parseFloat(t),"+"===r?t+i:"-"===r?t-i:"*"===r?t*i:t/i}function na(t,e){for(var r=e.length,i=0;t.indexOf(e[i])<0&&++ia;)s=s._prev;return s?(e._next=s._next,s._next=e):(e._next=t[r],t[r]=e),e._next?e._next._prev=e:t[i]=e,e._prev=s,e.parent=e._dp=t,e}function Ba(t,e,r,i){void 0===r&&(r="_first"),void 0===i&&(i="_last");var n=e._prev,a=e._next;n?n._next=a:t[r]===e&&(t[r]=a),a?a._prev=n:t[i]===e&&(t[i]=n),e._next=e._prev=e.parent=null}function Ca(t,e){t.parent&&(!e||t.parent.autoRemoveChildren)&&t.parent.remove&&t.parent.remove(t),t._act=0}function Da(t,e){if(t&&(!e||e._end>t._dur||e._start<0))for(var r=t;r;)r._dirty=1,r=r.parent;return t}function Fa(t,e,r,i){return t._startAt&&(I?t._startAt.revert(ft):t.vars.immediateRender&&!t.vars.autoRevert||t._startAt.render(e,!0,i))}function Ha(t){return t._repeat?wt(t._tTime,t=t.duration()+t._rDelay)*t:0}function Ja(t,e){return(t-e._start)*e._ts+(0<=e._ts?0:e._dirty?e.totalDuration():e._tDur)}function Ka(t){return t._end=la(t._start+(t._tDur/Math.abs(t._ts||t._rts||q)||0))}function La(t,e){var r=t._dp;return r&&r.smoothChildTiming&&t._ts&&(t._start=la(r._time-(0q)&&e.render(r,!0)),Da(t,e)._dp&&t._initted&&t._time>=t._dur&&t._ts){if(t._dur(n=Math.abs(n))&&(a=i,o=n);return a}function wb(t){return Ca(t),t.scrollTrigger&&t.scrollTrigger.kill(!!I),t.progress()<1&&Dt(t,"onInterrupt"),t}function zb(t){if(t)if(t=!t.name&&t.default||t,x()||t.headless){var e=t.name,r=s(t),i=e&&!r&&t.init?function(){this._props=[]}:t,n={init:V,render:ve,add:Jt,kill:Te,modifier:ye,rawVars:0},a={targetTest:0,get:0,getSetter:le,aliases:{},register:0};if(Lt(),t!==i){if(mt[e])return;ta(i,ta(xa(t,n),a)),bt(i.prototype,bt(n,xa(t,a))),mt[i.prop=e]=i,t.targetTest&&(yt.push(i),ct[e]=1),e=("css"===e?"CSS":e.charAt(0).toUpperCase()+e.substr(1))+"Plugin"}U(e,i),t.register&&t.register(Fe,i,we)}else St.push(t)}function Cb(t,e,r){return(6*(t+=t<0?1:1>16,e>>8&zt,e&zt]:0:Et.black;if(!p){if(","===e.substr(-1)&&(e=e.substr(0,e.length-1)),Et[e])p=Et[e];else if("#"===e.charAt(0)){if(e.length<6&&(e="#"+(n=e.charAt(1))+n+(a=e.charAt(2))+a+(s=e.charAt(3))+s+(5===e.length?e.charAt(4)+e.charAt(4):"")),9===e.length)return[(p=parseInt(e.substr(1,6),16))>>16,p>>8&zt,p&zt,parseInt(e.substr(7),16)/255];p=[(e=parseInt(e.substr(1),16))>>16,e>>8&zt,e&zt]}else if("hsl"===e.substr(0,3))if(p=c=e.match(rt),r){if(~e.indexOf("="))return p=e.match(it),i&&p.length<4&&(p[3]=1),p}else o=+p[0]%360/360,u=p[1]/100,n=2*(h=p[2]/100)-(a=h<=.5?h*(u+1):h+u-h*u),3=X?u.endTime(!1):t._dur;return r(e)&&(isNaN(e)||e in o)?(a=e.charAt(0),s="%"===e.substr(-1),n=e.indexOf("="),"<"===a||">"===a?(0<=n&&(e=e.replace(/=/,"")),("<"===a?u._start:u.endTime(0<=u._repeat))+(parseFloat(e.substr(1))||0)*(s?(n<0?u:i).totalDuration()/100:1)):n<0?(e in o||(o[e]=h),o[e]):(a=parseFloat(e.charAt(n-1)+e.substr(n+1)),s&&i&&(a=a/100*($(i)?i[0]:i).totalDuration()),1=r&&te)return i;i=i._next}else for(i=t._last;i&&i._start>=r;){if("isPause"===i.data&&i._start=n._start)&&n._ts&&h!==n){if(n.parent!==this)return this.render(t,e,r);if(n.render(0=this.totalDuration()||!v&&_)&&(f!==this._start&&Math.abs(l)===Math.abs(this._ts)||this._lock||(!t&&g||!(v===m&&0=i&&(a instanceof te?e&&n.push(a):(r&&n.push(a),t&&n.push.apply(n,a.getChildren(!0,e,r)))),a=a._next;return n},e.getById=function getById(t){for(var e=this.getChildren(1,1,1),r=e.length;r--;)if(e[r].vars.id===t)return e[r]},e.remove=function remove(t){return r(t)?this.removeLabel(t):s(t)?this.killTweensOf(t):(t.parent===this&&Ba(this,t),t===this._recent&&(this._recent=this._last),Da(this))},e.totalTime=function totalTime(t,e){return arguments.length?(this._forcing=1,!this._dp&&this._ts&&(this._start=la(It.time-(0r:!r||s.isActive())&&n.push(s):(i=s.getTweensOf(a,r)).length&&n.push.apply(n,i),s=s._next;return n},e.tweenTo=function tweenTo(t,e){e=e||{};var r,i=this,n=Ot(i,t),a=e.startAt,s=e.onStart,o=e.onStartParams,u=e.immediateRender,h=te.to(i,ta({ease:e.ease||"none",lazy:!1,immediateRender:!1,time:n,overwrite:"auto",duration:e.duration||Math.abs((n-(a&&"time"in a?a.time:i._time))/i.timeScale())||q,onStart:function onStart(){if(i.pause(),!r){var t=e.duration||Math.abs((n-(a&&"time"in a?a.time:i._time))/i.timeScale());h._dur!==t&&Ua(h,t,0,1).render(h._time,!0,!0),r=1}s&&s.apply(h,o||[])}},e));return u?h.render(0):h},e.tweenFromTo=function tweenFromTo(t,e,r){return this.tweenTo(e,ta({startAt:{time:Ot(this,t)}},r))},e.recent=function recent(){return this._recent},e.nextLabel=function nextLabel(t){return void 0===t&&(t=this._time),ub(this,Ot(this,t))},e.previousLabel=function previousLabel(t){return void 0===t&&(t=this._time),ub(this,Ot(this,t),1)},e.currentLabel=function currentLabel(t){return arguments.length?this.seek(t,!0):this.previousLabel(this._time+q)},e.shiftChildren=function shiftChildren(t,e,r){void 0===r&&(r=0);var i,n=this._first,a=this.labels;for(t=la(t);n;)n._start>=r&&(n._start+=t,n._end+=t),n=n._next;if(e)for(i in a)a[i]>=r&&(a[i]+=t);return Da(this)},e.invalidate=function invalidate(t){var e=this._first;for(this._lock=0;e;)e.invalidate(t),e=e._next;return i.prototype.invalidate.call(this,t)},e.clear=function clear(t){void 0===t&&(t=!0);for(var e,r=this._first;r;)e=r._next,this.remove(r),r=e;return this._dp&&(this._time=this._tTime=this._pTime=0),t&&(this.labels={}),Da(this)},e.totalDuration=function totalDuration(t){var e,r,i,n=0,a=this,s=a._last,o=X;if(arguments.length)return a.timeScale((a._repeat<0?a.duration():a.totalDuration())/(a.reversed()?-t:t));if(a._dirty){for(i=a.parent;s;)e=s._prev,s._dirty&&s.totalDuration(),o<(r=s._start)&&a._sort&&s._ts&&!a._lock?(a._lock=1,Na(a,s,r-s._delay,1)._lock=0):o=r,r<0&&s._ts&&(n-=r,(!i&&!a._dp||i&&i.smoothChildTiming)&&(a._start+=la(r/a._ts),a._time-=r,a._tTime-=r),a.shiftChildren(-r,!1,-Infinity),o=0),s._end>n&&s._ts&&(n=s._end),s=e;Ua(a,a===L&&a._time>n?a._time:n,1,1),a._dirty=0}return a._tDur},Timeline.updateRoot=function updateRoot(t){if(L._ts&&(qa(L,Ja(t,L)),f=It.frame),It.frame>=vt){vt+=N.autoSleep||120;var e=L._first;if((!e||!e._ts)&&N.autoSleep&&It._listeners.length<2){for(;e&&!e._ts;)e=e._next;e||It.sleep()}}},Timeline}(qt);ta(Zt.prototype,{_lock:0,_hasPause:0,_forcing:0});function dc(t,e,i,n,a,o){var u,h,l,f;if(mt[t]&&!1!==(u=new mt[t]).init(a,u.rawVars?e[t]:function _processVars(t,e,i,n,a){if(s(t)&&(t=Gt(t,a,e,i,n)),!v(t)||t.style&&t.nodeType||$(t)||K(t))return r(t)?Gt(t,a,e,i,n):t;var o,u={};for(o in t)u[o]=Gt(t[o],a,e,i,n);return u}(e[t],n,a,o,i),i,n,o)&&(i._pt=h=new we(i._pt,a,t,0,1,u.render,u,0,u.priority),i!==d))for(l=i._ptLookup[i._targets.indexOf(a)],f=u._props.length;f--;)l[u._props[f]]=h;return u}function jc(t,r,e,i){var n,a,s=r.ease||i||"power1.inOut";if($(r))a=e[t]||(e[t]=[]),r.forEach(function(t,e){return a.push({t:e/(r.length-1)*100,v:t,e:s})});else for(n in r)a=e[n]||(e[n]=[]),"ease"===n||a.push({t:parseFloat(t),v:r[n],e:s})}var Wt,Ht,Jt=function _addPropTween(t,e,i,n,a,o,u,h,l,f){s(n)&&(n=n(a||0,t,o));var d,c=t[e],p="get"!==i?i:s(c)?l?t[e.indexOf("set")||!s(t["get"+e.substr(3)])?e:"get"+e.substr(3)](l):t[e]():c,_=s(c)?l?ue:re:ee;if(r(n)&&(~n.indexOf("random(")&&(n=rb(n)),"="===n.charAt(1)&&(!(d=ma(p,n)+(_a(p)||0))&&0!==d||(n=d))),!f||p!==n||Ht)return isNaN(p*n)||""===n?(c||e in t||S(e,n),function _addComplexStringPropTween(t,e,r,i,n,a,s){var o,u,h,l,f,d,c,p,_=new we(this._pt,t,e,0,1,ge,null,n),m=0,g=0;for(_.b=r,_.e=i,r+="",(c=~(i+="").indexOf("random("))&&(i=rb(i)),a&&(a(p=[r,i],t,e),r=p[0],i=p[1]),u=r.match(at)||[];o=at.exec(i);)l=o[0],f=i.substring(m,o.index),h?h=(h+1)%5:"rgba("===f.substr(-5)&&(h=1),l!==u[g++]&&(d=parseFloat(u[g-1])||0,_._pt={_next:_._pt,p:f||1===g?f:",",s:d,c:"="===l.charAt(1)?ma(d,l)-d:parseFloat(l)-d,m:h&&h<4?Math.round:0},m=at.lastIndex);return _.c=m")}),s.duration();else{for(l in u={},k)"ease"===l||"easeEach"===l||jc(l,k[l],u,k.easeEach);for(l in u)for(D=u[l].sort(function(t,e){return t.t-e.t}),o=E=0;o=t._tDur||e<0)&&t.ratio===u&&(u&&Ca(t,1),r||I||(Dt(t,u?"onComplete":"onReverseComplete",!0),t._prom&&t._prom()))}else t._zTime||(t._zTime=e)}(this,t,e,r);return this},e.targets=function targets(){return this._targets},e.invalidate=function invalidate(t){return t&&this.vars.runBackwards||(this._startAt=0),this._pt=this._op=this._onUpdate=this._lazy=this.ratio=0,this._ptLookup=[],this.timeline&&this.timeline.invalidate(t),R.prototype.invalidate.call(this,t)},e.resetTo=function resetTo(t,e,r,i,n){c||It.wake(),this._ts||this.play();var a,s=Math.min(this._dur,(this._dp._time-this._start)*this._ts);return this._initted||Qt(this,s),a=this._ease(s/this._dur),function _updatePropTweens(t,e,r,i,n,a,s,o){var u,h,l,f,d=(t._pt&&t._ptCache||(t._ptCache={}))[e];if(!d)for(d=t._ptCache[e]=[],l=t._ptLookup,f=t._targets.length;f--;){if((u=l[f][e])&&u.d&&u.d._pt)for(u=u.d._pt;u&&u.p!==e&&u.fp!==e;)u=u._next;if(!u)return Ht=1,t.vars[e]="+=0",Qt(t,s),Ht=0,o?T(e+" not eligible for reset"):1;d.push(u)}for(f=d.length;f--;)(u=(h=d[f])._pt||h).s=!i&&0!==i||n?u.s+(i||0)+a*u.c:i,u.c=r-u.s,h.e&&(h.e=ka(r)+_a(h.e)),h.b&&(h.b=u.s+_a(h.b))}(this,t,e,r,i,a,s,n)?this.resetTo(t,e,r,i,1):(La(this,0),this.parent||Aa(this._dp,this,"_first","_last",this._dp._sort?"_start":0),this.render(0))},e.kill=function kill(t,e){if(void 0===e&&(e="all"),!(t||e&&"all"!==e))return this._lazy=this._pt=0,this.parent?wb(this):this.scrollTrigger&&this.scrollTrigger.kill(!!I),this;if(this.timeline){var i=this.timeline.totalDuration();return this.timeline.killTweensOf(t,e,Wt&&!0!==Wt.vars.overwrite)._first||wb(this),this.parent&&i!==this.timeline.totalDuration()&&Ua(this,this._dur*this.timeline._tDur/i,0,1),this}var n,a,s,o,u,h,l,f=this._targets,d=t?Pt(t):f,c=this._ptLookup,p=this._pt;if((!e||"all"===e)&&function _arraysMatch(t,e){for(var r=t.length,i=r===e.length;i&&r--&&t[r]===e[r];);return r<0}(f,d))return"all"===e&&(this._pt=0),wb(this);for(n=this._op=this._op||[],"all"!==e&&(r(e)&&(u={},ja(e,function(t){return u[t]=1}),e=u),e=function _addAliasesToVars(t,e){var r,i,n,a,s=t[0]?ha(t[0]).harness:0,o=s&&s.aliases;if(!o)return e;for(i in r=bt({},e),o)if(i in r)for(n=(a=o[i].split(",")).length;n--;)r[a[n]]=r[i];return r}(f,e)),l=f.length;l--;)if(~d.indexOf(f[l]))for(u in a=c[l],"all"===e?(n[l]=e,o=a,s={}):(s=n[l]=n[l]||{},o=e),o)(h=a&&a[u])&&("kill"in h.d&&!0!==h.d.kill(u)||Ba(this,h,"_pt"),delete a[u]),"all"!==s&&(s[u]=1);return this._initted&&!this._pt&&p&&wb(this),this},Tween.to=function to(t,e,r){return new Tween(t,e,r)},Tween.from=function from(t,e){return Ya(1,arguments)},Tween.delayedCall=function delayedCall(t,e,r,i){return new Tween(e,0,{immediateRender:!1,lazy:!1,overwrite:!1,delay:t,onComplete:e,onReverseComplete:e,onCompleteParams:r,onReverseCompleteParams:r,callbackScope:i})},Tween.fromTo=function fromTo(t,e,r){return Ya(2,arguments)},Tween.set=function set(t,e){return e.duration=0,e.repeatDelay||(e.repeat=0),new Tween(t,e)},Tween.killTweensOf=function killTweensOf(t,e,r){return L.killTweensOf(t,e,r)},Tween}(qt);ta(te.prototype,{_targets:[],_lazy:0,_startAt:0,_op:0,_onInit:0}),ja("staggerTo,staggerFrom,staggerFromTo",function(r){te[r]=function(){var t=new Zt,e=Ct.call(arguments,0);return e.splice("staggerFromTo"===r?5:4,0,0),t[r].apply(t,e)}});function rc(t,e,r){return t.setAttribute(e,r)}function zc(t,e,r,i){i.mSet(t,e,i.m.call(i.tween,r,i.mt),i)}var ee=function _setterPlain(t,e,r){return t[e]=r},re=function _setterFunc(t,e,r){return t[e](r)},ue=function _setterFuncWithParam(t,e,r,i){return t[e](i.fp,r)},le=function _getSetter(t,e){return s(t[e])?re:u(t[e])&&t.setAttribute?rc:ee},ce=function _renderPlain(t,e){return e.set(e.t,e.p,Math.round(1e6*(e.s+e.c*t))/1e6,e)},_e=function _renderBoolean(t,e){return e.set(e.t,e.p,!!(e.s+e.c*t),e)},ge=function _renderComplexString(t,e){var r=e._pt,i="";if(!t&&e.b)i=e.b;else if(1===t&&e.e)i=e.e;else{for(;r;)i=r.p+(r.m?r.m(r.s+r.c*t):Math.round(1e4*(r.s+r.c*t))/1e4)+i,r=r._next;i+=e.c}e.set(e.t,e.p,i,e)},ve=function _renderPropTweens(t,e){for(var r=e._pt;r;)r.r(t,r.d),r=r._next},ye=function _addPluginModifier(t,e,r,i){for(var n,a=this._pt;a;)n=a._next,a.p===i&&a.modifier(t,e,r),a=n},Te=function _killPropTweensOf(t){for(var e,r,i=this._pt;i;)r=i._next,i.p===t&&!i.op||i.op===t?Ba(this,i,"_pt"):i.dep||(e=1),i=r;return!e},be=function _sortPropTweensByPriority(t){for(var e,r,i,n,a=t._pt;a;){for(e=a._next,r=i;r&&r.pr>a.pr;)r=r._next;(a._prev=r?r._prev:n)?a._prev._next=a:i=a,(a._next=r)?r._prev=a:n=a,a=e}t._pt=i},we=(PropTween.prototype.modifier=function modifier(t,e,r){this.mSet=this.mSet||this.set,this.set=zc,this.m=t,this.mt=r,this.tween=e},PropTween);function PropTween(t,e,r,i,n,a,s,o,u){this.t=e,this.s=i,this.c=n,this.p=r,this.r=a||ce,this.d=s||this,this.set=o||ee,this.pr=u||0,(this._next=t)&&(t._prev=this)}ja(Tt+"parent,duration,ease,delay,overwrite,runBackwards,startAt,yoyo,immediateRender,repeat,repeatDelay,data,paused,reversed,lazy,callbackScope,stringFilter,id,yoyoEase,stagger,inherit,repeatRefresh,keyframes,autoRevert,scrollTrigger",function(t){return ct[t]=1}),ht.TweenMax=ht.TweenLite=te,ht.TimelineLite=ht.TimelineMax=Zt,L=new Zt({sortChildren:!1,defaults:j,autoRemoveChildren:!0,id:"root",smoothChildTiming:!0}),N.stringFilter=Ib;function Hc(t){return(Oe[t]||Me).map(function(t){return t()})}function Ic(){var t=Date.now(),o=[];2=Math.abs(r)?t:r}function P(){(Ae=Se.core.globals().ScrollTrigger)&&Ae.core&&function _integrate(){var e=Ae.core,r=e.bridge||{},t=e._scrollers,n=e._proxies;t.push.apply(t,ze),n.push.apply(n,Le),ze=t,Le=n,o=function _bridge(e,t){return r[e](t)}}()}function Q(e){return Se=e||r(),!Te&&Se&&"undefined"!=typeof document&&document.body&&(Ce=window,Me=(ke=document).documentElement,Ee=ke.body,t=[Ce,ke,Me,Ee],Se.utils.clamp,Ie=Se.core.context||function(){},Oe="onpointerenter"in Ee?"pointer":"mouse",Pe=k.isTouch=Ce.matchMedia&&Ce.matchMedia("(hover: none), (pointer: coarse)").matches?1:"ontouchstart"in Ce||0=i,n=Math.abs(t)>=i;T&&(r||n)&&T(se,e,t,me,ye),r&&(m&&0Math.abs(t)?"x":"y",oe=!0),"y"!==ae&&(me[2]+=e,se._vx.update(e,!0)),"x"!==ae&&(ye[2]+=t,se._vy.update(t,!0)),n?ee=ee||requestAnimationFrame(lf):lf()}function of(e){if(!jf(e,1)){var t=(e=N(e,s)).clientX,r=e.clientY,n=t-se.x,i=r-se.y,o=se.isDragging;se.x=t,se.y=r,(o||(n||i)&&(Math.abs(se.startX-t)>=a||Math.abs(se.startY-r)>=a))&&(re=re||(o?2:1),o||(se.isDragging=!0),nf(n,i))}}function rf(e){return e.touches&&1=e)return a[n];return a[n-1]}for(n=a.length,e+=r;n--;)if(a[n]<=e)return a[n];return a[0]}:function(e,t,r){void 0===r&&(r=.001);var n=o(e);return!t||Math.abs(n-e)r&&(n*=t/100),e=e.substr(0,r-1)),e=n+(e in q?q[e]*t:~e.indexOf("%")?parseFloat(e)*t/100:parseFloat(e)||0)}return e}function Eb(e,t,r,n,i,o,a,s){var l=i.startColor,c=i.endColor,u=i.fontSize,f=i.indent,d=i.fontWeight,p=Ue.createElement("div"),g=Ma(r)||"fixed"===z(r,"pinType"),h=-1!==e.indexOf("scroller"),v=g?We:r,b=-1!==e.indexOf("start"),m=b?l:c,y="border-color:"+m+";font-size:"+u+";color:"+m+";font-weight:"+d+";pointer-events:none;white-space:nowrap;font-family:sans-serif,Arial;z-index:1000;padding:4px 8px;border-width:0;border-style:solid;";return y+="position:"+((h||s)&&g?"fixed;":"absolute;"),!h&&!s&&g||(y+=(n===Xe?I:Y)+":"+(o+parseFloat(f))+"px;"),a&&(y+="box-sizing:border-box;text-align:left;width:"+a.offsetWidth+"px;"),p._isStart=b,p.setAttribute("class","gsap-marker-"+e+(t?" marker-"+t:"")),p.style.cssText=y,p.innerText=t||0===t?e+"-"+t:e,v.children[0]?v.insertBefore(p,v.children[0]):v.appendChild(p),p._offset=p["offset"+n.op.d2],U(p,0,n,b),p}function Jb(){return 34We.clientWidth)||(ze.cache++,v?R=R||requestAnimationFrame($):$(),st||V("scrollStart"),st=at())}function Lb(){y=Fe.innerWidth,m=Fe.innerHeight}function Mb(e){ze.cache++,!0!==e&&(Ke||h||Ue.fullscreenElement||Ue.webkitFullscreenElement||b&&y===Fe.innerWidth&&!(Math.abs(Fe.innerHeight-m)>.25*Fe.innerHeight))||c.restart(!0)}function Pb(){return yb(ne,"scrollEnd",Pb)||Mt(!0)}function Sb(e){for(var t=0;tt,n=e._startClamp&&e.start>=t;(r||n)&&e.setPositions(n?t-1:e.start,r?Math.max(n?t:e.start+1,t):e.end,!0)}),_b(!1),et=0,r.forEach(function(e){return e&&e.render&&e.render(-1)}),ze.forEach(function(e){Ua(e)&&(e.smooth&&requestAnimationFrame(function(){return e.target.style.scrollBehavior="smooth"}),e.rec&&e(e.rec))}),Vb(_,1),c.pause(),kt++,$(rt=2),Tt.forEach(function(e){return Ua(e.vars.onRefresh)&&e.vars.onRefresh(e)}),rt=ne.isRefreshing=!1,V("refresh")}else xb(ne,"scrollEnd",Pb)},j=0,Et=1,$=function _updateAll(e){if(2===e||!rt&&!T){ne.isUpdating=!0,it&&it.update(0);var t=Tt.length,r=at(),n=50<=r-D,i=t&&Tt[0].scroll();if(Et=i=Ra(be,he)){if(oe&&Ae()&&!de)for(o=oe.parentNode;o&&o!==We;)o._pinOffset&&(I-=o._pinOffset,B-=o._pinOffset),o=o.parentNode}else i=nb(ae),s=he===Xe,a=Ae(),j=parseFloat(K(he.a))+w,!y&&1=B})},Te.update=function(e,t,r){if(!de||r||e){var n,i,o,a,s,l,c,u=!0===rt?re:Te.scroll(),f=e?0:(u-I)/U,d=f<0?0:1u+(u-D)/(at()-Ge)*E&&(d=.9999)),d!==p&&Te.enabled){if(a=(s=(n=Te.isActive=!!d&&d<1)!=(!!p&&p<1))||!!d!=!!p,Te.direction=p=Ra(be,he),fe)if(e||!n&&!l)qc(ae,G);else{var g=_t(ae,!0),h=u-I;qc(ae,We,g.top+(he===Xe?h:0)+xt,g.left+(he===Xe?0:h)+xt)}Pt(n||l?W:V),Z&&d<1&&n||b(j+(1!==d||l?0:$))}}else b(Ja(j+$*d));!ue||A.tween||Ke||ot||te.restart(!0),C&&(s||ce&&d&&(d<1||!tt))&&Ve(C.targets).forEach(function(e){return e.classList[n||ce?"add":"remove"](C.className)}),!T||ve||e||T(Te),a&&!Ke?(ve&&(c&&("complete"===o?O.pause().totalProgress(1):"reset"===o?O.restart(!0).pause():"restart"===o?O.restart(!0):O[o]()),T&&T(Te)),!s&&tt||(k&&s&&Ya(Te,k),xe[i]&&Ya(Te,xe[i]),ce&&(1===d?Te.kill(!1,1):xe[i]=0),s||xe[i=1===d?1:3]&&Ya(Te,xe[i])),pe&&!n&&Math.abs(Te.getVelocity())>(Va(pe)?pe:2500)&&(Xa(Te.callbackAnimation),ee?ee.progress(1):Xa(O,"reverse"===o?1:!d,1))):ve&&T&&!Ke&&T(Te)}if(x){var v=de?u/de.duration()*(de._caScrollDist||0):u;y(v+(X._isFlipped?1:0)),x(v)}S&&S(-u/de.duration()*(de._caScrollDist||0))}},Te.enable=function(e,t){Te.enabled||(Te.enabled=!0,xb(be,"resize",Mb),me||xb(be,"scroll",Kb),Ce&&xb(ScrollTrigger,"refreshInit",Ce),!1!==e&&(Te.progress=Oe=0,R=D=Ee=Ae()),!1!==t&&Te.refresh())},Te.getTween=function(e){return e&&A?A.tween:ee},Te.setPositions=function(e,t,r,n){if(de){var i=de.scrollTrigger,o=de.duration(),a=i.end-i.start;e=i.start+a*e/o,t=i.start+a*t/o}Te.refresh(!1,!1,{start:Ea(e,r&&!!Te._startClamp),end:Ea(t,r&&!!Te._endClamp)},n),Te.update()},Te.adjustPinSpacing=function(e){if(Q&&e){var t=Q.indexOf(he.d)+1;Q[t]=parseFloat(Q[t])+e+xt,Q[1]=parseFloat(Q[1])+e+xt,Pt(Q)}},Te.disable=function(e,t){if(!1!==e&&Te.revert(!0,!0),Te.enabled&&(Te.enabled=Te.isActive=!1,t||ee&&ee.pause(),re=0,n&&(n.uncache=1),Ce&&yb(ScrollTrigger,"refreshInit",Ce),te&&(te.pause(),A.tween&&A.tween.kill()&&(A.tween=0)),!me)){for(var r=Tt.length;r--;)if(Tt[r].scroller===be&&Tt[r]!==Te)return;yb(be,"resize",Mb),me||yb(be,"scroll",Kb)}},Te.kill=function(e,t){Te.disable(e,t),ee&&!t&&ee.kill(),a&&delete Ct[a];var r=Tt.indexOf(Te);0<=r&&Tt.splice(r,1),r===$e&&0o&&(b()>o?a.progress(1)&&b(o):a.resetTo("scrollY",o))}Wa(e)||(e={}),e.preventDefault=e.isNormalizer=e.allowClicks=!0,e.type||(e.type="wheel,touch"),e.debounce=!!e.debounce,e.id=e.id||"normalizer";var n,o,l,i,a,c,u,s,f=e.normalizeScrollX,t=e.momentum,r=e.allowNestedScroll,d=e.onRelease,p=J(e.target)||He,g=qe.core.globals().ScrollSmoother,h=g&&g.get(),v=E&&(e.content&&J(e.content)||h&&!1!==e.content&&!h.smooth()&&h.content()),b=L(p,Xe),m=L(p,Ne),y=1,x=(k.isTouch&&Fe.visualViewport?Fe.visualViewport.scale*Fe.visualViewport.width:Fe.outerWidth)/Fe.innerWidth,_=0,w=Ua(t)?function(){return t(n)}:function(){return t||2.8},S=zc(p,e.type,!0,r),T=Ia,C=Ia;return v&&qe.set(v,{y:"+=0"}),e.ignoreCheck=function(e){return E&&"touchmove"===e.type&&function ignoreDrag(){if(i){requestAnimationFrame(Hq);var e=Ja(n.deltaY/2),t=C(b.v-e);if(v&&t!==b.v+b.offset){b.offset=t-b.v;var r=Ja((parseFloat(v&&v._gsap.y)||0)-b.offset);v.style.transform="matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, "+r+", 0, 1)",v._gsap.y=r+"px",b.cacheID=ze.cache,$()}return!0}b.offset&&Lq(),i=!0}()||1.05=o||o-1<=r)&&qe.to({},{onUpdate:Rq,duration:i})}else s.restart(!0);d&&d(e)},e.onWheel=function(){a._ts&&a.pause(),1e3 gsap.registerPlugin(ScrollTrigger); // Globale Defaults gsap.defaults({ ease: "power3.out", duration: 0.8 }); /* ========================= HERO – Einstieg ========================= */ const heroTl = gsap.timeline({ delay: 0.2 }); heroTl .from(".hero-badge", { y: -20, opacity: 0, duration: 0.6 }) // .from(".hero-title", { // y: 40, // opacity: 0 // }, "-=0.25") .from(".hero-subtitle", { y: 30, opacity: 0 }, "-=0.25") .from(".hero .btn", { y: 20, opacity: 0, stagger: 0.1 }, "-=0.3") .from(".hero-card", { y: 60, opacity: 0 }, "-=0.2"); // Subtle Floating / Orbit gsap.to(".hero-card", { y: -8, duration: 4, repeat: -1, yoyo: true, ease: "power1.inOut" }); gsap.to(".hero-orbit", { rotation: 10, duration: 30, repeat: -1, yoyo: true, ease: "none" }); /* ========================= Scroll-Progress Bar ========================= */ gsap.to(".scroll-progress", { scrollTrigger: { trigger: document.body, start: "top top", end: "bottom bottom", scrub: true }, scaleX: 1 }); /* ========================= Sektionen – Premium Animations ========================= */ // WHY – Text von links, Cards von unten gsap.from("#why .col-lg-5[data-animate]", { scrollTrigger: { trigger: "#why", start: "top 70%", toggleActions: "play none none none" }, x: -40, opacity: 0 }); gsap.from("#why .card-soft", { scrollTrigger: { trigger: "#why", start: "top 70%", toggleActions: "play none none none" }, y: 40, opacity: 0, stagger: 0.15 }); // FEATURES – Cards leicht skalieren + stagger gsap.from("#features .section-heading", { scrollTrigger: { trigger: "#features", start: "top 75%", toggleActions: "play none none none" }, y: 30, opacity: 0 }); gsap.from("#features .card-soft", { scrollTrigger: { trigger: "#features", start: "top 75%", toggleActions: "play none none none" }, y: 30, opacity: 0, scale: 0.96, stagger: 0.08 }); // TECHNOLOGY – Spalten gegeneinander einfliegen gsap.from("#technology .col-lg-5[data-animate]", { scrollTrigger: { trigger: "#technology", start: "top 75%", toggleActions: "play none none none" }, x: -40, opacity: 0 }); gsap.from("#technology .col-lg-7[data-animate]", { scrollTrigger: { trigger: "#technology", start: "top 75%", toggleActions: "play none none none" }, x: 40, opacity: 0 }); gsap.from("#technology .card-soft", { scrollTrigger: { trigger: "#technology", start: "top 75%", toggleActions: "play none none none" }, y: 35, opacity: 0, stagger: 0.12 }); // SHOWCASE – Text & Cards, Bilder mit Zoom gsap.from("#showcase .col-lg-5[data-animate]", { scrollTrigger: { trigger: "#showcase", start: "top 75%", toggleActions: "play none none none" }, y: 40, opacity: 0 }); gsap.from("#showcase .showcase-item", { scrollTrigger: { trigger: "#showcase", start: "top 80%", toggleActions: "play none none none" }, y: 40, opacity: 0, stagger: 0.15 }); gsap.utils.toArray("#showcase .showcase-image img").forEach((img) => { gsap.from(img, { scrollTrigger: { trigger: img, start: "top 85%", toggleActions: "play none none none" }, scale: 1.06, opacity: 0, duration: 0.8 }); }); // FOR WHOM – Cards leicht versetzt, diagonaler Move gsap.from("#forwhom .col-lg-5[data-animate]", { scrollTrigger: { trigger: "#forwhom", start: "top 75%", toggleActions: "play none none none" }, x: -30, opacity: 0 }); gsap.from("#forwhom .card-soft", { scrollTrigger: { trigger: "#forwhom", start: "top 80%", toggleActions: "play none none none" }, y: 35, x: 10, opacity: 0, stagger: 0.1 }); // PRICING – Card „popt“ rein gsap.from("#pricing .section-heading", { scrollTrigger: { trigger: "#pricing", start: "top 80%", toggleActions: "play none none none" }, y: 30, opacity: 0 }); gsap.from("#pricing .pricing-card", { scrollTrigger: { trigger: "#pricing .pricing-card", start: "top 80%", toggleActions: "play none none none" }, scale: 0.94, y: 40, opacity: 0 }); // CONTACT – Form-Elemente einzeln einfliegen gsap.from("#contact .section-heading", { scrollTrigger: { trigger: "#contact", start: "top 80%", toggleActions: "play none none none" }, y: 30, opacity: 0 }); gsap.from("#contact .contact-card", { scrollTrigger: { trigger: "#contact .contact-card", start: "top 80%", toggleActions: "play none none none" }, y: 40, opacity: 0 }); gsap.from("#contact .contact-card .form-control, #contact .contact-card .form-select, #contact .contact-card button", { scrollTrigger: { trigger: "#contact .contact-card", start: "top 80%", toggleActions: "play none none none" }, y: 20, opacity: 0, stagger: 0.05, delay: 0.1 }); /* ========================= Hover-Animations (Cards & Buttons) ========================= */ // Karten „heben“ sich leicht gsap.utils.toArray(".card-soft, .showcase-item").forEach((card) => { const hoverTl = gsap.timeline({ paused: true }); hoverTl.to(card, { y: -6, boxShadow: "0 18px 40px rgba(22,25,40,0.12)", duration: 0.25, ease: "power2.out" }); card.addEventListener("mouseenter", () => hoverTl.play()); card.addEventListener("mouseleave", () => hoverTl.reverse()); }); // Buttons mit kleinem Scale-Effekt gsap.utils.toArray(".btn-primary-soft, .btn-outline-soft").forEach((btn) => { const btnTl = gsap.timeline({ paused: true }); btnTl.to(btn, { scale: 1.03, duration: 0.18, ease: "power2.out" }); btn.addEventListener("mouseenter", () => btnTl.play()); btn.addEventListener("mouseleave", () => btnTl.reverse()); });