.elementor-33666 .elementor-element.elementor-element-f10121b{margin-top:0px;margin-bottom:0px;}.elementor-33666 .elementor-element.elementor-element-2cefd7d > .elementor-element-populated{margin:0px 0px 60px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-5b18b5f:not(.elementor-motion-effects-element-type-background), .elementor-33666 .elementor-element.elementor-element-5b18b5f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://ims-chips.de/wp-content/uploads/2026/07/innovation_hd.jpg");background-repeat:no-repeat;background-size:cover;}.elementor-33666 .elementor-element.elementor-element-5b18b5f > .elementor-container{min-height:500px;}.elementor-33666 .elementor-element.elementor-element-5b18b5f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;}.elementor-33666 .elementor-element.elementor-element-5b18b5f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-a3a4698 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-33666 .elementor-element.elementor-element-a3a4698 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-95cda6d{margin-top:60px;margin-bottom:60px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-3f22b0d:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-33666 .elementor-element.elementor-element-3f22b0d > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000C7;}.elementor-33666 .elementor-element.elementor-element-3f22b0d > .elementor-element-populated, .elementor-33666 .elementor-element.elementor-element-3f22b0d > .elementor-element-populated > .elementor-background-overlay, .elementor-33666 .elementor-element.elementor-element-3f22b0d > .elementor-background-slideshow{border-radius:25px 25px 25px 25px;}.elementor-33666 .elementor-element.elementor-element-3f22b0d > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:25px 25px 0px 25px;}.elementor-33666 .elementor-element.elementor-element-3f22b0d > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-93aaea7{margin:5% 5% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-40628ad > .elementor-widget-container{margin:0px 0px 30px 0px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-40628ad .button-widget{text-align:left;}.elementor-33666 .elementor-element.elementor-element-f431cdd:not(.elementor-motion-effects-element-type-background), .elementor-33666 .elementor-element.elementor-element-f431cdd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://ims-chips.de/wp-content/uploads/2025/05/Ellipse-151.svg");}.elementor-33666 .elementor-element.elementor-element-f431cdd{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-f431cdd > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-6ad50ea > .elementor-element-populated{margin:60px 0px 30px 10px;--e-column-margin-right:0px;--e-column-margin-left:10px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-58eb9c0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 30px) 0px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-9491cd7{margin-top:0px;margin-bottom:30px;}.elementor-33666 .elementor-element.elementor-element-b3ee0b3 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-b2f327e > .elementor-container{min-height:500px;}.elementor-33666 .elementor-element.elementor-element-b2f327e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;}.elementor-33666 .elementor-element.elementor-element-b2f327e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-4e4a547 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-33666 .elementor-element.elementor-element-4e4a547 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-9845f20{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-9845f20 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-d80564e:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-33666 .elementor-element.elementor-element-d80564e > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-33666 .elementor-element.elementor-element-d80564e > .elementor-element-populated, .elementor-33666 .elementor-element.elementor-element-d80564e > .elementor-element-populated > .elementor-background-overlay, .elementor-33666 .elementor-element.elementor-element-d80564e > .elementor-background-slideshow{border-radius:25px 25px 25px 25px;}.elementor-33666 .elementor-element.elementor-element-d80564e > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-d80564e > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-62207f3{margin:60px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;font-size:22px;}.elementor-33666 .elementor-element.elementor-element-3de2ab7{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:60px;margin-bottom:60px;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-3de2ab7 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-cd37897:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-33666 .elementor-element.elementor-element-cd37897 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-33666 .elementor-element.elementor-element-cd37897 > .elementor-element-populated, .elementor-33666 .elementor-element.elementor-element-cd37897 > .elementor-element-populated > .elementor-background-overlay, .elementor-33666 .elementor-element.elementor-element-cd37897 > .elementor-background-slideshow{border-radius:25px 25px 25px 25px;}.elementor-33666 .elementor-element.elementor-element-cd37897 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-cd37897 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-d3a5bb7{width:var( --container-widget-width, 102.621% );max-width:102.621%;margin:5% 5% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;--container-widget-width:102.621%;--container-widget-flex-grow:0;}.elementor-33666 .elementor-element.elementor-element-49eeeaa:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-element-populated, .elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-element-populated > .elementor-background-overlay, .elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-background-slideshow{border-radius:25px 25px 25px 25px;}.elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-3392167{width:var( --container-widget-width, 102.621% );max-width:102.621%;margin:5% 5% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;--container-widget-width:102.621%;--container-widget-flex-grow:0;}.elementor-33666 .elementor-element.elementor-element-a2b09f6:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-element-populated, .elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-element-populated > .elementor-background-overlay, .elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-background-slideshow{border-radius:25px 25px 25px 25px;}.elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 0px 0px;}.elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-33666 .elementor-element.elementor-element-adf92f7{width:var( --container-widget-width, 102.621% );max-width:102.621%;margin:5% 5% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;--container-widget-width:102.621%;--container-widget-flex-grow:0;}.elementor-33666 .elementor-element.elementor-element-a512a01 .button-widget{text-align:left;}@media(min-width:768px){.elementor-33666 .elementor-element.elementor-element-a3a4698{width:100%;}.elementor-33666 .elementor-element.elementor-element-3f22b0d{width:33%;}.elementor-33666 .elementor-element.elementor-element-906f00f{width:67%;}.elementor-33666 .elementor-element.elementor-element-4e4a547{width:100%;}}@media(max-width:1440px) and (min-width:768px){.elementor-33666 .elementor-element.elementor-element-3f22b0d{width:50%;}.elementor-33666 .elementor-element.elementor-element-906f00f{width:50%;}.elementor-33666 .elementor-element.elementor-element-cd37897{width:100%;}.elementor-33666 .elementor-element.elementor-element-49eeeaa{width:100%;}.elementor-33666 .elementor-element.elementor-element-a2b09f6{width:100%;}}@media(max-width:1440px){.elementor-33666 .elementor-element.elementor-element-5b18b5f:not(.elementor-motion-effects-element-type-background), .elementor-33666 .elementor-element.elementor-element-5b18b5f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center right;}.elementor-33666 .elementor-element.elementor-element-93aaea7{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-33666 .elementor-element.elementor-element-d3a5bb7{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;columns:2;}.elementor-33666 .elementor-element.elementor-element-49eeeaa > .elementor-element-populated{margin:30px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-33666 .elementor-element.elementor-element-3392167{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;columns:1;}.elementor-33666 .elementor-element.elementor-element-a2b09f6 > .elementor-element-populated{margin:30px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-33666 .elementor-element.elementor-element-adf92f7{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}}@media(max-width:767px){.elementor-33666 .elementor-element.elementor-element-93aaea7{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-33666 .elementor-element.elementor-element-d3a5bb7{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-33666 .elementor-element.elementor-element-3392167{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-33666 .elementor-element.elementor-element-adf92f7{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}}/* Start custom CSS for column, class: .elementor-element-b3ee0b3 *//* = Grundvariablen === */

:root {
    --ims-purple: #AF78E1;
    --ims-purple-bright: #d3a6ff;
    --ims-purple-dark: #7134a8;
    --ims-dark: #08070c;
    --ims-dark-soft: #111018;
    --ims-card: rgba(255, 255, 255, 0.045);
    --ims-white: #ffffff;
    --ims-text: #f6f2fa;
    --ims-muted: #bdb6c6;
    --ims-border: rgba(175, 120, 225, 0.32);
    --ims-border-active: rgba(211, 166, 255, 0.95);
    --ims-glow:
        0 0 8px rgba(175, 120, 225, 0.35),
        0 0 18px rgba(175, 120, 225, 0.18);
}


/* = Gesamter Bereich  = */

.ims-scaling {
    position: relative;
    width: 100%;
    padding: 60px 40px 55px;
    overflow: hidden;
    color: var(--ims-text);
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(175, 120, 225, 0.13),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            #050409 0%,
            #0b0911 48%,
            #07060a 100%
        );
    border: 1px solid rgba(175, 120, 225, 0.2);
    border-radius: 28px;
}

