{"id":14595,"date":"2026-11-03T13:44:18","date_gmt":"2026-11-03T12:44:18","guid":{"rendered":"https:\/\/skyeredtechnology.de\/homepage-test\/projekte-it-innovation-im-banking\/"},"modified":"2026-11-03T14:49:24","modified_gmt":"2026-11-03T13:49:24","slug":"projekte-it-innovation-im-banking","status":"publish","type":"page","link":"https:\/\/skyeredtechnology.de\/en\/homepage-test\/projekte-it-innovation-im-banking\/","title":{"rendered":"Bankenbranche | Sky-E Red Technology"},"content":{"rendered":"<meta name=\"robots\" content=\"noindex, nofollow\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link rel=\"stylesheet\" href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow+Condensed:wght@600;700&#038;family=Barlow:wght@400;500;600&#038;display=swap\">\n<style>\nbutton,[type=button],[type=submit],[type=reset]{color:inherit;background:none;border:0;\npadding:0;border-radius:0;font:inherit;line-height:inherit;text-transform:none;letter-spacing:inherit;\nbox-shadow:none;white-space:normal}\nbutton:hover,button:focus,[type=button]:hover,[type=button]:focus,[type=submit]:hover,[type=submit]:focus{\nbackground-color:transparent;color:inherit;text-decoration:none}\n\/* ==========================================================================\n   Sky-E Red Education \u2014 design system (\"Tonal\")\n   Style reference: more-nutrition.webflow.io, in our brand colours.\n   One hue in tones: a light red-tinted ground, a mid tint for cards and the\n   hero, wine for text and dark buttons, red as the accent. Condensed grotesk\n   headings (Barlow Condensed), Barlow for text. Pill buttons with a small\n   arrow circle, round badges, rounded cards, centred sections, lots of air.\n   One motion: buttons change colour on hover. Nothing animates on scroll.\n   Mobile-first. Components with snippets: COMPONENTS.md.\n   Order: tokens, base, layout, buttons, header\/nav, footer, heroes,\n   components, utilities.\n   ========================================================================== *\/\n\n\/* ---------- Tokens ---------- *\/\n:root {\n  --ground: #ffffff;     \/* page ground: white (Ilyas 2026-11-03: more white; tint only as accent) *\/\n  --tint: #ebd3d6;       \/* mid tint: hero, cards on ground *\/\n  --tint-soft: #f1e2e4;  \/* alternate section ground *\/\n  --tint-deep: #ddb6bc;  \/* hover on tint, hairlines (decorative only) *\/\n  --white: #ffffff;      \/* cards on tint, photo borders *\/\n  --wine: #000000;       \/* brand black (2026-11-02): text, headings, dark buttons, dark band *\/\n  --red: #950900;        \/* brand red #950900: markers, active states, focus, button hover *\/\n  --rose: #008c95;       \/* brand turquoise: second tone of a display headline (large text only) *\/\n  --teal: #008c95;       \/* brand turquoise #008C95; white on it ~4.1:1 (large\/bold only), black on it 5.2:1 *\/\n  --muted: #5a3a40;      \/* secondary text *\/\n  --on-wine: #ffffff;\n  --on-wine-soft: #d6d6d6;\n  \/* Contrast (WCAG): wine on ground 14.4, on tint 11.5, on white 16.3; muted on ground 7.5,\n     on tint 6.0; red on ground 6.5, on tint 5.2; rose on ground 4.2, on tint 3.4 (display\n     sizes only); white on wine 16.3, on red 7.4; #f2c9cf on wine 10.9. *\/\n\n  --font: \"Barlow\", \"Helvetica Neue\", Arial, sans-serif;\n  --font-display: \"Barlow Condensed\", \"Arial Narrow\", \"Helvetica Neue\", Arial, sans-serif;\n  --fs-sm: 0.875rem;\n  --fs-base: 1.0625rem;\n  --fs-md: 1.25rem;\n  --fs-lg: clamp(1.1875rem, 1.1rem + 0.4vw, 1.4375rem);\n  --fs-h3: clamp(1.5rem, 1.35rem + 0.6vw, 1.875rem);\n  --fs-h2: clamp(2.25rem, 1.4rem + 3.4vw, 4.25rem);\n  --fs-h1: clamp(2.75rem, 1.6rem + 4.8vw, 5.5rem);\n  --fs-display: clamp(3.25rem, 1.4rem + 7.6vw, 7rem);\n\n  --gutter: 16px;\n  --container: 72rem;\n  --gap: clamp(1rem, 2.4vw, 1.75rem);\n  --section-y: clamp(4rem, 2.5rem + 6vw, 8rem);\n  --r-card: 12px;\n  --r-pill: 999px;\n  --header-h: 72px;\n  --measure: 66ch;\n  --arrow-wine: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16' fill='none' stroke='%23490009' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 11 11 5M6.5 5H11v4.5'\/%3E%3C\/svg%3E\");\n  --arrow-white: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 11 11 5M6.5 5H11v4.5'\/%3E%3C\/svg%3E\");\n}\n@media (min-width: 768px) { :root { --gutter: 32px; --header-h: 84px; } }\n\n\/* ---------- Base ---------- *\/\n*, *::before, *::after { box-sizing: border-box; }\nhtml { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--header-h) + 16px); }\n@media (min-width: 1024px) { html { font-size: 105.88%; } } \/* 18px body on desktop *\/\nbody {\n  margin: 0; font-family: var(--font); font-size: var(--fs-base); line-height: 1.6;\n  color: var(--wine); background: var(--ground);\n  -webkit-font-smoothing: antialiased; overflow-x: clip;\n}\nimg, svg, video, iframe { max-width: 100%; }\nimg { height: auto; display: block; }\nh1, h2, h3, h4 {\n  margin: 0 0 0.5em; font-family: var(--font-display); font-weight: 700; color: var(--wine);\n  line-height: 0.98; letter-spacing: -0.015em; overflow-wrap: break-word; text-wrap: balance;\n  hyphens: auto; -webkit-hyphens: auto; hyphenate-limit-chars: 12 6 6;\n}\nh1 { font-size: var(--fs-h1); letter-spacing: -0.025em; line-height: 0.92; }\nh2 { font-size: var(--fs-h2); letter-spacing: -0.02em; line-height: 0.95; }\nh3 { font-size: var(--fs-h3); font-weight: 600; line-height: 1.05; }\nh4 { font-size: var(--fs-md); font-weight: 600; }\np { margin: 0 0 1em; max-width: var(--measure); }\np:last-child { margin-bottom: 0; }\na { color: var(--wine); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 0.18em; }\na:hover { color: var(--red); }\nstrong { font-weight: 600; }\nul, ol { margin: 0 0 1em; padding-left: 1.25em; }\nli { max-width: var(--measure); }\n:focus-visible { outline: 3px solid var(--red); outline-offset: 3px; }\n.section--dark :focus-visible, .footer-cta :focus-visible { outline-color: var(--white); } \/* red on wine is too faint *\/\n::selection { background: var(--wine); color: #fff; }\n\n.tone { color: var(--rose); display: block; } \/* second tone of a display headline: max 1\u20132 per site page *\/\n.skip-link {\n  position: absolute; left: 12px; top: -60px; z-index: 200; border-radius: var(--r-pill);\n  background: var(--wine); color: #fff; padding: 10px 18px; font-weight: 600; text-decoration: none;\n}\n.skip-link:focus { top: 12px; color: #fff; }\n.sr-only {\n  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;\n  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;\n}\n\n\/* ---------- Layout ---------- *\/\n.container { width: 100%; max-width: calc(var(--container) + 2 * var(--gutter)); margin-inline: auto; padding-inline: var(--gutter); }\n.container--narrow > * { max-width: 48rem; margin-inline: auto; }\n.section { padding-block: var(--section-y); position: relative; }\n.section--tight { padding-block: calc(var(--section-y) * 0.6); }\n.section--alt { background: var(--tint-soft); }\n.section--dark { background: var(--wine); color: var(--on-wine-soft); }\n.section--dark :is(h1, h2, h3, h4, strong) { color: var(--on-wine); }\n.section--dark a:not(.btn) { color: var(--on-wine); }\n\n\/* Section heading: centred above the content. *\/\n.section__head { text-align: center; max-width: 54rem; margin: 0 auto clamp(2.5rem, 5vw, 4rem); }\n.section__head > :last-child { margin-bottom: 0; }\n.section__head p { margin-inline: auto; max-width: 46rem; }\n.section__head h2 + p { margin-top: 1.25rem; }\n.section--dark .section__head p { color: var(--on-wine-soft); }\n.section__head--row .text-link { display: inline-block; margin-top: 1.25rem; }\n.section__head img { margin: 0 auto; width: 100%; max-width: 22rem; background: var(--white); border-radius: var(--r-card); padding: 1rem 1.5rem; }\n.section__head + .stack, .section__head + .checklist:not(.checklist--cards) { max-width: 46rem; margin-inline: auto; }\n.section__head ~ .btn-row { justify-content: center; }\n\n.h-small { font-size: var(--fs-h3); }\n.lead { font-size: var(--fs-lg); line-height: 1.45; }\n.muted { color: var(--muted); }\n.section--dark .lead { color: var(--on-wine); }\n\n.grid { display: grid; gap: var(--gap); }\n@media (min-width: 640px) { .grid--2, .grid--3, .grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n@media (min-width: 1024px) {\n  .grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }\n  .grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }\n}\n\n\/* Two columns: text + media (6\/6), wide text (7\/5), reversed, top-aligned. *\/\n.split { display: grid; gap: clamp(2rem, 5vw, 4rem); align-items: center; }\n@media (min-width: 900px) {\n  .split { grid-template-columns: repeat(12, minmax(0, 1fr)); }\n  .split > :first-child { grid-column: 1 \/ 7; }\n  .split > :last-child { grid-column: 7 \/ -1; }\n  .split--wide-text > :first-child { grid-column: 1 \/ 8; }\n  .split--wide-text > :last-child { grid-column: 8 \/ -1; }\n  .split--reverse > :first-child { order: 2; grid-column: 7 \/ -1; }\n  .split--reverse > :last-child { order: 1; grid-column: 1 \/ 7; }\n  .split--top { align-items: start; }\n}\n.split h2:not(.h-small), .grid h2:not(.h-small) { font-size: clamp(2rem, 1.3rem + 2.4vw, 3.25rem); }\n\n\/* Photos: rounded, white border. *\/\n.split__media img, .media-frame img, .photo-frame img, .page-hero__media img {\n  width: 100%; border: 6px solid var(--white); border-radius: var(--r-card); background: var(--white);\n}\n.photo-frame { margin: 0; }\n.photo-frame img { border-width: 8px; border-radius: 14px; aspect-ratio: 4 \/ 3; object-fit: cover; }\n.photo-frame--tilt { transform: rotate(-2.5deg); }\n\n\/* ---------- Buttons: pill with a small arrow circle ---------- *\/\n.btn {\n  --btn-bg: var(--wine); --btn-fg: var(--white); --btn-dot: var(--white); --btn-arrow: var(--arrow-wine);\n  display: inline-flex; align-items: center; justify-content: center; gap: 0.7rem;\n  min-height: 52px; padding: 0.375rem 1.5rem 0.375rem 0.375rem; border: 0; border-radius: var(--r-pill);\n  background: var(--btn-bg); color: var(--btn-fg);\n  font: 600 1.125rem\/1.1 var(--font-display); letter-spacing: 0.01em; text-decoration: none; text-align: center;\n  cursor: pointer; transition: background-color 0.15s ease-out, color 0.15s ease-out;\n}\n.btn::before {\n  content: \"\"; flex: none; width: 2.5rem; height: 2.5rem; border-radius: 50%;\n  background: var(--btn-dot) var(--btn-arrow) center \/ 1rem no-repeat;\n}\n.btn:hover, .btn:active { --btn-bg: var(--red); color: var(--btn-fg); }\n.btn--lg { min-height: 60px; font-size: 1.3125rem; padding-right: 1.75rem; }\n.btn--lg::before { width: 3rem; height: 3rem; background-size: 1.125rem; }\n.btn--sm { min-height: 46px; font-size: 1.0625rem; padding-right: 1.15rem; }\n.btn--sm::before { width: 2.125rem; height: 2.125rem; background-size: 0.875rem; }\n.btn--outline { --btn-bg: var(--tint); --btn-fg: var(--wine); --btn-dot: var(--wine); --btn-arrow: var(--arrow-white); }\n.btn--outline:hover, .btn--outline:active { --btn-bg: var(--tint-deep); color: var(--wine); }\n.section--alt .btn--outline, .hero .btn--outline, .page-hero .btn--outline { --btn-bg: var(--white); }\n.btn--light { --btn-bg: var(--white); --btn-fg: var(--wine); --btn-dot: var(--wine); --btn-arrow: var(--arrow-white); }\n.btn--light:hover, .btn--light:active { --btn-bg: var(--tint); color: var(--wine); }\n.btn-row { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; margin-top: 2rem; }\n.text-link { font-weight: 600; }\n\n\/* ---------- Header & navigation ---------- *\/\n.ser-site-header { position: sticky; top: 0; z-index: 100; background: var(--ground); border-bottom: 1px solid #efe3e5; }\n.site-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; height: var(--header-h); }\n.brand { display: inline-flex; align-items: center; text-decoration: none; flex: none; }\n.brand img { height: calc(var(--header-h) - 22px); width: auto; }\n\n.nav { display: none; }\n.nav__list { display: flex; align-items: center; gap: 0.375rem; list-style: none; margin: 0; padding: 0; }\n.nav__link, .nav__toggle {\n  display: inline-flex; align-items: center; gap: 0.3rem; min-height: 40px; padding: 0.4rem 0.95rem;\n  background: var(--tint); border: 0; border-radius: var(--r-pill); cursor: pointer;\n  font: 600 1.0625rem\/1.1 var(--font-display); color: var(--wine); text-decoration: none; white-space: nowrap;\n}\n.nav__link:hover, .nav__toggle:hover, .nav__item.is-open > .nav__toggle { background: var(--tint-deep); color: var(--wine); }\n.nav__link[aria-current=\"page\"], .nav__item[data-current] > .nav__toggle { background: var(--wine); color: var(--white); }\n.nav__toggle::after {\n  content: \"\"; width: 0.4rem; height: 0.4rem; margin: -0.2rem 0 0 0.15rem;\n  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg);\n}\n.nav__item.is-open > .nav__toggle::after { transform: rotate(-135deg); margin-top: 0.2rem; }\n.nav__item { position: relative; }\n.nav__menu {\n  position: absolute; top: calc(100% + 8px); left: 0; min-width: 300px; max-width: 380px;\n  list-style: none; margin: 0; padding: 0.5rem; background: var(--white); border-radius: var(--r-card); display: none;\n}\n.nav__menu::before { content: \"\"; position: absolute; inset: -12px 0 auto; height: 12px; } \/* hover bridge *\/\n.nav__item.is-open > .nav__menu { display: block; }\n.nav__menu a {\n  display: block; padding: 0.6rem 0.85rem; border-radius: 8px; text-decoration: none;\n  color: var(--wine); font-size: 0.9375rem; font-weight: 500; line-height: 1.35;\n}\n.nav__menu a:hover, .nav__menu a:focus-visible { background: var(--tint-soft); color: var(--wine); }\n.nav__menu a[aria-current=\"page\"] { background: var(--tint); }\n.header-cta { display: none; }\n\n.burger {\n  display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px;\n  border-radius: 50%; border: 0; background: var(--tint); cursor: pointer; color: var(--wine);\n}\n.burger span, .burger span::before, .burger span::after { display: block; width: 20px; height: 2px; background: currentColor; position: relative; }\n.burger span::before, .burger span::after { content: \"\"; position: absolute; left: 0; }\n.burger span::before { top: -6px; }\n.burger span::after { top: 6px; }\n.burger[aria-expanded=\"true\"] span { background: transparent; }\n.burger[aria-expanded=\"true\"] span::before { transform: translateY(6px) rotate(45deg); }\n.burger[aria-expanded=\"true\"] span::after { transform: translateY(-6px) rotate(-45deg); }\n\n.mobile-nav {\n  position: fixed; inset: var(--header-h) 0 0 0; z-index: 99; background: var(--ground);\n  overflow-y: auto; overscroll-behavior: contain; padding: 0.5rem var(--gutter) 2.5rem;\n}\n.mobile-nav[hidden] { display: none; }\n.mobile-nav__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.5rem; }\n.mobile-nav__list > li { max-width: none; background: var(--tint); border-radius: var(--r-card); }\n.mobile-nav__link, .mobile-nav__toggle {\n  display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 12px;\n  min-height: 56px; padding: 0.75rem 1.1rem; background: none; border: 0; cursor: pointer; text-align: left;\n  font: 600 1.375rem\/1.15 var(--font-display); color: var(--wine); text-decoration: none;\n}\n.mobile-nav__link[aria-current=\"page\"] { text-decoration: underline; text-decoration-thickness: 2px; }\n.mobile-nav__toggle::after { content: \"+\"; font-size: 1.5rem; font-weight: 500; }\n.mobile-nav__toggle[aria-expanded=\"true\"]::after { content: \"\\2212\"; }\n.mobile-nav__sub { list-style: none; margin: 0; padding: 0 0.5rem 0.75rem; }\n.mobile-nav__sub[hidden] { display: none; }\n.mobile-nav__sub a { display: block; padding: 0.6rem 0.75rem; border-radius: 8px; color: var(--wine); text-decoration: none; font-weight: 500; line-height: 1.4; }\n.mobile-nav__sub a[aria-current=\"page\"] { background: var(--white); }\n.mobile-nav .btn { width: 100%; margin-top: 1.5rem; }\nbody.nav-open { overflow: hidden; }\n\n@media (min-width: 1180px) {\n  .site-header__inner { display: grid; grid-template-columns: 1fr auto 1fr; }\n  .nav { display: block; }\n  .header-cta { display: inline-flex; justify-self: end; }\n  .burger, .mobile-nav { display: none !important; }\n}\n\n\/* ---------- Footer ---------- *\/\n.ser-site-footer { background: var(--tint); color: var(--wine); font-size: 0.9375rem; }\n.ser-site-footer a:not(.btn) { color: var(--wine); text-decoration: none; }\n.ser-site-footer a:not(.btn):hover { color: var(--red); text-decoration: underline; }\n.footer-cta { background: var(--wine); color: var(--on-wine-soft); padding-block: clamp(3.5rem, 7vw, 6rem); text-align: center; }\n.footer-cta__inner { display: flex; flex-direction: column; align-items: center; gap: 2rem; }\n.footer-cta h2 { color: var(--white); margin-bottom: 0.4em; }\n.footer-cta p { margin: 0 auto 0.35em; font-size: var(--fs-md); line-height: 1.4; max-width: 40rem; }\n.footer-cta strong { color: var(--white); }\n.footer-grid { display: grid; gap: 2.5rem var(--gap); padding-block: clamp(3rem, 5vw, 4.5rem) 3rem; grid-template-columns: minmax(0, 1fr); }\n@media (min-width: 640px) { .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n@media (min-width: 1024px) { .footer-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); } .footer-grid > :nth-child(1) { grid-column: span 3; } .footer-grid > :nth-child(2) { grid-column: span 4; } .footer-grid > :nth-child(3) { grid-column: span 3; } .footer-grid > :nth-child(4) { grid-column: span 2; } }\n.footer-brand img { width: 64px; height: auto; margin-bottom: 1.25rem; }\n.footer-title { font: 700 1.25rem\/1.1 var(--font-display); text-transform: uppercase; letter-spacing: 0.01em; margin: 0 0 0.85rem; }\n.footer-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.5rem; }\n.footer-contact li { display: grid; grid-template-columns: 4.5rem minmax(0, 1fr); gap: 0.75rem; }\n.footer-label { color: var(--wine); font-size: var(--fs-sm); }\n.footer-list--sub { padding-left: 0.9rem; gap: 0.4rem; margin-top: 0.5rem; }\n.footer-bottom {\n  border-top: 1px solid var(--tint-deep); padding-block: 1.25rem;\n  display: flex; flex-wrap: wrap; gap: 0.75rem 1.5rem; align-items: center; justify-content: space-between;\n}\n.social { display: flex; flex-wrap: wrap; gap: 0.5rem; list-style: none; margin: 0; padding: 0; }\n.ser-site-footer .social a {\n  display: inline-flex; align-items: center; min-height: 44px; padding: 0 1rem; border-radius: var(--r-pill);\n  background: var(--ground); font-weight: 500;\n}\n.ser-site-footer .social a:hover { text-decoration: none; background: var(--white); }\n\n\/* ---------- Fact box (class name kept: kursblatt) ----------\n   The course facts as rounded tiles: small label, value in the display face.\n   The one key figure (.kursblatt__big) spans the full width on top. Seals in a\n   white strip at the foot. Only facts that are on the same page. *\/\n.kursblatt { width: 100%; }\n.kursblatt__rows { display: flex; flex-wrap: wrap; gap: 0.625rem; margin: 0; }\n.kursblatt__row {\n  flex: 1 1 15rem; display: flex; flex-direction: column; justify-content: center; gap: 0.3rem;\n  padding: 1rem 1.25rem; background: var(--white); border-radius: var(--r-card); text-align: center;\n}\n.kursblatt__row:has(.kursblatt__big) { flex-basis: 100%; order: -1; padding-block: 1.25rem; }\n@media (max-width: 639px) { .kursblatt__row { flex-basis: 9.5rem; padding: 0.85rem 0.75rem; } .kursblatt__row:first-child { flex-basis: 100%; } .kursblatt dd { font-size: 1.1875rem; } }\n.kursblatt dt { font-size: var(--fs-sm); font-weight: 500; color: var(--muted); line-height: 1.3; }\n.kursblatt dd { margin: 0; font: 600 1.3125rem\/1.15 var(--font-display); color: var(--wine); overflow-wrap: anywhere; }\n.kursblatt dd.kursblatt__big { font-size: clamp(2.5rem, 1.8rem + 2.6vw, 3.75rem); font-weight: 700; line-height: 0.95; letter-spacing: -0.02em; }\n.kursblatt__seals {\n  display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem 2rem;\n  margin-top: 0.625rem; padding: 1rem 1.25rem; background: var(--white); border-radius: var(--r-card);\n}\n.kursblatt__seals img { height: 56px; width: auto; }\n.kursblatt__seals img.is-wide { height: 44px; }\n\n\/* ---------- Hero (homepage) ---------- *\/\n.hero { background: var(--tint); padding-block: clamp(2.5rem, 5vw, 4.5rem) clamp(3.5rem, 7vw, 6rem); }\n.hero__top { text-align: center; }\n.hero__top h1 { font-size: var(--fs-display); margin: 0 auto; max-width: 12em; }\n.hero__top .btn-row { justify-content: center; margin-top: clamp(1.75rem, 3vw, 2.5rem); }\n.hero__row { display: grid; gap: 2.5rem; align-items: center; margin-top: clamp(3rem, 6vw, 5rem); }\n.hero__media { position: relative; }\n.hero__lead { font: 700 clamp(1.75rem, 1.2rem + 2vw, 2.75rem)\/1 var(--font-display); letter-spacing: -0.01em; margin-bottom: 1rem; max-width: 18em; text-wrap: balance; }\n.hero__note { margin-top: 1.25rem; font-weight: 500; }\n.hero > .container > .kursblatt { max-width: 56rem; margin: clamp(3rem, 6vw, 4.5rem) auto 0; }\n@media (min-width: 960px) {\n  .hero__row { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(3rem, 5vw, 5rem); }\n  .hero__media .photo-frame { margin-left: 7.5rem; }  \/* badges overlap the frame by about 1.5rem *\/\n}\n\n\/* Round badges (class names: stats \/ stat). Only figures that are on the page. *\/\n.stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; }\n.stat {\n  --d: 12rem;\n  width: var(--d); height: var(--d); border-radius: 50%; background: var(--tint); flex: none;\n  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.35rem;\n  padding: 1.25rem; text-align: center;\n}\n.section--alt .stat, .page-hero .stat { background: var(--white); }\n.stat__value { display: block; font: 700 clamp(2.25rem, 1.8rem + 1.4vw, 3rem)\/0.95 var(--font-display); letter-spacing: -0.02em; color: var(--wine); }\n.stat__label { display: block; font-size: 0.875rem; line-height: 1.3; color: var(--wine); hyphens: auto; }\n@media (min-width: 640px) { .stat { --d: 13.5rem; } }\n.page-hero .stats { margin-top: 2.5rem; }\n\n\/* Hero badges: three small circles on the photo's left edge (stacked on desktop, a row below on phones). *\/\n.stats--hero { position: relative; z-index: 1; flex-wrap: nowrap; gap: 0.5rem; margin-top: -2.5rem; }\n.stats--hero .stat { --d: min(8.5rem, 28vw); background: var(--ground); padding: 0.5rem; gap: 0.15rem; }\n.stats--hero .stat__value { font-size: clamp(1.75rem, 1.2rem + 2.4vw, 2.75rem); }\n.stats--hero .stat__label { font-size: clamp(0.6875rem, 0.6rem + 0.35vw, 0.875rem); font-weight: 500; }\n@media (min-width: 960px) {\n  .stats--hero { position: absolute; left: 0; top: 50%; transform: translateY(-50%); flex-direction: column; margin: 0; gap: 0.75rem; }\n  .stats--hero .stat { --d: 9rem; }\n  .stats--hero .stat:nth-child(2) { margin-left: 1.5rem; }\n}\n\n\/* ---------- Page hero (course and sub pages): centred, facts below ---------- *\/\n.page-hero { background: var(--tint); padding-block: clamp(2.5rem, 5vw, 4.5rem) clamp(3rem, 6vw, 5.5rem); text-align: center; }\n.page-hero h1 { margin-inline: auto; max-width: 16em; margin-bottom: 1.5rem; }\n.page-hero p { margin-inline: auto; max-width: 44rem; }\n.page-hero .btn-row { justify-content: center; }\n.page-hero__grid { display: flex; flex-direction: column; align-items: center; }\n.page-hero__grid > .kursblatt { max-width: 56rem; margin-top: clamp(2.5rem, 5vw, 3.5rem); }\n.page-hero--simple { padding-block: clamp(2.5rem, 5vw, 4.5rem); }\n.page-hero--simple h1 { margin-bottom: 0; }\n.page-hero--simple .lead { margin-top: 1.25rem; }\n.breadcrumb { font-size: var(--fs-sm); margin: 0 auto 1.5rem; color: var(--muted); }\n.breadcrumb a { color: var(--muted); }\n\n\/* Facts: small pills (job facts, short claims) *\/\n.facts { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1.25rem 0 0; padding: 0; list-style: none; }\n.facts li { padding: 0.45rem 1rem; border-radius: var(--r-pill); background: var(--tint); font-weight: 500; max-width: none; }\n.section--alt .facts li { background: var(--white); }\n\n\/* ---------- Lists ---------- *\/\n.checklist { list-style: none; margin: 0 0 1.25em; padding: 0; display: grid; gap: 0.6rem; text-align: left; }\n.checklist li { position: relative; padding-left: 1.4rem; line-height: 1.5; }\n.checklist li::before { content: \"\"; position: absolute; left: 0; top: 0.5em; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--red); }\n.section--dark .checklist li::before { background: var(--on-wine); }\n\n\/* Two columns of rounded rows *\/\n.checklist--cols { gap: 0.5rem var(--gap); }\n@media (min-width: 640px) { .checklist--cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n\n\/* Feature tiles: rounded mid-tint cards, centred uppercase titles *\/\n.checklist--cards { gap: 0.75rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); }\n.checklist--cards li {\n  display: flex; align-items: center; justify-content: center; min-height: 7.5rem; padding: 1.25rem 1rem;\n  background: var(--tint); border-radius: var(--r-card); text-align: center; max-width: none;\n  font: 700 1.4375rem\/1.02 var(--font-display); text-transform: uppercase; letter-spacing: 0; font-variant-ligatures: none;\n  hyphens: manual; -webkit-hyphens: manual; overflow-wrap: break-word; \/* whole words only; long compounds carry &shy; *\/\n}\n.checklist--cards li::before { display: none; }\n.checklist--cards strong { font-weight: 700; }\n.section--alt .checklist--cards li, .card--feature .checklist--cards li { background: var(--white); }\n@media (max-width: 639px) { .checklist--cards:not(.checklist--single) { grid-template-columns: repeat(2, minmax(0, 1fr)); } .checklist--cards li { font-size: 1.125rem; min-height: 6rem; padding: 1rem 0.5rem; } }\n\/* One column: rounded rows, normal text *\/\n.checklist--single { grid-template-columns: minmax(0, 1fr) !important; }\n.checklist--single li {\n  display: block; min-height: 0; padding: 0.9rem 1.25rem 0.9rem 2.6rem; text-align: left;\n  font: 500 1.0625rem\/1.5 var(--font); text-transform: none;\n}\n.checklist--single li::before { display: block; left: 1.25rem; top: calc(0.9rem + 0.5em); }\n.checklist--single strong { font-weight: 600; }\n\n\/* ---------- Cards ---------- *\/\n.card { display: flex; flex-direction: column; gap: 0.75rem; margin: 0; }\na.card { text-decoration: none; color: inherit; background: var(--tint); border-radius: var(--r-card); padding: 0.5rem 0.5rem 1.5rem; }\n.section--alt a.card { background: var(--white); }\na.card:hover h3 { color: var(--red); }\n.card__media { aspect-ratio: 16 \/ 9; overflow: hidden; border-radius: 8px; background: var(--white); }\n.card__media img { width: 100%; height: 100%; object-fit: cover; }\n.card__body { display: flex; flex-direction: column; gap: 0.5rem; flex: 1; padding-inline: 1rem; }\n.card h3 { margin: 0; font-size: clamp(1.375rem, 1.2rem + 0.5vw, 1.625rem); text-transform: uppercase; font-weight: 700; hyphens: manual; -webkit-hyphens: manual; }\n.card__meta { font-size: var(--fs-sm); font-weight: 500; color: var(--muted); }\n.card__logo { height: 44px; width: auto; max-width: 70%; object-fit: contain; align-self: center; margin-bottom: 0.25rem; }\n.card__foot { margin-top: auto; padding-top: 0.5rem; font-weight: 600; text-decoration: underline; }\n\/* Feature card: mid-tint card with an uppercase title, like the reference's \"MORE TASTE\" cards.\n   Text stays left-aligned because most of these cards carry several lines; a card with a source\n   logo on top (short claim + number) is centred like the reference. *\/\n.card--feature {\n  background: var(--tint); border-radius: var(--r-card); padding: clamp(1.75rem, 3vw, 2.5rem) clamp(1.25rem, 2.6vw, 2rem);\n}\n.card--feature:has(.card__logo) { text-align: center; align-items: center; }\n.card--feature:has(.card__logo) > * { margin-inline: auto; }\n.card--feature .checklist { margin: 0.25rem 0 0; align-self: stretch; }\n.card--feature h2.h-small { font-size: var(--fs-h3); text-transform: uppercase; margin-bottom: 0.25rem; }\n.section--alt .card--feature { background: var(--white); }\n.section--dark .card--feature { background: rgba(255, 255, 255, 0.08); }\n\n\/* Certificates *\/\n.cert-card { display: grid; gap: 1.25rem var(--gap); align-items: center; background: var(--tint); border-radius: var(--r-card); padding: 1.25rem; margin: 0; }\n.section--alt .cert-card { background: var(--white); }\n@media (min-width: 900px) { .cert-card--wide { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 2.5rem; padding: 2rem; } }\n.cert-card__media { display: grid; place-items: center; background: var(--white); border-radius: 8px; padding: 0.75rem; min-height: 0; }\n.cert-card__media img { max-height: 150px; width: auto; max-width: 100%; object-fit: contain; }\n.cert-card--compact { grid-template-columns: 8rem minmax(0, 1fr); gap: 1.25rem; padding: 0.75rem; }\n.cert-card--compact .cert-card__media img { max-height: 52px; }\n@media (max-width: 399px) { .cert-card--compact { grid-template-columns: 6.5rem minmax(0, 1fr); } }\n.cert-card h3 { margin-bottom: 0.4rem; text-transform: uppercase; font-weight: 700; }\n.cert-card__label { font-size: var(--fs-sm); color: var(--muted); margin: 0 0 0.2rem; }\n.cert-card__code { font: 600 1.25rem\/1.15 var(--font-display); overflow-wrap: anywhere; }\n\n\/* Seal row *\/\n.seal-row { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 0.75rem; list-style: none; margin: 0; padding: 0; }\n.seal { display: flex; align-items: center; justify-content: center; height: 96px; padding: 0.75rem 1.25rem; background: var(--white); border-radius: var(--r-card); }\n.seal img { max-height: 72px; width: auto; max-width: 200px; object-fit: contain; }\n\n\/* Testimonials: white cards *\/\n.quotes { display: grid; gap: var(--gap); }\n@media (min-width: 720px) { .quotes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n.quote-card { margin: 0; padding: clamp(1.5rem, 3vw, 2.25rem); background: var(--white); border-radius: var(--r-card); display: flex; flex-direction: column; gap: 1.25rem; }\n.quote-card blockquote { margin: 0; font-size: var(--fs-md); font-weight: 500; line-height: 1.45; }\n.quote-card figcaption { display: flex; flex-wrap: wrap; gap: 0.15rem 0.75rem; align-items: baseline; margin-top: auto; }\n.quote-card__name { font: 700 1.25rem\/1.1 var(--font-display); text-transform: uppercase; }\n.quote-card__source { font-size: var(--fs-sm); color: var(--muted); }\n.stars { display: none; } \/* the text \"5\/5 auf Trustpilot\" carries the rating *\/\n\n\/* Steps: cards with a round number on the top edge *\/\n.steps { list-style: none; margin: 0; padding: 1.75rem 0 0; display: grid; gap: 2.75rem var(--gap); }\n@media (min-width: 640px) { .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n@media (min-width: 1100px) { .steps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }\n.step { position: relative; max-width: none; background: var(--tint); border-radius: var(--r-card); padding: 2.75rem 1.5rem 1.75rem; text-align: center; }\n.section--alt .step { background: var(--white); }\n.step__num {\n  position: absolute; top: -1.75rem; left: 50%; transform: translateX(-50%);\n  display: grid; place-items: center; width: 3.5rem; height: 3.5rem; border-radius: 50%;\n  background: var(--red); color: var(--white); font: 700 1.75rem\/1 var(--font-display);\n  box-shadow: 0 0 0 6px var(--ground);\n}\n.section--alt .step__num { box-shadow: 0 0 0 6px var(--tint-soft); }\n.step h3 { font-size: 1.5rem; text-transform: uppercase; margin: 0 0 0.6rem; }\n.step p { margin: 0; text-align: left; }\n\n\/* Vertical timeline (phases) *\/\n.timeline { list-style: none; margin: 0; padding: 0 0 0 2rem; position: relative; display: grid; gap: 1.75rem; }\n.timeline::before { content: \"\"; position: absolute; left: 0.45rem; top: 0.5rem; bottom: 0.5rem; width: 2px; background: var(--tint-deep); }\n.timeline > li { position: relative; }\n.timeline > li::before { content: \"\"; position: absolute; left: -2rem; top: 0.3rem; width: 1rem; height: 1rem; border-radius: 50%; background: var(--wine); box-shadow: 0 0 0 4px var(--ground); }\n.timeline h3 { font-size: var(--fs-md); margin-bottom: 0.3rem; }\n\n\/* Progress *\/\n.progress { display: grid; gap: 0.4rem; }\n.progress__head { display: flex; justify-content: space-between; gap: 12px; font-weight: 600; }\n.progress__bar { height: 10px; background: var(--tint); border-radius: var(--r-pill); overflow: hidden; }\n.section--alt .progress__bar { background: var(--white); }\n.progress__bar > span { display: block; height: 100%; background: var(--wine); border-radius: var(--r-pill); }\n\n\/* Modules (curriculum) *\/\n.modules { display: grid; gap: var(--gap); }\n@media (min-width: 768px) { .modules { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n@media (min-width: 1100px) { .modules--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }\n.module-card { display: flex; flex-direction: column; background: var(--tint); border-radius: var(--r-card); padding: clamp(1.5rem, 2.8vw, 2.25rem); }\n.section--alt .module-card { background: var(--white); }\n.module-card__label {\n  align-self: center; margin: 0 0 0.75rem; padding: 0.3rem 0.9rem; border-radius: var(--r-pill);\n  background: var(--wine); color: var(--white); font-size: var(--fs-sm); font-weight: 600; line-height: 1.2;\n}\n.module-card h3 { margin-bottom: 1.25rem; font-size: 1.5rem; text-align: center; text-transform: uppercase; font-weight: 700; hyphens: manual; -webkit-hyphens: manual; }\n.module-card .checklist { margin: 0; gap: 0.45rem; }\n.module-card .btn-row { margin-top: auto; padding-top: 1.5rem; justify-content: center; }\n\n\/* Logo row: white tiles *\/\n\/* Flex, so an incomplete last row sits centred. --per = tiles per row. *\/\n.logo-wall { --per: 2; --g: 0.75rem; display: flex; flex-wrap: wrap; justify-content: center; gap: var(--g); list-style: none; margin: 0; padding: 0; }\n@media (min-width: 640px) { .logo-wall { --per: 3; } }\n.logo-wall li {\n  flex: 0 0 calc((100% - (var(--per) - 1) * var(--g)) \/ var(--per)); max-width: none;\n  display: flex; align-items: center; justify-content: center; height: 104px; padding: 1rem 1.25rem;\n  background: var(--white); border-radius: var(--r-card);\n}\n.logo-wall img { max-height: 60px; max-width: min(100%, 9rem); width: auto; object-fit: contain; filter: grayscale(1); }\n.logo-wall--8 { --per: 3; --g: 0.5rem; }\n@media (min-width: 640px) { .logo-wall--8 { --per: 4; } }\n@media (min-width: 1024px) { .logo-wall--8 { --per: 8; } }\n.logo-wall--8 li { height: 80px; padding: 0.75rem; }\n.logo-wall--8 img { max-height: 40px; max-width: min(100%, 6.5rem); }\n\n\/* Accordion: rounded rows *\/\n.accordion { display: grid; gap: 0.625rem; }\n.accordion details { background: var(--tint-soft); border-radius: var(--r-card); }\n.section--alt .accordion details { background: var(--white); }\n.accordion summary {\n  list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1rem;\n  padding: 1.1rem 1.25rem; font-weight: 600; font-size: 1.0625rem; line-height: 1.4; border-radius: var(--r-card);\n}\n.accordion summary::-webkit-details-marker { display: none; }\n.accordion summary::after {\n  content: \"+\"; flex: none; display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 50%;\n  background: var(--wine); color: var(--white); font-size: 1.25rem; line-height: 1; font-weight: 500;\n}\n.accordion details[open] summary::after { content: \"\\2212\"; }\n.accordion summary:hover { color: var(--red); }\n.accordion__body { padding: 0 1.25rem 1.4rem; }\n.accordion__body > :last-child { margin-bottom: 0; }\n.accordion__body .facts li { background: var(--white); }\n\n\/* In-page CTA: centred tint panel *\/\n.cta-band {\n  background: var(--tint); border-radius: var(--r-card); padding: clamp(2.5rem, 6vw, 4.5rem) clamp(1.25rem, 4vw, 3rem);\n  display: flex; flex-direction: column; align-items: center; gap: 1.75rem; text-align: center;\n}\n.section--alt .cta-band { background: var(--white); }\n.cta-band h2 { margin: 0 auto; max-width: 18em; }\n.cta-band p { margin: 0.75rem auto 0; }\n.cta-band > div { max-width: 48rem; }\n\n\/* Start dates on wine: centred, dates very large *\/\n.section--dark .container:has(> .date-list), .section--dark .split:has(.date-list) { text-align: center; }\n.date-list { list-style: none; margin: 0 auto 2.5rem; padding: 0; display: grid; gap: 1.75rem; }\n.date-list li { display: flex; flex-direction: column; align-items: center; gap: 0.15rem; max-width: none; }\n.date-list__course { font: 600 clamp(1.25rem, 1.1rem + 0.6vw, 1.625rem)\/1.2 var(--font-display); }\n.date-list__date { font: 700 var(--fs-display)\/0.9 var(--font-display); letter-spacing: -0.02em; white-space: nowrap; }\n.section--dark .date-list__course { color: var(--on-wine-soft); }\n.section--dark .date-list__date { color: var(--on-wine); }\n\n\/* Contact: white rounded rows *\/\n.contact-cards { display: grid; gap: 0.625rem; }\n.contact-card { display: block; padding: 1rem 1.25rem; background: var(--white); border-radius: var(--r-card); text-decoration: none; color: var(--wine); }\na.contact-card:hover .contact-card__value { color: var(--red); }\n.contact-card__icon { display: none; }\n.contact-card__label { display: block; font-size: var(--fs-sm); color: var(--muted); }\n.contact-card__value { display: block; font: 600 1.5rem\/1.15 var(--font-display); overflow-wrap: anywhere; }\n\n\/* Embeds: rounded, white border *\/\n.embed { position: relative; width: 100%; overflow: hidden; background: var(--white); border: 6px solid var(--white); border-radius: var(--r-card); }\n.embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 6px; }\n.embed--video { aspect-ratio: 16 \/ 9; }\n.embed--map { aspect-ratio: 4 \/ 3; min-height: 260px; }\n.embed--form { aspect-ratio: auto; min-height: 720px; }\n.embed--form iframe { position: static; height: 720px; }\n\n\/* Legal \/ long text *\/\n.prose { max-width: 46rem; margin-inline: auto; }\n.prose h2 { font-size: clamp(1.75rem, 1.4rem + 1.2vw, 2.375rem); margin-top: 2em; }\n.prose h3 { font-size: var(--fs-md); margin-top: 1.75em; }\n.prose h2:first-child, .prose h3:first-child { margin-top: 0; }\n.prose ul, .prose ol { padding-left: 1.4em; }\n.prose li { margin-bottom: 0.4em; }\n.prose a { overflow-wrap: anywhere; }\n.prose table { width: 100%; border-collapse: collapse; margin: 1em 0; font-size: var(--fs-sm); display: block; overflow-x: auto; }\n.prose th, .prose td { border-bottom: 1px solid var(--tint-deep); padding: 0.6rem 0.75rem 0.6rem 0; text-align: left; vertical-align: top; }\n\n\/* Note *\/\n.callout { background: var(--tint); padding: 1.25rem 1.5rem; border-radius: var(--r-card); }\n.section--alt .callout, .cta-band .callout { background: var(--white); }\n.cta-band .callout { margin-top: 1.25rem; }\n\n\/* ---------- Utilities ---------- *\/\n.mt-0 { margin-top: 0 !important; }\n.mb-0 { margin-bottom: 0 !important; }\n.mt-lg { margin-top: clamp(2rem, 4vw, 3.5rem); }\n.stack > * + * { margin-top: 1em; }\n.nowrap { white-space: nowrap; } \/* keeps a hyphenated name together (\"Sky-E\") *\/\n.hide-mobile { display: none; }\n@media (min-width: 768px) { .hide-mobile { display: revert; } .hide-desktop { display: none; } }\n\n@media (prefers-reduced-motion: reduce) {\n  *, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }\n}\n\n\/* ---------- Page-specific small parts ---------- *\/\n.split__media img.split__badge { max-width: 320px; margin-inline: auto; }\n.danke__img { max-width: 420px; }\n.danke__status { font-weight: 600; position: relative; padding-left: 1.4rem; margin-bottom: 1rem; }\n.danke__status::before { content: \"\"; position: absolute; left: 0; top: 0.5em; width: 0.6rem; height: 0.6rem; border-radius: 50%; background: var(--red); }\n\n\/* ---------- Brand colors (Ilyas, 2026-11-02): red #950900, turquoise #008C95, black ----------\n   Black carries text, buttons and dark bands; turquoise is the visible second brand color.\n   Only large\/bold white text sits on turquoise; small text on it is black. *\/\n.btn, .btn--outline, .btn--light { --btn-dot: var(--teal); --btn-arrow: var(--arrow-white); }\n.stat, .section--alt .stat, .page-hero .stat, .stats--hero .stat { background: var(--teal); }\n.stats--hero .stat__label { font-weight: 600; }\n.stat__value { color: var(--white); }\n.stat__label { color: #000; font-weight: 600; }\n.step__num { background: var(--teal); }\n.timeline > li::before { background: var(--teal); }\n.checklist li::before { background: var(--teal); }\n.footer-cta { background: var(--teal); color: #000; }\n.footer-cta p, .footer-cta strong { color: #000; }\n.footer-cta h2 { color: var(--white); }\n.footer-cta .btn { --btn-bg: #000; --btn-fg: #fff; }\n.footer-cta :focus-visible { outline-color: #000; }\n.ser-site-footer { background: #000; color: #d6d6d6; }\n.ser-site-footer a:not(.btn), .ser-site-footer .footer-label, .ser-site-footer .footer-title { color: #fff; }\n.ser-site-footer a:not(.btn):hover { color: #6fd6dd; }\n.ser-site-footer .social a:hover { background: #222; }\n\n\/* ---------- Feedback Ilyas 2026-11-03 ----------\n   Social links readable on the black footer, partner\/employer logos in their own colours,\n   CTA band in one text colour and centred, white logo in the footer, smaller CTA headlines. *\/\n\/* White footer (Ilyas: \"lieber wei\u00dfer footer\"), black text, normal colour logo *\/\n.ser-site-footer { background: #fff; color: #000; }\n.ser-site-footer a:not(.btn), .ser-site-footer .footer-label, .ser-site-footer .footer-title { color: #000; }\n.ser-site-footer a:not(.btn):hover { color: var(--teal); }\n.footer-bottom { border-top-color: #e3e3e3; }\n.ser-site-footer .social a { background: transparent; color: #000; border: 1px solid #000; }\n.ser-site-footer .social a:hover { background: #000; color: #fff; text-decoration: none; }\n\/* No black blocks in the page body: the former dark sections are white with black text *\/\n.section--dark { background: #fff; color: #000; }\n.section--dark :is(h1, h2, h3, h4, strong, .lead), .section--dark a:not(.btn),\n.section--dark .section__head p, .section--dark .date-list__course, .section--dark .date-list__date { color: #000; }\n.section--dark .checklist li::before { background: var(--teal); }\n.section--dark .card--feature { background: var(--tint); }\n.section--dark :focus-visible { outline-color: var(--red); }\n.section--dark .btn--light { --btn-bg: #000; --btn-fg: #fff; color: #fff; }\n.section--dark .btn--light:hover { --btn-bg: var(--red); color: #fff; }\n.logo-wall img { filter: none; }\n.footer-cta__inner, .footer-cta__inner > div { text-align: center; margin-inline: auto; }\n.footer-cta h2, .footer-cta p, .footer-cta strong { color: #fff; }\n\/* white on turquoise is 4.1:1, so the text is set large (>= 24px) and semibold *\/\n.footer-cta p { font-size: 1.375rem; font-weight: 600; }\n.footer-brand img { width: 110px; }\n.cta-band h2 { font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.75rem); max-width: 22em; }\n.cert-single { max-width: 28rem; margin-inline: auto; }\n\n\/* Hero with one stat: a white pill row (number + caption) instead of a big circle *\/\n.page-hero .stats--1 .stat {\n  width: auto; height: auto; border-radius: var(--r-pill); background: var(--white);\n  flex-direction: row; gap: 1rem; padding: 0.85rem 1.75rem; text-align: left;\n}\n.page-hero .stats--1 .stat__value { color: var(--teal); font-size: clamp(2rem, 1.6rem + 1.2vw, 2.75rem); }\n.page-hero .stats--1 .stat__label { color: #000; font-size: 1rem; font-weight: 600; max-width: 17rem; }\n\n\/* Timeline next to a long text column: stays in view while scrolling (desktop) and fills\n   turquoise as the reader moves through the section (ser.js sets --p and .is-done). *\/\n@media (min-width: 900px) {\n  .split--top > div:has(> .timeline) { position: sticky; top: calc(var(--header-h) + 2rem); align-self: start; }\n}\n.timeline::after {\n  content: \"\"; position: absolute; left: 0.45rem; top: 0.5rem; width: 2px;\n  height: calc((100% - 1rem) * var(--p, 1)); background: var(--teal);\n}\n.timeline > li { z-index: 1; }\n.timeline[data-scroll] > li::before { background: var(--tint-deep); transition: background-color 0.2s ease; }\n.timeline[data-scroll] > li.is-done::before { background: var(--teal); }\n\n\/* ==========================================================================\n   Business Education additions (skyered-business-education.de remake).\n   Same design system; only the parts this site needs beyond the education remake.\n   ========================================================================== *\/\n\n\/* Footer for this site: brands, claim, link row, social pills (white, black text, colour logos) *\/\n.site-footer__top { padding-block: clamp(3rem, 5vw, 4.5rem) 0; text-align: center; }\n.footer-brands .footer-title { margin-bottom: 1.25rem; }\n.brand-row { list-style: none; margin: 0 auto 1.25rem; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem 2rem; }\n.brand-row li { max-width: none; }\n.brand-row img { height: 72px; width: auto; }\n.footer-claim { margin: 0 auto 2rem; font-weight: 500; max-width: 40rem; }\n.footer-links { list-style: none; margin: 0 auto 2.25rem; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem 1.75rem; font-weight: 500; }\n.footer-links li { max-width: none; }\n.ser-site-footer .footer-bottom { justify-content: center; text-align: center; flex-direction: column; gap: 1rem; padding-block: 1.5rem 2rem; }\n.ser-site-footer .social { justify-content: center; }\n\n\/* Small label above a heading (text from the live page, shown uppercase) *\/\n.eyebrow { margin: 0 auto 1rem; font: 700 1rem\/1.2 var(--font-display); letter-spacing: 0.08em; text-transform: uppercase; color: var(--red); }\n.section__head .eyebrow, .page-hero .eyebrow { max-width: none; }\n\n\/* Hero with photo on the right (homepage) *\/\n.hero--photo { padding-block: clamp(2.5rem, 5vw, 4.5rem) clamp(3rem, 6vw, 5.5rem); }\n.hero--photo h1 { font-size: clamp(2.5rem, 1.5rem + 3.6vw, 4.5rem); max-width: none; margin-bottom: 1.5rem; }\n.hero--photo h1 .tone { margin-top: 0.1em; }\n.hero--photo .hero__lead { margin-bottom: 1.25rem; }\n.hero--photo .checklist { margin-bottom: 1.5rem; }\n.hero--photo .split__media .photo-frame { margin: 0; }\n.hero--photo .photo-frame img { aspect-ratio: 3 \/ 2; }\n.seal-note { display: flex; align-items: center; gap: 1.25rem; margin-top: 1.75rem; padding: 0.75rem 1.25rem 0.75rem 0.75rem; background: var(--white); border-radius: var(--r-card); max-width: 34rem; }\n.seal-note img { width: 5.5rem; height: 5.5rem; flex: none; object-fit: contain; }\n.seal-note p { margin: 0; font-weight: 600; line-height: 1.35; }\n.seal-note__label { display: block; margin-top: 0.2rem; font-size: var(--fs-sm); font-weight: 500; color: var(--muted); }\n\n\/* Case cards (customer results): logo tile, two figures, quote, one-line result *\/\n.cases { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--gap); }\n.case-card {\n  --per: 1; flex: 0 0 calc((100% - (var(--per) - 1) * var(--gap)) \/ var(--per)); display: flex; flex-direction: column; gap: 1rem;\n  margin: 0; padding: clamp(1.25rem, 2.4vw, 1.75rem); background: var(--tint); border-radius: var(--r-card);\n}\n.section--alt .case-card { background: var(--white); }\n@media (min-width: 720px) { .case-card { --per: 2; } }\n@media (min-width: 1100px) { .case-card { --per: 3; } }\n.case-card__logo { display: grid; place-items: center; height: 5rem; padding: 0.75rem 1rem; background: var(--white); border-radius: 8px; }\n.section--alt .case-card__logo { background: var(--tint-soft); }\n.case-card__logo img { max-height: 3.25rem; max-width: 80%; width: auto; object-fit: contain; }\n.case-card h3 { margin: 0; font-size: 1.625rem; text-transform: uppercase; font-weight: 700; text-align: center; hyphens: manual; -webkit-hyphens: manual; }\n.case-card__branch { margin: -0.5rem auto 0; font-size: var(--fs-sm); font-weight: 500; color: var(--muted); text-align: center; }\n.case-card__figures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.5rem; margin: 0; padding: 0; list-style: none; }\n.case-card__figures li { max-width: none; display: flex; flex-direction: column; gap: 0.2rem; padding: 0.75rem 0.5rem; background: var(--white); border-radius: 8px; text-align: center; }\n.section--alt .case-card__figures li { background: var(--tint-soft); }\n.case-card__figures strong { font: 700 1.75rem\/1 var(--font-display); color: var(--wine); overflow-wrap: anywhere; }\n.case-card__figures span { font-size: var(--fs-sm); line-height: 1.3; font-weight: 500; }\n.case-card blockquote { margin: 0; font-size: 1.0625rem; line-height: 1.45; }\n.case-card cite { display: block; margin-top: 0.5rem; font-style: normal; font-weight: 600; font-size: var(--fs-sm); color: var(--muted); }\n.case-card__result { margin: auto 0 0; padding: 0.55rem 1rem; border-radius: var(--r-pill); background: var(--teal); color: #fff; font: 600 1.125rem\/1.25 var(--font-display); text-align: center; max-width: none; }\n.case-card__result strong { color: #fff; }\n\n\/* Photo with caption (target groups) *\/\n.photo-cards { display: grid; gap: var(--gap); grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }\n@media (min-width: 900px) { .photo-cards { grid-template-columns: repeat(4, minmax(0, 1fr)); } }\n.photo-cards li { max-width: none; margin: 0; display: flex; flex-direction: column; gap: 0.75rem; }\n.photo-cards img { width: 100%; aspect-ratio: 2 \/ 1; object-fit: cover; border: 6px solid var(--white); border-radius: var(--r-card); background: var(--white); }\n.photo-cards p { margin: 0; font: 700 1.25rem\/1.15 var(--font-display); }\n\n\/* Percentage figures (number + sentence) *\/\n.figures { display: grid; gap: var(--gap); margin: 0; padding: 0; list-style: none; }\n@media (min-width: 900px) { .figures { grid-template-columns: repeat(3, minmax(0, 1fr)); } }\n.figures li { max-width: none; display: flex; align-items: center; gap: 1.25rem; padding: 1.25rem 1.5rem; background: var(--white); border-radius: var(--r-card); }\n.section--alt .figures li { background: var(--white); }\n.figures__value { flex: none; font: 700 clamp(3rem, 2.4rem + 2vw, 4.25rem)\/0.9 var(--font-display); letter-spacing: -0.02em; color: var(--teal); white-space: nowrap; }\n.figures p { margin: 0; font-weight: 500; line-height: 1.4; }\n\n\/* Numbered cards, three per row (module pages: Kursinhalte) *\/\n@media (min-width: 1100px) { .steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }\n.steps--3 .step p { text-align: center; }\n.steps--3 .step__num { font-size: 1.5rem; }\n.steps__title { margin: 0 0 0.5rem; font: 700 1.5rem\/1.1 var(--font-display); text-transform: uppercase; text-align: center; }\n\n\/* Step link in the process cards *\/\n.step .text-link { display: inline-block; margin-top: 0.75rem; }\n\n\/* Funding calculator (QCG page) *\/\n.calc { display: grid; gap: var(--gap); max-width: 56rem; margin-inline: auto; }\n@media (min-width: 800px) { .calc { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; } }\n.calc__box { background: var(--white); border-radius: var(--r-card); padding: clamp(1.25rem, 3vw, 2rem); border: 0; margin: 0; min-width: 0; }\n.calc__box h3, .calc__box legend { font: 700 1.5rem\/1.1 var(--font-display); margin: 0 0 1rem; padding: 0; }\n.calc__group { border: 0; padding: 0; margin: 0 0 1.5rem; min-width: 0; }\n.calc__group:last-child { margin-bottom: 0; }\n.calc__option { position: relative; display: flex; align-items: center; gap: 0.75rem; padding: 0.8rem 1rem; margin-bottom: 0.5rem; border-radius: 8px; background: var(--tint-soft); cursor: pointer; font-weight: 500; }\n.calc__option:hover { background: var(--tint); }\n.calc__option input { position: absolute; opacity: 0; width: 1px; height: 1px; }\n.calc__option::before { content: \"\"; flex: none; width: 1.25rem; height: 1.25rem; border-radius: 50%; border: 2px solid var(--wine); background: var(--white); }\n.calc__option:has(input:checked) { background: var(--tint); }\n.calc__option:has(input:checked)::before { background: var(--teal); border-color: var(--teal); box-shadow: inset 0 0 0 3px var(--white); }\n.calc__option:has(input:focus-visible) { outline: 3px solid var(--red); outline-offset: 2px; }\n.calc__result { background: var(--tint); border-radius: 8px; padding: 1.25rem; }\n.calc__label { font-size: var(--fs-sm); font-weight: 500; color: var(--muted); margin-bottom: 0.4rem; }\n.calc__value { font: 700 1.5rem\/1.2 var(--font-display); }\n.calc__value.is-set { font-size: clamp(2.5rem, 2rem + 2vw, 3.5rem); line-height: 1; color: var(--wine); }\n.calc__value.is-empty { font-weight: 500; font-family: var(--font); font-size: 1rem; color: var(--muted); }\n\n\/* Side-by-side text and image rows with several items (steps with photos) *\/\n.rows { display: grid; gap: clamp(3rem, 6vw, 5rem); }\n.rows .split__media img { aspect-ratio: 3 \/ 2; object-fit: cover; }\n\n\/* Brochure panel *\/\n.promo { display: grid; gap: 2rem; align-items: center; padding: clamp(1.75rem, 4vw, 3.5rem); background: var(--tint); border-radius: var(--r-card); }\n@media (min-width: 800px) { .promo { grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); } }\n.promo img { width: 100%; max-width: 20rem; margin-inline: auto; border: 6px solid var(--white); border-radius: var(--r-card); }\n.promo h2 { font-size: clamp(2rem, 1.3rem + 2.4vw, 3.25rem); }\n\n\/* Compare list (Consulting-DNA etc.): label + text rows in cards *\/\n.defs { display: grid; gap: var(--gap); margin: 0; }\n@media (min-width: 800px) { .defs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }\n.defs > div { background: var(--tint); border-radius: var(--r-card); padding: clamp(1.25rem, 2.4vw, 1.75rem); }\n.section--alt .defs > div { background: var(--white); }\n.defs dt { font: 700 1.5rem\/1.1 var(--font-display); margin-bottom: 0.5rem; }\n.defs dd { margin: 0; }\n\n\/* Badges (awards) *\/\n.badge-row { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 1rem; list-style: none; margin: 2rem 0 0; padding: 0; }\n.badge-row li { max-width: none; }\n.badge-row a { display: flex; align-items: center; justify-content: center; height: 9rem; padding: 0.75rem 1.25rem; background: var(--white); border-radius: var(--r-card); }\n.badge-row img { max-height: 7.5rem; width: auto; max-width: 12rem; object-fit: contain; }\n\n\/* Job rows *\/\n.accordion summary .job-title { flex: 1; }\n.accordion .facts { margin-top: 0.5rem; }\n.accordion__body h3 { font-size: 1.375rem; text-transform: none; margin: 1.5rem 0 0.5rem; }\n.accordion__body h3:first-child { margin-top: 0; }\n.accordion__body p { max-width: 60rem; }\n\n\n\/* Mobile grid columns must be allowed to shrink (long German words in display headings) *\/\n.split { grid-template-columns: minmax(0, 1fr); }\n.split > * { min-width: 0; }\n@media (min-width: 900px) { .split { grid-template-columns: repeat(12, minmax(0, 1fr)); } }\n.footer-brands .footer-title { margin-inline: auto; text-align: center; }\n.footer-brands .footer-claim { margin: 0 auto 2rem; }\n.case-card blockquote { flex: 1; }\n.facts--center { justify-content: center; margin-top: 1.5rem; }\n.page-hero .facts li { background: var(--white); }\n.logo-wall a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }\n.job-tags { display: inline-flex; flex-wrap: wrap; gap: 0.35rem; margin-left: auto; }\n.job-tags span { padding: 0.15rem 0.65rem; border-radius: var(--r-pill); background: var(--white); border: 1px solid var(--tint-deep); font-size: var(--fs-sm); font-weight: 500; }\n.accordion summary:has(.job-tags) { flex-wrap: wrap; }\n.accordion summary::after { margin-left: 0.25rem; }\n.accordion__body .btn { margin-top: 0.5rem; }\n.landing-logo { height: 7.5rem; width: auto; margin: 0 auto 1.5rem; }\n.landing-points { max-width: 46rem; margin: 1.5rem auto 0; }\n.landing-note { margin: 2rem auto 0; text-align: center; font-weight: 500; max-width: none; }\n.card--feature .module-card__label { align-self: center; }\n.grid .card--feature h3 { text-transform: uppercase; font-weight: 700; }\n.page-hero h1.h1--long { font-size: clamp(2.25rem, 1.4rem + 3.4vw, 4rem); max-width: 18em; }\n.container--narrow p, .container--narrow li { max-width: none; }\n.badge-row img { height: 7.5rem; max-height: none; width: auto; max-width: 14rem; }\n.section__head > .lead { max-width: 46rem; margin-inline: auto; }\n.steps__title { margin-bottom: 2.5rem; }\n.defs.mt-lg { margin-top: clamp(2rem, 4vw, 3.5rem); }\n\/* Customer logos: trimmed copies, larger tiles *\/\n.logo-wall--8 { --per: 2; }\n@media (min-width: 640px) { .logo-wall--8 { --per: 3; } }\n@media (min-width: 900px) { .logo-wall--8 { --per: 5; } }\n.logo-wall--8 li { height: 96px; padding: 1rem 1.25rem; }\n.logo-wall--8 img { max-height: 48px; max-width: min(100%, 9.5rem); width: auto; height: auto; }\n\n\/* ==========================================================================\n   Carousel (customer examples), Ilyas 2026-11-03: stays a carousel. CSS scroll-snap does the sliding,\n   js\/ser.js adds the arrows, dots and keyboard-friendly buttons. No autoplay.\n   ========================================================================== *\/\n.section--tint { background: var(--tint); }\n.carousel { position: relative; }\n.carousel__viewport {\n  overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none;\n  margin-inline: calc(var(--gutter) * -1); padding: 0.5rem var(--gutter) 0.75rem; scroll-padding-inline: var(--gutter);\n}\n.carousel__viewport::-webkit-scrollbar { display: none; }\n.carousel__track { display: flex; gap: var(--gap); list-style: none; margin: 0; padding: 0; }\n.carousel__slide { flex: 0 0 82%; max-width: none; display: flex; scroll-snap-align: start; }\n@media (min-width: 720px) { .carousel__slide { flex-basis: calc((100% - var(--gap)) \/ 2); } }\n@media (min-width: 1100px) { .carousel__slide { flex-basis: calc((100% - 2 * var(--gap)) \/ 3); } }\n.carousel__slide .case-card { flex: 1 1 auto; width: 100%; }\n.carousel__controls { display: flex; align-items: center; justify-content: center; gap: 1.25rem; margin-top: 1.5rem; }\n.carousel__controls[hidden] { display: none; }\n.carousel__btn {\n  position: relative; flex: none; width: 3.5rem; height: 3.5rem; padding: 0; border: 0; border-radius: var(--r-pill);\n  background: var(--wine); cursor: pointer; transition: background-color 0.15s ease-out;\n}\n.carousel__btn::before {\n  content: \"\"; position: absolute; inset: 0.375rem; border-radius: 50%;\n  background: var(--teal) var(--chev, none) center \/ 1.25rem no-repeat;\n}\n.carousel__btn--prev { --chev: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 3 5 8l5 5'\/%3E%3C\/svg%3E\"); }\n.carousel__btn--next { --chev: url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 3 5 5-5 5'\/%3E%3C\/svg%3E\"); }\n.carousel__btn:hover:not(:disabled) { background: var(--red); }\n.carousel__btn:disabled { opacity: 0.35; cursor: default; }\n.carousel__dots { display: flex; align-items: center; gap: 0.25rem; }\n.carousel__dot { position: relative; width: 1.5rem; height: 1.5rem; padding: 0; border: 0; background: none; cursor: pointer; }\n.carousel__dot::before { content: \"\"; position: absolute; left: 50%; top: 50%; width: 0.75rem; height: 0.75rem; border-radius: 50%; background: var(--tint-deep); transform: translate(-50%, -50%); transition: width 0.15s ease-out, background-color 0.15s ease-out; }\n.section--alt .carousel__dot::before { background: #d8bcc1; }\n.carousel__dot[aria-current=\"true\"]::before { width: 1.5rem; border-radius: var(--r-pill); background: var(--teal); }\n\n\/* ==========================================================================\n   Process steps with life (Ablauf, Der Prozess), Ilyas 2026-11-03: white cards, a turquoise line through the\n   number circles (horizontal on desktop, vertical on phones), a line icon per step, a slight lift on hover.\n   ========================================================================== *\/\n.steps--flow { --ring: var(--ground); position: relative; }\n.section--alt .steps--flow { --ring: var(--tint-soft); }\n.section--tint .steps--flow { --ring: var(--tint); }\n.steps--flow .step {\n  display: flex; flex-direction: column; align-items: center; background: var(--white); padding: 2.5rem 1.5rem 1.5rem;\n  transition: transform 0.2s ease, box-shadow 0.2s ease;\n}\n.steps--flow .step__num { z-index: 2; box-shadow: 0 0 0 6px var(--ring); }\n.steps--flow .step__icon { width: 3.5rem; height: 3.5rem; margin: 0.25rem 0 0.9rem; color: var(--teal); flex: none; }\n.steps--flow .step h3 { text-align: center; }\n.steps--flow .step p { text-align: center; margin-bottom: 0; }\n.steps--flow .step:hover, .steps--flow .step:focus-within { transform: translateY(-4px); box-shadow: 0 14px 28px rgba(0, 0, 0, 0.12); z-index: 2; }\n.steps--flow::before { content: none; }\n@media (min-width: 1100px) {\n  .steps--flow::before {\n    content: \"\"; position: absolute; z-index: 1; top: 1.75rem; height: 3px; transform: translateY(-50%); background: var(--teal);\n    left: calc((100% - 3 * var(--gap)) \/ 8); right: calc((100% - 3 * var(--gap)) \/ 8);\n  }\n}\n@media (max-width: 639px) {\n  .steps--flow::before {\n    content: \"\"; position: absolute; z-index: 0; left: 50%; top: 1.75rem; bottom: 1.5rem; width: 3px; transform: translateX(-50%); background: var(--teal);\n  }\n}\n.arrow-link { display: inline-flex; align-items: center; gap: 0.5rem; margin-top: auto; padding-top: 1rem; font-weight: 600; color: var(--wine); text-decoration: none; }\n.arrow-link::after {\n  content: \"\"; flex: none; width: 1.75rem; height: 1.75rem; border-radius: 50%;\n  background: var(--teal) var(--arrow-white) center \/ 0.9rem no-repeat; transition: transform 0.15s ease-out;\n}\n.arrow-link:hover { color: var(--red); }\n.arrow-link:hover::after { transform: translateX(3px); }\n.steps--flow .step p + .arrow-link { margin-top: 0.75rem; }\n@media (min-width: 720px) { .carousel__viewport { margin-inline: 0; padding-inline: 0; scroll-padding-inline: 0; } }\n\n\/* Shaped cut-outs (oval \/ blob photos with transparent corners, QCG page): frameless on the section ground,\n   no white box, centred next to the text; a soft shadow gives the shape an edge on white. *\/\n.split__media--cutout { display: flex; justify-content: center; align-items: center; }\n.split__media--cutout img { border: 0; border-radius: 0; background: none; width: auto; max-width: 100%; max-height: 28rem; filter: drop-shadow(0 10px 22px rgba(0, 0, 0, 0.12)); }\n\n\/* More white (Ilyas 2026-11-03): cards on the white page ground use the soft tint, the full tint stays for heroes and accents *\/\n.card--feature, .checklist--cards li, .case-card, .defs > div, .step, .callout { background: var(--tint-soft); }\n.section--alt .card--feature, .section--alt .checklist--cards li, .section--alt .case-card, .section--alt .defs > div, .section--alt .step, .section--alt .callout, .cta-band .callout { background: var(--white); }\n.steps--flow .step { background: var(--white); }\n.case-card__figures li, .case-card__logo { background: var(--white); }\n.section--alt .case-card__figures li, .section--alt .case-card__logo { background: var(--tint-soft); }\n.grid--2 > :last-child:nth-child(odd) { grid-column: 1 \/ -1; }\n\n\/* ==========================================================================\n   Technology additions (skyeredtechnology.de): header end block, mega-menu groups, language switch, footer newsletter\n   ========================================================================== *\/\n.header-end { display: flex; align-items: center; gap: 0.75rem; justify-self: end; }\n.lang-switch { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--tint); }\n.lang-switch:hover { background: var(--tint-deep); }\n.lang-switch img { width: 24px; height: 24px; border-radius: 50%; object-fit: cover; }\n.nav__menu--groups { min-width: 340px; max-width: 420px; max-height: calc(100vh - var(--header-h) - 2rem); overflow-y: auto; box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12); }\n.nav__group { max-width: none; }\n.nav__group-title { margin: 0.5rem 0 0.15rem; padding: 0.4rem 0.85rem 0; font: 700 0.8125rem\/1.2 var(--font); letter-spacing: 0.06em; text-transform: uppercase; color: var(--teal); }\n.nav__group:first-child .nav__group-title { margin-top: 0; }\n.mobile-nav__group { padding: 0.6rem 0.75rem 0.1rem; font: 700 0.8125rem\/1.2 var(--font); letter-spacing: 0.06em; text-transform: uppercase; color: var(--teal); max-width: none; }\n.footer-newsletter { display: flex; justify-content: center; margin-bottom: 1.75rem; }\n\n\/* Generated content blocks *\/\n.media-figure { margin: 0; }\n.media-figure img { width: 100%; height: auto; border-radius: var(--r-card); }\n.hero-figure { margin-top: clamp(1.5rem, 3vw, 2.5rem); max-width: 56rem; }\n.hero-figure + .section { padding-top: clamp(2.5rem, 5vw, 4rem); }\n.card__tile { width: 100%; height: auto; border-radius: var(--r-card); background: var(--white); }\n.card--tile { padding: 0.75rem 0.75rem 1.5rem; }\n.card--tile > :not(.card__tile) { padding-inline: 0.5rem; }\n.card--tile .btn-row { margin-top: auto; padding-top: 1rem; }\n.figures--2 { grid-template-columns: repeat(1, minmax(0, 1fr)); }\n.figures__text { margin: 0; font-weight: 500; line-height: 1.4; }\n.figures__text p { margin: 0; }\n.figures li { flex-wrap: wrap; }\n.figures__value { order: -1; }\n@media (min-width: 900px) {\n  .figures--2, .figures--3 { grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); }\n  .figures--2 { --cols: 2; }\n  .figures li { flex-direction: column; align-items: flex-start; }\n}\n.post-card { display: flex; flex-direction: column; gap: 0.75rem; background: var(--white); border-radius: var(--r-card); padding: 0.75rem 0.75rem 1.5rem; height: 100%; width: 100%; }\n.post-card img { width: 100%; border-radius: 8px; }\n.post-card > :not(img):not(.media-figure):not(a) { padding-inline: 0.75rem; }\n.post-card p { margin: 0; }\n.carousel__slide .post-card { flex: 1 1 auto; }\n.more { display: block; margin-top: 1rem; }\n.more > summary { list-style: none; cursor: pointer; display: inline-flex; }\n.more > summary::-webkit-details-marker { display: none; }\n.more[open] > summary { background: var(--red); color: var(--white); }\n.more__body { margin-top: 1rem; padding: 1.25rem; background: var(--white); border-radius: var(--r-card); }\n.table-wrap { overflow-x: auto; margin-block: 1.5rem; }\n.data-table { border-collapse: collapse; width: 100%; min-width: 34rem; }\n.data-table th, .data-table td { text-align: left; padding: 0.75rem 1rem; border-bottom: 1px solid var(--tint-deep); vertical-align: top; }\n.data-table thead th { background: var(--tint); font-family: var(--font-display); font-size: 1.125rem; }\n.logo-wall img, .logo-wall--8 img { filter: none; }\n.section__head h2.eyebrow { font: 700 1rem\/1.2 var(--font); letter-spacing: 0.08em; text-transform: uppercase; color: var(--teal); margin-bottom: 0.75rem; }\n.section__head h2.eyebrow + h2 { margin-top: 0; }\n.section > .container > h2 { text-align: center; max-width: 54rem; margin-inline: auto; }\n.section > .container > :is(p, h3, ul.checklist, ol, blockquote) { max-width: 46rem; margin-inline: auto; }\n.section > .container > h3 { margin-top: 1.75em; font-size: var(--fs-h3); }\n.section > .container > .btn-row { justify-content: center; }\n.section > .container > :is(.grid, .figures, .carousel, .accordion, .split, .logo-wall) { margin-top: clamp(1.5rem, 3vw, 2.5rem); }\n.section > .container > .media-figure { max-width: 56rem; margin-inline: auto; margin-block: clamp(1.5rem, 3vw, 2.5rem); }\n.prose h3 { margin-top: 1.75em; font-size: var(--fs-h3); }\n\n\/* Tabs (progressive: all panels visible without script) *\/\n.tabs__list { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1.5rem; }\n.tabs__tab { min-height: 44px; padding: 0.5rem 1.1rem; border: 0; border-radius: var(--r-pill); background: var(--tint); color: var(--wine); font: 600 1.0625rem\/1.15 var(--font-display); cursor: pointer; text-align: left; }\n.tabs__tab:hover { background: var(--tint-deep); }\n.tabs__tab[aria-selected=\"true\"] { background: var(--wine); color: var(--white); }\n.tabs.is-js .tabs__panel[hidden] { display: none; }\n.tabs__panel { padding: clamp(1.25rem, 3vw, 2rem); background: var(--tint-soft); border-radius: var(--r-card); }\n.tabs.is-js .tabs__panel + .tabs__panel { margin-top: 0; }\n.tabs:not(.is-js) .tabs__panel + .tabs__panel { margin-top: 1rem; }\n.tabs__panel > :first-child { margin-top: 0; }\n.quote-card--head { display: flex; flex-direction: column; gap: 0.75rem; }\n.quote-card--head figcaption { display: flex; flex-direction: column; gap: 0.15rem; margin: 0; }\n.quote-card--head blockquote { margin: 0; }\n.quote-card__img { width: 64px; height: 64px; object-fit: cover; border-radius: 50%; }\n\n\/* Quiz (QSM) *\/\n.quiz { max-width: 46rem; margin-inline: auto; display: grid; gap: 1.25rem; }\n.quiz__q { margin: 0; padding: clamp(1.1rem, 3vw, 1.75rem); border: 0; border-radius: var(--r-card); background: var(--tint-soft); }\n.quiz__q legend { float: left; width: 100%; padding: 0; margin-bottom: 0.9rem; font: 700 1.375rem\/1.2 var(--font-display); }\n.quiz__q legend + * { clear: both; }\n.quiz__a { display: flex; align-items: flex-start; gap: 0.75rem; padding: 0.7rem 0.9rem; margin-top: 0.5rem; background: var(--white); border-radius: 8px; cursor: pointer; }\n.quiz__a input { margin-top: 0.3rem; accent-color: var(--teal); width: 1.1rem; height: 1.1rem; flex: none; }\n.quiz__a:has(input:checked) { outline: 2px solid var(--teal); }\n.quiz__submit { cursor: pointer; border: 0; padding-inline: 2rem; }\n\n\/* Job list (Karriere) *\/\n.job { background: var(--tint-soft); border-radius: var(--r-card); margin-bottom: 0.75rem; }\n.job > summary { list-style: none; cursor: pointer; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.5rem 1rem; padding: 1.1rem 1.4rem; }\n.job > summary::-webkit-details-marker { display: none; }\n.job__title { font: 700 1.375rem\/1.15 var(--font-display); }\n.job__tags { display: flex; gap: 0.5rem; }\n.job__tags span { padding: 0.25rem 0.8rem; border-radius: var(--r-pill); background: var(--white); font-weight: 600; font-size: 0.9375rem; }\n.job > summary::after { content: \"+\"; font-size: 1.5rem; margin-left: auto; }\n.job[open] > summary::after { content: \"\\2212\"; }\n.job__body { padding: 0 1.4rem 1.4rem; }\n.job__body h3 { font-size: var(--fs-md); }\n.seal-name { text-align: center; font-weight: 600; margin-top: 0.5rem; }\n.section > .container > .media-figure:has(.seal-name) { max-width: 20rem; }\n.section > .container > h2:not(:first-child) { margin-top: clamp(3rem, 6vw, 5rem); }\n.section > .container > .grid > .media-figure:has(.seal-name), .grid > .media-figure:has(.seal-name) { text-align: center; }\n.media-figure:has(.seal-name) img { width: auto; max-height: 11rem; margin-inline: auto; border-radius: 0; }\n.job-intro { text-align: center; }\n.grid > *, .split > *, .figures > li { min-width: 0; }\n.figures__text, .figures__text p { overflow-wrap: anywhere; }\n\n\/* Fatih 2026-11-03: mark the Business Education logo (it looks like Education otherwise) *\/\n.brand-row a { display: flex; flex-direction: column; align-items: center; gap: 0.25rem; text-decoration: none; }\n.brand-label { font: 700 0.8125rem\/1 var(--font-display); letter-spacing: 0.04em; text-transform: uppercase; color: #000; }\n\n\/* Fatih 2026-11-03: stronger button dot colour instead of turquoise -> brand red *\/\n.btn, .btn--outline, .btn--light, .btn--sm, .btn--lg { --btn-dot: var(--red); }\n\n<\/style>\n\n<a class=\"skip-link\" href=\"#main\">Zum Inhalt springen<\/a>\n\n<header class=\"ser-site-header\">\n  <div class=\"container site-header__inner\">\n    <a class=\"brand\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/\" aria-label=\"Sky-E Red Technology: Start\">\n      <img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2024\/01\/cropped-Sky-E-Red-Technology_Logo-original-1.png\" alt=\"Sky-E Red Technology\" width=\"512\" height=\"512\">\n    <\/a>\n    <nav class=\"nav\" aria-label=\"Hauptnavigation\">\n      <ul class=\"nav__list\">\n        <li class=\"nav__item nav__item--has-menu\" data-section=\"services\">\n          <button class=\"nav__toggle\" type=\"button\" aria-expanded=\"false\" aria-controls=\"menu-services\">What we do<\/button>\n          <ul class=\"nav__menu nav__menu--groups\" id=\"menu-services\">\n            <li class=\"nav__group\"><p class=\"nav__group-title\">What we do<\/p><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-devops\/\">DevOps<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-cloud\/\">Cloud<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-ai-workflow-automation\/\">AI Workflow Automation<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-enterprise-game-solutions\/\">Enterprise Game Solutions<\/a><\/li>\n            <li class=\"nav__group\"><p class=\"nav__group-title\">Specials<\/p><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-it-fusion-effekt\/\">Sky-E Red Fusion<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-freelance-outsourcing\/\">Freelancing<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-code-red-academy\/\">Code Red Academy<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-techboost-bundles\/\">TechBoost Bundles<\/a><\/li>\n          <\/ul>\n        <\/li>\n        <li class=\"nav__item nav__item--has-menu\" data-section=\"unternehmen\">\n          <button class=\"nav__toggle\" type=\"button\" aria-expanded=\"false\" aria-controls=\"menu-unternehmen\">Who we are<\/button>\n          <ul class=\"nav__menu nav__menu--groups\" id=\"menu-unternehmen\">\n            <li class=\"nav__group\"><p class=\"nav__group-title\">About us<\/p><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/ueber-uns\/\">About us<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services\/\">What we do<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/blog\/\">Blog<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/webinare\/\">Webinar<\/a><\/li>\n            <li class=\"nav__group\"><p class=\"nav__group-title\">Become part of our community<\/p><\/li>\n            <li><a href=\"https:\/\/de.linkedin.com\/company\/skyered\" target=\"_blank\" rel=\"noopener\">LinkedIn<\/a><\/li>\n            <li><a href=\"https:\/\/www.instagram.com\/skyeredtechnology\/\" target=\"_blank\" rel=\"noopener\">Instagram<\/a><\/li>\n            <li><a href=\"https:\/\/www.tiktok.com\/@skyeredtechnology\" target=\"_blank\" rel=\"noopener\">TikTok<\/a><\/li>\n            <li><a href=\"https:\/\/www.threads.net\/@skyeredtechnology\" target=\"_blank\" rel=\"noopener\">Threads<\/a><\/li>\n            <li class=\"nav__group\"><p class=\"nav__group-title\">Career<\/p><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/karriere\/\">Career at Sky-E Red<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/karriere-join-as-freelancer\/\">Career as a freelancer<\/a><\/li>\n            <li class=\"nav__group\"><p class=\"nav__group-title\">Projects \u2192<\/p><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/projekte\/\">Projects \u2192<\/a><\/li>\n            <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/newsletter\/\">Subscribe to our newsletter<\/a><\/li>\n          <\/ul>\n        <\/li>\n        <li class=\"nav__item\"><a class=\"nav__link\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/blog\/\">Blog<\/a><\/li>\n        <li class=\"nav__item\"><a class=\"nav__link\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/projekte\/\">Success stories<\/a><\/li>\n      <\/ul>\n    <\/nav>\n    <div class=\"header-end\">\n      <a class=\"btn btn--sm header-cta\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/kontakt\/\">Contact us<\/a>\n      <a class=\"lang-switch\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/en\/projekte-it-innovation-im-banking\/\" hreflang=\"en\" lang=\"en\"><img decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2026\/11\/ser-remake-en_US.png\" alt=\"en_US\" width=\"24\" height=\"24\"><span class=\"sr-only\">English<\/span><\/a>\n      <button class=\"burger\" type=\"button\" aria-expanded=\"false\" aria-controls=\"mobile-nav\" aria-label=\"Men\u00fc \u00f6ffnen\"><span><\/span><\/button>\n    <\/div>\n  <\/div>\n  <nav class=\"mobile-nav\" id=\"mobile-nav\" aria-label=\"Mobile Navigation\" hidden>\n    <ul class=\"mobile-nav__list\">\n      <li>\n        <button class=\"mobile-nav__toggle\" type=\"button\" aria-expanded=\"false\" aria-controls=\"m-services\">What we do<\/button>\n        <ul class=\"mobile-nav__sub\" id=\"m-services\" hidden>\n          <li class=\"mobile-nav__group\">What we do<\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-devops\/\">DevOps<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-cloud\/\">Cloud<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-ai-workflow-automation\/\">AI Workflow Automation<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-enterprise-game-solutions\/\">Enterprise Game Solutions<\/a><\/li>\n          <li class=\"mobile-nav__group\">Specials<\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-it-fusion-effekt\/\">Sky-E Red Fusion<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-freelance-outsourcing\/\">Freelancing<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-code-red-academy\/\">Code Red Academy<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services-techboost-bundles\/\">TechBoost Bundles<\/a><\/li>\n        <\/ul>\n      <\/li>\n      <li>\n        <button class=\"mobile-nav__toggle\" type=\"button\" aria-expanded=\"false\" aria-controls=\"m-unternehmen\">Who we are<\/button>\n        <ul class=\"mobile-nav__sub\" id=\"m-unternehmen\" hidden>\n          <li class=\"mobile-nav__group\">About us<\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/ueber-uns\/\">About us<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services\/\">What we do<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/blog\/\">Blog<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/webinare\/\">Webinar<\/a><\/li>\n          <li class=\"mobile-nav__group\">Become part of our community<\/li>\n          <li><a href=\"https:\/\/de.linkedin.com\/company\/skyered\" target=\"_blank\" rel=\"noopener\">LinkedIn<\/a><\/li>\n          <li><a href=\"https:\/\/www.instagram.com\/skyeredtechnology\/\" target=\"_blank\" rel=\"noopener\">Instagram<\/a><\/li>\n          <li><a href=\"https:\/\/www.tiktok.com\/@skyeredtechnology\" target=\"_blank\" rel=\"noopener\">TikTok<\/a><\/li>\n          <li><a href=\"https:\/\/www.threads.net\/@skyeredtechnology\" target=\"_blank\" rel=\"noopener\">Threads<\/a><\/li>\n          <li class=\"mobile-nav__group\">Career<\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/karriere\/\">Career at Sky-E Red<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/karriere-join-as-freelancer\/\">Career as a freelancer<\/a><\/li>\n          <li class=\"mobile-nav__group\">Projects \u2192<\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/projekte\/\">Projects \u2192<\/a><\/li>\n          <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/newsletter\/\">Subscribe to our newsletter<\/a><\/li>\n        <\/ul>\n      <\/li>\n      <li><a class=\"mobile-nav__link\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/blog\/\">Blog<\/a><\/li>\n      <li><a class=\"mobile-nav__link\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/projekte\/\">Success stories<\/a><\/li>\n    <\/ul>\n    <a class=\"btn btn--lg\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/kontakt\/\">Contact us<\/a>\n  <\/nav>\n<\/header>\n\n<main id=\"main\">\n<section class=\"page-hero page-hero--simple\">\n  <div class=\"container\">\n    <h1>Migration at top speed: stable, scalable, secure<\/h1>\n    <p class=\"lead\">Innovation im Banking: Wie wir die IT-Infrastruktur der Deutschen Bank transformiert haben.\u00a0<\/p>\n    <div class=\"btn-row\"><a class=\"btn btn--lg\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/kontakt\/\">Make an appointment<\/a><\/div>\n  <\/div>\n<\/section>\n<div class=\"container hero-figure\"><figure class=\"media-figure\"><img decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2026\/11\/ser-remake-tfvzgbh.jpg\" alt=\"\"><\/figure><\/div>\n\n<section class=\"section\">\n  <div class=\"container\">\n    <div class=\"section__head\"><h2>Kennzahlen<\/h2><\/div>\n<ul class=\"figures figures--3\"><li><span class=\"figures__value\">\u221220 %<\/span><p class=\"figures__text\">weniger Kosten: ein cleveres Investment, das sich bezahlt macht.<\/p><\/li><li><span class=\"figures__value\">\u221235 %<\/span><p class=\"figures__text\">weniger Wartungsaufwand: weniger Aufwand, mehr Automatisierung, ein echter Boost f\u00fcr die Effizienz.<\/p><\/li><li><span class=\"figures__value\">+ 50 %<\/span><p class=\"figures__text\">schnellere Rollouts: Funktionen in Rekordzeit verf\u00fcgbar, f\u00fcr schnellen Mehrwert auf Knopfdruck.<\/p><\/li><\/ul>\n  <\/div>\n<\/section>\n\n<section class=\"section section--alt\">\n  <div class=\"container\">\n    <div class=\"section__head\"><h2>Scalable, secure, future-proof: The DevOps turbo<\/h2><\/div>\n    <div class=\"prose\"><p>As DevOps experts at Deutsche Bank AG, we supported the migration project to ensure a stable and scalable IT infrastructure. Our focus was on working with product owners, architects, scrum masters, project managers and business analysts to provide a modern environment for the migration. As part of this project, the consultancy covered both the on-premises infrastructure in the International Banking Centers (IBC) and the GCP-based infrastructure. Network and firewall audits were also an essential part of our work to ensure the highest security standards.\u00a0<\/p> <p><strong>DevOps fine-tuning in the financial world<\/strong><br>Maintaining a balance between stability and flexibility during the migration was crucial, especially in a complex, hybrid environment consisting of on-premises and GCP infrastructure. Ensuring the highest security standards required comprehensive network and firewall analysis to seamlessly combine compliance and performance.<\/p><\/div>\n  <\/div>\n<\/section>\n\n<section class=\"section\">\n  <div class=\"container\">\n    <div class=\"section__head\"><h2>Turbo for the transformation<\/h2><\/div>\n    <div class=\"prose\"><p>Our optimized approach to Deutsche Bank's infrastructure:\u00a0<\/p><p><strong>Cloud resilience at the touch of a button<\/strong><br>Building an elastic, scalable GCP environment for dynamic deployments and maximum efficiency in resource utilization.\u00a0<\/p><p><strong>Network security that leaves no gaps<\/strong><br>Intensive analyses and targeted optimization of the network and firewall structure to ensure the highest security standards and minimize potential risks.<\/p><p><strong>Automation that unites teams<\/strong><br>Introduction of DevOps processes for seamless team collaboration and workflow acceleration, which sustainably boosts productivity.<\/p><\/div>\n  <\/div>\n<\/section>\n\n<section class=\"section section--alt\">\n  <div class=\"container\">\n    <div class=\"section__head\"><h2>Track record at a glance<\/h2><p>Zahlen sprechen manchmal mehr als Worte, oder? Werft einen Blick auf die KPIs, die unser Projekt mit der Deutschen Bank zur vollen Reife gebracht haben:<\/p><\/div>\n<ul class=\"figures figures--3\"><li><span class=\"figures__value\">\u221240 %<\/span><div class=\"figures__text\"><p><strong>weniger Ausfallzeiten<\/strong><strong>:<\/strong> Dank proaktiver Monitoring- und Sicherheitsoptimierungen, die die Verf\u00fcgbarkeit der Systeme erheblich verbesserten.\u00a0<\/p><\/div><\/li><li><span class=\"figures__value\">\u221225 %<\/span><div class=\"figures__text\"><p><strong>k\u00fcrzere Markteinf\u00fchrungszeiten<\/strong><strong>:<\/strong> Durch optimierte Entwicklungs, und Bereitstellungsprozesse wurden neue Produkte und Funktionen schneller an die Kunden gebracht.\u00a0<\/p><\/div><\/li><li><span class=\"figures__value\">\u221215 %<\/span><div class=\"figures__text\"><p><strong>geringere Betriebskosten<\/strong><strong>:<\/strong> Erreicht durch die Nutzung von Infrastructure-as-Code und automatisierten Bereitstellungsprozessen.\u00a0<\/p><\/div><\/li><li><span class=\"figures__value\">+ 30 %<\/span><div class=\"figures__text\"><p><strong>h\u00f6here Teamproduktivit\u00e4t<\/strong><strong>:<\/strong> Durch die verbesserte Zusammenarbeit und klare Prozessstruktur konnten Teams schneller und effizienter arbeiten.\u00a0<\/p><\/div><\/li><li><span class=\"figures__value\">\u221245 %<\/span><div class=\"figures__text\"><p><strong>Reduktion bei Sicherheitsvorf\u00e4llen: <\/strong>Verbesserte Firewall- und Netzwerksicherheitsma\u00dfnahmen reduzierten Risiken und sch\u00fctzten sensible Kundendaten noch besser.\u00a0<\/p><\/div><\/li><\/ul>\n<figure class=\"media-figure\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2026\/11\/ser-remake-trceev-1024x512-1.jpg\" alt=\"\" width=\"800\" height=\"400\"><\/figure>\n  <\/div>\n<\/section>\n\n<section class=\"section\">\n  <div class=\"container\">\n    <div class=\"section__head\"><h2>A head start through migration: inspiration for stable IT infrastructures<\/h2><p>A look at the migration project for Deutsche Bank shows how you can make your IT infrastructure cost-effective and future-proof. The ideal combination of DevOps and cloud technology enabled a highly scalable environment, optimized security and seamless automation. But in which cases could a similar approach make sense for you?\u00a0<\/p><p><strong>Complex, heterogeneous IT landscape<\/strong><br>If your existing infrastructure is spread across different on-premises and cloud systems, a hybrid cloud environment, such as the GCP-based solution, can significantly increase flexibility and control. Thanks to the elastic cloud resources, load peaks can be absorbed and costs managed efficiently at the same time.\u00a0<\/p><p><strong>High security and compliance requirements<\/strong><br>In regulated industries such as the financial sector, seamless security structures are essential. A combination of firewall optimizations, network analyses and intrusion detection allows you to preventively minimize security incidents. Those who rely on cloud-native security solutions such as VPC and Cloud Armor achieve the highest standards and ensure compliance at the same time.\u00a0<\/p><p><strong>Resource-intensive maintenance costs<\/strong><br>Uses Infrastructure-as-Code (IaC) with tools such as Terraform to reduce management costs. Automated configuration processes and proactive monitoring reduce maintenance costs by up to 35%. This can free up your resources and significantly reduce operating costs.\u00a0<\/p><p><strong>Long deployment times and time-to-market<\/strong><br>If development and deployment processes are time-consuming, CI\/CD tools such as Jenkins and container solutions such as Docker and Kubernetes can drastically reduce rollout times. This increases agility and brings new functions to market faster, which provides a decisive advantage, especially in a competitive environment.\u00a0<\/p><p><strong>Promoting cross-team collaboration<\/strong><br>Clear processes and seamless collaboration are crucial in complex projects. DevOps methods facilitate the workflow here and promote efficient coordination between development and operations teams. This allows you to sustainably increase productivity, which is reflected in more efficient project management.\u00a0<\/p><p>Durch diesen Ansatz sch\u00f6pft ihr die Potenziale von DevOps und Cloud-Technologie voll aus und schafft eine Basis, die nicht nur heute, sondern auch langfristig eure Gesch\u00e4ftsziele unterst\u00fctzt, lasst uns wissen, ob wir helfen k\u00f6nnen.\u00a0<\/p><\/div>\n<div class=\"btn-row\"><a class=\"btn btn--lg\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/kontakt\/\">Start reboot<\/a><\/div>\n<div class=\"grid grid--2\"><div class=\"card card--feature\"><h3><strong>Our tech kit <\/strong><\/h3><p>Im Migration Project setzten wir folgende Tools und Technologien ein, um eine leistungsstarke und sichere Umgebung f\u00fcr die Deutsche Bank zu schaffen:\u00a0<\/p><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Cloud turbo<\/h3><p>GCP as our elastic cloud, providing a scalable and cost-efficient infrastructure, perfect for dynamic deployments.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>DevOps magic<\/h3><p>Jenkins enchanted the CI\/CD pipeline to automate the development process and enable lightning-fast software delivery<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Kubernetes captain<\/h3><p>The container orchestration enabler that ensures everything runs seamlessly and automatically adapts to the load.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Container cabin<\/h3><p>Docker, the flexible housing for applications that enables containerization so that software can be deployed quickly and securely.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Automation architect<\/h3><p>The scheduler, Ansible, which simplifies and automates configurations to save time and reduce human error.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Infrastructure illusionist<\/h3><p>Terraform acted as the master of infrastructure as code, enabling us to deploy our entire environment efficiently and reproducibly.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Firewall Fortress<\/h3><p>Cloud Armor to guarantee network security and ward off threats to protect sensitive data.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Network ninja<\/h3><p>VPC was the secret protector of the cloud infrastructure, creating a secure and isolated environment for the resources.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>Security superhero<\/h3><p>Intrusion detection tools as a watchdog that detects potential threats in real time and takes immediate action to protect our systems.<\/p><\/div><\/div><\/div><div class=\"card card--feature\"><div class=\"grid\"><div class=\"card card--feature\"><h3>The Guardian<\/h3><p>The systems monitor, Stackdriver, which provides us with comprehensive insights and enables us to react proactively to problems.<\/p><\/div><\/div><\/div><\/div>\n  <\/div>\n<\/section>\n<\/main>\n<footer class=\"ser-site-footer\">\n  <div class=\"container site-footer__top\">\n    <div class=\"footer-newsletter\">\n      <a class=\"btn btn--outline\" href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/newsletter\/\">Subscribe to our newsletter<\/a>\n    <\/div>\n    <div class=\"footer-brands\">\n      <p class=\"footer-title\">Our brands<\/p>\n      <ul class=\"brand-row\">\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2024\/01\/cropped-Sky-E-Red-Technology_Logo-original-1.png\" alt=\"Sky-E Red Technology\" width=\"512\" height=\"512\"><\/a><\/li>\n        <li><a href=\"https:\/\/skyeredgames.de\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2024\/10\/Sky-E-Red-GAMES-938x1024.png\" alt=\"Sky-E Red Games\" width=\"938\" height=\"1024\"><\/a><\/li>\n        <li><a href=\"https:\/\/skyered-business-education.de\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2024\/10\/SER_Logo_2-1-2-1635x2048-1-818x1024.webp\" alt=\"Sky-E Red Business Education\" width=\"818\" height=\"1024\"><span class=\"brand-label\">Business<\/span><\/a><\/li>\n        <li><a href=\"https:\/\/skyered-education.de\/\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2024\/10\/cropped-cropped-Sky-E-Red-Education_Logo_1-1-1002x1024.png\" alt=\"Sky-E Red Education\" width=\"1002\" height=\"1024\"><\/a><\/li>\n      <\/ul>\n      <p class=\"footer-claim\">\u201eSky-E Red: Masters of Cloud and DevOps, Game Innovators, and Certified IT Educators.\u201c<\/p>\n    <\/div>\n    <nav class=\"footer-nav\" aria-label=\"Fu\u00dfnavigation\">\n      <ul class=\"footer-links\">\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/\">Home<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/services\/\">What we do<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/projekte\/\">Success stories<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/ueber-uns\/\">About us<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/blog\/\">Blog<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/impressum\/\">Imprint<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/datenschutz\/\">Data protection<\/a><\/li>\n        <li><a href=\"https:\/\/skyeredtechnology.de\/en\/homepage-test\/kontakt\/\">Contact us<\/a><\/li>\n      <\/ul>\n    <\/nav>\n    <div class=\"footer-bottom\">\n      <p class=\"mb-0\">Copyright \u00a9 2026 Sky-E Red GmbH<\/p>\n      <ul class=\"social\">\n        <li><a href=\"https:\/\/www.instagram.com\/skyerededucation\/\" target=\"_blank\" rel=\"noopener\">Instagram<\/a><\/li>\n        <li><a href=\"https:\/\/www.linkedin.com\/company\/skyered\/\" target=\"_blank\" rel=\"noopener\">Linkedin<\/a><\/li>\n        <li><a href=\"https:\/\/www.tiktok.com\/@skyerededucation\" target=\"_blank\" rel=\"noopener\">TikTok<\/a><\/li>\n        <li><a href=\"https:\/\/www.threads.net\/@skyeredtechnology\" target=\"_blank\" rel=\"noopener\">Threads<\/a><\/li>\n      <\/ul>\n    <\/div>\n  <\/div>\n<\/footer>\n\n\n<script>(function(){var b=atob('LyogU2t5LUUgUmVkIEVkdWNhdGlvbiDigJQgc2l0ZSBiZWhhdmlvdXIgKG5vIGRlcGVuZGVuY2llcykuCiAgIDEuIERlc2t0b3AgZHJvcGRvd25zOiBjbGljay9FbnRlci9TcGFjZSB0b2dnbGUsIGhvdmVyIG9wZW5zIG9uIHBvaW50ZXIgZGV2aWNlcywKICAgICAgRXNjYXBlIGNsb3NlcyBhbmQgcmV0dXJucyBmb2N1cywgQXJyb3dEb3duIG1vdmVzIGludG8gdGhlIG1lbnUsIG91dHNpZGUgY2xpY2sgY2xvc2VzLgogICAyLiBNb2JpbGUgZHJhd2VyOiBidXJnZXIgdG9nZ2xlcywgc3VibWVudXMgYXJlIGRpc2Nsb3N1cmUgYnV0dG9ucywgRXNjYXBlIGNsb3Nlcy4KICAgQWNjb3JkaW9ucyB1c2UgbmF0aXZlIDxkZXRhaWxzPiwgYW5kIHRoZSBvbmUgbW90aW9uIGdlc3R1cmUgKGhlcm8gY291cnNlLXNoZWV0IHJvd3MpCiAgIGlzIHB1cmUgQ1NTLCBzbyBuZWl0aGVyIG5lZWRzIHNjcmlwdC4gKi8KKGZ1bmN0aW9uICgpIHsKICAidXNlIHN0cmljdCI7CgogIHZhciBkZXNrdG9wSXRlbXMgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIubmF2X19pdGVtLS1oYXMtbWVudSIpKTsKICB2YXIgY2FuSG92ZXIgPSB3aW5kb3cubWF0Y2hNZWRpYSAmJiB3aW5kb3cubWF0Y2hNZWRpYSgiKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSIpLm1hdGNoZXM7CgogIGZ1bmN0aW9uIHNldE9wZW4oaXRlbSwgb3BlbikgewogICAgdmFyIHRvZ2dsZSA9IGl0ZW0ucXVlcnlTZWxlY3RvcigiLm5hdl9fdG9nZ2xlIik7CiAgICBpdGVtLmNsYXNzTGlzdC50b2dnbGUoImlzLW9wZW4iLCBvcGVuKTsKICAgIGlmICh0b2dnbGUpIHRvZ2dsZS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCBvcGVuID8gInRydWUiIDogImZhbHNlIik7CiAgfQoKICBmdW5jdGlvbiBjbG9zZUFsbChleGNlcHQpIHsKICAgIGRlc2t0b3BJdGVtcy5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgIGlmIChpdGVtICE9PSBleGNlcHQpIHNldE9wZW4oaXRlbSwgZmFsc2UpOwogICAgfSk7CiAgfQoKICBkZXNrdG9wSXRlbXMuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkgewogICAgdmFyIHRvZ2dsZSA9IGl0ZW0ucXVlcnlTZWxlY3RvcigiLm5hdl9fdG9nZ2xlIik7CiAgICB2YXIgbGlua3MgPSBmdW5jdGlvbiAoKSB7IHJldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChpdGVtLnF1ZXJ5U2VsZWN0b3JBbGwoIi5uYXZfX21lbnUgYSIpKTsgfTsKICAgIGlmICghdG9nZ2xlKSByZXR1cm47CgogICAgdmFyIG9wZW5lZEJ5SG92ZXIgPSBmYWxzZTsKCiAgICB0b2dnbGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiAoKSB7CiAgICAgIC8vIEEgcG9pbnRlciB0aGF0IGhvdmVyZWQgdGhlIGl0ZW0gYWxyZWFkeSBvcGVuZWQgaXQ7IHRoZSBjbGljayBtdXN0IG5vdCBjbG9zZSBpdCBhZ2Fpbi4KICAgICAgdmFyIG9wZW4gPSBvcGVuZWRCeUhvdmVyID8gdHJ1ZSA6ICFpdGVtLmNsYXNzTGlzdC5jb250YWlucygiaXMtb3BlbiIpOwogICAgICBvcGVuZWRCeUhvdmVyID0gZmFsc2U7CiAgICAgIGNsb3NlQWxsKGl0ZW0pOwogICAgICBzZXRPcGVuKGl0ZW0sIG9wZW4pOwogICAgfSk7CgogICAgdG9nZ2xlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLCBmdW5jdGlvbiAoZSkgewogICAgICBpZiAoZS5rZXkgPT09ICJBcnJvd0Rvd24iKSB7CiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgIGNsb3NlQWxsKGl0ZW0pOwogICAgICAgIHNldE9wZW4oaXRlbSwgdHJ1ZSk7CiAgICAgICAgdmFyIGZpcnN0ID0gbGlua3MoKVswXTsKICAgICAgICBpZiAoZmlyc3QpIGZpcnN0LmZvY3VzKCk7CiAgICAgIH0KICAgIH0pOwoKICAgIGl0ZW0uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsIGZ1bmN0aW9uIChlKSB7CiAgICAgIHZhciBsaXN0ID0gbGlua3MoKTsKICAgICAgdmFyIGlkeCA9IGxpc3QuaW5kZXhPZihkb2N1bWVudC5hY3RpdmVFbGVtZW50KTsKICAgICAgaWYgKGUudGFyZ2V0ID09PSB0b2dnbGUgJiYgZS5rZXkgIT09ICJFc2NhcGUiKSByZXR1cm47IC8vIHRvZ2dsZSBoYXMgaXRzIG93biBoYW5kbGVyCiAgICAgIGlmIChlLmtleSA9PT0gIkVzY2FwZSIpIHsKICAgICAgICBzZXRPcGVuKGl0ZW0sIGZhbHNlKTsKICAgICAgICB0b2dnbGUuZm9jdXMoKTsKICAgICAgfSBlbHNlIGlmIChlLmtleSA9PT0gIkFycm93RG93biIgJiYgaWR4ID4gLTEpIHsKICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgbGlzdFsoaWR4ICsgMSkgJSBsaXN0Lmxlbmd0aF0uZm9jdXMoKTsKICAgICAgfSBlbHNlIGlmIChlLmtleSA9PT0gIkFycm93VXAiICYmIGlkeCA+IC0xKSB7CiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgIGlmIChpZHggPT09IDApIHRvZ2dsZS5mb2N1cygpOyBlbHNlIGxpc3RbaWR4IC0gMV0uZm9jdXMoKTsKICAgICAgfQogICAgfSk7CgogICAgaXRlbS5hZGRFdmVudExpc3RlbmVyKCJmb2N1c291dCIsIGZ1bmN0aW9uIChlKSB7CiAgICAgIGlmICghaXRlbS5jb250YWlucyhlLnJlbGF0ZWRUYXJnZXQpKSBzZXRPcGVuKGl0ZW0sIGZhbHNlKTsKICAgIH0pOwoKICAgIGlmIChjYW5Ib3ZlcikgewogICAgICB2YXIgdGltZXIgPSBudWxsOwogICAgICBpdGVtLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZW50ZXIiLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKTsKICAgICAgICBvcGVuZWRCeUhvdmVyID0gIWl0ZW0uY2xhc3NMaXN0LmNvbnRhaW5zKCJpcy1vcGVuIik7CiAgICAgICAgY2xvc2VBbGwoaXRlbSk7CiAgICAgICAgc2V0T3BlbihpdGVtLCB0cnVlKTsKICAgICAgfSk7CiAgICAgIGl0ZW0uYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsIGZ1bmN0aW9uICgpIHsKICAgICAgICBvcGVuZWRCeUhvdmVyID0gZmFsc2U7CiAgICAgICAgdGltZXIgPSBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsgc2V0T3BlbihpdGVtLCBmYWxzZSk7IH0sIDE2MCk7CiAgICAgIH0pOwogICAgfQogIH0pOwoKICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGZ1bmN0aW9uIChlKSB7CiAgICBpZiAoIWUudGFyZ2V0LmNsb3Nlc3QoIi5uYXZfX2l0ZW0tLWhhcy1tZW51IikpIGNsb3NlQWxsKG51bGwpOwogIH0pOwoKICAvKiBNb2JpbGUgZHJhd2VyICovCiAgdmFyIGJ1cmdlciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5idXJnZXIiKTsKICB2YXIgZHJhd2VyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vYmlsZS1uYXYiKTsKCiAgZnVuY3Rpb24gc2V0RHJhd2VyKG9wZW4pIHsKICAgIGlmICghYnVyZ2VyIHx8ICFkcmF3ZXIpIHJldHVybjsKICAgIGJ1cmdlci5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCBvcGVuID8gInRydWUiIDogImZhbHNlIik7CiAgICBidXJnZXIuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIiwgb3BlbiA\/ICJNZW7DvCBzY2hsaWXDn2VuIiA6ICJNZW7DvCDDtmZmbmVuIik7CiAgICBkcmF3ZXIuaGlkZGVuID0gIW9wZW47CiAgICBkb2N1bWVudC5ib2R5LmNsYXNzTGlzdC50b2dnbGUoIm5hdi1vcGVuIiwgb3Blbik7CiAgfQoKICBpZiAoYnVyZ2VyICYmIGRyYXdlcikgewogICAgYnVyZ2VyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24gKCkgewogICAgICBzZXREcmF3ZXIoYnVyZ2VyLmdldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIpICE9PSAidHJ1ZSIpOwogICAgfSk7CiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgZnVuY3Rpb24gKGUpIHsKICAgICAgaWYgKGUua2V5ID09PSAiRXNjYXBlIiAmJiAhZHJhd2VyLmhpZGRlbikgewogICAgICAgIHNldERyYXdlcihmYWxzZSk7CiAgICAgICAgYnVyZ2VyLmZvY3VzKCk7CiAgICAgIH0KICAgIH0pOwogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsIGZ1bmN0aW9uICgpIHsKICAgICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoID49IDExODAgJiYgIWRyYXdlci5oaWRkZW4pIHNldERyYXdlcihmYWxzZSk7CiAgICB9KTsKICB9CgogIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1vYmlsZS1uYXZfX3RvZ2dsZSIpLCBmdW5jdGlvbiAoYnRuKSB7CiAgICBidG4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiAoKSB7CiAgICAgIHZhciBzdWIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChidG4uZ2V0QXR0cmlidXRlKCJhcmlhLWNvbnRyb2xzIikpOwogICAgICB2YXIgb3BlbiA9IGJ0bi5nZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiKSAhPT0gInRydWUiOwogICAgICBidG4uc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwgb3BlbiA\/ICJ0cnVlIiA6ICJmYWxzZSIpOwogICAgICBpZiAoc3ViKSBzdWIuaGlkZGVuID0gIW9wZW47CiAgICB9KTsKICB9KTsKCiAgLy8gVGltZWxpbmUgcHJvZ3Jlc3M6IHRoZSBsaW5lIGZpbGxzIGFuZCB0aGUgZG90cyB0dXJuIHR1cnF1b2lzZSBhcyB0aGUgc2VjdGlvbiBzY3JvbGxzIGJ5LgogIHZhciB0aW1lbGluZXMgPSBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIudGltZWxpbmUiKSk7CiAgaWYgKHRpbWVsaW5lcy5sZW5ndGgpIHsKICAgIHZhciB1cGRhdGUgPSBmdW5jdGlvbiAoKSB7CiAgICAgIHZhciBtaWQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgKiAwLjY7CiAgICAgIHRpbWVsaW5lcy5mb3JFYWNoKGZ1bmN0aW9uICh0bCkgewogICAgICAgIHZhciBib3ggPSAodGwuY2xvc2VzdCgic2VjdGlvbiIpIHx8IHRsKS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKICAgICAgICB2YXIgcCA9IE1hdGgubWluKDEsIE1hdGgubWF4KDAsIChtaWQgLSBib3gudG9wKSAvIE1hdGgubWF4KDEsIGJveC5oZWlnaHQgLSB3aW5kb3cuaW5uZXJIZWlnaHQgKiAwLjMpKSk7CiAgICAgICAgdGwuc3R5bGUuc2V0UHJvcGVydHkoIi0tcCIsIHAudG9GaXhlZCgzKSk7CiAgICAgICAgdmFyIGl0ZW1zID0gdGwuY2hpbGRyZW47CiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykgewogICAgICAgICAgaXRlbXNbaV0uY2xhc3NMaXN0LnRvZ2dsZSgiaXMtZG9uZSIsIHAgPj0gaSAvIE1hdGgubWF4KDEsIGl0ZW1zLmxlbmd0aCAtIDEpIC0gMC4wMDEpOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9OwogICAgdGltZWxpbmVzLmZvckVhY2goZnVuY3Rpb24gKHRsKSB7IHRsLnNldEF0dHJpYnV0ZSgiZGF0YS1zY3JvbGwiLCAiIik7IH0pOwogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsIHVwZGF0ZSwgeyBwYXNzaXZlOiB0cnVlIH0pOwogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsIHVwZGF0ZSk7CiAgICB1cGRhdGUoKTsKICB9CgogIC8vIEZ1bmRpbmcgY2FsY3VsYXRvciAoUUNHIHBhZ2UpOiBtb250aGx5IGZ1bmRpbmcgcGVyIGVtcGxveWVlIGZyb20gY29tcGFueSBzaXplIGFuZCBncm9zcyBzYWxhcnkuCiAgLy8gVmFsdWVzIGFyZSB0aGUgb25lcyBpbiB0aGUgbGl2ZSBwYWdlJ3Mgc2NyaXB0IChrZXlzOiBzaXplX3NhbGFyeSkuCiAgdmFyIGNhbGMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJbZGF0YS1jYWxjXSIpOwogIGlmIChjYWxjKSB7CiAgICB2YXIgdGFibGUgPSB7IHNtYWxsXzQwOiAzMDAwLCBzbWFsbF81MDogMzc1MCwgc21hbGxfNjA6IDQ2NTAsIGJpZ180MDogMjAwMCwgYmlnXzUwOiAyNTAwLCBiaWdfNjA6IDMxMDAgfTsKICAgIHZhciBvdXQgPSBjYWxjLnF1ZXJ5U2VsZWN0b3IoIltkYXRhLWNhbGMtb3V0XSIpOwogICAgdmFyIHJlbmRlciA9IGZ1bmN0aW9uICgpIHsKICAgICAgdmFyIHNpemUgPSBjYWxjLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0W25hbWU9Im1pdGFyYmVpdGVyIl06Y2hlY2tlZCcpOwogICAgICB2YXIgcGF5ID0gY2FsYy5xdWVyeVNlbGVjdG9yKCdpbnB1dFtuYW1lPSJnZWhhbHQiXTpjaGVja2VkJyk7CiAgICAgIGlmICghc2l6ZSB8fCAhcGF5KSB7CiAgICAgICAgb3V0LnRleHRDb250ZW50ID0gIkJpdHRlIHRyZWZmZW4gU2llIGVpbmUgQXVzd2FobC4iOwogICAgICAgIG91dC5jbGFzc05hbWUgPSAiY2FsY19fdmFsdWUgaXMtZW1wdHkiOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB2YXIgYW1vdW50ID0gdGFibGVbc2l6ZS52YWx1ZSArICJfIiArIHBheS52YWx1ZV07CiAgICAgIG91dC50ZXh0Q29udGVudCA9IGFtb3VudC50b0xvY2FsZVN0cmluZygiZGUtREUiLCB7IHN0eWxlOiAiY3VycmVuY3kiLCBjdXJyZW5jeTogIkVVUiIsIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMCB9KTsKICAgICAgb3V0LmNsYXNzTmFtZSA9ICJjYWxjX192YWx1ZSBpcy1zZXQiOwogICAgfTsKICAgIGNhbGMuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIiwgcmVuZGVyKTsKICB9CgogIC8vIENhcm91c2VsIChjdXN0b21lciBleGFtcGxlcyksIGluZmluaXRlIGluIGJvdGggZGlyZWN0aW9uczogdGhlIHNsaWRlcyBhcmUgY2xvbmVkIGJlZm9yZSBhbmQgYWZ0ZXIgKGNsb25lcyBhcmUKICAvLyBhcmlhLWhpZGRlbiBhbmQgaW5lcnQpLCBwcmV2L25leHQvc3dpcGUvYXJyb3cga2V5cyBrZWVwIHNjcm9sbGluZywgYW5kIG9uY2Ugc2Nyb2xsaW5nIGhhcyBzZXR0bGVkIHRoZSB0cmFjayBqdW1wcwogIC8vIGJ5IGV4YWN0bHkgb25lIHNldCBvZiBzbGlkZXMsIHdoaWNoIGxvb2tzIGlkZW50aWNhbCwgc28gbm9ib2R5IHNlZXMgdGhlIHdyYXAuIENTUyBzY3JvbGwtc25hcCBkb2VzIHRoZSBzbGlkaW5nLgogIC8vIE5vIGF1dG9wbGF5LiBTbW9vdGggc2Nyb2xsaW5nIG9ubHkgd2hlbiB0aGUgdmlzaXRvciBoYXMgbm90IGFza2VkIGZvciByZWR1Y2VkIG1vdGlvbi4KICBBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLWNhcm91c2VsXSIpLCBmdW5jdGlvbiAocm9vdCkgewogICAgdmFyIHZwID0gcm9vdC5xdWVyeVNlbGVjdG9yKCIuY2Fyb3VzZWxfX3ZpZXdwb3J0Iik7CiAgICB2YXIgdHJhY2sgPSByb290LnF1ZXJ5U2VsZWN0b3IoIi5jYXJvdXNlbF9fdHJhY2siKTsKICAgIHZhciByZWFsID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwocm9vdC5xdWVyeVNlbGVjdG9yQWxsKCIuY2Fyb3VzZWxfX3NsaWRlIikpOwogICAgdmFyIGNvbnRyb2xzID0gcm9vdC5xdWVyeVNlbGVjdG9yKCIuY2Fyb3VzZWxfX2NvbnRyb2xzIik7CiAgICB2YXIgcHJldiA9IHJvb3QucXVlcnlTZWxlY3RvcigiLmNhcm91c2VsX19idG4tLXByZXYiKTsKICAgIHZhciBuZXh0ID0gcm9vdC5xdWVyeVNlbGVjdG9yKCIuY2Fyb3VzZWxfX2J0bi0tbmV4dCIpOwogICAgdmFyIGRvdHNCb3ggPSByb290LnF1ZXJ5U2VsZWN0b3IoIi5jYXJvdXNlbF9fZG90cyIpOwogICAgdmFyIG4gPSByZWFsLmxlbmd0aDsKICAgIGlmICghdnAgfHwgIXRyYWNrIHx8IG4gPCAyIHx8ICFjb250cm9scykgcmV0dXJuOwogICAgdmFyIHJlZHVjZSA9IHdpbmRvdy5tYXRjaE1lZGlhICYmIHdpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSIpLm1hdGNoZXM7CgogICAgZnVuY3Rpb24gY2xvbmUoc2xpZGUpIHsKICAgICAgdmFyIGMgPSBzbGlkZS5jbG9uZU5vZGUodHJ1ZSk7CiAgICAgIGMuc2V0QXR0cmlidXRlKCJhcmlhLWhpZGRlbiIsICJ0cnVlIik7CiAgICAgIGMuc2V0QXR0cmlidXRlKCJpbmVydCIsICIiKTsKICAgICAgYy5yZW1vdmVBdHRyaWJ1dGUoInJvbGUiKTsKICAgICAgYy5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtcm9sZWRlc2NyaXB0aW9uIik7CiAgICAgIGMucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWxhYmVsIik7CiAgICAgIHJldHVybiBjOwogICAgfQogICAgdmFyIGJlZm9yZSA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKICAgIHZhciBhZnRlciA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKICAgIHJlYWwuZm9yRWFjaChmdW5jdGlvbiAoc2wpIHsgYmVmb3JlLmFwcGVuZENoaWxkKGNsb25lKHNsKSk7IGFmdGVyLmFwcGVuZENoaWxkKGNsb25lKHNsKSk7IH0pOwogICAgdHJhY2suaW5zZXJ0QmVmb3JlKGJlZm9yZSwgdHJhY2suZmlyc3RDaGlsZCk7CiAgICB0cmFjay5hcHBlbmRDaGlsZChhZnRlcik7CiAgICB2YXIgYWxsID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwodHJhY2suY2hpbGRyZW4pOyAvLyAzIHNldHM6IFtjbG9uZXNdW3JlYWxdW2Nsb25lc10KCiAgICB2YXIgZG90cyA9IHJlYWwubWFwKGZ1bmN0aW9uIChfLCBpKSB7CiAgICAgIHZhciBiID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7CiAgICAgIGIudHlwZSA9ICJidXR0b24iOwogICAgICBiLmNsYXNzTmFtZSA9ICJjYXJvdXNlbF9fZG90IjsKICAgICAgYi5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLCAocm9vdC5nZXRBdHRyaWJ1dGUoImRhdGEtbGFiZWwtc2xpZGUiKSB8fCAiSXRlbSIpICsgIiAiICsgKGkgKyAxKSArICIgIiArIChyb290LmdldEF0dHJpYnV0ZSgiZGF0YS1sYWJlbC1vZiIpIHx8ICIvIikgKyAiICIgKyBuKTsKICAgICAgYi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGZ1bmN0aW9uICgpIHsgZ28obiArIGkpOyB9KTsKICAgICAgZG90c0JveC5hcHBlbmRDaGlsZChiKTsKICAgICAgcmV0dXJuIGI7CiAgICB9KTsKICAgIHZhciBwYWRMZWZ0ID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gcGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHZwKS5wYWRkaW5nTGVmdCkgfHwgMDsgfTsKICAgIHZhciB0YXJnZXQgPSBmdW5jdGlvbiAoaSkgeyByZXR1cm4gdnAuc2Nyb2xsTGVmdCArIGFsbFtpXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0IC0gdnAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdCAtIHBhZExlZnQoKTsgfTsKICAgIGZ1bmN0aW9uIGdvKGkpIHsKICAgICAgaSA9IE1hdGgubWF4KDAsIE1hdGgubWluKGFsbC5sZW5ndGggLSAxLCBpKSk7CiAgICAgIHZwLnNjcm9sbFRvKHsgbGVmdDogdGFyZ2V0KGkpLCBiZWhhdmlvcjogcmVkdWNlID8gImF1dG8iIDogInNtb290aCIgfSk7CiAgICB9CiAgICBmdW5jdGlvbiBuZWFyZXN0KCkgewogICAgICB2YXIgYmVzdCA9IG4sIGRpc3QgPSBJbmZpbml0eTsKICAgICAgYWxsLmZvckVhY2goZnVuY3Rpb24gKF8sIGkpIHsKICAgICAgICB2YXIgZCA9IE1hdGguYWJzKHRhcmdldChpKSAtIHZwLnNjcm9sbExlZnQpOwogICAgICAgIGlmIChkIDwgZGlzdCkgeyBkaXN0ID0gZDsgYmVzdCA9IGk7IH0KICAgICAgfSk7CiAgICAgIHJldHVybiBiZXN0OwogICAgfQogICAgZnVuY3Rpb24gc2V0RG90cygpIHsKICAgICAgdmFyIGEgPSBuZWFyZXN0KCkgJSBuOwogICAgICBkb3RzLmZvckVhY2goZnVuY3Rpb24gKGQsIGkpIHsKICAgICAgICBpZiAoaSA9PT0gYSkgZC5zZXRBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIsICJ0cnVlIik7IGVsc2UgZC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIpOwogICAgICB9KTsKICAgIH0KICAgIHZhciBwcmVzc2VkID0gZmFsc2UsIHRpbWVyID0gbnVsbDsKICAgIGZ1bmN0aW9uIHNldHRsZSgpIHsKICAgICAgdGltZXIgPSBudWxsOwogICAgICBpZiAocHJlc3NlZCkgcmV0dXJuOwogICAgICB2YXIgaSA9IG5lYXJlc3QoKTsKICAgICAgaWYgKGkgPCBuIHx8IGkgPj0gMiAqIG4pIHsKICAgICAgICB2YXIgc2V0ID0gdGFyZ2V0KG4pIC0gdGFyZ2V0KDApOyAvLyB3aWR0aCBvZiBvbmUgc2V0IG9mIHNsaWRlcyBpbmNsdWRpbmcgZ2FwcwogICAgICAgIHZwLnNjcm9sbExlZnQgKz0gaSA8IG4gPyBzZXQgOiAtc2V0OyAvLyBpbnN0YW50IGp1bXAgdG8gdGhlIGlkZW50aWNhbCBwb3NpdGlvbiBpbiB0aGUgbWlkZGxlIHNldAogICAgICB9CiAgICAgIHNldERvdHMoKTsKICAgIH0KICAgIGZ1bmN0aW9uIG9uU2Nyb2xsKCkgewogICAgICBzZXREb3RzKCk7CiAgICAgIGNsZWFyVGltZW91dCh0aW1lcik7CiAgICAgIHRpbWVyID0gc2V0VGltZW91dChzZXR0bGUsIDEyMCk7CiAgICB9CiAgICBwcmV2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24gKCkgeyBnbyhuZWFyZXN0KCkgLSAxKTsgfSk7CiAgICBuZXh0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24gKCkgeyBnbyhuZWFyZXN0KCkgKyAxKTsgfSk7CiAgICB2cC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLCBvblNjcm9sbCwgeyBwYXNzaXZlOiB0cnVlIH0pOwogICAgdnAuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLCBmdW5jdGlvbiAoKSB7IHByZXNzZWQgPSB0cnVlOyB9KTsKICAgIFsicG9pbnRlcnVwIiwgInBvaW50ZXJjYW5jZWwiLCAicG9pbnRlcmxlYXZlIl0uZm9yRWFjaChmdW5jdGlvbiAoZXYpIHsKICAgICAgdnAuYWRkRXZlbnRMaXN0ZW5lcihldiwgZnVuY3Rpb24gKCkgeyBpZiAocHJlc3NlZCkgeyBwcmVzc2VkID0gZmFsc2U7IGNsZWFyVGltZW91dCh0aW1lcik7IHRpbWVyID0gc2V0VGltZW91dChzZXR0bGUsIDEyMCk7IH0gfSk7CiAgICB9KTsKICAgIHZwLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLCBmdW5jdGlvbiAoKSB7IHByZXNzZWQgPSB0cnVlOyB9LCB7IHBhc3NpdmU6IHRydWUgfSk7CiAgICB2cC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsIGZ1bmN0aW9uICgpIHsgcHJlc3NlZCA9IGZhbHNlOyBjbGVhclRpbWVvdXQodGltZXIpOyB0aW1lciA9IHNldFRpbWVvdXQoc2V0dGxlLCAxMjApOyB9LCB7IHBhc3NpdmU6IHRydWUgfSk7CiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIiwgZnVuY3Rpb24gKCkgeyB2YXIgaSA9IG5lYXJlc3QoKSAlIG47IHZwLnNjcm9sbExlZnQgPSB0YXJnZXQobiArIGkpOyBzZXREb3RzKCk7IH0pOwogICAgdnAuc2V0QXR0cmlidXRlKCJyb2xlIiwgImdyb3VwIik7CiAgICB2cC5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLCByb290LmdldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIpICsgKHJvb3QuZ2V0QXR0cmlidXRlKCJkYXRhLWxhYmVsLWtleXMiKSB8fCAiIikpOwogICAgY29udHJvbHMuaGlkZGVuID0gZmFsc2U7CiAgICB2cC5zY3JvbGxMZWZ0ID0gdGFyZ2V0KG4pOyAvLyBzdGFydCBvbiB0aGUgZmlyc3QgcmVhbCBzbGlkZQogICAgc2V0RG90cygpOwogIH0pOwp9KSgpOwoKLyogVGFiczogb25lIHZpc2libGUgcGFuZWwsIGFycm93IGtleXMgbW92ZSBiZXR3ZWVuIHRhYnMuIFdpdGhvdXQgdGhpcyBzY3JpcHQgYWxsIHBhbmVscyBzdGF5IHZpc2libGUuICovCihmdW5jdGlvbiAoKSB7CiAgInVzZSBzdHJpY3QiOwogIEFycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtdGFic10iKSwgZnVuY3Rpb24gKHJvb3QpIHsKICAgIHZhciB0YWJzID0gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwocm9vdC5xdWVyeVNlbGVjdG9yQWxsKCIudGFic19fdGFiIikpOwogICAgdmFyIHBhbmVscyA9IEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKHJvb3QucXVlcnlTZWxlY3RvckFsbCgiLnRhYnNfX3BhbmVsIikpOwogICAgaWYgKHRhYnMubGVuZ3RoIDwgMiB8fCB0YWJzLmxlbmd0aCAhPT0gcGFuZWxzLmxlbmd0aCkgcmV0dXJuOwogICAgcm9vdC5jbGFzc0xpc3QuYWRkKCJpcy1qcyIpOwogICAgZnVuY3Rpb24gc2hvdyhpLCBmb2N1cykgewogICAgICB0YWJzLmZvckVhY2goZnVuY3Rpb24gKHQsIGopIHsKICAgICAgICB0LnNldEF0dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsIGogPT09IGkgPyAidHJ1ZSIgOiAiZmFsc2UiKTsKICAgICAgICB0LnRhYkluZGV4ID0gaiA9PT0gaSA\/IDAgOiAtMTsKICAgICAgICBwYW5lbHNbal0uaGlkZGVuID0gaiAhPT0gaTsKICAgICAgfSk7CiAgICAgIGlmIChmb2N1cykgdGFic1tpXS5mb2N1cygpOwogICAgfQogICAgdGFicy5mb3JFYWNoKGZ1bmN0aW9uICh0LCBpKSB7CiAgICAgIHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLCBmdW5jdGlvbiAoKSB7IHNob3coaSwgZmFsc2UpOyB9KTsKICAgICAgdC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIiwgZnVuY3Rpb24gKGUpIHsKICAgICAgICB2YXIgayA9IGUua2V5LCBuID0gdGFicy5sZW5ndGg7CiAgICAgICAgaWYgKGsgPT09ICJBcnJvd1JpZ2h0IiB8fCBrID09PSAiQXJyb3dEb3duIikgeyBlLnByZXZlbnREZWZhdWx0KCk7IHNob3coKGkgKyAxKSAlIG4sIHRydWUpOyB9CiAgICAgICAgZWxzZSBpZiAoayA9PT0gIkFycm93TGVmdCIgfHwgayA9PT0gIkFycm93VXAiKSB7IGUucHJldmVudERlZmF1bHQoKTsgc2hvdygoaSArIG4gLSAxKSAlIG4sIHRydWUpOyB9CiAgICAgICAgZWxzZSBpZiAoayA9PT0gIkhvbWUiKSB7IGUucHJldmVudERlZmF1bHQoKTsgc2hvdygwLCB0cnVlKTsgfQogICAgICAgIGVsc2UgaWYgKGsgPT09ICJFbmQiKSB7IGUucHJldmVudERlZmF1bHQoKTsgc2hvdyhuIC0gMSwgdHJ1ZSk7IH0KICAgICAgfSk7CiAgICB9KTsKICAgIHNob3coMCwgZmFsc2UpOwogIH0pOwp9KSgpOwo='),u=new Uint8Array(b.length);for(var i=0;i<b.length;i++)u[i]=b.charCodeAt(i);new Function(new TextDecoder('utf-8').decode(u))();})();<\/script>","protected":false},"excerpt":{"rendered":"<p>Zum Inhalt springen Services Services DevOps Cloud AI Workflow Automation Enterprise Game Solutions Specials Sky-E Red Fusion Freelancing Code Red Academy TechBoost Bundles Unternehmen \u00dcber Uns \u00dcber Uns Services Blog Webinar Werde Teil unserer Community LinkedIn Instagram TikTok Threads Karriere Karriere bei Sky-E Red Karriere als Freelancer Projekte \u2192 Projekte \u2192 Newsletter abonnieren Blog Projekte [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":14379,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"content-type":"","footnotes":""},"class_list":["post-14595","page","type-page","status-publish","hentry"],"rankMath":{"parentDomain":"skyeredtechnology.de","noFollowDomains":[],"noFollowExcludeDomains":[],"noFollowExternalLinks":false,"featuredImageNotice":"The featured image should be at least 200 by 200 pixels to be picked up by Facebook and other social media sites.","pluginReviewed":false,"postSettings":{"linkSuggestions":true,"useFocusKeyword":false},"frontEndScore":false,"postName":"projekte-it-innovation-im-banking","permalinkFormat":"https:\/\/skyeredtechnology.de\/en\/%pagename%\/","showLockModifiedDate":true,"assessor":{"focusKeywordLink":"https:\/\/skyeredtechnology.de\/wp-admin\/edit.php?focus_keyword=%focus_keyword%&post_type=%post_type%","hasTOCPlugin":true,"primaryTaxonomy":false,"serpData":{"title":"","description":"","focusKeywords":"","pillarContent":false,"canonicalUrl":"","breadcrumbTitle":"","advancedRobots":[],"facebookTitle":"","facebookDescription":"","facebookImage":"","facebookImageID":"","facebookHasOverlay":false,"facebookImageOverlay":"","facebookAuthor":"","twitterCardType":"","twitterUseFacebook":true,"twitterTitle":"","twitterDescription":"","twitterImage":"","twitterImageID":"","twitterHasOverlay":false,"twitterImageOverlay":"","twitterPlayerUrl":"","twitterPlayerSize":"","twitterPlayerStream":"","twitterPlayerStreamCtype":"","twitterAppDescription":"","twitterAppIphoneName":"","twitterAppIphoneID":"","twitterAppIphoneUrl":"","twitterAppIpadName":"","twitterAppIpadID":"","twitterAppIpadUrl":"","twitterAppGoogleplayName":"","twitterAppGoogleplayID":"","twitterAppGoogleplayUrl":"","twitterAppCountry":"","robots":{"noindex":true,"nofollow":true},"twitterAuthor":"username","primaryTerm":0,"authorName":"skyeredtechnology.de","titleTemplate":"%title% %page% %sep% %sitename%","descriptionTemplate":"","showScoreFrontend":true,"lockModifiedDate":false},"powerWords":["a cut above","absolute","absolutely","absolutely lowest","absurd","abuse","accurate","accuse","achieve","actionable","adaptable","adequate","admit","adorable","advantage","advice","affordable","aggravate","aggressive","agitated","agonizing","agony","alarmed","alarming","alienated","aligned","alive","all-inclusive","alluring","always","amazing","amp","animated","annihilate","announcing","anonymous","antagonistic","anxious","apocalypse","appalled","approved","approving","argumentative","armageddon","arrogant","ass kicking","assault","assured","astonishing","astounded","astounding","at ease","atrocious","attack","attractive","audacity","authentic","authoritative","authority","avoid","aware","awe-inspiring","awesome","awkward","backbone","backdoor","backed","backlash","backstabbing","badass","balanced","banned","bargain","barrage","basic","battle","beaming","beat down","beating","beautiful","beauty","begging","behind the scenes","belief","belong","best","best-selling","better","beware","big","billion","black market","blacklisted","blast","blessed","blinded","blissful","blood","bloodbath","bloodcurdling","bloody","blunder","blushing","bold","bomb","bona","bona fide","bonanza","bonus","bootleg","bottom line","bountiful","brave","bravery","brazen","break","breaking","breakthrough","breathtaking","bright","brilliant","broke","brutal","budget","buffoon","bullshit","bully","bumbling","buy","cadaver","calm","cancel anytime","capable","captivate","captivating","carefree","case study","cash","cataclysmic","catapult","catastrophe","caution","censored","centered","certain","certainly","certified","challenge","charming","cheap","cheat","cheat-sheet","cheer","cheerful","child-like","clarity","classified","clear","clueless","collapse","colorful","colossal","comfortable","compare","competitive","complete","completely","completeness","comprehensive","compromise","compulsive","concealed","conclusive","condemning","condescending","confess","confession","confessions","confident","confidential","conquer","conscientious","constructive","content","contrary","controlling","controversial","convenient","convert","cool","cooperative","copy","corpse","corrupt","corrupting","courage","courageous","cover-up","covert","coward","cowardly","crammed","crave","crazy","create","creative","cringeworthy","cripple","crisis","critical","crooked","crush","crushing","damaging","danger","dangerous","daring","dazzling","dead","deadline","deadly","death","decadent","deceived","deceptive","deep","defiance","definitely","definitive","defying","dejected","delicious","delight","delighted","delightful","delirious","delivered","demoralizing","deplorable","depraved","desire","desperate","despicable","destiny","destroy","detailed","devastating","devoted","diagnosed","direct","dirty","disadvantages","disastrous","discount","discover","disdainful","disempowered","disgusted","disgusting","dishonest","disillusioned","disoriented","distracted","distraught","distressed","distrustful","divulge","document","dollar","dominate","doomed","double","doubtful","download","dreadful","dreamy","drive","drowning","dumb","dynamic","eager","earnest","easily","easy","economical","ecstatic","edge","effective","efficient","effortless","elated","eliminate","elite","embarrass","embarrassed","embarrassing","emergency","emerging","emphasize","empowered","enchant","encouraged","endorsed","energetic","energy","enormous","enraged","enthusiastic","envy","epic","epidemic","essential","ethical","euphoric","evil","exactly","exasperated","excellent","excited","excitement","exciting","exclusive","exclusivity","excruciating","exhilarated","expensive","expert","explode","exploit","explosive","exposed","exquisite","extra","extraordinary","extremely","exuberant","eye-opening","fail","fail-proof","failure","faith","famous","fantasy","fascinating","fatigued","faux","faux pas","fearless","feast","feeble","festive","fide","fierce","fight","final","fine","fired","first","first ever","flirt","fluid","focus","focused","fool","fooled","foolish","forbidden","force-fed","forever","forgiving","forgotten","formula","fortune","foul","frantic","free","freebie","freedom","frenzied","frenzy","frightening","frisky","frugal","frustrated","fulfill","fulfilled","full","fully","fun","fun-loving","fundamentals","funniest","funny","furious","gambling","gargantuan","genius","genuine","gift","gigantic","giveaway","glamorous","gleeful","glorious","glowing","goddamn","gorgeous","graceful","grateful","gratified","gravity","great","greatest","greatness","greed","greedy","gripping","grit","grounded","growth","guaranteed","guilt","guilt-free","gullible","guts","hack","happiness","happy","harmful","harsh","hate","have you heard","havoc","hazardous","healthy","heart","heartbreaking","heartwarming","heavenly","hell","helpful","helplessness","hero","hesitant","hidden","high tech","highest","highly effective","hilarious","hoak","hoax","honest","honored","hope","hopeful","horribly","horrific","horrifying","horror","hostile","how to","huge","humility","humor","hurricane","hurry","hypnotic","idiot","ignite","illegal","illusive","imagination","immediately","imminently","impatience","impatient","impenetrable","important","impressive","improved","in the zone","incapable","incapacitated","incompetent","inconsiderate","increase","incredible","indecisive","indulgence","indulgent","inexpensive","inferior","informative","infuriated","ingredients","innocent","innovative","insane","insecure","insider","insidious","inspired","inspiring","instant savings","instantly","instructive","insult","intel","intelligent","intense","interesting","intriguing","introducing","invasion","investment","iron-clad","ironclad","irresistible","irs","is here","jackpot","jail","jaw-dropping","jealous","jeopardy","jittery","jovial","joyous","jubilant","judgmental","jumpstart","just arrived","keen","kickass","kickstart","kill","killed","killing","kills","know it all","lame","largest","lascivious","last","last chance","last minute","latest","laugh","laughing","launch","launching","lavishly","lawsuit","lazy","left behind","legendary","legitimate","liberal","liberated","lick","lies","life-changing","lifetime","light","lighthearted","likely","limited","literally","little-known","loathsome","lonely","looming","loser","lost","love","lucrative","lunatic","lurking","lust","luxurious","luxury","lying","magic","magical","magnificent","mainstream","malicious","mammoth","manipulative","marked down","massive","master","masterclass","maul","mediocre","meditative","meltdown","memorability","memorable","menacing","mesmerizing","meticulous","mind-blowing","minimalist","miracle","mired","mischievous","misgiving","missing out","mistake","monetize","money","moneyback","moneygrubbing","monumental","most important","motivated","mouth-watering","murder","mystery","nail","naked","natural","naughty","nazi","nest egg","never","new","nightmare","no good","no obligation","no one talks about","no questions asked","no risk","no strings attached","non-controlling","noted","novelty","now","obnoxious","obsessed","obsession","obvious","odd","off-kilter","off-limits","off-the record","offensive","official","okay","on-demand","open-minded","opportunities","optimistic","ordeal","outlawed","outrageousness","outstanding","overcome","overjoyed","overnight","overwhelmed","packed","painful","painless","painstaking","pale","panic","panicked","paralyzed","pas","passionate","pathetic","pay zero","payback","perfect","peril","perplexed","perspective","pessimistic","pioneering","piranha","pitfall","pitiful","placid","plague","played","playful","pleased","pluck","plummet","plunge","poison","poisonous","polarizing","poor","popular","portfolio","pound","powerful","powerless","practical","preposterous","prestige","price","priceless","pride","prison","privacy","private","privileged","prize","problem","productive","professional","profit","profitable","profound","promiscuous","promising","promote","protect","protected","proven","provocative","provoke","psychological","pummel","punch","punish","pus","quadruple","quality","quarrelsome","quick","quick-start","quickly","quiet","radiant","rare","ravenous","rebellious","recession-proof","reckoning","recognized","recommend","recreate","reduced","reflective","refugee","refund","refundable","reject","relaxed","release","relentless","reliable","remarkable","replicate","report","reprimanding","repulsed","repulsive","research","resentful","resourceful","responsible","responsive","rested","restricted","results","retaliating","reveal","revealing","revenge","revengeful","revisited","revolting","revolutionary","reward","rich","ridiculous","risky","riveting","rookie","rowdy","ruin","rules","ruthless","sabotaging","sacred","sadistic","sadly","sadness","safe","safety","sale","sampler","sarcastic","satisfied","savage","savagery","save","savings","savvy","scam","scandal","scandalous","scarce","scared","scary","scornful","scream","searing","secret","secret agenda","secret plot","secrets","secure","security","seductive","seething","seize","selected","self-hating","self-sufficient","sensational","senseless","sensual","serene","seriously","severe","sex","sexy","shaking","shameful","shameless","shaming","shatter","shellacking","shocking","should","shrewd","sick and tired","signs","silly","simple","simplicity","simplified","simplistic","sincere","sinful","sins","six-figure","sizable","sizzle","sizzled","sizzles","sizzling","sizzlingly","skill","skyrocket","slaughter","slave","sleazy","sleeping","sly","smash","smiling","smug","smuggle","smuggled","sneak-peek","sneaky","sniveling","snob","snooty","snotty","soar","soaring","solid","solution","spank","special","spectacular","speedy","spell-binding","spine","spirit","spirited","spiteful","spoiler","spontaneous","spotlight","spunky","squirming","stable","staggering","startling","steady","steal","stealthy","steamy","step-by-step","still","stoic","stop","strange","strangle","strategy","stressed","strong","strongly suggest","struggle","stuck up","studies","stunning","stupid","stupid-simple","sturdy","sublime","succeed","success","successful","suck","suddenly","suffer","sunny","super","super-human","superb","supercharge","superior","supported","supportive","sure","sure fire","surefire","surge","surging","surprise","surprised","surprising","survival","survive","suspicious","sweaty","swoon","swoon-worthy","tailspin","tank","tantalizing","targeted","tawdry","tease","technology","teetering","tempting","tenacious","tense","terrible","terrific","terrified","terrifying","terror","terrorist","tested","thankful","the truth","threaten","threatened","thrilled","thrilling","thug","ticked off","tickled","timely","today","torture","toxic","track record","trade secret","tragedy","tragic","transform","transparency","trap","trapped","trauma","traumatized","treacherous","treasure","tremendous","trend","tricks","triggers","triple","triumph","truly","trusting","trustworthy","truth","truthful","turbo-charge","turbocharges","tweaks","twitching","ultimate","unadulterated","unassuming","unauthorized","unbelievable","unburdened","uncaring","uncensored","uncertain","uncomfortable","unconditional","uncontrollable","unconventional","uncovered","undeniable","under priced","undercover","underground","underhanded","underused","unexpected","unforgettable","unheard of","unhurried","uninterested","unique","unjustified","unknowingly","unleashed","unlimited","unlock","unparalleled","unpopular","unreliable","unresponsive","unseen","unstable","unstoppable","unsure","unsurpassed","untapped","unusual","up-sell","upbeat","uplifted","uplifting","urge","urgent","useful","useless","validate","valor","valuable","value","vanquish","vaporize","venomous","verify","vibrant","vicious","victim","victory","vigorous","vilified","vindictive","violated","violent","volatile","vulnerable","waiting","wanted","wanton","warning","waste","weak","wealth","weird","what no one tells you","whip","whopping","wicked","wild","willpower","withheld","wonderful","wondrous","woozy","world","worry","worst","worthwhile","wounded","wreaking","youthful","zen","zinger"],"diacritics":{"A":"[\\u0041\\u24B6\\uFF21\\u00C0\\u00C1\\u00C2\\u1EA6\\u1EA4\\u1EAA\\u1EA8\\u00C3\\u0100\\u0102\\u1EB0\\u1EAE\\u1EB4\\u1EB2\\u0226\\u01E0\\u00C4\\u01DE\\u1EA2\\u00C5\\u01FA\\u01CD\\u0200\\u0202\\u1EA0\\u1EAC\\u1EB6\\u1E00\\u0104\\u023A\\u2C6F]","AA":"[\\uA732]","AE":"[\\u00C6\\u01FC\\u01E2]","AO":"[\\uA734]","AU":"[\\uA736]","AV":"[\\uA738\\uA73A]","AY":"[\\uA73C]","B":"[\\u0042\\u24B7\\uFF22\\u1E02\\u1E04\\u1E06\\u0243\\u0182\\u0181]","C":"[\\u0043\\u24B8\\uFF23\\u0106\\u0108\\u010A\\u010C\\u00C7\\u1E08\\u0187\\u023B\\uA73E]","D":"[\\u0044\\u24B9\\uFF24\\u1E0A\\u010E\\u1E0C\\u1E10\\u1E12\\u1E0E\\u0110\\u018B\\u018A\\u0189\\uA779]","DZ":"[\\u01F1\\u01C4]","Dz":"[\\u01F2\\u01C5]","E":"[\\u0045\\u24BA\\uFF25\\u00C8\\u00C9\\u00CA\\u1EC0\\u1EBE\\u1EC4\\u1EC2\\u1EBC\\u0112\\u1E14\\u1E16\\u0114\\u0116\\u00CB\\u1EBA\\u011A\\u0204\\u0206\\u1EB8\\u1EC6\\u0228\\u1E1C\\u0118\\u1E18\\u1E1A\\u0190\\u018E]","F":"[\\u0046\\u24BB\\uFF26\\u1E1E\\u0191\\uA77B]","G":"[\\u0047\\u24BC\\uFF27\\u01F4\\u011C\\u1E20\\u011E\\u0120\\u01E6\\u0122\\u01E4\\u0193\\uA7A0\\uA77D\\uA77E]","H":"[\\u0048\\u24BD\\uFF28\\u0124\\u1E22\\u1E26\\u021E\\u1E24\\u1E28\\u1E2A\\u0126\\u2C67\\u2C75\\uA78D]","I":"[\\u0049\\u24BE\\uFF29\\u00CC\\u00CD\\u00CE\\u0128\\u012A\\u012C\\u0130\\u00CF\\u1E2E\\u1EC8\\u01CF\\u0208\\u020A\\u1ECA\\u012E\\u1E2C\\u0197]","J":"[\\u004A\\u24BF\\uFF2A\\u0134\\u0248]","K":"[\\u004B\\u24C0\\uFF2B\\u1E30\\u01E8\\u1E32\\u0136\\u1E34\\u0198\\u2C69\\uA740\\uA742\\uA744\\uA7A2]","L":"[\\u004C\\u24C1\\uFF2C\\u013F\\u0139\\u013D\\u1E36\\u1E38\\u013B\\u1E3C\\u1E3A\\u0141\\u023D\\u2C62\\u2C60\\uA748\\uA746\\uA780]","LJ":"[\\u01C7]","Lj":"[\\u01C8]","M":"[\\u004D\\u24C2\\uFF2D\\u1E3E\\u1E40\\u1E42\\u2C6E\\u019C]","N":"[\\u004E\\u24C3\\uFF2E\\u01F8\\u0143\\u00D1\\u1E44\\u0147\\u1E46\\u0145\\u1E4A\\u1E48\\u0220\\u019D\\uA790\\uA7A4]","NJ":"[\\u01CA]","Nj":"[\\u01CB]","O":"[\\u004F\\u24C4\\uFF2F\\u00D2\\u00D3\\u00D4\\u1ED2\\u1ED0\\u1ED6\\u1ED4\\u00D5\\u1E4C\\u022C\\u1E4E\\u014C\\u1E50\\u1E52\\u014E\\u022E\\u0230\\u00D6\\u022A\\u1ECE\\u0150\\u01D1\\u020C\\u020E\\u01A0\\u1EDC\\u1EDA\\u1EE0\\u1EDE\\u1EE2\\u1ECC\\u1ED8\\u01EA\\u01EC\\u00D8\\u01FE\\u0186\\u019F\\uA74A\\uA74C]","OI":"[\\u01A2]","OO":"[\\uA74E]","OU":"[\\u0222]","P":"[\\u0050\\u24C5\\uFF30\\u1E54\\u1E56\\u01A4\\u2C63\\uA750\\uA752\\uA754]","Q":"[\\u0051\\u24C6\\uFF31\\uA756\\uA758\\u024A]","R":"[\\u0052\\u24C7\\uFF32\\u0154\\u1E58\\u0158\\u0210\\u0212\\u1E5A\\u1E5C\\u0156\\u1E5E\\u024C\\u2C64\\uA75A\\uA7A6\\uA782]","S":"[\\u0053\\u24C8\\uFF33\\u1E9E\\u015A\\u1E64\\u015C\\u1E60\\u0160\\u1E66\\u1E62\\u1E68\\u0218\\u015E\\u2C7E\\uA7A8\\uA784]","T":"[\\u0054\\u24C9\\uFF34\\u1E6A\\u0164\\u1E6C\\u021A\\u0162\\u1E70\\u1E6E\\u0166\\u01AC\\u01AE\\u023E\\uA786]","TZ":"[\\uA728]","U":"[\\u0055\\u24CA\\uFF35\\u00D9\\u00DA\\u00DB\\u0168\\u1E78\\u016A\\u1E7A\\u016C\\u00DC\\u01DB\\u01D7\\u01D5\\u01D9\\u1EE6\\u016E\\u0170\\u01D3\\u0214\\u0216\\u01AF\\u1EEA\\u1EE8\\u1EEE\\u1EEC\\u1EF0\\u1EE4\\u1E72\\u0172\\u1E76\\u1E74\\u0244]","V":"[\\u0056\\u24CB\\uFF36\\u1E7C\\u1E7E\\u01B2\\uA75E\\u0245]","VY":"[\\uA760]","W":"[\\u0057\\u24CC\\uFF37\\u1E80\\u1E82\\u0174\\u1E86\\u1E84\\u1E88\\u2C72]","X":"[\\u0058\\u24CD\\uFF38\\u1E8A\\u1E8C]","Y":"[\\u0059\\u24CE\\uFF39\\u1EF2\\u00DD\\u0176\\u1EF8\\u0232\\u1E8E\\u0178\\u1EF6\\u1EF4\\u01B3\\u024E\\u1EFE]","Z":"[\\u005A\\u24CF\\uFF3A\\u0179\\u1E90\\u017B\\u017D\\u1E92\\u1E94\\u01B5\\u0224\\u2C7F\\u2C6B\\uA762]","a":"[\\u0061\\u24D0\\uFF41\\u1E9A\\u00E0\\u00E1\\u00E2\\u1EA7\\u1EA5\\u1EAB\\u1EA9\\u00E3\\u0101\\u0103\\u1EB1\\u1EAF\\u1EB5\\u1EB3\\u0227\\u01E1\\u00E4\\u01DF\\u1EA3\\u00E5\\u01FB\\u01CE\\u0201\\u0203\\u1EA1\\u1EAD\\u1EB7\\u1E01\\u0105\\u2C65\\u0250]","aa":"[\\uA733]","ae":"[\\u00E6\\u01FD\\u01E3]","ao":"[\\uA735]","au":"[\\uA737]","av":"[\\uA739\\uA73B]","ay":"[\\uA73D]","b":"[\\u0062\\u24D1\\uFF42\\u1E03\\u1E05\\u1E07\\u0180\\u0183\\u0253]","c":"[\\u0063\\u24D2\\uFF43\\u0107\\u0109\\u010B\\u010D\\u00E7\\u1E09\\u0188\\u023C\\uA73F\\u2184]","d":"[\\u0064\\u24D3\\uFF44\\u1E0B\\u010F\\u1E0D\\u1E11\\u1E13\\u1E0F\\u0111\\u018C\\u0256\\u0257\\uA77A]","dz":"[\\u01F3\\u01C6]","e":"[\\u0065\\u24D4\\uFF45\\u00E8\\u00E9\\u00EA\\u1EC1\\u1EBF\\u1EC5\\u1EC3\\u1EBD\\u0113\\u1E15\\u1E17\\u0115\\u0117\\u00EB\\u1EBB\\u011B\\u0205\\u0207\\u1EB9\\u1EC7\\u0229\\u1E1D\\u0119\\u1E19\\u1E1B\\u0247\\u025B\\u01DD]","f":"[\\u0066\\u24D5\\uFF46\\u1E1F\\u0192\\uA77C]","g":"[\\u0067\\u24D6\\uFF47\\u01F5\\u011D\\u1E21\\u011F\\u0121\\u01E7\\u0123\\u01E5\\u0260\\uA7A1\\u1D79\\uA77F]","h":"[\\u0068\\u24D7\\uFF48\\u0125\\u1E23\\u1E27\\u021F\\u1E25\\u1E29\\u1E2B\\u1E96\\u0127\\u2C68\\u2C76\\u0265]","hv":"[\\u0195]","i":"[\\u0069\\u24D8\\uFF49\\u00EC\\u00ED\\u00EE\\u0129\\u012B\\u012D\\u00EF\\u1E2F\\u1EC9\\u01D0\\u0209\\u020B\\u1ECB\\u012F\\u1E2D\\u0268\\u0131]","j":"[\\u006A\\u24D9\\uFF4A\\u0135\\u01F0\\u0249]","k":"[\\u006B\\u24DA\\uFF4B\\u1E31\\u01E9\\u1E33\\u0137\\u1E35\\u0199\\u2C6A\\uA741\\uA743\\uA745\\uA7A3]","l":"[\\u006C\\u24DB\\uFF4C\\u0140\\u013A\\u013E\\u1E37\\u1E39\\u013C\\u1E3D\\u1E3B\\u017F\\u0142\\u019A\\u026B\\u2C61\\uA749\\uA781\\uA747]","lj":"[\\u01C9]","m":"[\\u006D\\u24DC\\uFF4D\\u1E3F\\u1E41\\u1E43\\u0271\\u026F]","n":"[\\u006E\\u24DD\\uFF4E\\u01F9\\u0144\\u00F1\\u1E45\\u0148\\u1E47\\u0146\\u1E4B\\u1E49\\u019E\\u0272\\u0149\\uA791\\uA7A5]","nj":"[\\u01CC]","o":"[\\u006F\\u24DE\\uFF4F\\u00F2\\u00F3\\u00F4\\u1ED3\\u1ED1\\u1ED7\\u1ED5\\u00F5\\u1E4D\\u022D\\u1E4F\\u014D\\u1E51\\u1E53\\u014F\\u022F\\u0231\\u00F6\\u022B\\u1ECF\\u0151\\u01D2\\u020D\\u020F\\u01A1\\u1EDD\\u1EDB\\u1EE1\\u1EDF\\u1EE3\\u1ECD\\u1ED9\\u01EB\\u01ED\\u00F8\\u01FF\\u0254\\uA74B\\uA74D\\u0275]","oi":"[\\u01A3]","ou":"[\\u0223]","oo":"[\\uA74F]","p":"[\\u0070\\u24DF\\uFF50\\u1E55\\u1E57\\u01A5\\u1D7D\\uA751\\uA753\\uA755]","q":"[\\u0071\\u24E0\\uFF51\\u024B\\uA757\\uA759]","r":"[\\u0072\\u24E1\\uFF52\\u0155\\u1E59\\u0159\\u0211\\u0213\\u1E5B\\u1E5D\\u0157\\u1E5F\\u024D\\u027D\\uA75B\\uA7A7\\uA783]","s":"[\\u0073\\u24E2\\uFF53\\u015B\\u1E65\\u015D\\u1E61\\u0161\\u1E67\\u1E63\\u1E69\\u0219\\u015F\\u023F\\uA7A9\\uA785\\u1E9B]","ss":"[\\u00DF]","t":"[\\u0074\\u24E3\\uFF54\\u1E6B\\u1E97\\u0165\\u1E6D\\u021B\\u0163\\u1E71\\u1E6F\\u0167\\u01AD\\u0288\\u2C66\\uA787]","tz":"[\\uA729]","u":"[\\u0075\\u24E4\\uFF55\\u00F9\\u00FA\\u00FB\\u0169\\u1E79\\u016B\\u1E7B\\u016D\\u00FC\\u01DC\\u01D8\\u01D6\\u01DA\\u1EE7\\u016F\\u0171\\u01D4\\u0215\\u0217\\u01B0\\u1EEB\\u1EE9\\u1EEF\\u1EED\\u1EF1\\u1EE5\\u1E73\\u0173\\u1E77\\u1E75\\u0289]","v":"[\\u0076\\u24E5\\uFF56\\u1E7D\\u1E7F\\u028B\\uA75F\\u028C]","vy":"[\\uA761]","w":"[\\u0077\\u24E6\\uFF57\\u1E81\\u1E83\\u0175\\u1E87\\u1E85\\u1E98\\u1E89\\u2C73]","x":"[\\u0078\\u24E7\\uFF58\\u1E8B\\u1E8D]","y":"[\\u0079\\u24E8\\uFF59\\u1EF3\\u00FD\\u0177\\u1EF9\\u0233\\u1E8F\\u00FF\\u1EF7\\u1E99\\u1EF5\\u01B4\\u024F\\u1EFF]","z":"[\\u007A\\u24E9\\uFF5A\\u017A\\u1E91\\u017C\\u017E\\u1E93\\u1E95\\u01B6\\u0225\\u0240\\u2C6C\\uA763]"},"researchesTests":["contentHasTOC","contentHasShortParagraphs","contentHasAssets","keywordInTitle","keywordInMetaDescription","keywordInPermalink","keywordIn10Percent","keywordInContent","keywordInSubheadings","keywordInImageAlt","keywordDensity","keywordNotUsed","lengthContent","lengthPermalink","linksHasInternal","linksHasExternals","linksNotAllExternals","titleStartWithKeyword","titleSentiment","titleHasPowerWords","titleHasNumber","hasContentAI"],"hasRedirection":false,"hasBreadcrumb":true},"homeUrl":"https:\/\/skyeredtechnology.de\/en","objectID":14595,"objectType":"post","locale":"en","localeFull":"en_US","overlayImages":{"play":{"name":"Play icon","url":"https:\/\/skyeredtechnology.de\/wp-content\/plugins\/seo-by-rank-math\/assets\/admin\/img\/icon-play.png","path":"\/home\/u291072782\/domains\/skyeredtechnology.de\/public_html\/wp-content\/plugins\/seo-by-rank-math\/assets\/admin\/img\/icon-play.png","position":"middle_center"},"gif":{"name":"GIF icon","url":"https:\/\/skyeredtechnology.de\/wp-content\/plugins\/seo-by-rank-math\/assets\/admin\/img\/icon-gif.png","path":"\/home\/u291072782\/domains\/skyeredtechnology.de\/public_html\/wp-content\/plugins\/seo-by-rank-math\/assets\/admin\/img\/icon-gif.png","position":"middle_center"}},"defautOgImage":"https:\/\/skyeredtechnology.de\/wp-content\/plugins\/seo-by-rank-math\/assets\/admin\/img\/social-placeholder.jpg","customPermalinks":true,"isUserRegistered":true,"autoSuggestKeywords":true,"connectSiteUrl":"https:\/\/rankmath.com\/auth?site=https%3A%2F%2Fskyeredtechnology.de%2Fen&r=https%3A%2F%2Fskyeredtechnology.de%2Fen%2Fwp-json%2Fwp%2Fv2%2Fpages%2F14595%3Fnonce%3D090f628d49","maxTags":5,"trendsIcon":"<svg viewBox=\"0 0 610 610\"><path d=\"M18.85,446,174.32,290.48l58.08,58.08L76.93,504a14.54,14.54,0,0,1-20.55,0L18.83,466.48a14.54,14.54,0,0,1,0-20.55Z\" style=\"fill:#4285f4\"\/><path d=\"M242.65,242.66,377.59,377.6l-47.75,47.75a14.54,14.54,0,0,1-20.55,0L174.37,290.43l47.75-47.75A14.52,14.52,0,0,1,242.65,242.66Z\" style=\"fill:#ea4335\"\/><polygon points=\"319.53 319.53 479.26 159.8 537.34 217.88 377.61 377.62 319.53 319.53\" style=\"fill:#fabb05\"\/><path d=\"M594.26,262.73V118.61h0a16.94,16.94,0,0,0-16.94-16.94H433.2a16.94,16.94,0,0,0-12,28.92L565.34,274.71h0a16.94,16.94,0,0,0,28.92-12Z\" style=\"fill:#34a853\"\/><rect width=\"610\" height=\"610\" style=\"fill:none\"\/><\/svg>","showScore":true,"siteFavIcon":"https:\/\/skyeredtechnology.de\/wp-content\/uploads\/2024\/01\/webseite-icon-1-150x150.png","canUser":{"general":false,"advanced":false,"snippet":false,"social":false,"analysis":false,"analytics":false,"content_ai":false},"isPro":false,"is_front_page":false,"trendsUpgradeLink":"https:\/\/rankmath.com\/pricing\/?utm_source=Plugin&utm_medium=CE%20General%20Tab%20Trends&utm_campaign=WP","trendsUpgradeLabel":"Upgrade","trendsPreviewImage":"https:\/\/skyeredtechnology.de\/wp-content\/plugins\/seo-by-rank-math\/assets\/admin\/img\/trends-preview.jpg","currentEditor":false,"homepageData":{"assessor":{"powerWords":["a cut above","absolute","absolutely","absolutely lowest","absurd","abuse","accurate","accuse","achieve","actionable","adaptable","adequate","admit","adorable","advantage","advice","affordable","aggravate","aggressive","agitated","agonizing","agony","alarmed","alarming","alienated","aligned","alive","all-inclusive","alluring","always","amazing","amp","animated","annihilate","announcing","anonymous","antagonistic","anxious","apocalypse","appalled","approved","approving","argumentative","armageddon","arrogant","ass kicking","assault","assured","astonishing","astounded","astounding","at ease","atrocious","attack","attractive","audacity","authentic","authoritative","authority","avoid","aware","awe-inspiring","awesome","awkward","backbone","backdoor","backed","backlash","backstabbing","badass","balanced","banned","bargain","barrage","basic","battle","beaming","beat down","beating","beautiful","beauty","begging","behind the scenes","belief","belong","best","best-selling","better","beware","big","billion","black market","blacklisted","blast","blessed","blinded","blissful","blood","bloodbath","bloodcurdling","bloody","blunder","blushing","bold","bomb","bona","bona fide","bonanza","bonus","bootleg","bottom line","bountiful","brave","bravery","brazen","break","breaking","breakthrough","breathtaking","bright","brilliant","broke","brutal","budget","buffoon","bullshit","bully","bumbling","buy","cadaver","calm","cancel anytime","capable","captivate","captivating","carefree","case study","cash","cataclysmic","catapult","catastrophe","caution","censored","centered","certain","certainly","certified","challenge","charming","cheap","cheat","cheat-sheet","cheer","cheerful","child-like","clarity","classified","clear","clueless","collapse","colorful","colossal","comfortable","compare","competitive","complete","completely","completeness","comprehensive","compromise","compulsive","concealed","conclusive","condemning","condescending","confess","confession","confessions","confident","confidential","conquer","conscientious","constructive","content","contrary","controlling","controversial","convenient","convert","cool","cooperative","copy","corpse","corrupt","corrupting","courage","courageous","cover-up","covert","coward","cowardly","crammed","crave","crazy","create","creative","cringeworthy","cripple","crisis","critical","crooked","crush","crushing","damaging","danger","dangerous","daring","dazzling","dead","deadline","deadly","death","decadent","deceived","deceptive","deep","defiance","definitely","definitive","defying","dejected","delicious","delight","delighted","delightful","delirious","delivered","demoralizing","deplorable","depraved","desire","desperate","despicable","destiny","destroy","detailed","devastating","devoted","diagnosed","direct","dirty","disadvantages","disastrous","discount","discover","disdainful","disempowered","disgusted","disgusting","dishonest","disillusioned","disoriented","distracted","distraught","distressed","distrustful","divulge","document","dollar","dominate","doomed","double","doubtful","download","dreadful","dreamy","drive","drowning","dumb","dynamic","eager","earnest","easily","easy","economical","ecstatic","edge","effective","efficient","effortless","elated","eliminate","elite","embarrass","embarrassed","embarrassing","emergency","emerging","emphasize","empowered","enchant","encouraged","endorsed","energetic","energy","enormous","enraged","enthusiastic","envy","epic","epidemic","essential","ethical","euphoric","evil","exactly","exasperated","excellent","excited","excitement","exciting","exclusive","exclusivity","excruciating","exhilarated","expensive","expert","explode","exploit","explosive","exposed","exquisite","extra","extraordinary","extremely","exuberant","eye-opening","fail","fail-proof","failure","faith","famous","fantasy","fascinating","fatigued","faux","faux pas","fearless","feast","feeble","festive","fide","fierce","fight","final","fine","fired","first","first ever","flirt","fluid","focus","focused","fool","fooled","foolish","forbidden","force-fed","forever","forgiving","forgotten","formula","fortune","foul","frantic","free","freebie","freedom","frenzied","frenzy","frightening","frisky","frugal","frustrated","fulfill","fulfilled","full","fully","fun","fun-loving","fundamentals","funniest","funny","furious","gambling","gargantuan","genius","genuine","gift","gigantic","giveaway","glamorous","gleeful","glorious","glowing","goddamn","gorgeous","graceful","grateful","gratified","gravity","great","greatest","greatness","greed","greedy","gripping","grit","grounded","growth","guaranteed","guilt","guilt-free","gullible","guts","hack","happiness","happy","harmful","harsh","hate","have you heard","havoc","hazardous","healthy","heart","heartbreaking","heartwarming","heavenly","hell","helpful","helplessness","hero","hesitant","hidden","high tech","highest","highly effective","hilarious","hoak","hoax","honest","honored","hope","hopeful","horribly","horrific","horrifying","horror","hostile","how to","huge","humility","humor","hurricane","hurry","hypnotic","idiot","ignite","illegal","illusive","imagination","immediately","imminently","impatience","impatient","impenetrable","important","impressive","improved","in the zone","incapable","incapacitated","incompetent","inconsiderate","increase","incredible","indecisive","indulgence","indulgent","inexpensive","inferior","informative","infuriated","ingredients","innocent","innovative","insane","insecure","insider","insidious","inspired","inspiring","instant savings","instantly","instructive","insult","intel","intelligent","intense","interesting","intriguing","introducing","invasion","investment","iron-clad","ironclad","irresistible","irs","is here","jackpot","jail","jaw-dropping","jealous","jeopardy","jittery","jovial","joyous","jubilant","judgmental","jumpstart","just arrived","keen","kickass","kickstart","kill","killed","killing","kills","know it all","lame","largest","lascivious","last","last chance","last minute","latest","laugh","laughing","launch","launching","lavishly","lawsuit","lazy","left behind","legendary","legitimate","liberal","liberated","lick","lies","life-changing","lifetime","light","lighthearted","likely","limited","literally","little-known","loathsome","lonely","looming","loser","lost","love","lucrative","lunatic","lurking","lust","luxurious","luxury","lying","magic","magical","magnificent","mainstream","malicious","mammoth","manipulative","marked down","massive","master","masterclass","maul","mediocre","meditative","meltdown","memorability","memorable","menacing","mesmerizing","meticulous","mind-blowing","minimalist","miracle","mired","mischievous","misgiving","missing out","mistake","monetize","money","moneyback","moneygrubbing","monumental","most important","motivated","mouth-watering","murder","mystery","nail","naked","natural","naughty","nazi","nest egg","never","new","nightmare","no good","no obligation","no one talks about","no questions asked","no risk","no strings attached","non-controlling","noted","novelty","now","obnoxious","obsessed","obsession","obvious","odd","off-kilter","off-limits","off-the record","offensive","official","okay","on-demand","open-minded","opportunities","optimistic","ordeal","outlawed","outrageousness","outstanding","overcome","overjoyed","overnight","overwhelmed","packed","painful","painless","painstaking","pale","panic","panicked","paralyzed","pas","passionate","pathetic","pay zero","payback","perfect","peril","perplexed","perspective","pessimistic","pioneering","piranha","pitfall","pitiful","placid","plague","played","playful","pleased","pluck","plummet","plunge","poison","poisonous","polarizing","poor","popular","portfolio","pound","powerful","powerless","practical","preposterous","prestige","price","priceless","pride","prison","privacy","private","privileged","prize","problem","productive","professional","profit","profitable","profound","promiscuous","promising","promote","protect","protected","proven","provocative","provoke","psychological","pummel","punch","punish","pus","quadruple","quality","quarrelsome","quick","quick-start","quickly","quiet","radiant","rare","ravenous","rebellious","recession-proof","reckoning","recognized","recommend","recreate","reduced","reflective","refugee","refund","refundable","reject","relaxed","release","relentless","reliable","remarkable","replicate","report","reprimanding","repulsed","repulsive","research","resentful","resourceful","responsible","responsive","rested","restricted","results","retaliating","reveal","revealing","revenge","revengeful","revisited","revolting","revolutionary","reward","rich","ridiculous","risky","riveting","rookie","rowdy","ruin","rules","ruthless","sabotaging","sacred","sadistic","sadly","sadness","safe","safety","sale","sampler","sarcastic","satisfied","savage","savagery","save","savings","savvy","scam","scandal","scandalous","scarce","scared","scary","scornful","scream","searing","secret","secret agenda","secret plot","secrets","secure","security","seductive","seething","seize","selected","self-hating","self-sufficient","sensational","senseless","sensual","serene","seriously","severe","sex","sexy","shaking","shameful","shameless","shaming","shatter","shellacking","shocking","should","shrewd","sick and tired","signs","silly","simple","simplicity","simplified","simplistic","sincere","sinful","sins","six-figure","sizable","sizzle","sizzled","sizzles","sizzling","sizzlingly","skill","skyrocket","slaughter","slave","sleazy","sleeping","sly","smash","smiling","smug","smuggle","smuggled","sneak-peek","sneaky","sniveling","snob","snooty","snotty","soar","soaring","solid","solution","spank","special","spectacular","speedy","spell-binding","spine","spirit","spirited","spiteful","spoiler","spontaneous","spotlight","spunky","squirming","stable","staggering","startling","steady","steal","stealthy","steamy","step-by-step","still","stoic","stop","strange","strangle","strategy","stressed","strong","strongly suggest","struggle","stuck up","studies","stunning","stupid","stupid-simple","sturdy","sublime","succeed","success","successful","suck","suddenly","suffer","sunny","super","super-human","superb","supercharge","superior","supported","supportive","sure","sure fire","surefire","surge","surging","surprise","surprised","surprising","survival","survive","suspicious","sweaty","swoon","swoon-worthy","tailspin","tank","tantalizing","targeted","tawdry","tease","technology","teetering","tempting","tenacious","tense","terrible","terrific","terrified","terrifying","terror","terrorist","tested","thankful","the truth","threaten","threatened","thrilled","thrilling","thug","ticked off","tickled","timely","today","torture","toxic","track record","trade secret","tragedy","tragic","transform","transparency","trap","trapped","trauma","traumatized","treacherous","treasure","tremendous","trend","tricks","triggers","triple","triumph","truly","trusting","trustworthy","truth","truthful","turbo-charge","turbocharges","tweaks","twitching","ultimate","unadulterated","unassuming","unauthorized","unbelievable","unburdened","uncaring","uncensored","uncertain","uncomfortable","unconditional","uncontrollable","unconventional","uncovered","undeniable","under priced","undercover","underground","underhanded","underused","unexpected","unforgettable","unheard of","unhurried","uninterested","unique","unjustified","unknowingly","unleashed","unlimited","unlock","unparalleled","unpopular","unreliable","unresponsive","unseen","unstable","unstoppable","unsure","unsurpassed","untapped","unusual","up-sell","upbeat","uplifted","uplifting","urge","urgent","useful","useless","validate","valor","valuable","value","vanquish","vaporize","venomous","verify","vibrant","vicious","victim","victory","vigorous","vilified","vindictive","violated","violent","volatile","vulnerable","waiting","wanted","wanton","warning","waste","weak","wealth","weird","what no one tells you","whip","whopping","wicked","wild","willpower","withheld","wonderful","wondrous","woozy","world","worry","worst","worthwhile","wounded","wreaking","youthful","zen","zinger"],"diacritics":true,"researchesTests":["contentHasTOC","contentHasShortParagraphs","contentHasAssets","keywordInTitle","keywordInMetaDescription","keywordInPermalink","keywordIn10Percent","keywordInContent","keywordInSubheadings","keywordInImageAlt","keywordDensity","keywordNotUsed","lengthContent","lengthPermalink","linksHasInternal","linksHasExternals","linksNotAllExternals","titleStartWithKeyword","titleSentiment","titleHasPowerWords","titleHasNumber","hasContentAI"],"hasBreadcrumb":true,"serpData":{"title":"%sitename% %page% %sep% %sitedesc%","description":"","titleTemplate":"%sitename% %page% %sep% %sitedesc%","descriptionTemplate":"","focusKeywords":"","breadcrumbTitle":"Home","robots":{"index":true},"advancedRobots":[],"facebookTitle":"","facebookDescription":"","facebookImage":"","facebookImageID":""}}},"tocTitle":"Table of Contents","tocExcludeHeadings":[],"listStyle":"ul"},"_links":{"self":[{"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/pages\/14595","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/comments?post=14595"}],"version-history":[{"count":3,"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/pages\/14595\/revisions"}],"predecessor-version":[{"id":14989,"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/pages\/14595\/revisions\/14989"}],"up":[{"embeddable":true,"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/pages\/14379"}],"wp:attachment":[{"href":"https:\/\/skyeredtechnology.de\/en\/wp-json\/wp\/v2\/media?parent=14595"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}