.section-digitales-hr-personio {
    --section-card-padding: clamp(1.5rem, 2vw, 2rem);
    --personio-section-space: clamp(6rem, 8vw, 9rem);
    --personio-section-bg: #303234;
    --personio-section-text: #f4f4f1;
    --personio-section-muted: rgba(244, 244, 241, 0.9);

    --personio-frame: clamp(8px, 0.85vw, 16px);
    position: relative;
    padding: 0 var(--personio-frame);
    color: var(--personio-section-text);
    background: var(--bg-light);
}

.section-digitales-hr-personio__card-shell {
    position: relative;
    width: 100%;
    max-width: calc(var(--container-width) + 12rem);
    margin-inline: auto;
    padding-block: var(--personio-section-space);
    overflow: hidden;
    border-radius: var(--border-radius);
    background: var(--personio-section-bg);
}

.section-digitales-hr-personio__layout {
    display: grid;
    width: 100%;
    grid-template-columns:
        clamp(12rem, 17vw, 20rem)
        minmax(0, 1fr);
    column-gap: clamp(2rem, 4vw, 4.5rem);
    align-items: start;
}

.section-digitales-hr-personio__kicker {
    margin: 0;
    color: var(--personio-section-muted);
}

.section-digitales-hr-personio__content {
    display: grid;
    width: 100%;
    min-width: 0;
    max-width: 62rem;
}

.section-digitales-hr-personio__logo-link {
    display: block;
    width: fit-content;
    max-width: 100%;
    margin: 0 0 clamp(1.75rem, 2.5vw, 2.5rem);
    text-decoration: none;
}

.section-digitales-hr-personio__logo {
    display: block;
    width: clamp(14rem, 18vw, 20rem);
    height: auto;
    max-width: 100%;
    object-fit: contain;
    transition:
        opacity 180ms ease,
        transform 180ms ease;
}

.section-digitales-hr-personio__logo-link:hover .section-digitales-hr-personio__logo {
    opacity: 0.82;
    transform: translateY(-2px);
}

.section-digitales-hr-personio__logo-link:focus-visible {
    outline: 2px solid var(--bg-brand);
    outline-offset: 0.5rem;
    border-radius: 0.125rem;
}

.section-digitales-hr-personio__heading {
    width: 100%;
    max-width: 34ch;
    margin: 0;
    color: var(--personio-section-text);
    font-size: clamp(2.5rem, 2.55vw, 3rem);
    font-weight: 450;
    line-height: 1.12;
    letter-spacing: -0.045em;
    text-wrap: balance;
}

.section-digitales-hr-personio__heading,
.section-digitales-hr-personio__heading *,
.section-digitales-hr-personio__heading .line,
.section-digitales-hr-personio__heading .line-inner {
    color: var(--personio-section-text) !important;
    -webkit-text-fill-color: var(--personio-section-text) !important;
}

.section-digitales-hr-personio__heading .line {
    padding-bottom: 0.12em;
    margin-bottom: -0.12em;
}

.section-digitales-hr-personio__text {
    max-width: 68ch;
    margin:
        var(--space-section-heading-copy)
        0
        0;
    color: var(--personio-section-muted);
    font-size: clamp(1rem, 1.05vw, 1.125rem);
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: -0.02em;
    text-wrap: pretty;
}

.section-digitales-hr-personio__cards {
    display: grid;
    width: 100%;
    min-width: 0;
    max-width: 62rem;
    grid-column: 2;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.25rem);
    margin-top: clamp(3rem, 5vw, 4.5rem);
}

.section-digitales-hr-personio__card {
    display: flex;
    min-width: 0;
    min-height: clamp(17rem, 24vw, 21rem);
    flex-direction: column;
    padding: var(--section-card-padding);
    border-radius: var(--border-radius);
    color: var(--color-text);
    background: #eceeef;
    background: color-mix(
        in srgb,
        var(--bg-brand) 4%,
        #f1f2f2
    );
}

.section-digitales-hr-personio__card:nth-child(2) {
    background: #dbe6ee;
    background: color-mix(
        in srgb,
        var(--bg-brand) 16%,
        #f3f5f6
    );
}

.section-digitales-hr-personio__card:nth-child(3) {
    background: #c5d5e1;
    background: color-mix(
        in srgb,
        var(--bg-brand) 28%,
        #eef1f2
    );
}

.section-digitales-hr-personio__card-icon {
    position: relative;
    display: block;
    width: 1.875rem;
    height: 1.875rem;
    margin-bottom: auto;
    color: color-mix(
        in srgb,
        var(--bg-brand) 75%,
        var(--color-text)
    );
    opacity: 0.9;
}