/* = Dezente Hintergrundstruktur = */
.ims-scaling::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image:
        linear-gradient(
            rgba(175, 120, 225, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(175, 120, 225, 0.035) 1px,
            transparent 1px
        );
    background-size: 65px 65px;
    mask-image:
        linear-gradient(
            to bottom,
            rgba(0, 0, 0, 0.7),
            transparent 85%
        );

    -webkit-mask-image:
        linear-gradient(
            to bottom,
            rgba(0, 0, 0, 0.7),
            transparent 85%
        );
}

/* = Prozessbereich = */
.ims-process {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    max-width: 1540px;
    margin: 0 auto;
}

.ims-process__line {
    position: absolute;
    z-index: 0;
    top: 90px;
    left: calc(16.6667% - 90px);
    right: calc(16.6667% - 90px);
    height: 1px;
    background: rgba(175, 120, 225, 0.20);
    border-radius: 20px;
}
/* = Animierte Verbindungslinie == */
.ims-process__line-progress {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0%;
    height: 100%;
    border-radius: inherit;
    background:
        linear-gradient(
            90deg,
            rgba(175, 120, 225, 0.35),
            rgba(211, 166, 255, 0.90),
            rgba(175, 120, 225, 0.35)
        );

    box-shadow:
        0 0 6px rgba(175, 120, 225, 0.55),
        0 0 12px rgba(175, 120, 225, 0.22);

    animation:
        ims-line-progress 7.5s
        cubic-bezier(0.65, 0, 0.35, 1)
        1s
        forwards;
}

