@import url(/css/style.css);

/* =========================================================================
     STORY SEITE
    ========================================================================= */
 
    .story-seite {
        padding-bottom: 0;
    }
 
/* =========================================================================
     HERO
    ========================================================================= */

    .story-hero {
        padding: var(--space-2xl) 0 var(--space-xl);
        display: flex;
        flex-direction: column;
        gap: var(--space-xs);
    }
 
    .story-hero-label {
        font-family: var(--lexenddeca);
        font-size: var(--font-size-hint);
        font-weight: var(--regular);
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--blue);
        margin-bottom: 0;
    }
 
    .story-hero h1 {
        font-size: clamp(2rem, 5vw, 3.5rem);
        line-height: 1.15;
        margin-bottom: 0;
    }
 
/* =========================================================================
     GESCHICHTE
    ========================================================================= */
    .story-text {
        padding: var(--space-2xl) 0;
    }
 
    .story-text-inner {
        display: flex;
        flex-direction: column;
        gap: var(--space-xl);
    }
 
    .story-bild {
        width: 100%;
        max-width: 480px;
        border-radius: 12px;
        object-fit: cover;
        align-self: flex-start;
    }
 
    .story-absaetze {
        display: flex;
        flex-direction: column;
        gap: var(--space-m);
    }

    @media (min-width: 1440px){
    .story-absaetze p{
        max-width: 90%;
    }
    
}
 
    .story-absaetze p {
        margin-bottom: 0;
    }
 
/* =========================================================================
     TIMELINE
    ========================================================================= */
    .story-timeline {
        padding: var(--space-2xl) 0;
        max-width: 56rem;
    }
 
    .story-timeline h2 {
        margin-bottom: var(--space-xl);
    }
 
    .timeline {
        display: flex;
        flex-direction: column;
        position: relative;
        padding-left: 2rem;
    }
 
    /* vertikale Linie */
    .timeline::before {
        content: '';
        position: absolute;
        left: 0.77rem;
        top: 0.4rem;
        bottom: 0.4rem;
        width: 2px;
        background: rgba(111, 128, 232, 0.25);
    }
 
    .timeline-item {
        position: relative;
        padding-bottom: var(--space-xl);
        display: flex;
        gap: var(--space-l);
        align-items: flex-start;
    }
 
    .timeline-item:last-child {
        padding-bottom: 0;
    }
 
    .timeline-punkt {
        position: absolute;
        left: -1.65rem;
        top: 0.3rem;
        width: 0.75rem;
        height: 0.75rem;
        border-radius: 50%;
        background-color: var(--blue);
        border: 2px solid var(--blue);
        flex-shrink: 0;
    }
 
    .timeline-item--aktuell .timeline-punkt {
        background-color: var(--lightblue);
        box-shadow: 0 0 0 4px rgba(111, 128, 232, 0.2);
    }
 
    .timeline-inhalt {
        display: flex;
        flex-direction: column;
        gap: var(--space-xs);
    }
 
    .timeline-jahr {
        font-family: var(--lexenddeca);
        font-size: var(--font-size-hint);
        font-weight: var(--regular);
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--blue);
    }
 
    .timeline-inhalt h3 {
        margin-bottom: var(--space-xs);
    }
 
    .timeline-inhalt p {
        margin-bottom: 0;
    }
 
/* =========================================================================
     WERTE
    ========================================================================= */
    .story-werte {
        padding: var(--space-2xl) 0;
    }
 
    .story-werte h2 {
        margin-bottom: var(--space-xl);
    }
 
    .werte-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: var(--space-m);
    }
 
    .wert-card {
        background: var(--ghostwhite);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 12px;
        padding: var(--space-l);
        display: flex;
        flex-direction: column;
        gap: 0; 
        transition: border-color 0.3s ease, background 0.3s ease;
    }
    
    .wert-icon, .herz-icon {
        height: 4rem;           
        width: auto;        
        display: flex;
        align-items: flex-end;  
        justify-content: flex-start; 
        margin-bottom: 1.5rem;  
        color: var(--blue);
    }
 
    .wert-card img {
        max-height: 100%;        
        width: auto;
        object-fit: contain;
        align-self: flex-start;  
    }
 
    .wert-card h3 {
        margin-bottom: 0;
        color: var(--blackblue);
    }
 
    .wert-card p {
        margin-bottom: 0;
        line-height: 1.6;
        color: var(--blackblue);
    }

/* =========================================================================
 MEINE PERSÖNLICHKEIT
========================================================================= */