.section-digitales-hr-personio__card-icon::before,
.section-digitales-hr-personio__card-icon::after {
    position: absolute;
    top: 50%;
    left: 50%;
    background: currentColor;
    transform: translate(-50%, -50%);
    content: "";
}

.section-digitales-hr-personio__card-icon::before {
    width: 1.25rem;
    height: 1px;
}

.section-digitales-hr-personio__card-icon::after {
    width: 1px;
    height: 1.25rem;
}

.section-digitales-hr-personio__card-content {
    width: 100%;
    min-width: 0;
    margin-top: clamp(3rem, 5vw, 4.5rem);
}

.section-digitales-hr-personio__card-title {
    width: 100%;
    max-width: none;
    margin: 0;
    color: var(--color-text);
    font-size: clamp(1.25rem, 1.35vw, 1.5rem);
    font-weight: 450;
    line-height: 1.08;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

.section-digitales-hr-personio__card-text {
    max-width: 29ch;
    margin:
        clamp(1rem, 1.5vw, 1.35rem)
        0
        0;
    color: color-mix(
        in srgb,
        var(--color-text) 76%,
        transparent
    );
    font-size: clamp(0.9375rem, 0.9vw, 1rem);
    font-weight: 400;
    line-height: 1.48;
    letter-spacing: -0.018em;
    text-wrap: pretty;
}

@media (max-width: 1100px) {
    .section-digitales-hr-personio {
        --personio-section-space: clamp(5rem, 8vw, 7rem);
    }

    .section-digitales-hr-personio__layout {
        grid-template-columns:
            clamp(9.5rem, 16vw, 13rem)
            minmax(0, 1fr);
        column-gap: clamp(1.75rem, 3.5vw, 3rem);
    }

    .section-digitales-hr-personio__logo {
        width: clamp(12rem, 20vw, 16rem);
    }

    .section-digitales-hr-personio__heading {
        max-width: 26ch;
        font-size: clamp(2.2rem, 3.35vw, 2.65rem);
        line-height: 1.13;
        letter-spacing: -0.043em;
    }

    .section-digitales-hr-personio__cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .section-digitales-hr-personio__card {
        min-height: 17rem;
    }
}

@media (max-width: 767px) {
    .section-digitales-hr-personio {
        --section-card-padding: 1.5rem;
        --personio-frame: 7px;
    }

    .section-digitales-hr-personio {
        --personio-section-space: clamp(4.5rem, 14vw, 6rem);
    }

    .section-digitales-hr-personio__layout {
        grid-template-columns: minmax(0, 1fr);
        row-gap: var(--space-section-kicker-heading);
    }

    .section-digitales-hr-personio__logo-link {
        margin-bottom: clamp(1.5rem, 6vw, 2rem);
    }

    .section-digitales-hr-personio__logo {
        width: clamp(11rem, 48vw, 15rem);
    }

    .section-digitales-hr-personio__heading {
        width: 100%;
        max-width: none;
        font-size: clamp(1.625rem, 6.5vw, 2rem);
        line-height: 1.15;
        letter-spacing: -0.035em;
        text-wrap: pretty;
    }

    .section-digitales-hr-personio__heading .line {
        padding-bottom: 0.14em;
        margin-bottom: -0.14em;
    }

    .section-digitales-hr-personio__text {
        max-width: 46ch;
        font-size: 1rem;
        line-height: 1.65;
    }

    .section-digitales-hr-personio__cards {
        grid-column: 1;
        grid-template-columns: minmax(0, 1fr);
        gap: 1rem;
        margin-top: clamp(2.5rem, 9vw, 3.5rem);
    }

    .section-digitales-hr-personio__card {
        min-height: auto;
        padding: var(--section-card-padding);
    }

    .section-digitales-hr-personio__card-content {
        margin-top: 2.5rem;
    }

    .section-digitales-hr-personio__card-title {
        max-width: none;
        font-size: clamp(1.25rem, 5.5vw, 1.5rem);
    }

    .section-digitales-hr-personio__card-text {
        max-width: 36ch;
        margin-top: 1rem;
        font-size: 0.9375rem;
        line-height: 1.5;
    }
}

@media (max-width: 420px) {
    .section-digitales-hr-personio__heading {
        font-size: clamp(1.5rem, 6.8vw, 1.8rem);
        line-height: 1.16;
        letter-spacing: -0.032em;
    }
}