/* == Laufender Lichtpunkt
   Der Punkt bleibt nach der Animation sichtbar. == */

.ims-process__line-progress::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -4px;
    width: 8px;
    height: 8px;
    background: #ffffff;
    border-radius: 50%;
    transform: translateY(-50%);
    opacity: 1;
    box-shadow:
        0 0 5px rgba(255, 255, 255, 1),
        0 0 10px rgba(211, 166, 255, 0.95),
        0 0 20px rgba(175, 120, 225, 0.75),
        0 0 32px rgba(175, 120, 225, 0.35);
}

/* =Einzelne Prozessschritte == */
.ims-process__step {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    padding: 0 0 30px;
    opacity: 0.22;
    filter:
        grayscale(0.75)
        brightness(0.48);
    transform:
        translateY(24px)
        scale(0.97);
    transition:
        opacity 0.8s ease,
        filter 0.8s ease,
        transform 0.8s ease;
}

/* =Zeitlicher Ablauf== */
.ims-process__step--1 {
    animation:
        ims-step-active 1.1s ease
        0.7s
        forwards;
}
.ims-process__step--2 {
    animation:
        ims-step-active 1.1s ease
        3.6s
        forwards;
}
.ims-process__step--3 {
    animation:
        ims-step-active 1.1s ease
        6.5s
        forwards;
}

/* ==Nummern 1 / 2 / 3== */
.ims-process__number {
    position: absolute;
    z-index: 10;
    top: -3px;
    left: calc(50% - 93px);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    color: var(--ims-white);
    font-size: 16px;
    font-weight: 600;
    background:
        linear-gradient(
            145deg,
            var(--ims-purple-bright),
            var(--ims-purple-dark)
        );

    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 50%;
    box-shadow:
        0 0 0 4px rgba(175, 120, 225, 0.08),
        0 0 14px rgba(175, 120, 225, 0.40);
    opacity: 0;
    transform: scale(0.55);
}

.ims-process__step--1 .ims-process__number {
    animation:
        ims-number-active 0.7s ease
        1.1s
        forwards;
}
.ims-process__step--2 .ims-process__number {
    animation:
        ims-number-active 0.7s ease
        4s
        forwards;
}
.ims-process__step--3 .ims-process__number {
    animation:
        ims-number-active 0.7s ease
        6.9s
        forwards;
}

/* =Logo-Kreise – Desktop
   Kreis = 180px==== */
.ims-process__image {
    position: relative;
    z-index: 2;
    width: 180px;
    height: 180px;
    flex: 0 0 180px;
    margin-bottom: 20px;
    padding: 0;
    background:
        radial-gradient(
            circle,
            rgba(175, 120, 225, 0.055) 0%,
            rgba(175, 120, 225, 0.018) 55%,
            transparent 74%
        );

    border: 1px solid rgba(175, 120, 225, 0.60);
    border-radius: 50%;
    box-shadow:
        inset 0 0 24px rgba(175, 120, 225, 0.035),
        0 0 12px rgba(175, 120, 225, 0.10);
    overflow: visible;
}

