/* Startseite: Aussage links, Rollenspalten rechts.
   Nur hier geladen (start.html); Farben nach Bereich aus tokens.css (ADR-0060). */

.welcome {
    display: grid;
    grid-template-columns: minmax(280px, .85fr) minmax(0, 2fr);
    gap: var(--space-6);
    align-items: start;
    padding-bottom: var(--space-6);
}

/* ---- Aussage: Eyebrow, Wortmarke, Claim, Einstieg ---- */
.welcome__aussage {
    position: sticky;
    top: var(--space-4);
}

.welcome__aussage > p:first-child {
    margin: 0;
    color: var(--color-text-muted);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.welcome__aussage h1 {
    margin: var(--space-1) 0 var(--space-3);
    font-size: clamp(2rem, 3.4vw, 2.9rem);
}

.welcome__claim {
    margin: 0 0 var(--space-3);
    color: var(--color-text-muted);
}

.welcome__aussage small {
    display: block;
    margin-top: var(--space-2);
    color: var(--color-text-muted);
}

/* ---- Rollenspalten: je Bereich eine Spalte mit beschreibendem Fließtext ---- */
.welcome__spalten {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
    gap: var(--space-3);
}

.welcome__spalte {
    padding-top: var(--space-2);
    border-top: 4px solid var(--area-solid, var(--color-border));
}

.welcome__spalte header span {
    display: block;
    color: var(--color-text-muted);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.welcome__spalte h2 {
    margin: var(--space-1) 0 var(--space-2);
    font-size: 1.4rem;
}

.welcome__spalte p {
    margin: 0 0 var(--space-2);
    font-size: .95rem;
}

.welcome__spalte p:last-child {
    margin-bottom: 0;
}

@media (max-width: 1050px) {
    .welcome { grid-template-columns: 1fr; gap: var(--space-4); }
    .welcome__aussage { position: static; }
}

/* ---- Hintergrund: zweite Zeile, gleiche Spaltenteilung wie die Aussage ---- */
.hintergrund {
    display: grid;
    grid-template-columns: minmax(280px, .85fr) minmax(0, 2fr);
    gap: var(--space-6);
    align-items: start;
    padding-top: var(--space-6);
    border-top: 1px solid var(--color-border);
}

.hintergrund__aussage h2 {
    margin: 0 0 var(--space-3);
    font-size: clamp(2rem, 3.4vw, 2.9rem);
}

.hintergrund__claim {
    margin: 0;
    color: var(--color-text-muted);
}

.hintergrund__text {
    display: grid;
    gap: var(--space-4);
}

.hintergrund__text h3 {
    margin: 0 0 var(--space-1);
    font-size: 1.1rem;
}

.hintergrund__text p {
    margin: 0;
    font-size: .95rem;
}

@media (max-width: 1050px) {
    .hintergrund { grid-template-columns: 1fr; gap: var(--space-4); }
}
