.home-media-section {
    position: relative;
    padding-block: clamp(56px, 8vw, 96px);
    color: var(--pm-color-paper);
    background:
        linear-gradient(140deg, rgba(10, 12, 15, 0.98), rgba(17, 24, 32, 0.96)),
        var(--pm-wallpaper-image) center / cover;
    overflow: hidden;
}

.home-media-layout {
    width: min(100% - 40px, var(--pm-container-wide));
    margin-inline: auto;
    padding-inline: clamp(22px, 4.4vw, 64px);
    display: grid;
    grid-template-columns: minmax(0, 0.86fr) minmax(380px, 1fr);
    gap: clamp(28px, 5vw, 70px);
    align-items: center;
}

.home-media-panel {
    max-width: 720px;
}

.home-media-panel .kicker {
    margin: 0 0 14px;
    color: var(--pm-color-orange);
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.home-media-panel h2 {
    margin: 0 0 18px;
    font-size: clamp(28px, 3.2vw, 40px);
    font-weight: 900;
    line-height: 1.1;
}

.home-media-panel h2 .headline-accent {
    color: var(--pm-color-orange);
}

.home-media-panel p:last-child {
    margin: 0;
    color: rgba(255, 253, 248, 0.72);
    font-size: 18px;
}

.home-media-steps {
    display: grid;
    gap: 12px;
}

.home-media-steps article {
    border-radius: var(--pm-radius);
    border: 1px solid var(--pm-color-line-dark);
    background: rgba(255, 255, 255, 0.065);
    padding: 20px;
}

.home-media-steps span {
    display: block;
    margin-bottom: 8px;
    color: var(--pm-color-orange);
    font-weight: 900;
}

.home-media-steps strong {
    display: block;
    margin-bottom: 8px;
    color: var(--pm-color-paper);
    font-size: 21px;
}

.home-media-steps p {
    margin-bottom: 0;
    color: rgba(255, 253, 248, 0.72);
}

/*
 * "list" is a numbered-row alternative to the default bordered-card grid -
 * same title/text data, just a thinner ordered-list treatment (used for
 * Web-Agency's "Arbeitsweise" section, which has no card visuals in the
 * source design). Numbers sit inline (like an <ol> index) instead of
 * stacked above the title.
 */
.home-media-steps-list article {
    display: flex;
    align-items: baseline;
    gap: 16px;
    border: 0;
    border-top: 1px solid var(--pm-color-line-dark);
    background: transparent;
    border-radius: 0;
    padding: 16px 0;
}

.home-media-steps-list span {
    flex: 0 0 auto;
    margin-bottom: 0;
}

.home-media-steps-list strong,
.home-media-steps-list p {
    flex: 1 1 auto;
}

.home-media-steps-list strong {
    margin-bottom: 4px;
}

@media (max-width: 900px) {
    .home-media-layout {
        grid-template-columns: 1fr;
    }
}