/* =Äußerer Ring= */
.ims-process__image::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -7px;
    border: 1px solid rgba(175, 120, 225, 0.18);
    border-radius: 50%;
    opacity: 0;
    transform: scale(0.96);
}

/* =Animierter Lichtbogen== */
.ims-process__image::after {
    content: "";
    position: absolute;
    z-index: 4;
    inset: -2px;
    border-radius: 50%;
    background:
        conic-gradient(
            from 0deg,
            transparent 0deg,
            transparent 310deg,
            rgba(211, 166, 255, 0.10) 325deg,
            rgba(255, 255, 255, 0.80) 342deg,
            var(--ims-purple-bright) 352deg,
            transparent 360deg
        );

    mask:
        radial-gradient(
            farthest-side,
            transparent calc(100% - 3px),
            #000 calc(100% - 2px)
        );

    -webkit-mask:
        radial-gradient(
            farthest-side,
            transparent calc(100% - 3px),
            #000 calc(100% - 2px)
        );

    opacity: 0;
    pointer-events: none;
}


/* ==Logos allgemein */
.ims-process__image img {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    max-width: none;
    object-fit: contain;
    object-position: center;
    border-radius: 0;
    background: transparent;
    transform: translate(-50%, -50%);
}

/* INES */
.ims-process__step--1 .ims-process__image img {
    width: 220px;
    height: 220px;
}

/* IMS CHIPS */
.ims-process__step--2 .ims-process__image img {
    width: 205px;
    height: 205px;
}

/* IMS GmbH */
.ims-process__step--3 .ims-process__image img {
    width: 245px;
    height: 245px;
}

/* =Kreisanimationen= */
.ims-process__step--1 .ims-process__image,
.ims-process__step--1 .ims-process__image::before {
    animation:
        ims-image-glow 1.4s ease
        0.8s
        forwards;
}

.ims-process__step--2 .ims-process__image,
.ims-process__step--2 .ims-process__image::before {
    animation:
        ims-image-glow 1.4s ease
        3.7s
        forwards;
}

.ims-process__step--3 .ims-process__image,
.ims-process__step--3 .ims-process__image::before {
    animation:
        ims-image-glow 1.4s ease
        6.6s
        forwards;
}

/*==Lichtbogenanimation== */
.ims-process__step--1 .ims-process__image::after {
    animation:
        ims-ring-rotate 1.4s ease
        0.8s
        forwards;
}

.ims-process__step--2 .ims-process__image::after {
    animation:
        ims-ring-rotate 1.4s ease
        3.7s
        forwards;
}

.ims-process__step--3 .ims-process__image::after {
    animation:
        ims-ring-rotate 1.4s ease
        6.6s
        forwards;
}


/* =Textkarten= */
.ims-process__content {
    flex: 1;
    width: 100%;
    padding: 30px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.065),
            rgba(255, 255, 255, 0.025)
        );

    border: 1px solid var(--ims-border);
    border-radius: 20px;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}


/* ==Labels== */
.ims-process__label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    color: var(--ims-purple-bright);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}


.ims-process__label::before {
    content: "";
    width: 7px;
    height: 7px;
    background: var(--ims-purple);
    border-radius: 50%;
    box-shadow:
        0 0 8px rgba(175, 120, 225, 0.8);
}

/* =Aktiver Kartenrahmen= */
.ims-process__step--1 .ims-process__content {
    animation:
        ims-card-border 1.1s ease
        1s
        forwards;
}
.ims-process__step--2 .ims-process__content {
    animation:
        ims-card-border 1.1s ease
        3.9s
        forwards;
}
.ims-process__step--3 .ims-process__content {
    animation:
        ims-card-border 1.1s ease
        6.8s
        forwards;
}

/* =Unterer Prozesspfad= */
.ims-process__footer {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns:
        minmax(150px, 1fr)
        auto
        minmax(180px, 1fr)
        auto
        minmax(150px, 1fr)
        auto
        minmax(150px, 1fr);

    align-items: center;
    gap: 22px;
    max-width: 1540px;
    margin: 30px auto 0;
    padding: 26px 30px;
    background:
        linear-gradient(
            90deg,
            rgba(175, 120, 225, 0.08),
            rgba(255, 255, 255, 0.035),
            rgba(175, 120, 225, 0.08)
        );

    border: 1px solid var(--ims-border);
    border-radius: 18px;
    opacity: 0;
    transform: translateY(20px);
    animation:
        ims-footer-active 1s ease
        8s
        forwards;
}

