.benefits { background: var(--color-background-linear); padding-block: var(--space-16); } .inner { max-width: var(--container-width); margin-inline: auto; padding-inline: var(--space-4); } /* Mobile: Intro oben, Grid unten */ .intro { display: flex; flex-direction: column; gap: var(--space-4); margin-bottom: var(--space-8); } .heading, .lead { text-align: center; } .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--space-5); } .card { display: flex; flex-direction: row; align-items: flex-start; gap: var(--space-4); background: var(--color-surface); border-radius: 12px; padding: var(--space-5); box-shadow: 0 4px 16px 0 rgba(0, 0, 0, 0.05); } .iconWrap { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 40px; height: 40px; color: var(--color-accent); } .cardContent { display: flex; flex-direction: column; gap: var(--space-2); } .cardTitle { font-size: var(--font-size-base); font-weight: var(--font-weight-semibold); color: var(--font-heading-color); } .cardText { color: var(--color-text-muted); font-size: var(--font-size-xs); max-width: 34ch; } /* Tablet */ @media (min-width: 768px) { .benefits { padding-block: var(--space-24); } .intro { margin-bottom: var(--space-10); } .heading { max-width: 16ch; text-align: left; } .lead { max-width: 48ch; text-align: left; } .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } } /* Desktop: Intro links, Grid rechts — nebeneinander */ @media (min-width: 1024px) { .benefits { padding-block: var(--space-36); } .inner { display: grid; grid-template-columns: 280px 1fr; gap: var(--space-16); align-items: start; padding-inline: var(--space-6); } .intro { position: sticky; top: var(--space-8); margin-bottom: 0; } .heading { text-align: left; } .lead { text-align: left; } }