#meine-persoenlichkeit {
    padding: var(--space-2xl) 0;
}

#meine-persoenlichkeit h2 {
    margin-bottom: var(--space-xl);
}

.persoenlichkeit-gruppe {
    margin-bottom: var(--space-2xl);
}

.persoenlichkeit-gruppe:last-child {
    margin-bottom: 0;
}

.persoenlichkeit-gruppe h3 {
    color: var(--blue);
    font-size: var(--font-size-hint);
    font-weight: var(--medium);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    margin-bottom: var(--space-l);
}

/* Liste der Slider */
.slider-liste {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Einzelne Zeile */
.slider-zeile {
    display: grid;
    grid-template-columns: 8rem 1fr 8rem;
    align-items: center;
    gap: var(--space-l);
    padding: var(--space-m) 0;
    border-bottom: 1px solid rgba(249, 249, 249, 0.06);
}

.slider-zeile:last-child {
    border-bottom: none;
}

.slider-label-left {
    font-family: var(--lexenddeca);
    font-size: var(--font-size-hint);
    font-weight: var(--light);
    color: var(--ghostwhite);
    text-align: right;
}

.slider-label-right {
    font-family: var(--lexenddeca);
    font-size: var(--font-size-hint);
    font-weight: var(--light);
    color: var(--ghostwhite);
    text-align: left;
}

/* Track */
.slider-track {
    position: relative;
    height: 2px;
    background: rgba(249, 249, 249, 0.1);
    border-radius: 999px;
}

/* Thumb — Position über CSS-Variable --pos */
.slider-thumb {
    position: absolute;
    top: 50%;
    left: 50%; /* Startposition für Animation */
    width: 0.875rem;
    height: 0.875rem;
    background: var(--blue);
    border-radius: 50%;
    border: 2px solid var(--blackblue);
    outline: 2px solid var(--blue);
    transform: translate(-50%, -50%);
    transition: left 1.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Wenn animiert: zur Zielposition fahren */
.slider-thumb.animiert {
    left: var(--pos);
}

@media (max-width: 600px) {
    .slider-zeile {
        grid-template-columns: 5rem 1fr 5rem;
        gap: var(--space-s);
    }
}
 
/* =========================================================================
     SKILLS
    ========================================================================= */
    .story-skills {
        padding: var(--space-2xl) 0;
    }
 
    .story-skills h2 {
        margin-bottom: var(--space-xl);
    }
 
    .skills-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: var(--space-l);
    }
 
    .skill-gruppe h3 {
        color: var(--blue);
        margin-bottom: var(--space-m);
        font-size: var(--font-size-hint);
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }
 
    .skill-liste {
        display: flex;
        flex-direction: column;
        gap: var(--space-s);
        list-style: none;
        padding: 0;
    }
 
    .skill-liste li {
        font-family: var(--lexenddeca);
        font-weight: var(--light);
        font-size: var(--font-size-p);
        color: var(--ghostwhite);
        padding: var(--space-s) 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    }
 
    .skill-liste li:last-child {
        border-bottom: none;
    }

    /* Skills mit Sternenbewertung */
.skill-liste li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-m);
}

.skill-name {
    font-family: var(--lexenddeca);
    font-weight: var(--light);
    font-size: var(--font-size-p);
    color: var(--ghostwhite);
}

.skill-sterne {
    display: flex;
    gap: 2px;
    flex-shrink: 0;
}

.stern {
    font-size: 1.3rem;
    color: rgba(249, 249, 249, 0.15);
    line-height: 1;
}

.stern.aktiv {
    color: var(--blue);
}
 
/* =========================================================================
     CTA
    ========================================================================= */
    .story-cta {
        padding: var(--space-2xl) 0 var(--space-3xl);
        display: flex;
        flex-direction: column;
        gap: var(--space-m);
        align-items: flex-start;
    }
 
    .story-cta h2 {
        margin-bottom: 0;
    }
 
    .story-cta p {
        margin-bottom: 0;
    }
 
    .story-cta .primary-btn {
        margin-top: var(--space-s);
    }
 
    /* ── Responsive ── */
    @media (min-width: 768px) {
        .story-text-inner {
            flex-direction: row;
            align-items: flex-start;
        }
 
        .story-bild {
            width: 40%;
            flex-shrink: 0;
        }
    }
 
    @media (max-width: 600px) {
        .werte-grid {
            grid-template-columns: 1fr;
        }
 
        .skills-grid {
            grid-template-columns: 1fr;
            gap: var(--space-xl);
        }
    }