.ims-process__footer-item {
    text-align: center;
}

.ims-process__footer-item strong {
    display: block;
    margin-bottom: 5px;
    color: var(--ims-white);
    font-size: 17px;
    font-weight: 600;
}

.ims-process__footer-item span {
    display: block;
    color: var(--ims-muted);
    font-size: 13px;
    line-height: 1.35;
}

.ims-process__footer-arrow {
    color: var(--ims-purple);
    font-size: 30px;
    text-shadow:
        0 0 12px rgba(175, 120, 225, 0.8);
}

/* ==ANIMATIONEN== */
/* Prozessschritte */
@keyframes ims-step-active {
    0% {
        opacity: 0.22;
        filter:
            grayscale(0.75)
            brightness(0.48);
        transform:
            translateY(24px)
            scale(0.97);
    }
    60% {
        opacity: 1;
        filter:
            grayscale(0)
            brightness(1.12);
        transform:
            translateY(-4px)
            scale(1.01);
    }
    100% {
        opacity: 1;
        filter:
            grayscale(0)
            brightness(1);
        transform:
            translateY(0)
            scale(1);
    }
}

/* =Linie
   forwards sorgt dafür, dass die Linie
   nach der Animation bei 100 % stehen bleibt. */

@keyframes ims-line-progress {
    0% {
        width: 0%;
    }
    42% {
        width: 50%;
    }
    58% {
        width: 50%;
    }
    100% {
        width: 100%;
    }
}

/* Nummern */
@keyframes ims-number-active {

    0% {
        opacity: 0;
        transform: scale(0.55);
    }

    70% {
        opacity: 1;
        transform: scale(1.10);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}


/* =Kreis Glow== */

@keyframes ims-image-glow {

    0% {
        opacity: 0;
        transform: scale(0.96);
        box-shadow:
            0 0 0 rgba(175, 120, 225, 0);
    }

    65% {
        opacity: 1;
        transform: scale(1.01);
        box-shadow:
            0 0 0 1px rgba(211, 166, 255, 0.55),
            0 0 18px rgba(175, 120, 225, 0.25);
    }

    100% {
        opacity: 1;
        transform: scale(1);
        box-shadow:
            0 0 0 1px rgba(175, 120, 225, 0.35),
            0 0 12px rgba(175, 120, 225, 0.13);
    }
}


/* Lichtrotation */

@keyframes ims-ring-rotate {

    0% {
        opacity: 0;
        transform: rotate(0deg);
    }

    25% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: rotate(360deg);
    }
}


/* Kartenrahmen */

@keyframes ims-card-border {

    0% {
        border-color: var(--ims-border);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.04);
    }

    55% {
        border-color: var(--ims-border-active);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.07),
            0 0 20px rgba(175, 120, 225, 0.20);
    }

    100% {
        border-color: rgba(175, 120, 225, 0.55);
        box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, 0.06),
            0 0 14px rgba(175, 120, 225, 0.10);
    }
}


/* Footer */
@keyframes ims-footer-active {

    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* =========================================================
   TABLET
   bis 1100px

   Kreis = 155px
   Radius = 77.5px
========================================================= */

@media (max-width: 1100px) {

    .ims-scaling {
        padding: 55px 25px 45px;
    }
    .ims-process {
        gap: 18px;
    }
/* --Kreis-- */
    .ims-process__image {
        width: 155px;
        height: 155px;
        flex: 0 0 155px;
        margin-bottom: 18px;
    }


/* -Verbindungslinie
       Endet am rechten Rand des dritten Kreises.--- */
    .ims-process__line {
        top: 77.5px;
        left: calc(16.6667% - 77.5px);
        right: calc(16.6667% - 77.5px);
    }

    /* ---Nummern--- */
    .ims-process__number {
        top: -3px;
        left: calc(50% - 80px);
        width: 36px;
        height: 36px;
        font-size: 15px;
    }

    /* -Logos-- */
    .ims-process__step--1 .ims-process__image img {
        width: 200px;
        height: 200px;
    }
    .ims-process__step--2 .ims-process__image img {
        width: 185px;
        height: 185px;
    }
    .ims-process__step--3 .ims-process__image img {
        width: 220px;
        height: 220px;
    }

    /* --Textkarten--- */
    .ims-process__content {
        padding: 24px 20px;
    }
    .ims-process__content p {
        font-size: 15px;
    }
    /* -Footer--- */
    .ims-process__footer {
        gap: 12px;
        padding: 22px 18px;
    }
}

/* ===SMARTPHONE bis 767px== */
@media (max-width: 767px) {
    .ims-scaling {
        padding: 45px 18px 35px;
        border-radius: 20px;
    }
    .ims-scaling__header {
        margin-bottom: 40px;
        text-align: left;
    }
    .ims-scaling__header h2 {
        font-size: 34px;
    }
/* =Prozess untereinander== */
    .ims-process {
        grid-template-columns: 1fr;
        gap: 45px;
    }
   .ims-process__step {
        align-items: flex-start;
        padding-left: 52px;
    }
/* =Vertikale Verbindungslinie== */
    .ims-process__line {
        top: 75px;
        bottom: 75px;
        left: 23px;
        right: auto;
        width: 1px;
        height: auto;
    }

 /* == Vertikaler Fortschritt==== */
    .ims-process__line-progress {
        width: 100%;
        height: 0%;
        animation:
            ims-line-progress-mobile 7.5s
            cubic-bezier(0.65, 0, 0.35, 1)
            1s
            forwards;
    }

/* ====Lichtpunkt Smartphone
       Bleibt unten am Ende des dritten Schrittes.=== */
    .ims-process__line-progress::after {
        top: auto;
        right: 50%;
        bottom: -4px;
        width: 8px;
        height: 8px;
        transform: translateX(50%);
    }

    /* ===Nummern== */
    .ims-process__number {
        top: 0;
        left: 5px;
        width: 36px;
        height: 36px;
        font-size: 15px;
    }
    /* =Kreis Smartphone== */
    .ims-process__image {
        width: 150px;
        height: 150px;
        flex: 0 0 150px;
        align-self: center;
        margin-bottom: 18px;
    }


    /* INES */
    .ims-process__step--1 .ims-process__image img {
        width: 195px;
        height: 195px;
    }
    /* IMS CHIPS */
    .ims-process__step--2 .ims-process__image img {
        width: 180px;
        height: 180px;
    }
    /* IMS GmbH */
    .ims-process__step--3 .ims-process__image img {
        width: 215px;
        height: 215px;
    }

 /* =Textkarten= */
    .ims-process__content {
        padding: 25px 22px;
    }

 /* =Footer=== */
    .ims-process__footer {
        grid-template-columns: 1fr;
        gap: 14px;
    }


    .ims-process__footer-arrow {
        transform: rotate(90deg);
        text-align: center;
    }
}

/* ==Smartphone – vertikale Linienanimation== */

@keyframes ims-line-progress-mobile {
    0% {
        height: 0%;
    }
    42% {
        height: 50%;
    }
    58% {
        height: 50%;
    }
    100% {
        height: 100%;
    }
}
/* =Barrierefreiheit=== */
@media (prefers-reduced-motion: reduce) {
    .ims-process__step,
    .ims-process__number,
    .ims-process__image,
    .ims-process__image::before,
    .ims-process__image::after,
    .ims-process__content,
    .ims-process__line-progress,
    .ims-process__footer {
        animation: none !important;
        transition: none !important;
    }
    .ims-process__step {
        opacity: 1;
        filter: none;
        transform: none;
    }
    .ims-process__number {
        opacity: 1;
        transform: none;
    }
    .ims-process__image {
        opacity: 1;
        transform: none;
    }
    .ims-process__image::before {
        opacity: 1;
        transform: none;
    }
    .ims-process__image::after {
        opacity: 0;
    }
    .ims-process__footer {
        opacity: 1;
       transform: none;
    }

    /*  Desktop / Tablet:
       Linie und Punkt direkt am Ende anzeigen.
    */
    .ims-process__line-progress {
        width: 100%;
    }
}

/* ==Barrierefreiheit Smartphone== */
@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
    .ims-process__line-progress {
        width: 100%;
        height: 100%;
    }
}/* End custom CSS */